ValueDomain#

Fully qualified class name of the UML model DDI-CDI 1.0: DDICDIModels::DDICDILibrary::Classes::Representations::ValueDomain

Definition#

Set of permissible values for a variable (adapted from ISO/IEC 11179).

Examples#

Age categories with a numeric code list; Age in years; Young, Middle-aged and Old.

Explanatory notes#

The values can be described by enumeration or by an expression. Value domains can be either substantive/sentinel, or described/enumeration.

Diagram#

Diagram

Inheritance#

Inheritance

Attributes#

Attributes
Attributes#

Name

Inherited from

Description

Data Type

Multiplicity

Default value

catalogDetails

- own class -

Bundles the information useful for a data catalog entry.

Examples would be creator, contributor, title, copyright, embargo, and license information

A set of information useful for attribution, data discovery, and access. This is information that is tied to the identity of the object. If this information changes the version of the associated object changes.

CatalogDetails

0..1

displayLabel

- own class -

A human-readable display label for the object. Supports the use of multiple languages. Repeat for labels with different content, for example, labels with differing length limitations.

LabelForDisplay

0..*

identifier

- own class -

Identifier for objects requiring short- or long-lasting referencing and management.

Identifier

0..1

recommendedDataType

- own class -

The data types that are recommended for use with this domain.

ControlledVocabularyEntry

0..*

Associations#

Associations
Associations#

Direction

Association

Description

Multiplicity of ValueDomain

Package of Other Class

Other Class

Multiplicity of other class

Aggregation Kind

Inherited from

to

InstanceValue hasValueFrom ValueDomain

1..1

DataDescription

InstanceValue

0..*

none

own class

to

DimensionComponent isStructuredBy ValueDomain

0..1

Components

DimensionComponent

0..*

none

own class

Encodings#

Syntax representations / encodings

All syntax representations except the Canonical XMI are provided as reference points for specific implementations, or for use as defaults if sufficient in the form presented.

Fragment for the class ValueDomain (entire model as XMI)

  1<packagedElement xmlns:StandardProfile="http://www.omg.org/spec/UML/20131001/StandardProfile"
  2                  xmlns:uml="http://www.omg.org/spec/UML/20131001"
  3                  xmlns:xmi="http://www.omg.org/spec/XMI/20131001"
  4                  xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain"
  5                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain"
  6                  xmi:type="uml:Class">
  7   <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-ownedComment"
  8                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-ownedComment"
  9                  xmi:type="uml:Comment">
 10      <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain"/>
 11      <body>Definition 
 12============ 
 13Set of permissible values for a variable (adapted from ISO/IEC 11179).  
 14
 15Examples 
 16========== 
 17Age categories with a numeric code list; Age in years; Young, Middle-aged and Old.  
 18
 19Explanatory notes 
 20=================== 
 21The values can be described by enumeration or by an expression. Value domains can be either substantive/sentinel, or described/enumeration.</body>
 22   </ownedComment>
 23   <name>ValueDomain</name>
 24   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-catalogDetails"
 25                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-catalogDetails"
 26                    xmi:type="uml:Property">
 27      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-catalogDetails-ownedComment"
 28                     xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-catalogDetails-ownedComment"
 29                     xmi:type="uml:Comment">
 30         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-catalogDetails"/>
 31         <body>Bundles the information useful for a data catalog entry. 
 32
 33Examples would be creator, contributor, title, copyright, embargo, and license information
 34
 35A set of information useful for attribution, data discovery, and access.
 36This is information that is tied to the identity of the object. If this information changes the version of the associated object changes.</body>
 37      </ownedComment>
 38      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-catalogDetails-lowerValue"
 39                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-catalogDetails-lowerValue"
 40                   xmi:type="uml:LiteralInteger"/>
 41      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-catalogDetails-upperValue"
 42                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-catalogDetails-upperValue"
 43                   xmi:type="uml:LiteralUnlimitedNatural">
 44         <value>1</value>
 45      </upperValue>
 46      <name>catalogDetails</name>
 47      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-CatalogDetails"/>
 48   </ownedAttribute>
 49   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-displayLabel"
 50                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-displayLabel"
 51                    xmi:type="uml:Property">
 52      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-displayLabel-ownedComment"
 53                     xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-displayLabel-ownedComment"
 54                     xmi:type="uml:Comment">
 55         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-displayLabel"/>
 56         <body>A human-readable display label for the object. Supports the use of multiple languages. Repeat for labels with different content, for example, labels with differing length limitations.</body>
 57      </ownedComment>
 58      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-displayLabel-lowerValue"
 59                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-displayLabel-lowerValue"
 60                   xmi:type="uml:LiteralInteger"/>
 61      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-displayLabel-upperValue"
 62                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-displayLabel-upperValue"
 63                   xmi:type="uml:LiteralUnlimitedNatural">
 64         <value>*</value>
 65      </upperValue>
 66      <name>displayLabel</name>
 67      <isOrdered>true</isOrdered>
 68      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-LabelForDisplay"/>
 69   </ownedAttribute>
 70   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-identifier"
 71                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-identifier"
 72                    xmi:type="uml:Property">
 73      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-identifier-ownedComment"
 74                     xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-identifier-ownedComment"
 75                     xmi:type="uml:Comment">
 76         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-identifier"/>
 77         <body>Identifier for objects requiring short- or long-lasting referencing and management.</body>
 78      </ownedComment>
 79      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-identifier-lowerValue"
 80                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-identifier-lowerValue"
 81                   xmi:type="uml:LiteralInteger"/>
 82      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-identifier-upperValue"
 83                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-identifier-upperValue"
 84                   xmi:type="uml:LiteralUnlimitedNatural">
 85         <value>1</value>
 86      </upperValue>
 87      <name>identifier</name>
 88      <isID>true</isID>
 89      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-Identifier"/>
 90   </ownedAttribute>
 91   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-recommendedDataType"
 92                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-recommendedDataType"
 93                    xmi:type="uml:Property">
 94      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-recommendedDataType-ownedComment"
 95                     xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-recommendedDataType-ownedComment"
 96                     xmi:type="uml:Comment">
 97         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-recommendedDataType"/>
 98         <body>The data types that are recommended for use with this domain.</body>
 99      </ownedComment>
100      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-recommendedDataType-lowerValue"
101                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-recommendedDataType-lowerValue"
102                   xmi:type="uml:LiteralInteger"/>
103      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain-recommendedDataType-upperValue"
104                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ValueDomain-recommendedDataType-upperValue"
105                   xmi:type="uml:LiteralUnlimitedNatural">
106         <value>*</value>
107      </upperValue>
108      <name>recommendedDataType</name>
109      <isOrdered>true</isOrdered>
110      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-ControlledVocabularyEntry"/>
111   </ownedAttribute>
112</packagedElement>

Fragment for the class ValueDomain (entire XML Schema)

 1<xs:element name="ValueDomain"
 2            type="ValueDomainXsdType"
 3            xml:id="ValueDomain">
 4  <!-- based on the UML class DDICDIModels::DDICDILibrary::Classes::Representations::ValueDomain -->
 5  <xs:annotation>
 6    <xs:documentation>Definition 
 7          ============ 
 8          Set of permissible values for a variable (adapted from ISO/IEC 11179).  
 9          
