зеркало из https://github.com/microsoft/CDM.git
296 строки
9.9 KiB
JSON
296 строки
9.9 KiB
JSON
|
{
|
||
|
"$schema": "./schema.cdm.json",
|
||
|
"jsonSchemaSemanticVersion": "0.6.0",
|
||
|
"imports": [
|
||
|
{
|
||
|
"uri": "/primitives.cdm.json"
|
||
|
},
|
||
|
{
|
||
|
"uri": "/meanings.cdm.json"
|
||
|
}
|
||
|
],
|
||
|
"definitions": [
|
||
|
{
|
||
|
"traitName": "is.CDM",
|
||
|
"extendsTrait": "is",
|
||
|
"elevated": true,
|
||
|
"explanation": "root trait for information about the CDM itself."
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.CDM.entityVersion",
|
||
|
"extendsTrait": "is.CDM",
|
||
|
"hasParameters": [
|
||
|
{
|
||
|
"name": "versionNumber",
|
||
|
"explanation": "semantic version number of the entity",
|
||
|
"direction": "both",
|
||
|
"required": true,
|
||
|
"dataType": "string"
|
||
|
}
|
||
|
],
|
||
|
"associatedProperties": [
|
||
|
"version"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.CDM.attributeGroup",
|
||
|
"extendsTrait": "is.CDM",
|
||
|
"elevated": true,
|
||
|
"explanation": "identifies standard groups of attributes in CDM entities.",
|
||
|
"hasParameters": [
|
||
|
{
|
||
|
"name": "groupList",
|
||
|
"direction": "both",
|
||
|
"dataType": "entity"
|
||
|
}
|
||
|
],
|
||
|
"associatedProperties": [
|
||
|
"cdmSchemas"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"entityName": "CdmObject",
|
||
|
"extendsEntity":"object",
|
||
|
"exhibitsTraits": [
|
||
|
{
|
||
|
"traitReference" : "is.CDM.entityVersion",
|
||
|
"arguments": [
|
||
|
{
|
||
|
"name": "versionNumber",
|
||
|
"value": "0.8"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"entityName": "attributeGroupSet",
|
||
|
"explanation": "a set of references to attributeGroups",
|
||
|
"extendsEntity": "reference",
|
||
|
"hasAttributes": [
|
||
|
{
|
||
|
"name": "attributeGroupReference",
|
||
|
"dataType": "attributeGroup",
|
||
|
"relationship": "hasA"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"entityName": "localizedTable",
|
||
|
"explanation": "localized text",
|
||
|
"extendsEntity": "reference",
|
||
|
"hasAttributes": [
|
||
|
{
|
||
|
"name": "languageTag",
|
||
|
"dataType": "languageTag",
|
||
|
"relationship": "identifiedBy"
|
||
|
},
|
||
|
{
|
||
|
"name": "displayText",
|
||
|
"dataType": "localizedDisplayText",
|
||
|
"relationship": "hasA"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.localized",
|
||
|
"extendsTrait": "is",
|
||
|
"explanation": "Associates a list of localized string with an object",
|
||
|
"hasParameters": [
|
||
|
{
|
||
|
"name": "localizedDisplayText",
|
||
|
"dataType": "entity",
|
||
|
"explanation": "a reference to the constant entity holding the list of localized text",
|
||
|
"direction": "both"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.localized.displayedAs",
|
||
|
"extendsTrait": "is.localized",
|
||
|
"explanation": "Holds the list of language specific display text for an object.",
|
||
|
"associatedProperties": [
|
||
|
"displayName"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.localized.describedAs",
|
||
|
"extendsTrait": "is.localized",
|
||
|
"explanation": "Holds the list of language specific descriptive text for an object.",
|
||
|
"associatedProperties": [
|
||
|
"description"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"entityName": "listLookupValues",
|
||
|
"explanation": "a localized list of descriptions for possible values in a listLookup type attribute",
|
||
|
"extendsEntity": "localizedTable",
|
||
|
"hasAttributes": [
|
||
|
{
|
||
|
"name": "attributeValue",
|
||
|
"dataType": "integer",
|
||
|
"relationship": "identifiedBy"
|
||
|
},
|
||
|
{
|
||
|
"name": "displayOrder",
|
||
|
"dataType": "displayOrder",
|
||
|
"relationship": "orderedBy"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"entityName": "listLookupCorrelatedValues",
|
||
|
"explanation": "a localized list of descriptions for possible values in a listLookupCorrelated type attribute",
|
||
|
"extendsEntity": "listLookupValues",
|
||
|
"hasAttributes": [
|
||
|
{
|
||
|
"name": "correlatedValue",
|
||
|
"dataType": "integer",
|
||
|
"relationship": "identifiedBy",
|
||
|
"explanation": "value for the correlated attribute that corresponds to the associated attributeValue"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "does.haveDefault",
|
||
|
"extendsTrait": "does",
|
||
|
"explanation": "An attribute has a default value",
|
||
|
"hasParameters": [
|
||
|
{
|
||
|
"name": "default",
|
||
|
"dataType": "any",
|
||
|
"required": true,
|
||
|
"direction": "both"
|
||
|
}
|
||
|
],
|
||
|
"associatedProperties": [
|
||
|
"defaultValue"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.nullable",
|
||
|
"extendsTrait": "is",
|
||
|
"explanation": "The attribute value may be set to NULL.",
|
||
|
"associatedProperties": [
|
||
|
"isNullable"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.readOnly",
|
||
|
"extendsTrait": "is",
|
||
|
"associatedProperties": [
|
||
|
"isReadOnly"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.requiredAtLevel",
|
||
|
"extendsTrait": "is",
|
||
|
"explanation": "The requirement level for setting values into this attribute in CDS for Applications or for including this attribute in entities created in CDS for Analytics",
|
||
|
"hasParameters": [
|
||
|
{
|
||
|
"name": "level",
|
||
|
"dataType": "string",
|
||
|
"required": true,
|
||
|
"direction": "both",
|
||
|
"explanation": "values can be: 'systemrequired', 'required', 'recommended', 'none'"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.constrained",
|
||
|
"extendsTrait": "is",
|
||
|
"explanation": "maximum length or value constraints",
|
||
|
"hasParameters": [
|
||
|
{
|
||
|
"name": "maximumLength",
|
||
|
"dataType": "integer",
|
||
|
"direction": "both"
|
||
|
},
|
||
|
{
|
||
|
"name": "minimumValue",
|
||
|
"dataType": "decimal",
|
||
|
"direction": "both"
|
||
|
},
|
||
|
{
|
||
|
"name": "maximumValue",
|
||
|
"dataType": "decimal",
|
||
|
"direction": "both"
|
||
|
}
|
||
|
],
|
||
|
"associatedProperties": [
|
||
|
"maximumValue",
|
||
|
"minimumValue",
|
||
|
"maximumLength"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.constrainedList",
|
||
|
"extendsTrait" : "is",
|
||
|
"explanation": "the values of an attribute are taken from or looked up from a fixed list of possibilities",
|
||
|
"associatedProperties": [
|
||
|
"valueConstrainedToList"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "means.entityState",
|
||
|
"extendsTrait": "does.elevateAttribute",
|
||
|
"explanation": "the attribute represents the current state of the entity."
|
||
|
},
|
||
|
{
|
||
|
"relationshipName": "representsStateWith",
|
||
|
"extendsRelationship": "hasA",
|
||
|
"explanation": "the related attribute describes the current state of the entity",
|
||
|
"exhibitsTraits": [
|
||
|
"means.entityState"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.correlatedWith",
|
||
|
"extendsTrait": "is",
|
||
|
"explanation": "the attribute value is correlated with the sourceAttribute",
|
||
|
"hasParameters": [
|
||
|
{
|
||
|
"name": "sourceAttribute",
|
||
|
"dataType": "attributeName",
|
||
|
"direction": "both",
|
||
|
"required": true
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"relationshipName": "representsCorrelatedStatusWith",
|
||
|
"extendsRelationship": "hasA",
|
||
|
"explanation": "the related attribute describes the current status of the entity in its current state",
|
||
|
"exhibitsTraits": [
|
||
|
"is.correlatedWith"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"dataTypeName": "listLookup",
|
||
|
"extendsDataType": "integer",
|
||
|
"explanation": "One integer value from a defined list of possibilities",
|
||
|
"exhibitsTraits": [
|
||
|
"does.haveDefault",
|
||
|
"does.addSupportingAttribute",
|
||
|
"is.constrainedList"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"dataTypeName": "listLookupMultiple",
|
||
|
"extendsDataType": "string",
|
||
|
"explanation": "A set of one or more values from a defined list of possibilities",
|
||
|
"exhibitsTraits": [
|
||
|
"does.haveDefault",
|
||
|
"does.addSupportingAttribute",
|
||
|
"means.content.text.CSV",
|
||
|
"is.constrainedList"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"traitName": "is.calculationOf",
|
||
|
"extendsTrait": "is.correlatedWith",
|
||
|
"explanation": "the attribute value is the result of a calculation on the sourceAttribute"
|
||
|
}
|
||
|
]
|
||
|
}
|