SMML Elements: Common

Expression Elements

  • expressionTemplate (required property) — Defines and stores the join's expression.

  • expressionObjects — The objects referenced in the join expression.

DataType Enumerated Values

  • BINARY
  • BIT
  • BOOLEAN
  • CHAR
  • DATETIME
  • DOUBLE
  • FLOAT
  • NUMBER
  • INT
  • INTERVAL
  • LONGVARBINARY
  • LONGVARCHAR
  • NUMERIC
  • OBJECT
  • SMALLINT
  • SMALUINT
  • TIME
  • TIMESTAMP
  • TINYINT
  • TINYUINT
  • UINT
  • UNKNOWN
  • VARBINARY
  • VARCHAR

Permission Elements

  • accessor (required property) — An application role to assign access.

  • access (required property) — The permission access value. The value can be READ, WRITE, and NO ACCESS.

DataFilter Elements

  • accessor (required property) — Lists the application role to assign query limits to.

  • functionalGroup — Functional groups defined for the application roles with different data access filters on the same semantic model object, usually a logical fact table.
  • status — Specifies if the data filter is enabled.

  • filter (required property) — The criteria for the data filter.

Localization Elements

  • localizationKey — A tag assigned to the presentation object for localization translation.
  • nameVariable — The variable that provides the value for the localization display name.
  • descriptionVariable — The variable that provides the value for the localization description.

DataBaseType Enumerated Values

  • ORACLE_12C
  • SQL_SERVER_2012
  • TERADATA_V13
  • INFORMIX_IDS_9
  • DB2_AS400
  • SYBASE_ASE_15
  • SYBASE_IQ_12
  • MYSQL
  • IMPALA
  • APACHE_SPARK
  • REDSHIFT
  • MONGO_DB
  • SNOWFLAKE
  • MONETDB
  • DEFAULT

Caching Elements

  • enable — If set to TRUE, data is cached.

  • expiryTime — The time duration after which a cache entry expires.

  • expiryUnit — Unit of time. For example, SECONDS, MINUTES, HOURS, DAYS.

JoinType Enumerated Values

  • INNER
  • LEFT_OUTER
  • RIGHT_OUTER
  • FULL_OUTER
  • FULL_OUTER)STITCH

Syntax

{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "type": "object",
    "additionalProperties": false,
    "definitions": {
        "Expression": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "expressionTemplate": {
                    "type": "string"
                },
                "expressionObjects": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "required": [
                "expressionTemplate"
            ],
            "title": "Expression"
        },
        "DataType": {
            "type": "string",
            "enum": [
                "BINARY",
                "BIT",
                "BOOLEAN",
                "CHAR",
                "DATE",
                "DATETIME",
                "DOUBLE",
                "FLOAT",
                "NUMBER",
                "INT",
                "INTERVAL",
                "LONGVARBINARY",
                "LONGVARCHAR",
                "NUMERIC",
                "OBJECT",
                "SMALLINT",
                "SMALUINT",
                "TIME",
                "TIMESTAMP",
                "TINYINT",
                "TINYUINT",
                "UINT",
                "UNKNOWN",
                "VARBINARY",
                "VARCHAR"
            ],
            "title": "DataType"
        },
        "Permission": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "accessor": {
                    "type": "string"
                },
                "access": {
                    "type": "string",
                    "enum": ["WRITE", "READ", "NO_ACCESS"]
                }
            },
            "required": [
                "access",
                "accessor"
            ],
            "title": "Permission"
        },
        "DataFilter": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "accessor": {
                    "type": "string"
                },
                "functionalGroup": {
                    "type": "string"
                },
                "status": {
                    "type": "string",
                    "enum": ["ENABLED", "DISABLED", "IGNORED"]
                },
                "filter": {
                    "$ref": "#/definitions/Expression"
                }
            },
            "required": [
                "accessor",
                "filter"
            ],
            "title": "DataFilter"
        },
        "Localization": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "localizationKey": {
                    "type": "string"
                },
                "nameVariable": {
                    "type": "string"
                },
                "descriptionVariable": {
                    "type": "string"
                }
            },
            "title": "Localization"
        },
        "DatabaseType": {
            "type": "string",
            "enum": [
                "ORACLE_DATABASE",
                "ORACLE_ADW",
                "SQL_SERVER",
                "TERADATA",
                "INFORMIX",
                "DB2",
                "SYBASE_ASE",
                "SYBASE_IQ",
                "MYSQL",
                "IMPALA",
                "APACHE_SPARK",
                "REDSHIFT",
                "MONGO_DB",
                "SNOWFLAKE",
                "MONETDB",
                "DEFAULT"
            ],
            "title": "DatabaseType"
        },
        "Caching": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "enable": {
                    "type": "boolean"
                },
                "expiryTime": {
                    "type": "integer"
                },
                "expiryUnit": {
                    "enum": [
                        "SECONDS",
                        "MINUTES",
                        "HOURS",
                        "DAYS"
                    ]
                }
            },
            "title": "Caching"
        },
        "JoinType": {
            "type": "string",
            "enum": [
                "INNER",
                "LEFT_OUTER",
                "RIGHT_OUTER",
                "FULL_OUTER",
                "FULL_OUTER_STITCH"
            ],
            "title": "JoinType"
        }
    }
}