ReferenceValueDomain#

Fully qualified class name of the UML model DDI-CDI 1.0: DDICDIModels::DDICDILibrary::Classes::DataDescription::Long::ReferenceValueDomain

Definition#

Set of permissible values for a variable playing the role of a variable value component.

Examples#

Consider two variables, i.e. income and age, with values appearing in the same column. A reference variable in this case would be a type of represented variable that can take on values from both income and age. A long data structure might have a column that takes on values from this reference variable. A descriptor variable would then have values paired with the values from the reference variable, pointing to either the income or age variable.

Diagram#

Diagram

Inheritance#

Inheritance
  ᐊ── Long::ReferenceValueDomain

Attributes#

Attributes
Attributes#

Name

Inherited from

Description

Data Type

Multiplicity

Default value

catalogDetails

Representations::ValueDomain

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

Representations::ValueDomain

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

Representations::ValueDomain

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

Identifier

0..1

recommendedDataType

Representations::ValueDomain

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

ControlledVocabularyEntry

0..*

Associations#

Associations
Associations#

Direction

Association

Description

Multiplicity of ReferenceValueDomain

Package of Other Class

Other Class

Multiplicity of other class

Aggregation Kind

Inherited from

to

InstanceValue hasValueFrom ValueDomain

1..1

DataDescription

InstanceValue

0..*

none

Representations::ValueDomain

to

DimensionComponent isStructuredBy ValueDomain

0..1

Components

DimensionComponent

0..*

none

Representations::ValueDomain

to

ReferenceValue hasValueFrom ReferenceValueDomain

1..1

- own package -

ReferenceValue

0..*

none

own class

to

ReferenceVariable takesValuesFrom ReferenceValueDomain

Points to a value domain that contains values that may be drawn from the domains of multiple simple variables.

0..1

- own package -

ReferenceVariable

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 ReferenceValueDomain (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-DataDescription-Long-ReferenceValueDomain"
 5                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ReferenceValueDomain"
 6                  xmi:type="uml:Class">
 7   <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Long-ReferenceValueDomain-ownedComment"
 8                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ReferenceValueDomain-ownedComment"
 9                  xmi:type="uml:Comment">
10      <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-DataDescription-Long-ReferenceValueDomain"/>
11      <body>Definition
12============
13Set of permissible values for a variable playing the role of a variable value component.
14
15Examples
16==========
17Consider two variables, i.e. income and age, with values appearing in the same column. A reference variable in this case would be a type of represented variable that can take on values from both income and age. A long data structure might have a column that takes on values from this reference variable. A descriptor variable would then have values paired with the values from the reference variable, pointing to either the income or age variable.</body>
18   </ownedComment>
19   <name>ReferenceValueDomain</name>
20   <generalization xmi:id="DDICDIModels-DDICDILibrary-Classes-DataDescription-Long-ReferenceValueDomain-generalization"
21                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#ReferenceValueDomain-generalization"
22                    xmi:type="uml:Generalization">
23      <general xmi:idref="DDICDIModels-DDICDILibrary-Classes-Representations-ValueDomain"/>
24   </generalization>
25</packagedElement>

Fragment for the class ReferenceValueDomain (entire XML Schema)

 1<xs:element name="ReferenceValueDomain"
 2            type="ReferenceValueDomainXsdType"
 3            xml:id="ReferenceValueDomain">
 4  <!-- based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::Long::ReferenceValueDomain -->
 5  <xs:annotation>
 6    <xs:documentation>Definition
 7          ============
 8          Set of permissible values for a variable playing the role of a variable value component.
 9          
10          Examples
11          ==========
12          Consider two variables, i.e. income and age, with values appearing in the same column. A reference variable in this case would be a type of represented variable that can take on values from both income and age. A long data structure might have a column that takes on values from this reference variable. A descriptor variable would then have values paired with the values from the reference variable, pointing to either the income or age variable.</xs:documentation>
13  </xs:annotation>
14</xs:element>
15<xs:complexType name="ReferenceValueDomainXsdType"
16                xml:id="ReferenceValueDomainXsdType">
17  <xs:annotation>
18    <xs:documentation>Definition
19          ============
20          Set of permissible values for a variable playing the role of a variable value component.
21          
22          Examples
23          ==========
24          Consider two variables, i.e. income and age, with values appearing in the same column. A reference variable in this case would be a type of represented variable that can take on values from both income and age. A long data structure might have a column that takes on values from this reference variable. A descriptor variable would then have values paired with the values from the reference variable, pointing to either the income or age variable.</xs:documentation>
25  </xs:annotation>
26  <xs:complexContent>
27    <xs:extension base="ValueDomainXsdType">
28      
29    </xs:extension>
30  </xs:complexContent>
31</xs:complexType>

Fragment for the class ReferenceValueDomain (entire JSON Schema)

  1"cls-ReferenceValueDomain": {
  2  "description": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/ReferenceValueDomain",
  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": "ReferenceValueDomain"
 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_ReferenceValueDomain_OF_ReferenceValue": {
 37      "description": "ReferenceValue_hasValueFrom_ReferenceValueDomain",
 38      "$comment": "cardinality 0..-1",
 39      "anyOf": [
 40        {
 41          "$ref": "#/defs/target-ReferenceValue"
 42        },
 43        {
 44          "type": "array",
 45          "items": {
 46            "$ref": "#/defs/target-ReferenceValue"
 47          }
 48        }
 49      ]
 50    },
 51    "takesValuesFrom_OF_ReferenceVariable": {
 52      "description": "ReferenceVariable_takesValuesFrom_ReferenceValueDomain",
 53      "$comment": "cardinality 0..-1",
 54      "anyOf": [
 55        {
 56          "$ref": "#/defs/target-ReferenceVariable"
 57        },
 58        {
 59          "type": "array",
 60          "items": {
 61            "$ref": "#/defs/target-ReferenceVariable"
 62          }
 63        }
 64      ]
 65    },
 66    "hasValueFrom_ValueDomain_OF_InstanceValue": {
 67      "description": "InstanceValue_hasValueFrom_ValueDomain",
 68      "$comment": "cardinality 0..-1",
 69      "anyOf": [
 70        {
 71          "$ref": "#/defs/target-InstanceValue"
 72        },
 73        {
 74          "type": "array",
 75          "items": {
 76            "$ref": "#/defs/target-InstanceValue"
 77          }
 78        }
 79      ]
 80    },
 81    "isStructuredBy_OF_DimensionComponent": {
 82      "description": "DimensionComponent_isStructuredBy_ValueDomain",
 83      "$comment": "cardinality 0..-1",
 84      "anyOf": [
 85        {
 86          "$ref": "#/defs/target-DimensionComponent"
 87        },
 88        {
 89          "type": "array",
 90          "items": {
 91            "$ref": "#/defs/target-DimensionComponent"
 92          }
 93        }
 94      ]
 95    },
 96    "sameAs": {
 97      "$ref": "#/defs/owl:sameAs"
 98    }
 99  },