10          Examples 
11          ========== 
12          Age categories with a numeric code list; Age in years; Young, Middle-aged and Old.  
13          
14          Explanatory notes 
15          =================== 
16          The values can be described by enumeration or by an expression. Value domains can be either substantive/sentinel, or described/enumeration.</xs:documentation>
17  </xs:annotation>
18</xs:element>
19<xs:complexType name="ValueDomainXsdType"
20                xml:id="ValueDomainXsdType">
21  <xs:annotation>
22    <xs:documentation>Definition 
23          ============ 
24          Set of permissible values for a variable (adapted from ISO/IEC 11179).  
25          
26          Examples 
27          ========== 
28          Age categories with a numeric code list; Age in years; Young, Middle-aged and Old.  
29          
30          Explanatory notes 
31          =================== 
32          The values can be described by enumeration or by an expression. Value domains can be either substantive/sentinel, or described/enumeration.</xs:documentation>
33  </xs:annotation>
34  <xs:sequence>
35    <xs:element name="catalogDetails"
36                type="CatalogDetailsXsdType"
37                minOccurs="0"
38                maxOccurs="1"
39                xml:id="ValueDomain-catalogDetails">
40      <xs:annotation>
41        <xs:documentation>Bundles the information useful for a data catalog entry. 
42        
43        Examples would be creator, contributor, title, copyright, embargo, and license information
44        
45        A set of information useful for attribution, data discovery, and access.
46        This is information that is tied to the identity of the object. If this information changes the version of the associated object changes.</xs:documentation>
47      </xs:annotation>
48    </xs:element>
49    <xs:element name="displayLabel"
50                type="LabelForDisplayXsdType"
51                minOccurs="0"
52                maxOccurs="unbounded"
53                xml:id="ValueDomain-displayLabel">
54      <xs:annotation>
55        <xs:documentation>A human-readable display label for the object. Supports the use of multiple languages. Repeat for labels with different content, for example, labels with differing length limitations.</xs:documentation>
56      </xs:annotation>
57    </xs:element>
58    <xs:element name="identifier"
59                type="IdentifierXsdType"
60                minOccurs="0"
61                maxOccurs="1"
62                xml:id="ValueDomain-identifier">
63      <xs:annotation>
64        <xs:documentation>Identifier for objects requiring short- or long-lasting referencing and management.</xs:documentation>
65      </xs:annotation>
66    </xs:element>
67    <xs:element name="recommendedDataType"
68                type="ControlledVocabularyEntryXsdType"
69                minOccurs="0"
70                maxOccurs="unbounded"
71                xml:id="ValueDomain-recommendedDataType">
72      <xs:annotation>
73        <xs:documentation>The data types that are recommended for use with this domain.</xs:documentation>
74      </xs:annotation>
75    </xs:element>
76  </xs:sequence>
77</xs:complexType>

Fragment for the class ValueDomain (entire JSON Schema)

 1"cls-ValueDomain": {
 2  "description": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/ValueDomain",
 3  "type": "object",
 4  "properties": {
 5    "@context": {
 6      "$ref": "#/defs/at-context"
 7    },
 8    "@id": {
 9      "type": "string",
10      "format": "iri-reference"
11    },
12    "@type": {
13      "const": "ValueDomain"
14    },
15    "catalogDetails": {
16      "$comment": "cardinality 0..1 – from cdi:ValueDomain",
17      "$ref": "#/defs/dt-CatalogDetails"
18    },
19    "displayLabel": {
20      "$comment": "cardinality 0..-1 – from cdi:ValueDomain",
21      "if": { "type": "array" },
22      "then": { "items": { "$ref": "#/defs/dt-LabelForDisplay" } },
23      "else": { "$ref": "#/defs/dt-LabelForDisplay" }
24    },
25    "identifier": {
26      "$comment": "cardinality 0..1 – from cdi:ValueDomain",
27      "$ref": "#/defs/dt-Identifier"
28    },
29    "recommendedDataType": {
30      "$comment": "cardinality 0..-1 – from cdi:ValueDomain",
31      "if": { "type": "array" },
32      "then": { "items": { "$ref": "#/defs/dt-ControlledVocabularyEntry" } },
33      "else": { "$ref": "#/defs/dt-ControlledVocabularyEntry" }
34    },
35    
36    "hasValueFrom_ValueDomain_OF_InstanceValue": {
37      "description": "InstanceValue_hasValueFrom_ValueDomain",
38      "$comment": "cardinality 0..-1",
39      "anyOf": [
40        {
41          "$ref": "#/defs/target-InstanceValue"
42        },
43        {
44          "type": "array",
45          "items": {
46            "$ref": "#/defs/target-InstanceValue"
47          }
48        }
49      ]
50    },
51    "isStructuredBy_OF_DimensionComponent": {
52      "description": "DimensionComponent_isStructuredBy_ValueDomain",
53      "$comment": "cardinality 0..-1",
54      "anyOf": [
55        {
56          "$ref": "#/defs/target-DimensionComponent"
57        },
58        {
59          "type": "array",
60          "items": {
61            "$ref": "#/defs/target-DimensionComponent"
62          }
63        }
64      ]
65    },
66    "sameAs": {
67      "$ref": "#/defs/owl:sameAs"
68    }
69  },
70  "required": ["@type"],
71  "additionalProperties": false
72},
73"target-ValueDomain": {
74  "description": "all subclasses of http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/ValueDomain",
75  "anyOf": [
76    { "$ref": "#/defs/cls-ValueDomain" },
77    { "$ref": "#/defs/cls-ReferenceValueDomain" },
78    { "$ref": "#/defs/cls-SentinelValueDomain" },
79    { "$ref": "#/defs/cls-SubstantiveValueDomain" },
80    { "type": "string", "format": "iri-reference" }
81  ]
82},

