Sample Repository Model in XMI format
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.1/notation" xmlns:repositorymodel="http://www.tibco.com/mdm/repositorymodel/1.0">
<repositorymodel:DataDomain xmi:id="_x1dGILdLEd-A7OOtbkUsRg">
<Repository xmi:type="repositorymodel:Repository" xmi:id="_repository_ADDRESS" Name="ADDRESS" Description="ADDRESS">
<AttributeGroup xmi:type="repositorymodel:AttributeGroup" xmi:id="_attributegroup_ADDRESS_UNASSIGNED" Name="UNASSIGNED" Description="UNASSIGNED">
<Attribute xmi:type="repositorymodel:Attribute" xmi:id="_attribute_ADDRESS_PRODUCTID" Name="ID" Description="Unique identifier for current entity." DisplayName="Record ID" ColumnName="CPRODUCTID" DisplayInRecordList="true" QuickViewable="true" Length="255"/>
<Attribute xmi:type="repositorymodel:Attribute" xmi:id="_attribute_ADDRESS_PRODUCTIDEXT" Name="IDEXT" Description="Auxiliary identifier for current entity." DisplayName="Record ID Extension" ColumnName="CPRODUCTIDEXT" QuickViewable="false" Length="255"/>
<Attribute xmi:type="repositorymodel:Attribute" xmi:id="_attribute_ADDRESS_CONTAINS" Name="CONTAINS" Description="Contains" DisplayName="Related Records" ColumnName="CCONTAINS" QuickViewable="false" Length="4000"/>
<Attribute xmi:type="repositorymodel:Attribute" xmi:id="_attribute_ADDRESS_ADDRESS1" Name="Address1" Description="ADDRESS1" DisplayName="Address1" DisplayInRecordList="true" QuickViewable="false" Length="256"/>
<Attribute xmi:type="repositorymodel:Attribute" xmi:id="_attribute_ADDRESS_ZipCode" Name="ZipCode" Description="ZipCode" DisplayName="ZipCode" Type="Integer" QuickViewable="false" Length="256"/>
</AttributeGroup>
<AttributeGroup xmi:type="repositorymodel:AttributeGroup" xmi:id="_attributegroup_ADDRESS_SYSTEM" Name="SYSTEM" Description="SYSTEM"/>
</Repository>
<Repository xmi:type="repositorymodel:Repository" xmi:id="_repository_CUSTOMER" Name="CUSTOMER" Description="Customer" TableName="Customer">
<AttributeGroup xmi:type="repositorymodel:AttributeGroup" xmi:id="_attributegroup_CUSTOMER_UNASSIGNED" Name="UNASSIGNED" Description="UNASSIGNED">
<Attribute xmi:type="repositorymodel:Attribute" xmi:id="_attribute_CUSTOMER_PRODUCTID" Name="ID" Description="Unique identifier for current entity." DisplayName="Record ID" ColumnName="CPRODUCTID" DisplayInRecordList="true" QuickViewable="true" Length="255" Position="1"/>
<Attribute xmi:type="repositorymodel:Attribute" xmi:id="_attribute_CUSTOMER_PRODUCTIDEXT" Name="IDEXT" Description="Auxiliary identifier for current entity." DisplayName="Record ID Extension" ColumnName="CPRODUCTIDEXT" QuickViewable="false" Length="255" Position="2"/>
<Attribute xmi:type="repositorymodel:Attribute" xmi:id="_attribute_CUSTOMER_CONTAINS" Name="CONTAINS" Description="Contains" DisplayName="Related Records" ColumnName="CCONTAINS" QuickViewable="false" Length="4000" Position="3"/>
<Attribute xmi:type="repositorymodel:Attribute" xmi:id="_attribute_CUSTOMER_FIRSTNAME" Name="FirstName" Description="FIRSTNAME" DisplayName="FirstName" DisplayInRecordList="true" QuickViewable="false" Length="256" Position="5"/>
<Attribute xmi:type="repositorymodel:Attribute" xmi:id="_attribute_CUSTOMER_LASTNAME" Name="LastName" Description="LASTNAME" DisplayName="LastName" DisplayInRecordList="true" QuickViewable="false" Length="256" Position="6" Help="LASTNAME"/>
</AttributeGroup>
<AttributeGroup xmi:type="repositorymodel:AttributeGroup" xmi:id="_attributegroup_CUSTOMER_SYSTEM" Name="SYSTEM" Description="SYSTEM"/>
</Repository>
<Relationship xmi:type="repositorymodel:Relationship" xmi:id="_relationship_AddToCust" Name="AddToCust" Description="AddToCust" ReverseName="CustToAdd" ReverseDescription="CustToAdd" sourceRepository="_repository_ADDRESS" targetRepository="_repository_CUSTOMER"/>
<GroupConnector xmi:type="repositorymodel:GroupConnector" xmi:id="AddToCust_GroupConnector" sourceRelationshipAttributeGroup="_ragroup_ADDRESS_AddToCust" targetRelationship="_relationship_AddToCust"/>
<GroupConnector xmi:type="repositorymodel:GroupConnector" xmi:id="OrgtoCust_GroupConnector" sourceRelationshipAttributeGroup="_ragroup_CUSTOMER_OrgtoCust"/>
<RelationshipAttributeGroup xmi:type="repositorymodel:RelationshipAttributeGroup" xmi:id="_ragroup_ADDRESS_AddToCust" Name="ADDRESS_AddToCust" Description="ADDRESS_AddToCust">
<RelationshipAttribute xmi:type="repositorymodel:RelationshipAttribute" xmi:id="_relationshipattribute_ADDRESS_AddToCust_AddressType" Name="AddressType" Description="AddressType" DisplayName="AddressType" Searchable="false" DisplayInRecordList="false" Length="256" Position="1"/>
</RelationshipAttributeGroup>
<RelationshipAttributeGroup xmi:type="repositorymodel:RelationshipAttributeGroup" xmi:id="_ragroup_CUSTOMER_OrgtoCust" Name="CUSTOMER_OrgtoCust" Description="CUSTOMER_OrgtoCust">
<RelationshipAttribute xmi:type="repositorymodel:RelationshipAttribute" xmi:id="_relationshipattribute_CUSTOMER_OrgtoCust_CustomerType" Name="CustomerType" Description="CustomerType" DisplayName="CustomerType" Searchable="false" DisplayInRecordList="false" Length="256" Position="1"/>
<RelationshipAttribute xmi:type="repositorymodel:RelationshipAttribute" xmi:id="_relationshipattribute_CUSTOMER_OrgtoCust_CustomerSince" Name="CustomerSince" Description="CustomerSince" DisplayName="CustomerSince" Type="Date" Searchable="false" DisplayInRecordList="false" Length="0" Position="2"/>
</RelationshipAttributeGroup>
</repositorymodel:DataDomain>
<notation:Diagram xmi:id="_x15yELdLEd-A7OOtbkUsRg" type="DataDomain" element="_x1dGILdLEd-A7OOtbkUsRg" measurementUnit="Pixel">
</notation:Diagram>
</xmi:XMI>
The structure of the repository format is an XMI format with a DataDomain, which contains following elements:
- Repository
- AttributeGroup
- Attribute
- Relationship
- RelationshipAttributeGroup
- RelationshipAttribute
- GroupConnector
Each element has following two attributes:
- xmi:id — An element identifier that must be unique and used to specify relationships between elements.
- xmi:type — Type of the elements it represents.
Repository
Represents a CIM repository. It can contain one or more attribute groups.
xmi:type - repositorymodel:Repository
It has the following attributes:
AttributeGroup
Represents the Attribute Group from a CIM repository which is a logical grouping of attributes in a repository. It can contain one or more attributes.
xmi:type - repositorymodel:AttributeGroup
Attributes:
Attribute
The fundamental entity (leaf node) in the model; represents an attribute of the CIM repository.
xmi:type - repositorymodel:Attribute
It has the following attributes:
Attribute | Description |
---|---|
Name | Name of attribute |
Description | Description of attribute |
DisplayName | Display name of attribute |
DisplayInRecordList | Represents 'Display In Record List' property |
QuickViewable | Represents QuickViewable property of CIM attribute |
Length | Length for an attribute type |
Position | The position for an attribute. This gets populated automatically when exporting from CIM Studio and it is recommended that you do not populate this attribute. |
ColumnName | Database column name for attribute |
Searchable | Represents Searchable property of an attribute, value should be true or false. |
MultiValue | Represents MultiValue property of an attribute, value should be true or false. |
MultiValueTableName | Database table name for multi-value attribute |
Help | Help text for attribute |
Type | Data type of attribute. Valid values are Integer, String, Amount, Boolean, File, Date, Decimal, Custom Decimal, Timestamp, Long, and URL. |
Relationship
Represents a relationship between two repositories.
xmi:type - repositorymodel:Relationship
It has following attributes:
RelationshipAttributeGroup
A RelationshipAttributeGroup is a container for one or more relationship attributes. There is no corresponding concept in CIM, it just graphical representation to hold relationship attributes together.
xmi:type - repositorymodel:RelationshipAttributeGroup
RelationshipAttribute
A RelationshipAttribute represent a minimal data item associated to a relationship in the structured data model and represents the CIM relationship attribute.
xmi:type - repositorymodel:RelationshipAttribute
It has following attributes: