2.2.4.2.2.8.3 Relationship

The Relationship complex type specifies a relationship between in-memory Dimensions.<75>

The following elements are defined in the eng300_300 namespace.

   <xsd:complexType name="Relationship">
     <xsd:sequence>
       <xsd:element name ="ID" type="xsd:string" />
       <xsd:element name="Visible" type="xsd:boolean" />
       <xsd:element name="FromRelationshipEnd" type="eng300_300:RelationshipEnd" />
       <xsd:element name="ToRelationshipEnd" type="eng300_300:RelationshipEnd" />
     </xsd:sequence>
   </xsd:complexType>
            
   <xsd:complexType name="RelationshipEnd">
     <xsd:sequence>
       <xsd:element name="Role" type="xsd:string"/>
       <xsd:element name="Multiplicity" >
         <xsd:simpleType>
           <xsd:restriction base="xsd:string">
             <xsd:enumeration value="One" />
             <xsd:enumeration value="Many" />
           </xsd:restriction>
         </xsd:simpleType>
       </xsd:element>
       <xsd:element name="DimensionID" type="xsd:string"/>
       <xsd:element name="Attributes" minOccurs="0" >
         <xsd:complexType>
           <xsd:sequence>
             <xsd:element name="Attribute" minOccurs="0" maxOccurs="unbounded">
               <xsd:complexType>
                 <xsd:sequence>
                   <xsd:element name="AttributeID" type="xsd:string"/>
                 </xsd:sequence>
               </xsd:complexType>
             </xsd:element>
           </xsd:sequence>
         </xsd:complexType>
       </xsd:element>
       <xsd:element name="Translations" minOccurs="0">
         <xsd:complexType>
           <xsd:sequence>
             <xsd:element name="Translation"  type="eng300_300:RelationshipEndTranslation"
                          minOccurs="0" maxOccurs="unbounded"/>
           </xsd:sequence>
         </xsd:complexType>
       </xsd:element>
       <xsd:element name="VisualizationProperties"              
                          type="eng300:RelationshipEndVisualizationProperties" 
                          minOccurs="0" maxOccurs="1" />
     </xsd:sequence>
   </xsd:complexType>
            
   <xsd:complexType name="RelationshipEndTranslation">
     <xsd:all>
       <xsd:element name="Language" type="xsd:unsignedInt"/>
       <xsd:element name="Caption" type="xsd:string" minOccurs="0"/>
       <xsd:element name="CollectionCaption" type="xsd:string"/>
       <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
       <xsd:element name="DisplayFolder" type="xsd:string" minOccurs="0"/>
       <xsd:element name="Annotations"   minOccurs="0">
         <xsd:complexType>
           <xsd:sequence>
             <xsd:element name="Annotation" type="eng300_300:Annotation" 
                          minOccurs="0" maxOccurs="unbounded"/>
           </xsd:sequence>
         </xsd:complexType>
       </xsd:element>
     </xsd:all>
   </xsd:complexType>
            
   <xsd:complexType name="Annotation">
     <xsd:all>
       <xsd:element name="Name" type="xsd:string"/>
       <xsd:element name="Visibility" minOccurs="0">
         <xsd:simpleType>
           <xsd:restriction base="xsd:string" >
             <xsd:enumeration value="SchemaRowset" />
             <xsd:enumeration value="None" />
           </xsd:restriction>
         </xsd:simpleType>
       </xsd:element>
       <xsd:element name="Value" type="xsd:anyType" />
     </xsd:all>
   </xsd:complexType>

The following elements are defined in the namespace eng300:

   <xsd:complexType name="RelationshipEndVisualizationProperties">
     <xsd:sequence>
       <!-- we do not put displayfolder in visualization properties because 
            it already is in plain udm on other objects -->
       <!--<xsd:element name="DisplayFolder" type="xsd:boolean" 
                        minOccurs="0" maxOccurs="1"/>-->
       <xsd:element name="FolderPosition" type="xsd:integer" 
                        minOccurs="0" maxOccurs="1" default="-1"/>
       <xsd:element name="ContextualNameRule" minOccurs="0" maxOccurs="1" default="None">
         <xsd:simpleType>
           <xsd:restriction base="xsd:string">
             <xsd:enumeration value="None" />
             <xsd:enumeration value="Context" />
             <xsd:enumeration value="Merge" />
           </xsd:restriction>
         </xsd:simpleType>
       </xsd:element>
       <xsd:element name="DefaultDetailsPosition" type="xsd:integer" 
                          minOccurs="0" maxOccurs="1" default="-1"/>
       <xsd:element name="DisplayKeyPosition" type="xsd:integer" 
                         minOccurs="0" maxOccurs="1" default="-1"/>
       <xsd:element name="CommonIdentifierPosition" type="xsd:integer" 
                          minOccurs="0" maxOccurs="1" default="-1"/>
       <xsd:element name="IsDefaultMeasure" type="xsd:boolean" 
                          minOccurs="0" maxOccurs="1" default="false"/>
       <xsd:element name="IsDefaultImage" type="xsd:boolean" 
                          minOccurs="0" maxOccurs="1" default="false"/>
       <xsd:element name="SortPropertiesPosition" type="xsd:integer" 
                          minOccurs="0" maxOccurs="1" default="-1"/>
     </xsd:sequence>
   </xsd:complexType>

Element

Read-Only

Default value

Description

ID

[Required]

The object ID string.

Visible

Provides a hint to client applications that this Relationship is not to be exposed.

FromRelationshipEnd

A collection of properties that defines the characteristics of the Relationship-End.

ToRelationshipEnd

A collection of properties that defines the characteristics of the Relationship-End.

Role

Identifies one end of a one-to-many relationship

Multiplicity

Indicates whether the RelationshipEnd is at the "one" side or the "many" side of a relationship. The enumeration values are:

  • One – This is the primary key end.

  • Many – This is the foreign key end.

DimensionID

The Dimension associated with this end of the relationship.

Attributes

A collection of DimensionAttribute complex types that denote the columns that are participating in this key.

Translations

Empty

A collection of Translation objects.

VisualizationProperties

A collection of properties that can be used by tools to specify the set of visualization and enhanced formatting information of the Relationship.

Language

[Required]

The locale ID of the language. For more details on locale identifiers, see [MS-LCID].

Caption

Empty

The caption of the object in the language represented by the Language element.

CollectionCaption

Empty

The caption of a collection of objects.

Description

Empty

The object description.

DisplayFolder

Empty

The folder in which the object is displayed.

Annotations

Empty

A collection of Annotation objects.

FolderPosition

-1

Provides a hint to client applications to suggest the position that this relationship might hold among the other elements that share the same display folder.

ContextualNameRule

"None"

Provides a hint to client applications to suggest how to create unambiguous names for this attribute. The following values are allowed:

  • "None" – Use the attribute name.

  • "Context" – Use the incoming relationship name.

§ "Merge" – Attending to language grammar, concatenate the incoming relationship name and the attribute name.

DefaultDetailsPosition

-1

Provides a hint to client applications to suggest the position that this relationship might hold among the other elements that can be used to summarize a record.

DisplayKeyPosition

-1

Provides a hint to client applications to suggest the position that this relationship might hold among the other user-readable elements that uniquely identify the record.

CommonIdentifierPosition

-1

Provides a hint to client applications to suggest the position that this relationship might hold among the other common elements that can be used to identify the record.

IsDefaultMeasure

False

An indication if this measure is automatically used to summarize the dimension.

IsDefaultImage

False

An indication if this image is used to represent a record.

SortPropertiesPosition

-1

Provides the ability to place this relationship in the Sort Properties collection of the Dimension.