Model Deployment Package XML Schema (Master Data Services)
The Master Data Services model deployment package is an XML file saved with the .pkg extension. The following sections show the XML schema for model deployment packages.
Elements
The following section shows the individual elements for a package.
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:a="https://schemas.microsoft.com/sqlserver/masterdataservices/2009/09"
xmlns:b="https://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" attributeFormDefault="unqualified"
elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/Microsoft.MasterDataServices.Deployment" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="https://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" />
<xs:element name="Package">
<xs:complexType>
<xs:sequence>
<xs:element name="businessRuleSet">
<xs:complexType>
<xs:sequence>
<xs:element ref="a:BRActions" />
<xs:element ref="a:BRConditionTreeNodes" />
<xs:element ref="a:BRConditions" />
<xs:element ref="a:BusinessRules" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="masterData" nillable="true" />
<xs:element name="metadata">
<xs:complexType>
<xs:sequence>
<xs:element ref="a:AttributeGroups" />
<xs:element ref="a:Attributes" />
<xs:element ref="a:DerivedHierarchies" />
<xs:element ref="a:DerivedHierarchyLevels" />
<xs:element ref="a:Entities" />
<xs:element ref="a:ExplicitHierarchies" />
<xs:element ref="a:MemberTypes" />
<xs:element ref="a:Models" />
<xs:element ref="a:VersionFlags" />
<xs:element ref="a:Versions" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="settings">
<xs:complexType>
<xs:sequence>
<xs:element name="assemblyVersion" type="xs:string" />
<xs:element name="containsData" type="xs:boolean" />
<xs:element name="createdBy" type="xs:string" />
<xs:element name="createdDate" type="xs:dateTime" />
<xs:element name="deploymentType" type="xs:string" />
<xs:element name="productVersion" type="xs:string" />
<xs:element name="version" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Arrays
The following section shows how to serialize arrays for data elements that have multiple lines of data.
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="https://schemas.microsoft.com/2003/10/Serialization/Arrays" attributeFormDefault="unqualified" elementFormDefault="qualified"
targetNamespace="https://schemas.microsoft.com/2003/10/Serialization/Arrays"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="https://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" />
<xs:element name="anyType">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q1="https://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" ref="q1:Identifier" />
<xs:element xmlns:q2="https://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" ref="q2:PropertyName" />
<xs:element minOccurs="0" xmlns:q3="https://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" ref="q3:AttributeCode" />
<xs:element minOccurs="0" xmlns:q4="https://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" ref="q4:Value" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Package Structure
The following section shows the full package structure.
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="https://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" attributeFormDefault="unqualified" elementFormDefault="qualified"
targetNamespace="https://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="https://schemas.microsoft.com/2003/10/Serialization/Arrays" />
<xs:element name="BRActions" />
<xs:element name="BRConditionTreeNodes" />
<xs:element name="BRConditions" />
<xs:element name="BusinessRules">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="BusinessRule">
<xs:complexType>
<xs:sequence>
<xs:element name="AuditInfo" nillable="true" />
<xs:element name="BRActions">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="BRAction">
<xs:complexType>
<xs:sequence>
<xs:element name="AuditInfo" nillable="true" />
<xs:element name="BusinessRuleId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Operator" type="xs:string" />
<xs:element name="PostfixArguments">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="unbounded" xmlns:q1="https://schemas.microsoft.com/2003/10/Serialization/Arrays" ref="q1:anyType" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Sequence" type="xs:unsignedByte" />
<xs:element name="Text" type="xs:string" />
<xs:element name="PrefixArgument">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PropertyName" type="xs:string" />
<xs:element name="AttributeId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedShort" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ChildArguments" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="BRConditionTree" nillable="true">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element name="AuditInfo" nillable="true" />
<xs:element name="BRConditions">
<xs:complexType>
<xs:sequence>
<xs:element name="BRCondition">
<xs:complexType>
<xs:sequence>
<xs:element name="AuditInfo" nillable="true" />
<xs:element name="BusinessRuleId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Operator" type="xs:string" />
<xs:element name="PostfixArguments">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q2="https://schemas.microsoft.com/2003/10/Serialization/Arrays" ref="q2:anyType" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Sequence" type="xs:unsignedByte" />
<xs:element name="Text" type="xs:string" />
<xs:element name="ConditionTreeNodeId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PrefixArgument">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PropertyName" type="xs:string" />
<xs:element name="AttributeId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedShort" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ChildArguments" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="BusinessRuleId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ConditionTreeChildNodes" />
<xs:element name="ConditionTreeParentNode">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="LogicalOperator" type="xs:string" />
<xs:element name="Sequence" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Description" type="xs:string" />
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="NotificationGroup" nillable="true" />
<xs:element name="NotificationUser" nillable="true" />
<xs:element name="Priority" type="xs:unsignedByte" />
<xs:element name="RuleActionText" type="xs:string" />
<xs:element name="RuleConditionText" type="xs:string" />
<xs:element name="Status" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PropertyName" type="xs:string" />
<xs:element name="Value" type="xs:decimal" />
<xs:element name="AttributeCode" type="xs:string" />
<xs:element name="AttributeGroups" />
<xs:element name="Attributes" />
<xs:element name="DerivedHierarchies" />
<xs:element name="DerivedHierarchyLevels" />
<xs:element name="Entities" />
<xs:element name="ExplicitHierarchies" />
<xs:element name="MemberTypes" />
<xs:element name="Models">
<xs:complexType>
<xs:sequence>
<xs:element name="Model">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="DerivedHierarchies">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="DerivedHierarchy">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="AnchorNullRecursions" type="xs:boolean" />
<xs:element name="FullyQualifiedName" type="xs:string" />
<xs:element name="IsRecursive" type="xs:boolean" />
<xs:element name="Levels">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="DerivedHierarchyLevel">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DerivedHierarchyId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="DisplayName" type="xs:string" />
<xs:element name="ForeignEntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ForeignId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedShort" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ForeignType" type="xs:string" />
<xs:element name="IsRecursive" type="xs:boolean" />
<xs:element name="IsVisible" type="xs:boolean" />
<xs:element name="LevelNumber" type="xs:unsignedByte" />
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Entities">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Entity">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="ExplicitHierarchies">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="unbounded" name="ExplicitHierarchy">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="FullyQualifiedName" type="xs:string" />
<xs:element name="IsMandatory" type="xs:boolean" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IsBase" type="xs:boolean" />
<xs:element name="IsFlat" type="xs:boolean" />
<xs:element name="IsSystem" type="xs:boolean" />
<xs:element name="MemberTypes">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="EntityMemberType">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="AttributeGroups">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="unbounded" name="AttributeGroup">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="Attributes">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="MetadataAttribute">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedShort" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="AttributeType" type="xs:string" />
<xs:element name="ChangeTrackingGroup" type="xs:unsignedByte" />
<xs:element name="DataType" type="xs:string" />
<xs:element name="DataTypeInformation" nillable="true" />
<xs:element name="DisplayWidth" type="xs:unsignedByte" />
<xs:element name="DomainEntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DomainEntityIsFlat" type="xs:boolean" />
<xs:element name="DomainEntityPermission" type="xs:string" />
<xs:element name="FullyQualifiedName" nillable="true" />
<xs:element name="InputMaskId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IsCode" type="xs:boolean" />
<xs:element name="IsName" type="xs:boolean" />
<xs:element name="IsReadOnly" type="xs:boolean" />
<xs:element name="IsSystem" type="xs:boolean" />
<xs:element name="SortOrder" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="FullName" type="xs:string" />
<xs:element name="SortOrder" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Attributes">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="MetadataAttribute">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedShort" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="AttributeType" type="xs:string" />
<xs:element name="ChangeTrackingGroup" type="xs:unsignedByte" />
<xs:element name="DataType" type="xs:string" />
<xs:element name="DataTypeInformation" type="xs:unsignedByte" />
<xs:element name="DisplayWidth" type="xs:unsignedByte" />
<xs:element name="DomainEntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DomainEntityIsFlat" type="xs:boolean" />
<xs:element name="DomainEntityPermission" type="xs:string" />
<xs:element name="FullyQualifiedName" type="xs:string" />
<xs:element name="InputMaskId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IsCode" type="xs:boolean" />
<xs:element name="IsName" type="xs:boolean" />
<xs:element name="IsReadOnly" type="xs:boolean" />
<xs:element name="IsSystem" type="xs:boolean" />
<xs:element name="SortOrder" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Type" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ExplicitHierarchies">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="ExplicitHierarchy">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="FullyQualifiedName" type="xs:string" />
<xs:element name="IsMandatory" type="xs:boolean" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IsAdministrator" type="xs:boolean" />
<xs:element name="IsSystem" type="xs:boolean" />
<xs:element name="VersionFlags">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="VersionFlag">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="AssignedVersionId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Description" type="xs:string" />
<xs:element name="IsCommittedOnly" type="xs:boolean" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Versions">
<xs:complexType>
<xs:sequence>
<xs:element name="Version">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="CopiedFromVersionId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Description" type="xs:string" />
<xs:element name="ValidationStatus" type="xs:string" />
<xs:element name="VersionFlagId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="VersionNumber" type="xs:unsignedByte" />
<xs:element name="VersionStatus" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="VersionFlags" />
<xs:element name="Versions" />
</xs:schema><?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="https://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="https://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="https://schemas.microsoft.com/2003/10/Serialization/Arrays" />
<xs:element name="BRActions" />
<xs:element name="BRConditionTreeNodes" />
<xs:element name="BRConditions" />
<xs:element name="BusinessRules">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="BusinessRule">
<xs:complexType>
<xs:sequence>
<xs:element name="AuditInfo" nillable="true" />
<xs:element name="BRActions">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="BRAction">
<xs:complexType>
<xs:sequence>
<xs:element name="AuditInfo" nillable="true" />
<xs:element name="BusinessRuleId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Operator" type="xs:string" />
<xs:element name="PostfixArguments">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="unbounded" xmlns:q1="https://schemas.microsoft.com/2003/10/Serialization/Arrays" ref="q1:anyType" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Sequence" type="xs:unsignedByte" />
<xs:element name="Text" type="xs:string" />
<xs:element name="PrefixArgument">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PropertyName" type="xs:string" />
<xs:element name="AttributeId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedShort" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ChildArguments" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="BRConditionTree" nillable="true">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element name="AuditInfo" nillable="true" />
<xs:element name="BRConditions">
<xs:complexType>
<xs:sequence>
<xs:element name="BRCondition">
<xs:complexType>
<xs:sequence>
<xs:element name="AuditInfo" nillable="true" />
<xs:element name="BusinessRuleId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Operator" type="xs:string" />
<xs:element name="PostfixArguments">
<xs:complexType>
<xs:sequence>
<xs:element xmlns:q2="https://schemas.microsoft.com/2003/10/Serialization/Arrays" ref="q2:anyType" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Sequence" type="xs:unsignedByte" />
<xs:element name="Text" type="xs:string" />
<xs:element name="ConditionTreeNodeId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PrefixArgument">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PropertyName" type="xs:string" />
<xs:element name="AttributeId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedShort" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ChildArguments" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="BusinessRuleId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ConditionTreeChildNodes" />
<xs:element name="ConditionTreeParentNode">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="LogicalOperator" type="xs:string" />
<xs:element name="Sequence" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Description" type="xs:string" />
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="NotificationGroup" nillable="true" />
<xs:element name="NotificationUser" nillable="true" />
<xs:element name="Priority" type="xs:unsignedByte" />
<xs:element name="RuleActionText" type="xs:string" />
<xs:element name="RuleConditionText" type="xs:string" />
<xs:element name="Status" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PropertyName" type="xs:string" />
<xs:element name="Value" type="xs:decimal" />
<xs:element name="AttributeCode" type="xs:string" />
<xs:element name="AttributeGroups" />
<xs:element name="Attributes" />
<xs:element name="DerivedHierarchies" />
<xs:element name="DerivedHierarchyLevels" />
<xs:element name="Entities" />
<xs:element name="ExplicitHierarchies" />
<xs:element name="MemberTypes" />
<xs:element name="Models">
<xs:complexType>
<xs:sequence>
<xs:element name="Model">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="DerivedHierarchies">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="DerivedHierarchy">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="AnchorNullRecursions" type="xs:boolean" />
<xs:element name="FullyQualifiedName" type="xs:string" />
<xs:element name="IsRecursive" type="xs:boolean" />
<xs:element name="Levels">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="DerivedHierarchyLevel">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DerivedHierarchyId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="DisplayName" type="xs:string" />
<xs:element name="ForeignEntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ForeignId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedShort" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ForeignType" type="xs:string" />
<xs:element name="IsRecursive" type="xs:boolean" />
<xs:element name="IsVisible" type="xs:boolean" />
<xs:element name="LevelNumber" type="xs:unsignedByte" />
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Entities">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Entity">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="ExplicitHierarchies">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="unbounded" name="ExplicitHierarchy">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="FullyQualifiedName" type="xs:string" />
<xs:element name="IsMandatory" type="xs:boolean" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IsBase" type="xs:boolean" />
<xs:element name="IsFlat" type="xs:boolean" />
<xs:element name="IsSystem" type="xs:boolean" />
<xs:element name="MemberTypes">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="EntityMemberType">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" nillable="true" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="AttributeGroups">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element maxOccurs="unbounded" name="AttributeGroup">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="Attributes">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="MetadataAttribute">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedShort" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="AttributeType" type="xs:string" />
<xs:element name="ChangeTrackingGroup" type="xs:unsignedByte" />
<xs:element name="DataType" type="xs:string" />
<xs:element name="DataTypeInformation" nillable="true" />
<xs:element name="DisplayWidth" type="xs:unsignedByte" />
<xs:element name="DomainEntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DomainEntityIsFlat" type="xs:boolean" />
<xs:element name="DomainEntityPermission" type="xs:string" />
<xs:element name="FullyQualifiedName" nillable="true" />
<xs:element name="InputMaskId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IsCode" type="xs:boolean" />
<xs:element name="IsName" type="xs:boolean" />
<xs:element name="IsReadOnly" type="xs:boolean" />
<xs:element name="IsSystem" type="xs:boolean" />
<xs:element name="SortOrder" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="FullName" type="xs:string" />
<xs:element name="SortOrder" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Attributes">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="MetadataAttribute">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedShort" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MemberType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="AttributeType" type="xs:string" />
<xs:element name="ChangeTrackingGroup" type="xs:unsignedByte" />
<xs:element name="DataType" type="xs:string" />
<xs:element name="DataTypeInformation" type="xs:unsignedByte" />
<xs:element name="DisplayWidth" type="xs:unsignedByte" />
<xs:element name="DomainEntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DomainEntityIsFlat" type="xs:boolean" />
<xs:element name="DomainEntityPermission" type="xs:string" />
<xs:element name="FullyQualifiedName" type="xs:string" />
<xs:element name="InputMaskId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IsCode" type="xs:boolean" />
<xs:element name="IsName" type="xs:boolean" />
<xs:element name="IsReadOnly" type="xs:boolean" />
<xs:element name="IsSystem" type="xs:boolean" />
<xs:element name="SortOrder" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Type" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ExplicitHierarchies">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="ExplicitHierarchy">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EntityId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="FullyQualifiedName" type="xs:string" />
<xs:element name="IsMandatory" type="xs:boolean" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IsAdministrator" type="xs:boolean" />
<xs:element name="IsSystem" type="xs:boolean" />
<xs:element name="VersionFlags">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="VersionFlag">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="AssignedVersionId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Description" type="xs:string" />
<xs:element name="IsCommittedOnly" type="xs:boolean" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Versions">
<xs:complexType>
<xs:sequence>
<xs:element name="Version">
<xs:complexType>
<xs:sequence>
<xs:element name="Identifier">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
<xs:element name="ModelId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" type="xs:string" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Permission" type="xs:string" />
<xs:element name="CopiedFromVersionId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Description" type="xs:string" />
<xs:element name="ValidationStatus" type="xs:string" />
<xs:element name="VersionFlagId">
<xs:complexType>
<xs:sequence>
<xs:element name="Id" type="xs:string" />
<xs:element name="Name" />
<xs:element name="InternalId" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="VersionNumber" type="xs:unsignedByte" />
<xs:element name="VersionStatus" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="VersionFlags" />
<xs:element name="Versions" />
</xs:schema>
See Also