Fragment for the class ValueDomain (main ontology)

 1# class ValueDomain
 2# based on the UML class DDICDIModels::DDICDILibrary::Classes::Representations::ValueDomain
 3cdi:ValueDomain
 4  a rdfs:Class, owl:Class, ucmis:Class;
 5  rdfs:label "ValueDomain";
 6  rdfs:comment "Definition \n============ \nSet of permissible values for a variable (adapted from ISO/IEC 11179).  \n\nExamples \n========== \nAge categories with a numeric code list; Age in years; Young, Middle-aged and Old.  \n\nExplanatory notes \n=================== \nThe values can be described by enumeration or by an expression. Value domains can be either substantive/sentinel, or described/enumeration."@en;
 7  
 8.
 9
10cdi:ValueDomain-catalogDetails
11  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
12  rdfs:label "catalogDetails";
13  rdfs:comment "Bundles the information useful for a data catalog entry. \n\nExamples would be creator, contributor, title, copyright, embargo, and license information\n\nA set of information useful for attribution, data discovery, and access.\nThis is information that is tied to the identity of the object. If this information changes the version of the associated object changes."@en;
14  rdfs:domain cdi:ValueDomain;
15  rdfs:range cdi:CatalogDetails;
16.
17
18cdi:ValueDomain-displayLabel
19  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
20  rdfs:label "displayLabel";
21  rdfs:comment "A human-readable display label for the object. Supports the use of multiple languages. Repeat for labels with different content, for example, labels with differing length limitations."@en;
22  rdfs:domain cdi:ValueDomain;
23  rdfs:range cdi:LabelForDisplay;
24.
25
26cdi:ValueDomain-identifier
27  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
28  rdfs:label "identifier";
29  rdfs:comment "Identifier for objects requiring short- or long-lasting referencing and management."@en;
30  rdfs:domain cdi:ValueDomain;
31  rdfs:range cdi:Identifier;
32.
33
34cdi:ValueDomain-recommendedDataType
35  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
36  rdfs:label "recommendedDataType";
37  rdfs:comment "The data types that are recommended for use with this domain."@en;
38  rdfs:domain cdi:ValueDomain;
39  rdfs:range cdi:ControlledVocabularyEntry;
40.

Fragment for the class ValueDomain (entire JSON-LD)

 1{
 2  "@context": [
 3    {
 4      "cdi": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/",
 5      "xsd": "http://www.w3.org/2001/XMLSchema#",
 6
 7      "catalogDetails": {
 8        "@id": "cdi:ValueDomain-catalogDetails",
 9        "@type": "@id",
10        "@context": "CatalogDetails.jsonld"
11      },
12      "displayLabel": {
13        "@id": "cdi:ValueDomain-displayLabel",
14        "@type": "@id",
15        "@context": "LabelForDisplay.jsonld"
16      },
17      "identifier": {
18        "@id": "cdi:ValueDomain-identifier",
19        "@type": "@id",
20        "@context": "Identifier.jsonld"
21      },
22      "recommendedDataType": {
23        "@id": "cdi:ValueDomain-recommendedDataType",
24        "@type": "@id",
25        "@context": "ControlledVocabularyEntry.jsonld"
26      },
27      
28      "hasValueFrom_ValueDomain_OF_InstanceValue": {
29        "@reverse": "cdi:InstanceValue_hasValueFrom_ValueDomain",
30        "@type": "@id",
31        "@context": "InstanceValue.jsonld"
32      },
33      "isStructuredBy_OF_DimensionComponent": {
34        "@reverse": "cdi:DimensionComponent_isStructuredBy_ValueDomain",
35        "@type": "@id",
36        "@context": "DimensionComponent.jsonld"
37      },
38      " comment ": "tag:json-should-support-trailing-commas"
39    }
40  ],
41  "generatedBy": "This code was generated by the Eclipse Acceleo project UCMIS M2T on 2025-08-29 14:34:55.",
42  "basedOn": "based on the UML data type DDICDIModels::DDICDILibrary::Classes::Representations::ValueDomain"
43}

