InstanceVariable#

Fully qualified class name of the UML model DDI-CDI 1.1beta: DDICDIModels::DDICDILibrary::Classes::Conceptual::InstanceVariable

Definition#

Use of a represented variable within a data set.

Examples#

  1. Gender: Dan Gillman has gender <m, male>, Arofan Gregory has gender <m, male>, etc.

  2. Number of employees: Microsoft has 90,000 employees; IBM has 433,000 employees, etc.

  3. Endowment: Johns Hopkins has endowment of <3, $1,000,000 and above>, Yale has endowment of <3, $1,000,000 and above>, etc.

  4. A tornado near Winterset, Iowa, had a peak wind speed of 170 mph. Two instance variables of a person’s height reference the same represented variable. This indicates that they are intended to: be measured with the same unit of measurement, have the same intended data type, have the same substantive value domain, use a sentinel value domain drawn from the same set of sentinel value domains, have the same sentinel (missing value) concepts, and draw their population from the same universe. In other words, the two instance variables should be comparable.

Explanatory notes#

The instance variable class inherits all of the properties and relationships of the represented variable class and, in turn, the conceptual variable class. This means that an instance variable can be completely populated without the need to create an associated represented variable or conceptual variable. If, however, a user wishes to indicate that a particular instance variable is patterned after a particular represented variable or a particular conceptual variable that may be indicated by including a relationship to the represented variable and/or conceptual variable. Including these references is an important method of indicating that multiple instance variables have the same representation, measure the same concept, and are drawn from the same universe. If two instance variables of a person’s height reference the same represented variable. This indicates that they are intended to: be measured with the same unit of measurement, have the same intended data type, have the same substantive value domain, use a sentinel value domain drawn from the same set of sentinel value domains, have the same sentinel (missing value) concepts, and draw their population from the same universe. In other words, the two instance variables should be comparable. The instance variable describes actual instances of data that have been collected.

Diagram#

Diagram

Inheritance#

Inheritance
      ᐊ── Conceptual::InstanceVariable
        ᐊ── Long::DescriptorVariable
        ᐊ── Long::ReferenceVariable

Attributes#

Attributes
Attributes#

Name

Inherited from

Description

Data Type

Multiplicity

Default value

function

- own class -

Immutable characteristic of the variable such as geographic designator, weight, temporal designation, etc.

ControlledVocabularyEntry

0..*

physicalDataType

- own class -

