Attribute types

The Data Model supports the following attribute types:

  • STRING
  • NUMBER
  • CURRENCY
  • BOOLEAN
  • OBJECT
  • ARRAY
    • ARRAY OF STRINGS
    • ARRAY OF NUMBERS
    • ARRAY OF BOOLEANS
    • ARRAY OF OBJECTS
    • ARRAY OF ENUMS
  • ENUM
  • DATE

Currency attribute

Currencies are managed using an object structure that ensures accurate representation and localization.

  • Currency Object Structure:
    • Includes amount (numerical value) and code (ISO 4217 currency code, e.g., USD, EUR).
    • Example:
      {
        "amount": 12000.78,
        "code": "USD"
      }
      
  • Regional Formatting:
    • Currency values adapt to regional conventions for grouping, decimals, and symbol placement. For instance:
      • en-US (United States): $12,000.78 (symbol before the value, comma for grouping, dot for decimals).
      • ro-RO (Romania): 12.000,78 RON (dot for grouping, comma for decimals, code appended).
  • Fallback Behavior: If the code is null, the system defaults to the locale’s predefined currency settings.
  • UI Integration:
    • Currency input fields dynamically format values based on locale settings and save the amount and code into the data store.
    • Sliders and other components follow the same behavior, formatting values and labels according to the locale.

Localization and internationalization

Check this section for more details about l10n & i18n

Date attribute

Dates are represented in ISO 8601 format and dynamically formatted based on locale and application settings.

  • Locale-Specific Date Formats: FlowX dynamically applies regional date formatting rules based on the locale. For instance:
    • en-US (United States): MM/DD/YYYY09/28/2024
    • fr-FR (France): DD/MM/YYYY28/09/2024
  • Customizable Formats: You can choose from predefined formats (e.g., short, medium, long, full) or define custom formats at both application and UI Designer levels.
  • Timezone Handling:
    • Standard Date: Adjusts to the current timezone.
    • Date Agnostic: Ignores time zones, using GMT for consistent representation.
  • ISO 8601 Compliance: Ensures compatibility with international standards.

Localization and internationalization

Check this section for more details about l10n & i18n

Number attribute

The Number attribute type supports two subtypes: integers and floating point numbers, providing flexibility to represent whole numbers or decimal values as required.

  • Subtypes
    • Integer: Represents whole numbers without any fractional or decimal part.
      • Example: 1, 42, 1000
    • Floating Point: Represents numbers with a decimal point, enabling precise storage and representation of fractional values.
      • Example: 3.14, 0.01, -123.456
  • Locale-Specific Formatting:
    • Numbers adapt to regional conventions for decimal separators and digit grouping. For example:
      • en-US (United States): 1,234.56 (comma for grouping, dot for decimals)
      • de-DE (Germany): 1.234,56 (dot for grouping, comma for decimals)
      • fr-FR (France): 1 234,56 (space for grouping, comma for decimals)
  • Precision Settings:
    • Minimum Decimals: Ensures a minimum number of decimal places are displayed, adding trailing zeros if necessary.
    • Maximum Decimals: Limits the number of decimal places stored, rounding values to the defined precision.

These settings can be overriden at the application level or in the UI Designer for specific components.

  • Validation:
    • Enforce range constraints (e.g., minimum and maximum values).
    • Input fields automatically apply formatting masks to prevent invalid data entry.

Localization and internationalization

Check this section for more details about l10n & i18n

Creatinga a data model

In the Data Model, you can add new key-pair values, allowing seamless integration with the UI Designer. This functionality enables quick shortcuts for adding new keys without switching between menus

Example:

Data model reference

The “View References” feature allows you to see where specific attributes are used within the data model. This includes:

  • Process Keys: Lists all process keys linked to an attribute.
  • UI Elements: Displays references such as the element label, node name, and UI Element key.

Sensitive data

Protect sensitive information by flagging specific keys in the data model. This ensures data is hidden from process details and browser console outputs.

Reporting

The Use in Reporting tag allows you to designate keys for use in the reporting plugin, enabling efficient tracking and analysis.

Reporting