Fragment for the class ValueDomain (entire SHACL - Shapes Constraint Language)

 1# class ValueDomain
 2# based on the UML class DDICDIModels::DDICDILibrary::Classes::Representations::ValueDomain
 3<#ValueDomain> a sh:NodeShape;
 4    sh:targetClass cdi:ValueDomain;
 5	sh:message "See http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/ValueDomain";
 6	sh:closed true;
 7	sh:ignoredProperties ( owl:sameAs );
 8    sh:property [
 9			sh:path rdf:type;
10			sh:in (   cdi:ValueDomain
11			  cdi:ReferenceValueDomain
12			  cdi:SentinelValueDomain
13			  cdi:SubstantiveValueDomain
14			  cdi:DescriptorValueDomain
15			 ) ;
16    ];
17    # attributes
18    sh:property <#ValueDomain-catalogDetails>;
19    sh:property <#ValueDomain-displayLabel>;
20    sh:property <#ValueDomain-identifier>;
21    sh:property <#ValueDomain-recommendedDataType>;
22    # associations from ValueDomain
23    # associations to ValueDomain
24    sh:property <#rev_InstanceValue_hasValueFrom_ValueDomain>;
25    sh:property <#rev_DimensionComponent_isStructuredBy_ValueDomain>;
26
27
28
29.
30
31<#ValueDomain-catalogDetails> a sh:PropertyShape ;
32    sh:path cdi:ValueDomain-catalogDetails;
33    sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
34        cdi:CatalogDetails
35      
36    ) ]];
37    sh:maxCount 1;
38.
39<#ValueDomain-displayLabel> a sh:PropertyShape ;
40    sh:path cdi:ValueDomain-displayLabel;
41    sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
42        cdi:LabelForDisplay
43      
44    ) ]];
45.
46<#ValueDomain-identifier> a sh:PropertyShape ;
47    sh:path cdi:ValueDomain-identifier;
48    sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
49        cdi:Identifier
50      
51    ) ]];
52    sh:maxCount 1;
53.
54<#ValueDomain-recommendedDataType> a sh:PropertyShape ;
55    sh:path cdi:ValueDomain-recommendedDataType;
56    sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
57        cdi:ControlledVocabularyEntry
58      
59    ) ]];
60.

Fragment for the class ValueDomain (entire ShEx - Shape Expressions)

 1# class ValueDomain
 2# based on the UML class DDICDIModels::DDICDILibrary::Classes::Representations::ValueDomain
 3cdi:ValueDomainShape CLOSED {
 4	a [cdi:ValueDomain];
 5	$cdi:ValueDomainProperties (
 6	cdi:ValueDomain-catalogDetails	@cdi:CatalogDetailsShape?;
 7	cdi:ValueDomain-displayLabel	@cdi:LabelForDisplayShape*;
 8	cdi:ValueDomain-identifier	@cdi:IdentifierShape?;
 9	cdi:ValueDomain-recommendedDataType	@cdi:ControlledVocabularyEntryShape*;
10	^cdi:InstanceValue_hasValueFrom_ValueDomain @cdi:InstanceValueShape OR @cdi:KeyMemberShape OR @cdi:ReferenceValueShape*;
11	^cdi:DimensionComponent_isStructuredBy_ValueDomain @cdi:DimensionComponentShape *;
12		);
13}