The base datatype of the physical representation. An integer instance variable might, for example, be stored as a floating point number. From the W3C Recommendation “Metadata Vocabulary for Tabular Data” (https://www.w3.org/TR/tabular-metadata/) Inherited 5.7: “datatype: An atomic property that contains either a single string that is the main datatype of the values of the cell or a datatype description object. If the value of this property is a string, it MUST be the name of one of the built-in datatypes defined in section 5.11.1 Built-in Datatypes and this value is normalized to an object whose base property is the original string value. If it is an object then it describes a more specialized datatype. If a cell contains a sequence (i.e. the separator property is specified and not null) then this property specifies the datatype of each value within that sequence. See 5.11 Datatypes and Parsing Cells in [tabular-data-model] for more details. The normalized value of this property becomes the datatype annotation for the described column.”

ControlledVocabularyEntry

0..1

platformType

- own class -

Describes the application or technical system context in which the variable has been realized. Typically a statistical processing package or other processing environment.

ControlledVocabularyEntry

0..1

role

- own class -

Role of the variable when no reusable data structure is available or necessary. The role can be any of the types of data structure components supported, e.g. identifier, measure, dimension, attribute, etc. (that means the data structure is not reused across physical data sets)

ControlledVocabularyEntry

0..*

source

- own class -

Reference capturing provenance information of the instance variable.

Reference

0..1

describedUnitOfMeasure

Conceptual::RepresentedVariable

The unit in which the data values are measured (kg, pound, euro), expressed as a value from a controlled system of entries (i.e., QDT). Supports the provision of an identifier for the entry in the authoritative source (a URI, etc.), and the specific vocabulary.

ControlledVocabularyEntry

0..1

hasIntendedDataType

Conceptual::RepresentedVariable

The data type intended to be used by this variable. Supports the optional use of an external controlled vocabulary.

ControlledVocabularyEntry

0..1

simpleUnitOfMeasure

Conceptual::RepresentedVariable

The unit in which the data values are measured (kg, pound, euro), expressed as a simple string, in cases where no additional information is available (in the legacy system) or needed (as in the case of broad agreement within the community of use [i.e., ISO country codes, currencies, etc. in SDMX])

String

0..1

descriptiveText

Conceptual::ConceptualVariable

A short natural language account of the characteristics of the object.

InternationalString

0..1

unitOfMeasureKind

Conceptual::ConceptualVariable

Kind of unit of measure, so that it may be prone to translation to equivalent UOMs. Example values include “acceleration,” “temperature,” “salinity”, etc. This description exists at the conceptual level, indicating a limitation on the type of representations which may be used for the variable as it is made more concrete.

ControlledVocabularyEntry

0..1

catalogDetails

Conceptual::Concept

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

definition

Conceptual::Concept

Natural language statement conveying the meaning of a concept, differentiating it from other concepts. Supports the use of multiple languages and structured text. ‘externalDefinition’ can’t be used if ‘definition’ is used.

InternationalString

0..1

displayLabel

Conceptual::Concept

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..*

externalDefinition

Conceptual::Concept

A reference to an external definition of a concept (that is, a concept which is described outside the content of the DDI-CDI metadata description). An example is a SKOS concept. The definition property is assumed to duplicate the external one referenced if externalDefinition is used. Other corresponding properties are assumed to be included unchanged if used.

Reference

0..1

identifier

Conceptual::Concept

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

Identifier

0..1

name

Conceptual::Concept

Human understandable name (linguistic signifier, word, phrase, or mnemonic). May follow ISO/IEC 11179-5 naming principles, and have context provided to specify usage.

ObjectName

0..*

Associations#

Associations
Associations#

Direction

Association

Description

Multiplicity of InstanceVariable

Package of Other Class

Other Class

Multiplicity of other class

Aggregation Kind

Inherited from

to

DataStructureComponent isDefinedBy RepresentedVariable

Data structure component is defined by zero to one represented variable.

0..1

Components

DataStructureComponent

0..*

none

Conceptual::RepresentedVariable

from

RepresentedVariable takesSentinelValuesFrom SentinelValueDomain

A represented variable may have more than one sets of sentinel value domains, one for each type of software platform on which related instance variables might be instantiated. All of the sentinel value domains must have sentinel conceptual domains that correspond exactly. This allows codes for missing values to be explicitly matched across platforms.

0..*

Representations

SentinelValueDomain

0..*

none

Conceptual::RepresentedVariable

from

RepresentedVariable takesSubstantiveValuesFrom SubstantiveValueDomain

The substantive representation (substantive value domain) of the variable. This is equivalent to the relationship “Measures” in the Generic Statistical Information Model (GSIM) although GSIM makes no distinction between substantive and sentinel values.

0..*

Representations

SubstantiveValueDomain

0..1

none

Conceptual::RepresentedVariable

from

ConceptualVariable measures UnitType

The measures association is intended to describe specific relationships between the ConceptualVariable and UnitType classes, and similar relationships between their sub-classes. This is documented in section VII.D.5 of the “DDI-Cross Domain Integration: Detailed Model” document.

0..*

- own package -

UnitType

0..1

none

Conceptual::ConceptualVariable

from

ConceptualVariable takesSentinelConceptsFrom SentinelConceptualDomain

Identifies the conceptual domain containing the set of sentinel concepts used to describe the conceptual variable.

0..*

- own package -

SentinelConceptualDomain

0..1

none

Conceptual::ConceptualVariable

from

ConceptualVariable takesSubstantiveConceptsFrom SubstantiveConceptualDomain

Identifies the substantive conceptual domain containing the set of substantive concepts used to describe the conceptual variable.

0..*

- own package -

SubstantiveConceptualDomain

0..1

none

Conceptual::ConceptualVariable

to

VariableCollection has ConceptualVariable

Variable collection has zero to many conceptual variables.

0..*

- own package -

VariableCollection

0..*

none

Conceptual::ConceptualVariable

to

VariablePosition indexes ConceptualVariable

Variable position indexes a conceptual variable.

1..1

- own package -

VariablePosition

0..*

none

Conceptual::ConceptualVariable

to

VariableRelationship hasSource ConceptualVariable

0..*

- own package -

VariableRelationship

0..*

none

Conceptual::ConceptualVariable

to

VariableRelationship hasTarget ConceptualVariable

Note that this can be realized as a collection to support tuples.

0..*

- own package -

VariableRelationship

0..*

none

Conceptual::ConceptualVariable

to

AgentListing isDefinedBy Concept

The conceptual basis for the collection of members.

0..*

Agents

AgentListing

0..*

none

Conceptual::Concept

to

ClassificationFamily isDefinedBy Concept

The conceptual basis for the collection of members.

0..*

Representations

ClassificationFamily

0..*

none

Conceptual::Concept

to

ClassificationIndex isDefinedBy Concept

The conceptual basis for the collection of members.

0..*

Representations

ClassificationIndex

0..*

none

Conceptual::Concept

to

ClassificationSeries isDefinedBy Concept

The conceptual basis for the collection of members.

0..*

Representations

ClassificationSeries

0..*

none

Conceptual::Concept

to

ConceptMap hasSource Concept

Concept map has one to many source concepts.

1..*

- own package -

ConceptMap

0..*

none

Conceptual::Concept

to

ConceptMap hasTarget Concept

Concept map has one to many target concepts.

1..*

- own package -

ConceptMap

0..*

none

Conceptual::Concept

to

ConceptRelationship hasSource Concept

Restricts source object to concept for the relationship.

1..1

- own package -

ConceptRelationship

0..*

none

Conceptual::Concept

to

ConceptRelationship hasTarget Concept

Restricts target object to concept for the relationship.

1..1

- own package -

ConceptRelationship

0..*

none

Conceptual::Concept

to

ConceptSystem has Concept

Concept system has zero to many concepts.

0..*

- own package -

ConceptSystem

0..*

none

Conceptual::Concept

to

ConceptSystem isDefinedBy Concept

Concept system is defined by zero to many concepts. The conceptual basis for the collection of members.

0..*

- own package -

ConceptSystem

0..*

none

Conceptual::Concept

to

Concept uses Concept

The uses association is intended to describe specific relationships between Concepts and several of its sub-classes. This is documented in section VII.D.5 of the “DDI-Cross Domain Integration: Detailed Model” document.

0..*

- own package -

Concept

0..*

none

Conceptual::Concept

to

EnumerationDomain isDefinedBy Concept

The conceptual basis for the collection of members.

0..*

Representations

EnumerationDomain

0..*

none

Conceptual::Concept

to

Level isDefinedBy Concept

A concept or concept sub-type which describes the level.

0..1

Representations

Level

0..*

none

Conceptual::Concept

to

LogicalRecordRepository isDefinedBy Concept

The conceptual basis for the collection of members.

0..*

FormatDescription

LogicalRecordRepository

0..*

none

Conceptual::Concept

to

LogicalRecord isDefinedBy Concept

The conceptual basis for the collection of members.

0..*

FormatDescription

LogicalRecord

0..*

none

Conceptual::Concept

to

PhysicalDataSet isDefinedBy Concept

The conceptual basis for the collection of members.

0..*

FormatDescription

PhysicalDataSet

0..*

none

Conceptual::Concept

to

Segment isDefinedBy Concept

The conceptual basis for the collection of members.

0..*

FormatDescription

Segment

0..*

none

Conceptual::Concept

to

TabularTextDataSet isDefinedBy Concept

The conceptual basis for the collection of members.

0..*

FormatDescription

TabularTextDataSet

0..*

none

Conceptual::Concept

to

VariableCollection isDefinedBy Concept

The conceptual basis for the collection of members.

0..*

- own package -

VariableCollection

0..*

none

Conceptual::Concept

to

DataPoint isDescribedBy InstanceVariable

The instance variable delimits the values which can populate a data point. Data point is described by one instance variable.

1..1

DataDescription

DataPoint

0..*

none

own class

to

DataSet has InstanceVariable

0..*

DataDescription

DataSet

1..*

none

own class

to

Datum isBoundedBy InstanceVariable

A datum is bounded by an instance variable. The datum is drawn from a set of values, either substantive or sentinel described by the value domain of the instance variable.

1..*

DataDescription

Datum

0..*

none

own class

to

InstanceVariableMap hasSource InstanceVariable

The source instance variable for the relationship.

1..*

FormatDescription

InstanceVariableMap

0..*

none

own class

to

InstanceVariableMap hasTarget InstanceVariable

Target instance variables if a directional relation is used.

0..*

FormatDescription

InstanceVariableMap

0..*

none

own class

from

InstanceVariable isDescribedBy StatisticsCollection

0..1

FormatDescription

StatisticsCollection

0..1

none

own class

to

LogicalRecord has InstanceVariable

0..*

FormatDescription

LogicalRecord

0..*

none

own class

to

PhysicalDataSet has InstanceVariable

0..*

FormatDescription

PhysicalDataSet

0..*

none

own class

to

PhysicalMapping formats InstanceVariable

0..1

FormatDescription

PhysicalMapping

0..*

none

own class

to

StatisticsCollection hasWeight InstanceVariable

0..1

FormatDescription

StatisticsCollection

0..*

none

own class

to

Statistics hasWeight InstanceVariable

0..1

DataDescription

Statistics

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 InstanceVariable (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-Conceptual-InstanceVariable"
  5                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable"
  6                  xmi:type="uml:Class">
  7   <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-ownedComment"
  8                  xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-ownedComment"
  9                  xmi:type="uml:Comment">
 10      <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable"/>
 11      <body>Definition
 12==========
 13Use of a represented variable within a data set.  
 14
 15Examples
 16======== 
 171. Gender: Dan Gillman has gender &lt;m, male&gt;, Arofan Gregory has gender &lt;m, male&gt;, etc.
 182. Number of employees: Microsoft has 90,000 employees; IBM has 433,000 employees, etc.
 193. Endowment: Johns Hopkins has endowment of &lt;3, $1,000,000 and above&gt;, Yale has endowment of &lt;3, $1,000,000 and above&gt;, etc.
 204. A tornado near Winterset, Iowa, had a peak wind speed of 170 mph. Two instance variables of a person's height reference the same represented variable. This indicates that they are intended to: be measured with the same unit of measurement, have the same intended data type, have the same substantive value domain, use a sentinel value domain drawn from the same set of sentinel value domains, have the same sentinel (missing value) concepts, and draw their population from the same universe. In other words, the two instance variables should be comparable.
 21
 22Explanatory notes
 23================= 
 24The instance variable class inherits all of the properties and relationships of the represented variable class and, in turn, the conceptual variable class. This means that an instance variable can be completely populated without the need to create an associated represented variable or conceptual variable. If, however, a user wishes to indicate that a particular instance variable is patterned after a particular represented variable or a particular conceptual variable that may be indicated by including a relationship to the represented variable and/or conceptual variable. Including these references is an important method of indicating that multiple instance variables have the same representation, measure the same concept, and are drawn from the same universe. If two instance variables of a person's height reference the same represented variable. This indicates that they are intended to: be measured with the same unit of measurement, have the same intended data type, have the same substantive value domain, use a sentinel value domain drawn from the same set of sentinel value domains, have the same sentinel (missing value) concepts, and draw their population from the same universe. In other words, the two instance variables should be comparable. The instance variable describes actual instances of data that have been collected.
 25</body>
 26   </ownedComment>
 27   <name>InstanceVariable</name>
 28   <generalization xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-generalization"
 29                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-generalization"
 30                    xmi:type="uml:Generalization">
 31      <general xmi:idref="DDICDIModels-DDICDILibrary-Classes-Conceptual-RepresentedVariable"/>
 32   </generalization>
 33   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-function"
 34                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-function"
 35                    xmi:type="uml:Property">
 36      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-function-ownedComment"
 37                     xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-function-ownedComment"
 38                     xmi:type="uml:Comment">
 39         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-function"/>
 40         <body>Immutable characteristic of the variable such as geographic designator, weight, temporal designation, etc.
 41
 42</body>
 43      </ownedComment>
 44      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-function-lowerValue"
 45                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-function-lowerValue"
 46                   xmi:type="uml:LiteralInteger"/>
 47      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-function-upperValue"
 48                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-function-upperValue"
 49                   xmi:type="uml:LiteralUnlimitedNatural">
 50         <value>*</value>
 51      </upperValue>
 52      <name>function</name>
 53      <isOrdered>true</isOrdered>
 54      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-ControlledVocabularyEntry"/>
 55   </ownedAttribute>
 56   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-ownedAttribute"
 57                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-ownedAttribute"
 58                    xmi:type="uml:Property">
 59      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-ownedAttribute-lowerValue"
 60                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-ownedAttribute-lowerValue"
 61                   xmi:type="uml:LiteralInteger"/>
 62      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-ownedAttribute-upperValue"
 63                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-ownedAttribute-upperValue"
 64                   xmi:type="uml:LiteralUnlimitedNatural">
 65         <value>1</value>
 66      </upperValue>
 67      <association xmi:idref="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable_isDescribedBy_StatisticsCollection"/>
 68      <type xmi:idref="DDICDIModels-DDICDILibrary-Classes-FormatDescription-StatisticsCollection"/>
 69   </ownedAttribute>
 70   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-physicalDataType"
 71                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-physicalDataType"
 72                    xmi:type="uml:Property">
 73      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-physicalDataType-ownedComment"
 74                     xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-physicalDataType-ownedComment"
 75                     xmi:type="uml:Comment">
 76         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-physicalDataType"/>
 77         <body>The base datatype of the physical representation. An integer instance variable might, for example, be stored as a floating point number. From the W3C Recommendation "Metadata Vocabulary for Tabular Data" (https://www.w3.org/TR/tabular-metadata/) Inherited 5.7: "datatype: An atomic property that contains either a single string that is the main datatype of the values of the cell or a datatype description object. If the value of this property is a string, it MUST be the name of one of the built-in datatypes defined in section 5.11.1 Built-in Datatypes and this value is normalized to an object whose base property is the original string value. If it is an object then it describes a more specialized datatype. If a cell contains a sequence (i.e. the separator property is specified and not null) then this property specifies the datatype of each value within that sequence. See 5.11 Datatypes and Parsing Cells in [tabular-data-model] for more details.  The normalized value of this property becomes the datatype annotation for the described column."
 78</body>
 79      </ownedComment>
 80      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-physicalDataType-lowerValue"
 81                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-physicalDataType-lowerValue"
 82                   xmi:type="uml:LiteralInteger"/>
 83      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-physicalDataType-upperValue"
 84                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-physicalDataType-upperValue"
 85                   xmi:type="uml:LiteralUnlimitedNatural">
 86         <value>1</value>
 87      </upperValue>
 88      <name>physicalDataType</name>
 89      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-ControlledVocabularyEntry"/>
 90   </ownedAttribute>
 91   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-platformType"
 92                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-platformType"
 93                    xmi:type="uml:Property">
 94      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-platformType-ownedComment"
 95                     xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-platformType-ownedComment"
 96                     xmi:type="uml:Comment">
 97         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-platformType"/>
 98         <body>Describes the application or technical system context in which the variable has been realized. Typically a statistical processing package or other processing environment.
 99</body>
100      </ownedComment>
101      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-platformType-lowerValue"
102                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-platformType-lowerValue"
103                   xmi:type="uml:LiteralInteger"/>
104      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-platformType-upperValue"
105                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-platformType-upperValue"
106                   xmi:type="uml:LiteralUnlimitedNatural">
107         <value>1</value>
108      </upperValue>
109      <name>platformType</name>
110      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-ControlledVocabularyEntry"/>
111   </ownedAttribute>
112   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-role"
113                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-role"
114                    xmi:type="uml:Property">
115      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-role-ownedComment"
116                     xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-role-ownedComment"
117                     xmi:type="uml:Comment">
118         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-role"/>
119         <body>Role of the variable when no reusable data structure is available or necessary. The role can be any of the types of data structure components supported, e.g. identifier, measure, dimension, attribute, etc. (that means the data structure is not reused across physical data sets)</body>
120      </ownedComment>
121      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-role-lowerValue"
122                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-role-lowerValue"
123                   xmi:type="uml:LiteralInteger"/>
124      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-role-upperValue"
125                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-role-upperValue"
126                   xmi:type="uml:LiteralUnlimitedNatural">
127         <value>*</value>
128      </upperValue>
129      <name>role</name>
130      <isOrdered>true</isOrdered>
131      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-ControlledVocabularyEntry"/>
132   </ownedAttribute>
133   <ownedAttribute xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-source"
134                    xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-source"
135                    xmi:type="uml:Property">
136      <ownedComment xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-source-ownedComment"
137                     xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-source-ownedComment"
138                     xmi:type="uml:Comment">
139         <annotatedElement xmi:idref="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-source"/>
140         <body>Reference capturing provenance information of the instance variable.</body>
141      </ownedComment>
142      <lowerValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-source-lowerValue"
143                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-source-lowerValue"
144                   xmi:type="uml:LiteralInteger"/>
145      <upperValue xmi:id="DDICDIModels-DDICDILibrary-Classes-Conceptual-InstanceVariable-source-upperValue"
146                   xmi:uuid="http://ddialliance.org/Specification/DDI-CDI/1.0/XMI/#InstanceVariable-source-upperValue"
147                   xmi:type="uml:LiteralUnlimitedNatural">
148         <value>1</value>
149      </upperValue>
150      <name>source</name>
151      <type xmi:idref="DDICDIModels-DDICDILibrary-DataTypes-StructuredDataTypes-Reference"/>
152   </ownedAttribute>
153</packagedElement>

Fragment for the class InstanceVariable (entire XML Schema)

  1<xs:element name="InstanceVariable"
  2            type="InstanceVariableXsdType"
  3            xml:id="InstanceVariable">
  4  <!-- based on the UML class DDICDIModels::DDICDILibrary::Classes::Conceptual::InstanceVariable -->
  5  <xs:annotation>
  6    <xs:documentation>Definition
  7          ==========
  8          Use of a represented variable within a data set.  
  9          
 10          Examples
 11          ======== 
 12          1. Gender: Dan Gillman has gender &lt;m, male&gt;, Arofan Gregory has gender &lt;m, male&gt;, etc.
 13          2. Number of employees: Microsoft has 90,000 employees; IBM has 433,000 employees, etc.
 14          3. Endowment: Johns Hopkins has endowment of &lt;3, $1,000,000 and above&gt;, Yale has endowment of &lt;3, $1,000,000 and above&gt;, etc.
 15          4. A tornado near Winterset, Iowa, had a peak wind speed of 170 mph. Two instance variables of a person's height reference the same represented variable. This indicates that they are intended to: be measured with the same unit of measurement, have the same intended data type, have the same substantive value domain, use a sentinel value domain drawn from the same set of sentinel value domains, have the same sentinel (missing value) concepts, and draw their population from the same universe. In other words, the two instance variables should be comparable.
 16          
 17          Explanatory notes
 18          ================= 
 19          The instance variable class inherits all of the properties and relationships of the represented variable class and, in turn, the conceptual variable class. This means that an instance variable can be completely populated without the need to create an associated represented variable or conceptual variable. If, however, a user wishes to indicate that a particular instance variable is patterned after a particular represented variable or a particular conceptual variable that may be indicated by including a relationship to the represented variable and/or conceptual variable. Including these references is an important method of indicating that multiple instance variables have the same representation, measure the same concept, and are drawn from the same universe. If two instance variables of a person's height reference the same represented variable. This indicates that they are intended to: be measured with the same unit of measurement, have the same intended data type, have the same substantive value domain, use a sentinel value domain drawn from the same set of sentinel value domains, have the same sentinel (missing value) concepts, and draw their population from the same universe. In other words, the two instance variables should be comparable. The instance variable describes actual instances of data that have been collected.</xs:documentation>
 20  </xs:annotation>
 21</xs:element>
 22<xs:complexType name="InstanceVariableXsdType"
 23                xml:id="InstanceVariableXsdType">
 24  <xs:annotation>
 25    <xs:documentation>Definition
 26          ==========
 27          Use of a represented variable within a data set.  
 28          
 29          Examples
 30          ======== 
 31          1. Gender: Dan Gillman has gender &lt;m, male&gt;, Arofan Gregory has gender &lt;m, male&gt;, etc.
 32          2. Number of employees: Microsoft has 90,000 employees; IBM has 433,000 employees, etc.
 33          3. Endowment: Johns Hopkins has endowment of &lt;3, $1,000,000 and above&gt;, Yale has endowment of &lt;3, $1,000,000 and above&gt;, etc.
 34          4. A tornado near Winterset, Iowa, had a peak wind speed of 170 mph. Two instance variables of a person's height reference the same represented variable. This indicates that they are intended to: be measured with the same unit of measurement, have the same intended data type, have the same substantive value domain, use a sentinel value domain drawn from the same set of sentinel value domains, have the same sentinel (missing value) concepts, and draw their population from the same universe. In other words, the two instance variables should be comparable.
 35          
 36          Explanatory notes
 37          ================= 
 38          The instance variable class inherits all of the properties and relationships of the represented variable class and, in turn, the conceptual variable class. This means that an instance variable can be completely populated without the need to create an associated represented variable or conceptual variable. If, however, a user wishes to indicate that a particular instance variable is patterned after a particular represented variable or a particular conceptual variable that may be indicated by including a relationship to the represented variable and/or conceptual variable. Including these references is an important method of indicating that multiple instance variables have the same representation, measure the same concept, and are drawn from the same universe. If two instance variables of a person's height reference the same represented variable. This indicates that they are intended to: be measured with the same unit of measurement, have the same intended data type, have the same substantive value domain, use a sentinel value domain drawn from the same set of sentinel value domains, have the same sentinel (missing value) concepts, and draw their population from the same universe. In other words, the two instance variables should be comparable. The instance variable describes actual instances of data that have been collected.</xs:documentation>
 39  </xs:annotation>
 40  <xs:complexContent>
 41    <xs:extension base="RepresentedVariableXsdType">
 42      <xs:sequence>
 43        <xs:element name="function"
 44                    type="ControlledVocabularyEntryXsdType"
 45                    minOccurs="0"
 46                    maxOccurs="unbounded"
 47                    xml:id="InstanceVariable-function">
 48          <xs:annotation>
 49            <xs:documentation>Immutable characteristic of the variable such as geographic designator, weight, temporal designation, etc.</xs:documentation>
 50          </xs:annotation>
 51        </xs:element>
 52        <xs:element name="physicalDataType"
 53                    type="ControlledVocabularyEntryXsdType"
 54                    minOccurs="0"
 55                    maxOccurs="1"
 56                    xml:id="InstanceVariable-physicalDataType">
 57          <xs:annotation>
 58            <xs:documentation>The base datatype of the physical representation. An integer instance variable might, for example, be stored as a floating point number. From the W3C Recommendation "Metadata Vocabulary for Tabular Data" (https://www.w3.org/TR/tabular-metadata/) Inherited 5.7: "datatype: An atomic property that contains either a single string that is the main datatype of the values of the cell or a datatype description object. If the value of this property is a string, it MUST be the name of one of the built-in datatypes defined in section 5.11.1 Built-in Datatypes and this value is normalized to an object whose base property is the original string value. If it is an object then it describes a more specialized datatype. If a cell contains a sequence (i.e. the separator property is specified and not null) then this property specifies the datatype of each value within that sequence. See 5.11 Datatypes and Parsing Cells in [tabular-data-model] for more details.  The normalized value of this property becomes the datatype annotation for the described column."</xs:documentation>
 59          </xs:annotation>
 60        </xs:element>
 61        <xs:element name="platformType"
 62                    type="ControlledVocabularyEntryXsdType"
 63                    minOccurs="0"
 64                    maxOccurs="1"
 65                    xml:id="InstanceVariable-platformType">
 66          <xs:annotation>
 67            <xs:documentation>Describes the application or technical system context in which the variable has been realized. Typically a statistical processing package or other processing environment.</xs:documentation>
 68          </xs:annotation>
 69        </xs:element>
 70        <xs:element name="role"
 71                    type="ControlledVocabularyEntryXsdType"
 72                    minOccurs="0"
 73                    maxOccurs="unbounded"
 74                    xml:id="InstanceVariable-role">
 75          <xs:annotation>
 76            <xs:documentation>Role of the variable when no reusable data structure is available or necessary. The role can be any of the types of data structure components supported, e.g. identifier, measure, dimension, attribute, etc. (that means the data structure is not reused across physical data sets)</xs:documentation>
 77          </xs:annotation>
 78        </xs:element>
 79        <xs:element name="source"
 80                    type="ReferenceXsdType"
 81                    minOccurs="0"
 82                    maxOccurs="1"
 83                    xml:id="InstanceVariable-source">
 84          <xs:annotation>
 85            <xs:documentation>Reference capturing provenance information of the instance variable.</xs:documentation>
 86          </xs:annotation>
 87        </xs:element>
 88        <xs:element name="InstanceVariable_isDescribedBy_StatisticsCollection"
 89                    minOccurs="0"
 90                    maxOccurs="1"
 91                    xml:id="InstanceVariable_isDescribedBy_StatisticsCollection">
 92          <xs:annotation>
 93            <xs:documentation></xs:documentation>
 94          </xs:annotation>
 95          <xs:complexType>
 96            <xs:complexContent>
 97              <xs:restriction base="AssociationReferenceXsdType">
 98                <xs:sequence>
 99                  <xs:element name="ddiReference"
100                              type="InternationalRegistrationDataIdentifierXsdType"
101                              minOccurs="0"
102                              maxOccurs="1"
103                              xml:id="InstanceVariable_isDescribedBy_StatisticsCollection-ddiReference"/>
104                  <xs:element name="validType"
105                              minOccurs="0"
106                              maxOccurs="1"
107                              xml:id="InstanceVariable_isDescribedBy_StatisticsCollection-validType">
108                    <xs:simpleType>
109                      <xs:restriction base="xs:NMTOKEN">
110                        <xs:enumeration value="StatisticsCollection"/>
111                      </xs:restriction>
112                    </xs:simpleType>
113                  </xs:element>
114                </xs:sequence>
115              </xs:restriction>
116            </xs:complexContent>
117          </xs:complexType>
118        </xs:element>
119      </xs:sequence>
120    </xs:extension>
121  </xs:complexContent>
122</xs:complexType>

Fragment for the class InstanceVariable (entire JSON Schema)

  1"cls-InstanceVariable": {
  2  "description": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/InstanceVariable",
  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": "InstanceVariable"
 14    },
 15    "function": {
 16      "$comment": "cardinality 0..-1 – from cdi:InstanceVariable",
 17      "if": { "type": "array" },
 18      "then": { "items": { "$ref": "#/defs/dt-ControlledVocabularyEntry" } },
 19      "else": { "$ref": "#/defs/dt-ControlledVocabularyEntry" }
 20    },
 21    "physicalDataType": {
 22      "$comment": "cardinality 0..1 – from cdi:InstanceVariable",
 23      "$ref": "#/defs/dt-ControlledVocabularyEntry"
 24    },
 25    "platformType": {
 26      "$comment": "cardinality 0..1 – from cdi:InstanceVariable",
 27      "$ref": "#/defs/dt-ControlledVocabularyEntry"
 28    },
 29    "role": {
 30      "$comment": "cardinality 0..-1 – from cdi:InstanceVariable",
 31      "if": { "type": "array" },
 32      "then": { "items": { "$ref": "#/defs/dt-ControlledVocabularyEntry" } },
 33      "else": { "$ref": "#/defs/dt-ControlledVocabularyEntry" }
 34    },
 35    "source": {
 36      "$comment": "cardinality 0..1 – from cdi:InstanceVariable",
 37      "$ref": "#/defs/dt-Reference"
 38    },
 39    "describedUnitOfMeasure": {
 40      "$comment": "cardinality 0..1 – from cdi:RepresentedVariable",
 41      "$ref": "#/defs/dt-ControlledVocabularyEntry"
 42    },
 43    "hasIntendedDataType": {
 44      "$comment": "cardinality 0..1 – from cdi:RepresentedVariable",
 45      "$ref": "#/defs/dt-ControlledVocabularyEntry"
 46    },
 47    "simpleUnitOfMeasure": {
 48      "$comment": "cardinality 0..1 – from cdi:RepresentedVariable",
 49      "$ref": "#/defs/xsd:string"
 50    },
 51    "descriptiveText": {
 52      "$comment": "cardinality 0..1 – from cdi:ConceptualVariable",
 53      "$ref": "#/defs/dt-InternationalString"
 54    },
 55    "unitOfMeasureKind": {
 56      "$comment": "cardinality 0..1 – from cdi:ConceptualVariable",
 57      "$ref": "#/defs/dt-ControlledVocabularyEntry"
 58    },
 59    "catalogDetails": {
 60      "$comment": "cardinality 0..1 – from cdi:Concept",
 61      "$ref": "#/defs/dt-CatalogDetails"
 62    },
 63    "definition": {
 64      "$comment": "cardinality 0..1 – from cdi:Concept",
 65      "$ref": "#/defs/dt-InternationalString"
 66    },
 67    "displayLabel": {
 68      "$comment": "cardinality 0..-1 – from cdi:Concept",
 69      "if": { "type": "array" },
 70      "then": { "items": { "$ref": "#/defs/dt-LabelForDisplay" } },
 71      "else": { "$ref": "#/defs/dt-LabelForDisplay" }
 72    },
 73    "externalDefinition": {
 74      "$comment": "cardinality 0..1 – from cdi:Concept",
 75      "$ref": "#/defs/dt-Reference"
 76    },
 77    "identifier": {
 78      "$comment": "cardinality 0..1 – from cdi:Concept",
 79      "$ref": "#/defs/dt-Identifier"
 80    },
 81    "name": {
 82      "$comment": "cardinality 0..-1 – from cdi:Concept",
 83      "if": { "type": "array" },
 84      "then": { "items": { "$ref": "#/defs/dt-ObjectName" } },
 85      "else": { "$ref": "#/defs/dt-ObjectName" }
 86    },
 87    "isDescribedBy": {
 88      "description": "InstanceVariable_isDescribedBy_StatisticsCollection",
 89      "$comment": "cardinality 0..1",
 90       "$ref": "#/defs/target-StatisticsCollection"
 91    },
 92    "takesSentinelValuesFrom": {
 93      "description": "RepresentedVariable_takesSentinelValuesFrom_SentinelValueDomain",
 94      "$comment": "cardinality 0..-1",
 95      "anyOf": [
 96        {
 97          "$ref": "#/defs/target-SentinelValueDomain"
 98        },
 99        {
100          "type": "array",
101          "items": {
102            "$ref": "#/defs/target-SentinelValueDomain"
103          }
104        }
105      ]
106    },
107    "takesSubstantiveValuesFrom_SubstantiveValueDomain": {
108      "description": "RepresentedVariable_takesSubstantiveValuesFrom_SubstantiveValueDomain",
109      "$comment": "cardinality 0..1",
110       "$ref": "#/defs/target-SubstantiveValueDomain"
111    },
112    "measures": {
113      "description": "ConceptualVariable_measures_UnitType",
114      "$comment": "cardinality 0..1",
115       "$ref": "#/defs/target-UnitType"
116    },
117    "takesSentinelConceptsFrom": {
118      "description": "ConceptualVariable_takesSentinelConceptsFrom_SentinelConceptualDomain",
119      "$comment": "cardinality 0..1",
120       "$ref": "#/defs/target-SentinelConceptualDomain"
121    },
122    "takesSubstantiveConceptsFrom": {
123      "description": "ConceptualVariable_takesSubstantiveConceptsFrom_SubstantiveConceptualDomain",
124      "$comment": "cardinality 0..1",
125       "$ref": "#/defs/target-SubstantiveConceptualDomain"
126    },
127    "uses_Concept": {
128      "description": "Concept_uses_Concept",
129      "$comment": "cardinality 0..-1",
130      "anyOf": [
131        {
132          "$ref": "#/defs/target-Concept"
133        },
134        {
135          "type": "array",
136          "items": {
137            "$ref": "#/defs/target-Concept"
138          }
139        }
140      ]
141    },
142    "isDescribedBy_OF_DataPoint": {
143      "description": "DataPoint_isDescribedBy_InstanceVariable",
144      "$comment": "cardinality 0..-1",
145      "anyOf": [
146        {
147          "$ref": "#/defs/target-DataPoint"
148        },
149        {
150          "type": "array",
151          "items": {
152            "$ref": "#/defs/target-DataPoint"
153          }
154        }
155      ]
156    },
157    "has_InstanceVariable_OF_DataSet": {
158      "description": "DataSet_has_InstanceVariable",
159      "$comment": "cardinality 1..-1",
160      "anyOf": [
161        {
162          "$ref": "#/defs/target-DataSet"
163        },
164        {
165          "type": "array",
166          "items": {
167            "$ref": "#/defs/target-DataSet"
168          }
169        }
170      ]
171    },
172    "isBoundedBy_OF_Datum": {
173      "description": "Datum_isBoundedBy_InstanceVariable",
174      "$comment": "cardinality 0..-1",
175      "anyOf": [
176        {
177          "$ref": "#/defs/target-Datum"
178        },
179        {
180          "type": "array",
181          "items": {
182            "$ref": "#/defs/target-Datum"
183          }
184        }
185      ]
186    },
187    "hasSource_OF_InstanceVariableMap": {
188      "description": "InstanceVariableMap_hasSource_InstanceVariable",
189      "$comment": "cardinality 0..-1",
190      "anyOf": [
191        {
192          "$ref": "#/defs/target-InstanceVariableMap"
193        },
194        {
195          "type": "array",
196          "items": {
197            "$ref": "#/defs/target-InstanceVariableMap"
198          }
199        }
200      ]
201    },
202    "hasTarget_OF_InstanceVariableMap": {
203      "description": "InstanceVariableMap_hasTarget_InstanceVariable",
204      "$comment": "cardinality 0..-1",
205      "anyOf": [
206        {
207          "$ref": "#/defs/target-InstanceVariableMap"
208        },
209        {
210          "type": "array",
211          "items": {
212            "$ref": "#/defs/target-InstanceVariableMap"
213          }
214        }
215      ]
216    },
217    "has_InstanceVariable_OF_LogicalRecord": {
218      "description": "LogicalRecord_has_InstanceVariable",
219      "$comment": "cardinality 0..-1",
220      "anyOf": [
221        {
222          "$ref": "#/defs/target-LogicalRecord"
223        },
224        {
225          "type": "array",
226          "items": {
227            "$ref": "#/defs/target-LogicalRecord"
228          }
229        }
230      ]
231    },
232    "has_InstanceVariable_OF_PhysicalDataSet": {
233      "description": "PhysicalDataSet_has_InstanceVariable",
234      "$comment": "cardinality 0..-1",
235      "anyOf": [
236        {
237          "$ref": "#/defs/target-PhysicalDataSet"
238        },
239        {
240          "type": "array",
241          "items": {
242            "$ref": "#/defs/target-PhysicalDataSet"
243          }
244        }
245      ]
246    },
247    "formats_OF_PhysicalMapping": {
248      "description": "PhysicalMapping_formats_InstanceVariable",
249      "$comment": "cardinality 0..-1",
250      "anyOf": [
251        {
252          "$ref": "#/defs/target-PhysicalMapping"
253        },
254        {
255          "type": "array",
256          "items": {
257            "$ref": "#/defs/target-PhysicalMapping"
258          }
259        }
260      ]
261    },
262    "hasWeight_OF_StatisticsCollection": {
263      "description": "StatisticsCollection_hasWeight_InstanceVariable",
264      "$comment": "cardinality 0..-1",
265      "anyOf": [
266        {
267          "$ref": "#/defs/target-StatisticsCollection"
268        },
269        {
270          "type": "array",
271          "items": {
272            "$ref": "#/defs/target-StatisticsCollection"
273          }
274        }
275      ]
276    },
277    "hasWeight_OF_Statistics": {
278      "description": "Statistics_hasWeight_InstanceVariable",
279      "$comment": "cardinality 0..-1",
280      "anyOf": [
281        {
282          "$ref": "#/defs/target-Statistics"
283        },
284        {
285          "type": "array",
286          "items": {
287            "$ref": "#/defs/target-Statistics"
288          }
289        }
290      ]
291    },
292    "isDefinedBy_RepresentedVariable_OF_DataStructureComponent": {
293      "description": "DataStructureComponent_isDefinedBy_RepresentedVariable",
294      "$comment": "cardinality 0..-1",
295      "anyOf": [
296        {
297          "$ref": "#/defs/target-DataStructureComponent"
298        },
299        {
300          "type": "array",
301          "items": {
302            "$ref": "#/defs/target-DataStructureComponent"
303          }
304        }
305      ]
306    },
307    "has_ConceptualVariable_OF_VariableCollection": {
308      "description": "VariableCollection_has_ConceptualVariable",
309      "$comment": "cardinality 0..-1",
310      "anyOf": [
311        {
312          "$ref": "#/defs/target-VariableCollection"
313        },
314        {
315          "type": "array",
316          "items": {
317            "$ref": "#/defs/target-VariableCollection"
318          }
319        }
320      ]
321    },
322    "indexes_OF_VariablePosition": {
323      "description": "VariablePosition_indexes_ConceptualVariable",
324      "$comment": "cardinality 0..-1",
325      "anyOf": [
326        {
327          "$ref": "#/defs/target-VariablePosition"
328        },
329        {
330          "type": "array",
331          "items": {
332            "$ref": "#/defs/target-VariablePosition"
333          }
334        }
335      ]
336    },
337    "hasSource_OF_VariableRelationship": {
338      "description": "VariableRelationship_hasSource_ConceptualVariable",
339      "$comment": "cardinality 0..-1",
340      "anyOf": [
341        {
342          "$ref": "#/defs/target-VariableRelationship"
343        },
344        {
345          "type": "array",
346          "items": {
347            "$ref": "#/defs/target-VariableRelationship"
348          }
349        }
350      ]
351    },
352    "hasTarget_OF_VariableRelationship": {
353      "description": "VariableRelationship_hasTarget_ConceptualVariable",
354      "$comment": "cardinality 0..-1",
355      "anyOf": [
356        {
357          "$ref": "#/defs/target-VariableRelationship"
358        },
359        {
360          "type": "array",
361          "items": {
362            "$ref": "#/defs/target-VariableRelationship"
363          }
364        }
365      ]
366    },
367    "isDefinedBy_Concept_OF_AgentListing": {
368      "description": "AgentListing_isDefinedBy_Concept",
369      "$comment": "cardinality 0..-1",
370      "anyOf": [
371        {
372          "$ref": "#/defs/target-AgentListing"
373        },
374        {
375          "type": "array",
376          "items": {
377            "$ref": "#/defs/target-AgentListing"
378          }
379        }
380      ]
381    },
382    "isDefinedBy_Concept_OF_ClassificationFamily": {
383      "description": "ClassificationFamily_isDefinedBy_Concept",
384      "$comment": "cardinality 0..-1",
385      "anyOf": [
386        {
387          "$ref": "#/defs/target-ClassificationFamily"
388        },
389        {
390          "type": "array",
391          "items": {
392            "$ref": "#/defs/target-ClassificationFamily"
393          }
394        }
395      ]
396    },
397    "isDefinedBy_Concept_OF_ClassificationIndex": {
398      "description": "ClassificationIndex_isDefinedBy_Concept",
399      "$comment": "cardinality 0..-1",
400      "anyOf": [
401        {
402          "$ref": "#/defs/target-ClassificationIndex"
403        },
404        {
405          "type": "array",
406          "items": {
407            "$ref": "#/defs/target-ClassificationIndex"
408          }
409        }
410      ]
411    },
412    "isDefinedBy_Concept_OF_ClassificationSeries": {
413      "description": "ClassificationSeries_isDefinedBy_Concept",
414      "$comment": "cardinality 0..-1",
415      "anyOf": [
416        {
417          "$ref": "#/defs/target-ClassificationSeries"
418        },
419        {
420          "type": "array",
421          "items": {
422            "$ref": "#/defs/target-ClassificationSeries"
423          }
424        }
425      ]
426    },
427    "hasSource_OF_ConceptMap": {
428      "description": "ConceptMap_hasSource_Concept",
429      "$comment": "cardinality 0..-1",
430      "anyOf": [
431        {
432          "$ref": "#/defs/target-ConceptMap"
433        },
434        {
435          "type": "array",
436          "items": {
437            "$ref": "#/defs/target-ConceptMap"
438          }
439        }
440      ]
441    },
442    "hasTarget_OF_ConceptMap": {
443      "description": "ConceptMap_hasTarget_Concept",
444      "$comment": "cardinality 0..-1",
445      "anyOf": [
446        {
447          "$ref": "#/defs/target-ConceptMap"
448        },
449        {
450          "type": "array",
451          "items": {
452            "$ref": "#/defs/target-ConceptMap"
453          }
454        }
455      ]
456    },
457    "hasSource_OF_ConceptRelationship": {
458      "description": "ConceptRelationship_hasSource_Concept",
459      "$comment": "cardinality 0..-1",
460      "anyOf": [
461        {
462          "$ref": "#/defs/target-ConceptRelationship"
463        },
464        {
465          "type": "array",
466          "items": {
467            "$ref": "#/defs/target-ConceptRelationship"
468          }
469        }
470      ]
471    },
472    "hasTarget_OF_ConceptRelationship": {
473      "description": "ConceptRelationship_hasTarget_Concept",
474      "$comment": "cardinality 0..-1",
475      "anyOf": [
476        {
477          "$ref": "#/defs/target-ConceptRelationship"
478        },
479        {
480          "type": "array",
481          "items": {
482            "$ref": "#/defs/target-ConceptRelationship"
483          }
484        }
485      ]
486    },
487    "has_Concept_OF_ConceptSystem": {
488      "description": "ConceptSystem_has_Concept",
489      "$comment": "cardinality 0..-1",
490      "anyOf": [
491        {
492          "$ref": "#/defs/target-ConceptSystem"
493        },
494        {
495          "type": "array",
496          "items": {
497            "$ref": "#/defs/target-ConceptSystem"
498          }
499        }
500      ]
501    },
502    "isDefinedBy_Concept_OF_ConceptSystem": {
503      "description": "ConceptSystem_isDefinedBy_Concept",
504      "$comment": "cardinality 0..-1",
505      "anyOf": [
506        {
507          "$ref": "#/defs/target-ConceptSystem"
508        },
509        {
510          "type": "array",
511          "items": {
512            "$ref": "#/defs/target-ConceptSystem"
513          }
514        }
515      ]
516    },
517    "uses_Concept_OF_Concept": {
518      "description": "Concept_uses_Concept",
519      "$comment": "cardinality 0..-1",
520      "anyOf": [
521        {
522          "$ref": "#/defs/target-Concept"
523        },
524        {
525          "type": "array",
526          "items": {
527            "$ref": "#/defs/target-Concept"
528          }
529        }
530      ]
531    },
532    "isDefinedBy_Concept_OF_EnumerationDomain": {
533      "description": "EnumerationDomain_isDefinedBy_Concept",
534      "$comment": "cardinality 0..-1",
535      "anyOf": [
536        {
537          "$ref": "#/defs/target-EnumerationDomain"
538        },
539        {
540          "type": "array",
541          "items": {
542            "$ref": "#/defs/target-EnumerationDomain"
543          }
544        }
545      ]
546    },
547    "isDefinedBy_Concept_OF_Level": {
548      "description": "Level_isDefinedBy_Concept",
549      "$comment": "cardinality 0..-1",
550      "anyOf": [
551        {
552          "$ref": "#/defs/target-Level"
553        },
554        {
555          "type": "array",
556          "items": {
557            "$ref": "#/defs/target-Level"
558          }
559        }
560      ]
561    },
562    "isDefinedBy_Concept_OF_LogicalRecordRepository": {
563      "description": "LogicalRecordRepository_isDefinedBy_Concept",
564      "$comment": "cardinality 0..-1",
565      "anyOf": [
566        {
567          "$ref": "#/defs/target-LogicalRecordRepository"
568        },
569        {
570          "type": "array",
571          "items": {
572            "$ref": "#/defs/target-LogicalRecordRepository"
573          }
574        }
575      ]
576    },
577    "isDefinedBy_Concept_OF_LogicalRecord": {
578      "description": "LogicalRecord_isDefinedBy_Concept",
579      "$comment": "cardinality 0..-1",
580      "anyOf": [
581        {
582          "$ref": "#/defs/target-LogicalRecord"
583        },
584        {
585          "type": "array",
586          "items": {
587            "$ref": "#/defs/target-LogicalRecord"
588          }
589        }
590      ]
591    },
592    "isDefinedBy_Concept_OF_PhysicalDataSet": {
593      "description": "PhysicalDataSet_isDefinedBy_Concept",
594      "$comment": "cardinality 0..-1",
595      "anyOf": [
596        {
597          "$ref": "#/defs/target-PhysicalDataSet"
598        },
599        {
600          "type": "array",
601          "items": {
602            "$ref": "#/defs/target-PhysicalDataSet"
603          }
604        }
605      ]
606    },
607    "isDefinedBy_Concept_OF_Segment": {
608      "description": "Segment_isDefinedBy_Concept",
609      "$comment": "cardinality 0..-1",
610      "anyOf": [
611        {
612          "$ref": "#/defs/target-Segment"
613        },
614        {
615          "type": "array",
616          "items": {
617            "$ref": "#/defs/target-Segment"
618          }
619        }
620      ]
621    },
622    "isDefinedBy_Concept_OF_TabularTextDataSet": {
623      "description": "TabularTextDataSet_isDefinedBy_Concept",
624      "$comment": "cardinality 0..-1",
625      "anyOf": [
626        {
627          "$ref": "#/defs/target-TabularTextDataSet"
628        },
629        {
630          "type": "array",
631          "items": {
632            "$ref": "#/defs/target-TabularTextDataSet"
633          }
634        }
635      ]
636    },
637    "isDefinedBy_Concept_OF_VariableCollection": {
638      "description": "VariableCollection_isDefinedBy_Concept",
639      "$comment": "cardinality 0..-1",
640      "anyOf": [
641        {
642          "$ref": "#/defs/target-VariableCollection"
643        },
644        {
645          "type": "array",
646          "items": {
647            "$ref": "#/defs/target-VariableCollection"
648          }
649        }
650      ]
651    },
652    "sameAs": {
653      "$ref": "#/defs/owl:sameAs"
654    }
655  },
656  "required": ["@type"],
657  "additionalProperties": false
658},
659"target-InstanceVariable": {
660  "description": "all subclasses of http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/InstanceVariable",
661  "anyOf": [
662    { "$ref": "#/defs/cls-InstanceVariable" },
663    { "$ref": "#/defs/cls-DescriptorVariable" },
664    { "$ref": "#/defs/cls-ReferenceVariable" },
665    { "type": "string", "format": "iri-reference" }
666  ]
667},

Fragment for the class InstanceVariable (main ontology)

 1# class InstanceVariable
 2# based on the UML class DDICDIModels::DDICDILibrary::Classes::Conceptual::InstanceVariable
 3cdi:InstanceVariable
 4  a rdfs:Class, owl:Class, ucmis:Class;
 5  rdfs:label "InstanceVariable";
 6  rdfs:comment "Definition\n==========\nUse of a represented variable within a data set.  \n\nExamples\n======== \n1. Gender: Dan Gillman has gender <m, male>, Arofan Gregory has gender <m, male>, etc.\n2. Number of employees: Microsoft has 90,000 employees; IBM has 433,000 employees, etc.\n3. Endowment: Johns Hopkins has endowment of <3, $1,000,000 and above>, Yale has endowment of <3, $1,000,000 and above>, etc.\n4. A tornado near Winterset, Iowa, had a peak wind speed of 170 mph. Two instance variables of a person's height reference the same represented variable. This indicates that they are intended to: be measured with the same unit of measurement, have the same intended data type, have the same substantive value domain, use a sentinel value domain drawn from the same set of sentinel value domains, have the same sentinel (missing value) concepts, and draw their population from the same universe. In other words, the two instance variables should be comparable.\n\nExplanatory notes\n================= \nThe instance variable class inherits all of the properties and relationships of the represented variable class and, in turn, the conceptual variable class. This means that an instance variable can be completely populated without the need to create an associated represented variable or conceptual variable. If, however, a user wishes to indicate that a particular instance variable is patterned after a particular represented variable or a particular conceptual variable that may be indicated by including a relationship to the represented variable and/or conceptual variable. Including these references is an important method of indicating that multiple instance variables have the same representation, measure the same concept, and are drawn from the same universe. If two instance variables of a person's height reference the same represented variable. This indicates that they are intended to: be measured with the same unit of measurement, have the same intended data type, have the same substantive value domain, use a sentinel value domain drawn from the same set of sentinel value domains, have the same sentinel (missing value) concepts, and draw their population from the same universe. In other words, the two instance variables should be comparable. The instance variable describes actual instances of data that have been collected."@en;
 7  rdfs:subClassOf cdi:RepresentedVariable;
 8.
 9
10cdi:InstanceVariable-function
11  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
12  rdfs:label "function";
13  rdfs:comment "Immutable characteristic of the variable such as geographic designator, weight, temporal designation, etc."@en;
14  rdfs:domain cdi:InstanceVariable;
15  rdfs:range cdi:ControlledVocabularyEntry;
16.
17
18cdi:InstanceVariable-physicalDataType
19  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
20  rdfs:label "physicalDataType";
21  rdfs:comment "The base datatype of the physical representation. An integer instance variable might, for example, be stored as a floating point number. From the W3C Recommendation \"Metadata Vocabulary for Tabular Data\" (https://www.w3.org/TR/tabular-metadata/) Inherited 5.7: \"datatype: An atomic property that contains either a single string that is the main datatype of the values of the cell or a datatype description object. If the value of this property is a string, it MUST be the name of one of the built-in datatypes defined in section 5.11.1 Built-in Datatypes and this value is normalized to an object whose base property is the original string value. If it is an object then it describes a more specialized datatype. If a cell contains a sequence (i.e. the separator property is specified and not null) then this property specifies the datatype of each value within that sequence. See 5.11 Datatypes and Parsing Cells in [tabular-data-model] for more details.  The normalized value of this property becomes the datatype annotation for the described column.\""@en;
22  rdfs:domain cdi:InstanceVariable;
23  rdfs:range cdi:ControlledVocabularyEntry;
24.
25
26cdi:InstanceVariable-platformType
27  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
28  rdfs:label "platformType";
29  rdfs:comment "Describes the application or technical system context in which the variable has been realized. Typically a statistical processing package or other processing environment."@en;
30  rdfs:domain cdi:InstanceVariable;
31  rdfs:range cdi:ControlledVocabularyEntry;
32.
33
34cdi:InstanceVariable-role
35  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
36  rdfs:label "role";
37  rdfs:comment "Role of the variable when no reusable data structure is available or necessary. The role can be any of the types of data structure components supported, e.g. identifier, measure, dimension, attribute, etc. (that means the data structure is not reused across physical data sets)"@en;
38  rdfs:domain cdi:InstanceVariable;
39  rdfs:range cdi:ControlledVocabularyEntry;
40.
41
42cdi:InstanceVariable-source
43  a rdf:Property, owl:ObjectProperty, ucmis:Attribute;
44  rdfs:label "source";
45  rdfs:comment "Reference capturing provenance information of the instance variable."@en;
46  rdfs:domain cdi:InstanceVariable;
47  rdfs:range cdi:Reference;
48.
49
50
51cdi:InstanceVariable_isDescribedBy_StatisticsCollection
52  a rdf:Property, owl:ObjectProperty, ucmis:Association;
53  # ASSOCIATION
54  rdfs:label "isDescribedBy";
55  skos:altLabel "InstanceVariable_isDescribedBy_StatisticsCollection";
56  
57  rdfs:domain cdi:InstanceVariable;
58  rdfs:range cdi:StatisticsCollection;
59.

Fragment for the class InstanceVariable (entire JSON-LD)

 1{
 2  "@context": [
 3    "RepresentedVariable.jsonld",
 4    {
 5      "cdi": "http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/",
 6      "xsd": "http://www.w3.org/2001/XMLSchema#",
 7
 8      "function": {
 9        "@id": "cdi:InstanceVariable-function",
10        "@type": "@id",
11        "@context": "ControlledVocabularyEntry.jsonld"
12      },
13      "physicalDataType": {
14        "@id": "cdi:InstanceVariable-physicalDataType",
15        "@type": "@id",
16        "@context": "ControlledVocabularyEntry.jsonld"
17      },
18      "platformType": {
19        "@id": "cdi:InstanceVariable-platformType",
20        "@type": "@id",
21        "@context": "ControlledVocabularyEntry.jsonld"
22      },
23      "role": {
24        "@id": "cdi:InstanceVariable-role",
25        "@type": "@id",
26        "@context": "ControlledVocabularyEntry.jsonld"
27      },
28      "source": {
29        "@id": "cdi:InstanceVariable-source",
30        "@type": "@id",
31        "@context": "Reference.jsonld"
32      },
33      
34      "isDescribedBy": {
35        "@id": "cdi:InstanceVariable_isDescribedBy_StatisticsCollection",
36        "@type": "@id",
37        "@context": "StatisticsCollection.jsonld"
38      },
39      "isDescribedBy_OF_DataPoint": {
40        "@reverse": "cdi:DataPoint_isDescribedBy_InstanceVariable",
41        "@type": "@id",
42        "@context": "DataPoint.jsonld"
43      },
44      "has_InstanceVariable_OF_DataSet": {
45        "@reverse": "cdi:DataSet_has_InstanceVariable",
46        "@type": "@id",
47        "@context": "DataSet.jsonld"
48      },
49      "isBoundedBy_OF_Datum": {
50        "@reverse": "cdi:Datum_isBoundedBy_InstanceVariable",
51        "@type": "@id",
52        "@context": "Datum.jsonld"
53      },
54      "hasSource_OF_InstanceVariableMap": {
55        "@reverse": "cdi:InstanceVariableMap_hasSource_InstanceVariable",
56        "@type": "@id",
57        "@context": "InstanceVariableMap.jsonld"
58      },
59      "hasTarget_OF_InstanceVariableMap": {
60        "@reverse": "cdi:InstanceVariableMap_hasTarget_InstanceVariable",
61        "@type": "@id",
62        "@context": "InstanceVariableMap.jsonld"
63      },
64      "has_InstanceVariable_OF_LogicalRecord": {
65        "@reverse": "cdi:LogicalRecord_has_InstanceVariable",
66        "@type": "@id",
67        "@context": "LogicalRecord.jsonld"
68      },
69      "has_InstanceVariable_OF_PhysicalDataSet": {
70        "@reverse": "cdi:PhysicalDataSet_has_InstanceVariable",
71        "@type": "@id",
72        "@context": "PhysicalDataSet.jsonld"
73      },
74      "formats_OF_PhysicalMapping": {
75        "@reverse": "cdi:PhysicalMapping_formats_InstanceVariable",
76        "@type": "@id",
77        "@context": "PhysicalMapping.jsonld"
78      },
79      "hasWeight_OF_StatisticsCollection": {
80        "@reverse": "cdi:StatisticsCollection_hasWeight_InstanceVariable",
81        "@type": "@id",
82        "@context": "StatisticsCollection.jsonld"
83      },
84      "hasWeight_OF_Statistics": {
85        "@reverse": "cdi:Statistics_hasWeight_InstanceVariable",
86        "@type": "@id",
87        "@context": "Statistics.jsonld"
88      },
89      " comment ": "tag:json-should-support-trailing-commas"
90    }
91  ],
92  "generatedBy": "This code was generated by the Eclipse Acceleo project UCMIS M2T on 2026-04-15 14:38:38.",
93  "basedOn": "based on the UML data type DDICDIModels::DDICDILibrary::Classes::Conceptual::InstanceVariable"
94}

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

  1# class InstanceVariable
  2# based on the UML class DDICDIModels::DDICDILibrary::Classes::Conceptual::InstanceVariable
  3<#InstanceVariable> a sh:NodeShape;
  4    sh:targetClass cdi:InstanceVariable;
  5	sh:message "See http://ddialliance.org/Specification/DDI-CDI/1.0/RDF/InstanceVariable";
  6	sh:closed true;
  7	sh:ignoredProperties ( owl:sameAs );
  8    sh:property [
  9			sh:path rdf:type;
 10			sh:in (   cdi:InstanceVariable
 11			  cdi:DescriptorVariable
 12			  cdi:ReferenceVariable
 13			 ) ;
 14    ];
 15    # attributes
 16    sh:property <#InstanceVariable-function>;
 17    sh:property <#InstanceVariable-physicalDataType>;
 18    sh:property <#InstanceVariable-platformType>;
 19    sh:property <#InstanceVariable-role>;
 20    sh:property <#InstanceVariable-source>;
 21    # associations from InstanceVariable
 22    sh:property <#InstanceVariable_isDescribedBy_StatisticsCollection>;
 23    # associations to InstanceVariable
 24    sh:property <#rev_DataPoint_isDescribedBy_InstanceVariable>;
 25    sh:property <#rev_DataSet_has_InstanceVariable>;
 26    sh:property <#rev_Datum_isBoundedBy_InstanceVariable>;
 27    sh:property <#rev_InstanceVariableMap_hasSource_InstanceVariable>;
 28    sh:property <#rev_InstanceVariableMap_hasTarget_InstanceVariable>;
 29    sh:property <#rev_LogicalRecord_has_InstanceVariable>;
 30    sh:property <#rev_PhysicalDataSet_has_InstanceVariable>;
 31    sh:property <#rev_PhysicalMapping_formats_InstanceVariable>;
 32    sh:property <#rev_StatisticsCollection_hasWeight_InstanceVariable>;
 33    sh:property <#rev_Statistics_hasWeight_InstanceVariable>;
 34
 35    # ---- superclass: RepresentedVariable
 36    # attributes
 37    sh:property <#RepresentedVariable-describedUnitOfMeasure>;
 38    sh:property <#RepresentedVariable-hasIntendedDataType>;
 39    sh:property <#RepresentedVariable-simpleUnitOfMeasure>;
 40    # associations from RepresentedVariable
 41    sh:property <#RepresentedVariable_takesSentinelValuesFrom_SentinelValueDomain>;
 42    sh:property <#RepresentedVariable_takesSubstantiveValuesFrom_SubstantiveValueDomain>;
 43    # associations to RepresentedVariable
 44    sh:property <#rev_DataStructureComponent_isDefinedBy_RepresentedVariable>;
 45
 46    # ---- superclass: ConceptualVariable
 47    # attributes
 48    sh:property <#ConceptualVariable-descriptiveText>;
 49    sh:property <#ConceptualVariable-unitOfMeasureKind>;
 50    # associations from ConceptualVariable
 51    sh:property <#ConceptualVariable_measures_UnitType>;
 52    sh:property <#ConceptualVariable_takesSentinelConceptsFrom_SentinelConceptualDomain>;
 53    sh:property <#ConceptualVariable_takesSubstantiveConceptsFrom_SubstantiveConceptualDomain>;
 54    # associations to ConceptualVariable
 55    sh:property <#rev_VariableCollection_has_ConceptualVariable>;
 56    sh:property <#rev_VariablePosition_indexes_ConceptualVariable>;
 57    sh:property <#rev_VariableRelationship_hasSource_ConceptualVariable>;
 58    sh:property <#rev_VariableRelationship_hasTarget_ConceptualVariable>;
 59
 60    # ---- superclass: Concept
 61    # attributes
 62    sh:property <#Concept-catalogDetails>;
 63    sh:property <#Concept-definition>;
 64    sh:property <#Concept-displayLabel>;
 65    sh:property <#Concept-externalDefinition>;
 66    sh:property <#Concept-identifier>;
 67    sh:property <#Concept-name>;
 68    # associations from Concept
 69    sh:property <#Concept_uses_Concept>;
 70    # associations to Concept
 71    sh:property <#rev_AgentListing_isDefinedBy_Concept>;
 72    sh:property <#rev_ClassificationFamily_isDefinedBy_Concept>;
 73    sh:property <#rev_ClassificationIndex_isDefinedBy_Concept>;
 74    sh:property <#rev_ClassificationSeries_isDefinedBy_Concept>;
 75    sh:property <#rev_ConceptMap_hasSource_Concept>;
 76    sh:property <#rev_ConceptMap_hasTarget_Concept>;
 77    sh:property <#rev_ConceptRelationship_hasSource_Concept>;
 78    sh:property <#rev_ConceptRelationship_hasTarget_Concept>;
 79    sh:property <#rev_ConceptSystem_has_Concept>;
 80    sh:property <#rev_ConceptSystem_isDefinedBy_Concept>;
 81    sh:property <#rev_Concept_uses_Concept>;
 82    sh:property <#rev_EnumerationDomain_isDefinedBy_Concept>;
 83    sh:property <#rev_Level_isDefinedBy_Concept>;
 84    sh:property <#rev_LogicalRecordRepository_isDefinedBy_Concept>;
 85    sh:property <#rev_LogicalRecord_isDefinedBy_Concept>;
 86    sh:property <#rev_PhysicalDataSet_isDefinedBy_Concept>;
 87    sh:property <#rev_Segment_isDefinedBy_Concept>;
 88    sh:property <#rev_TabularTextDataSet_isDefinedBy_Concept>;
 89    sh:property <#rev_VariableCollection_isDefinedBy_Concept>;
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99.
100
101<#InstanceVariable-function> a sh:PropertyShape ;
102    sh:path cdi:InstanceVariable-function;
103    sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
104        cdi:ControlledVocabularyEntry
105      
106    ) ]];
107.
108<#InstanceVariable-physicalDataType> a sh:PropertyShape ;
109    sh:path cdi:InstanceVariable-physicalDataType;
110    sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
111        cdi:ControlledVocabularyEntry
112      
113    ) ]];
114    sh:maxCount 1;
115.
116<#InstanceVariable-platformType> a sh:PropertyShape ;
117    sh:path cdi:InstanceVariable-platformType;
118    sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
119        cdi:ControlledVocabularyEntry
120      
121    ) ]];
122    sh:maxCount 1;
123.
124<#InstanceVariable-role> a sh:PropertyShape ;
125    sh:path cdi:InstanceVariable-role;
126    sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
127        cdi:ControlledVocabularyEntry
128      
129    ) ]];
130.
131<#InstanceVariable-source> a sh:PropertyShape ;
132    sh:path cdi:InstanceVariable-source;
133    sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
134        cdi:Reference
135      
136    ) ]];
137    sh:maxCount 1;
138.
139
140<#InstanceVariable_isDescribedBy_StatisticsCollection> a sh:PropertyShape ;
141    sh:path cdi:InstanceVariable_isDescribedBy_StatisticsCollection;
142	sh:node [ sh:property [ sh:path rdf:type; sh:minCount 1; sh:in (
143        cdi:StatisticsCollection
144      
145    ) ]];
146    sh:maxCount 1;
147.
148<#rev_InstanceVariable_isDescribedBy_StatisticsCollection> a sh:PropertyShape ;
149    sh:path [ sh:inversePath cdi:InstanceVariable_isDescribedBy_StatisticsCollection ];
150    sh:maxCount 1;
151.

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

 1# class InstanceVariable
 2# based on the UML class DDICDIModels::DDICDILibrary::Classes::Conceptual::InstanceVariable
 3cdi:InstanceVariableShape CLOSED {
 4	a [cdi:InstanceVariable];
 5	$cdi:InstanceVariableProperties (
 6	cdi:InstanceVariable-function	@cdi:ControlledVocabularyEntryShape*;
 7	cdi:InstanceVariable-physicalDataType	@cdi:ControlledVocabularyEntryShape?;
 8	cdi:InstanceVariable-platformType	@cdi:ControlledVocabularyEntryShape?;
 9	cdi:InstanceVariable-role	@cdi:ControlledVocabularyEntryShape*;
10	cdi:InstanceVariable-source	@cdi:ReferenceShape?;
11	^cdi:DataPoint_isDescribedBy_InstanceVariable @cdi:DataPointShape *;
12	^cdi:DataSet_has_InstanceVariable @cdi:DataSetShape OR @cdi:DimensionalDataSetShape OR @cdi:KeyValueDataStoreShape OR @cdi:LongDataSetShape OR @cdi:WideDataSetShape+;
13	^cdi:Datum_isBoundedBy_InstanceVariable @cdi:DatumShape OR @cdi:RevisableDatumShape*;
14	^cdi:InstanceVariableMap_hasSource_InstanceVariable @cdi:InstanceVariableMapShape *;
15	^cdi:InstanceVariableMap_hasTarget_InstanceVariable @cdi:InstanceVariableMapShape *;
16	cdi:InstanceVariable_isDescribedBy_StatisticsCollection	@cdi:StatisticsCollectionShape ?;
17	
18	^cdi:LogicalRecord_has_InstanceVariable @cdi:LogicalRecordShape *;
19	^cdi:PhysicalDataSet_has_InstanceVariable @cdi:PhysicalDataSetShape OR @cdi:StructuredDataSetShape OR @cdi:TabularTextDataSetShape*;
20	^cdi:PhysicalMapping_formats_InstanceVariable @cdi:PhysicalMappingShape OR @cdi:LocatorMappingShape OR @cdi:TextMappingShape*;
21	^cdi:StatisticsCollection_hasWeight_InstanceVariable @cdi:StatisticsCollectionShape *;
22	^cdi:Statistics_hasWeight_InstanceVariable @cdi:StatisticsShape OR @cdi:CategoryStatisticsShape*;
23		&cdi:RepresentedVariableProperties;
24		);
25}