Property definition

After clicking NEXT on the Object Information page the Property Definitions page is displayed. The values are inferred from the sample data, except for the column Required.

These fields are displayed:

Property
The name of the property to include in the object schema.
Data Type
The data type for the property.

If the data type is object, a drill-down icon is displayed in this column. For BODs, Data Elements and Group Elements also show a drill-down icon in the data type column. Click this icon to view and edit child properties.

Note: There are some limitations for inferring data types. Depending on the values in the sample data, boolean and custom datetime properties are inferred as a number or a string. The data type and any other associated information must be updated or added manually.
Required
Does not apply to DSV objects.

Indicates which properties are required to exist in the data object. By default, none of the properties are marked as required.

Repeatable
Applies to BODS only.

Indicates which properties can be repeated throughout the data object.

This value is inferred based on the sample file. Any element that is found more than once in the sample data has the Repeatable check box selected by default.

Position
Does not apply to BODS.

The order in which the properties should be displayed to the end user. By default, the position values reflect the order in which the properties are listed in the sample data file.

To adjust the order, click the drag icon in the first column and drop the row to another location in the list. All position values are updated accordingly.

To change the inferred data, or to include additional validation keywords:

  1. Select a row in the data grid. On the right panel, this list of fields is displayed.
    Property
    Change the name of the property. A property name is required.
    Title
    Does not apply to BODs.

    Specify a friendly name for your property.

    Description
    Specify a description of the property.
    Property Type
    Applies to BODs only.

    This drop-down list contains the different property types for BODs. Options are Group Element, Data Element, and Attribute.

    Group elements can contain other group elements, data elements, and attributes. Data elements can only contain attributes. Attributes cannot contain any children.

    This information is inferred based on the sample file.

    Position
    Change the position value of the property. Any other property positions that are affected by this change are automatically adjusted.
    Data Type
    This drop-down list contains valid data types for a property. Use this to change the inferred data type.

    For JSON and DSV, options are Array, Boolean, Date, Date Time, Integer, Number, Object, String, and Time.

    For BODs, options are Boolean, Date, Date Time, Decimal, Duration, Integer, String, and Time.

    Required
    Select the check box to mark the property as required.
    Repeatable
    Select the check box to indicate that the element can have more than one occurrence in the data object.
    Value Restriction
    If the property should be defined as a constant, enumeration, or pattern, use the drop-down list to select one of these options.
    • None

      Default selection.

    • Constant

      Does not apply to BODs.

      A single value that the property must have in the data object.

    • Enumeration

      A list of unique values that are defined for the property. The value for this property in the data object must match one of the defined values exactly.

    • Pattern

      Applies to String properties only.

      A regular expression that the value in the data object must validate against.

    Constant
    Visible only if Constant is selected as the Value Restriction.

    Specify the value that the property in the data object must have.

    Enumerations
    Visible only if Enumeration is selected as the Value Restriction.

    Use the list builder to define the list of valid values for the property. Each item in the list must be unique.

    For BODs, enumeration values are collected from the sample data when a value appears more than once for an element. If Enumeration is selected as the Value Restriction, those collected values are pre-populated in the list builder. To include the collected enumeration values in the object schema, you must manually select Enumeration from the Value Restriction drop-down list.

    To add a value to the list:

    1. Click the Add icon.
    2. Click inside the row that is displayed, to specify a value.
    3. Repeat for as many values as required.

    To remove a value from this list:

    1. Select the value to remove.
    2. Click the Delete icon.
    Pattern
    Visible only if Pattern is selected as the Value Restriction.
    Specify a regular expression that the value must validate against.

    If the selected Data Type is Array, these fields are displayed:

    Array Items Data Type
    A drop-down list that contains supported data types for Array properties. Options are Any, Integer, Number, Object, and String. Type Any does not restrict the values to be a specific data type; all are valid.
    If Object is selected as the Array Items Data Type, a drill-down icon is displayed in the data type column in the data grid. Click this icon to view and edit the array object’s properties.
    This value is inferred from the sample file.
    Minimum Items
    The minimum number of items that must be included in the array.
    Maximum Items
    The maximum number of items that can be included in the array.

    If the selected Data Type is Object, these fields are displayed:

    Minimum Properties
    The minimum number of properties that must be included in the object property.
    Maximum Properties
    The maximum number of properties that can be included in the object property.

    If the selected Data Type is Integer, Decimal, or Number, these fields are displayed:

    Digits Before Decimal
    Applies to Decimal values for BODs only.

    Specify the number of digits that are allowed before the decimal place in the value.

    Digits After Decimal
    Applies to Decimal values for BODs only.

    Specify the number of digits that are allowed after the decimal place in the value.

    Total Digits Allowed
    Applies to Integer values for BODs only.

    Specify the total number of digits allowed for the property value.

    Minimum
    Specify the lowest number that is allowed for the property value.

    If this value should be exclusive, select the Exclusive Minimum check box.

    Does not apply to BODs; all minimum values are defined as inclusive.

    Maximum
    Specify the highest number that is allowed for the property value.

    For JSON and DSV objects, this value is inferred based on the biggest number found for this property in the sample data.

    If this value should be exclusive, select the Exclusive Maximum check box.

    Does not apply to BODs; all maximum values are defined as inclusive.

    Multiple Of
    Does not apply to BODs.

    Use this field to specify a number that the property value in the data object must be a multiple of.

    Tip: This field can be used to specify the number of digits allowed after the decimal in the property value.

    For example, in these situations:

    • If two decimal values are allowed, specify 0.01 as the Multiple Of value.
    • If three decimal values are allowed, specify 0.001 as the Multiple Of value.

    The number of digits following the decimal in the Multiple Of value is the number of digits allowed in the data object property. The value for Multiple Of must end in 1 for desired results.

    If the selected Data Type is String, these fields are displayed:

    Minimum Length
    Specify the minimum number of characters that the property value must have.
    Maximum Length
    Specify the maximum number of characters that is allowed for the property value.

    For JSON and DSV objects, this value is inferred based on the longest string value found for this property in the sample data.

    Format
    Does not apply to BODs.

    A drop-down list that contains the standard Formats for string properties. Use the drop-down to select the format the string value must validate against.

    If the selected Data Type is Date, Time, or Date Time, these fields are visible:

    Format
    Does not apply to BODs.

    Select the format that the property value must have in the data object. The drop-down list contains supported datetime formats. For standard dates, times, and datetimes, this value is inferred, and Standard is selected.

    This table shows the different available formats for a selection that is based on the selected data type for the property:

    Data Type Format Descriptions
    Date Time Standard Standard datetime format according to ISO 8601.

    Example: 2019-12-01T09:15:00Z

    American Standard American datetime format.

    Example: 12/1/2019 9:15:00 AM

    Epoch Milliseconds Epoch Milliseconds datetime format.

    Example: 1575191700000

    Three Character Month Datetime format using the three-character abbreviation for the month.

    Example: 01-DEC-2019 09:15:00

    Other
    Note: Only the defined formats available for selection are supported by Compass queries. Any other variation of a date or datetime is not recognized.
    Any other datetime format that is used by the property in the data object.
    Date Standard Standard date format according to ISO 8601.

    Example: 2019-12-01

    American Standard American date format.

    Example: 12/1/2019

    Basic Date Basic date format according to ISO8601 standards.

    Example: 20191201

    Other
    Note: Only the defined formats available for selection are supported by Compass queries. Any other variation of a date or datetime is not recognized.
    Any other date format that is used by the property in the data object.
    Time
    Note: This format is not supported by Compass queries. Times without dates are treated as string values.
    Standard Standard time format according to ISO 8601.

    Example: 09:15:00

    Other
    Custom format
    If Other is selected in the Any other time format that is used by the property in the data object.Format drop-down list, you can specify the custom format the property uses in the data object. This field is hidden if any other format is selected.
    For more information regarding datetime properties, see “Using datetime formats” in the Infor ION Development Guide.
  2. Click NEXT to proceed with the Additional Metadata page.