100  "required": ["@type"],
101  "additionalProperties": false
102},
103"target-ReferenceValueDomain": {
104  "description": "all subclasses of http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/ReferenceValueDomain",
105  "anyOf": [
106    { "$ref": "#/defs/cls-ReferenceValueDomain" },
107    { "type": "string", "format": "iri-reference" }
108  ]
109},

Fragment for the class ReferenceValueDomain (main ontology)

1# class ReferenceValueDomain
2# based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::Long::ReferenceValueDomain
3cdi:ReferenceValueDomain
4  a rdfs:Class, owl:Class, ucmis:Class;
5  rdfs:label "ReferenceValueDomain";
6  rdfs:comment "Definition\n============\nSet of permissible values for a variable playing the role of a variable value component.\n\nExamples\n==========\nConsider two variables, i.e. income and age, with values appearing in the same column. A reference variable in this case would be a type of represented variable that can take on values from both income and age. A long data structure might have a column that takes on values from this reference variable. A descriptor variable would then have values paired with the values from the reference variable, pointing to either the income or age variable."@en;
7  rdfs:subClassOf cdi:ValueDomain;
8.

Fragment for the class ReferenceValueDomain (entire JSON-LD)

 1{
 2  "@context": [
 3    "ValueDomain.jsonld",
 4    {
 5      "cdi": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/",
 6      "xsd": "http://www.w3.org/2001/XMLSchema#",
 7
 8      
 9      "hasValueFrom_ReferenceValueDomain_OF_ReferenceValue": {
10        "@reverse": "cdi:ReferenceValue_hasValueFrom_ReferenceValueDomain",
11        "@type": "@id",
12        "@context": "ReferenceValue.jsonld"
13      },
14      "takesValuesFrom_OF_ReferenceVariable": {
15        "@reverse": "cdi:ReferenceVariable_takesValuesFrom_ReferenceValueDomain",
16        "@type": "@id",
17        "@context": "ReferenceVariable.jsonld"
18      },
19      " comment ": "tag:json-should-support-trailing-commas"
20    }
21  ],
22  "generatedBy": "This code was generated by the Eclipse Acceleo project UCMIS M2T on 2025-08-29 14:34:51.",
23  "basedOn": "based on the UML data type DDICDIModels::DDICDILibrary::Classes::DataDescription::Long::ReferenceValueDomain"
24}

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

 1# class ReferenceValueDomain
 2# based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::Long::ReferenceValueDomain
 3<#ReferenceValueDomain> a sh:NodeShape;
 4    sh:targetClass cdi:ReferenceValueDomain;
 5	sh:message "See http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/ReferenceValueDomain";
 6	sh:closed true;
 7	sh:ignoredProperties ( owl:sameAs );
 8    sh:property [
 9			sh:path rdf:type;
10			sh:in (   cdi:ReferenceValueDomain
11			 ) ;
12    ];
13    # attributes
14    # associations from ReferenceValueDomain
15    # associations to ReferenceValueDomain
16    sh:property <#rev_ReferenceValue_hasValueFrom_ReferenceValueDomain>;
17    sh:property <#rev_ReferenceVariable_takesValuesFrom_ReferenceValueDomain>;
18
19    # ---- superclass: ValueDomain
20    # attributes
21    sh:property <#ValueDomain-catalogDetails>;
22    sh:property <#ValueDomain-displayLabel>;
23    sh:property <#ValueDomain-identifier>;
24    sh:property <#ValueDomain-recommendedDataType>;
25    # associations from ValueDomain
26    # associations to ValueDomain
27    sh:property <#rev_InstanceValue_hasValueFrom_ValueDomain>;
28    sh:property <#rev_DimensionComponent_isStructuredBy_ValueDomain>;
29
30
31
32
33
34.

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

1# class ReferenceValueDomain
2# based on the UML class DDICDIModels::DDICDILibrary::Classes::DataDescription::Long::ReferenceValueDomain
3cdi:ReferenceValueDomainShape CLOSED {
4	a [cdi:ReferenceValueDomain];
5	^cdi:ReferenceValue_hasValueFrom_ReferenceValueDomain @cdi:ReferenceValueShape *;
6	^cdi:ReferenceVariable_takesValuesFrom_ReferenceValueDomain @cdi:ReferenceVariableShape *;
7		&cdi:ValueDomainProperties;
8	}