Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
-
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:bdc="http://schemas.microsoft.com/windows/2007/BusinessDataCatalog/Resources" targetNamespace="http://schemas.microsoft.com/windows/2007/BusinessDataCatalog/Resources" elementFormDefault="qualified"> <xs:element name="Model" type="bdc:Model"/> <xs:complexType name="Model"> <xs:complexContent> <xs:extension base="bdc:IndividuallySecurableMetadataObject"> <xs:sequence> <xs:element name="LobSystems" type="bdc:LobSystems" minOccurs="0" maxOccurs="1"> <xs:unique name="LobSystemNameKey"> <xs:selector xpath="*"/> <xs:field xpath="@Name"/> </xs:unique> </xs:element> </xs:sequence> <xs:attribute name="Name" type="bdc:NameString" use="required"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="LobSystems"> <xs:sequence> <xs:element name="LobSystem" type="bdc:LobSystem" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="MetadataObject" abstract="true"> <xs:sequence> <xs:element name="LocalizedDisplayNames" type="bdc:LocalizedDisplayNames" minOccurs="0" maxOccurs="1"> <xs:unique name="LocalizedDisplayNameLCIDKey"> <xs:selector xpath="*"/> <xs:field xpath="@LCID"/> </xs:unique> </xs:element> <xs:element name="Properties" type="bdc:Properties" minOccurs="0" maxOccurs="1"> <xs:unique name="PropertyNameKey"> <xs:selector xpath="*"/> <xs:field xpath="@Name"/> </xs:unique> </xs:element> </xs:sequence> <xs:attribute name="Name" type="bdc:NameString" use="required"/> </xs:complexType> <xs:complexType name="IndividuallySecurableMetadataObject" abstract="true"> <xs:complexContent> <xs:extension base="bdc:MetadataObject"> <xs:sequence> <xs:element name="AccessControlList" type="bdc:AccessControlList" minOccurs="0" maxOccurs="1"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="LocalizedDisplayNames"> <xs:sequence> <xs:element name="LocalizedDisplayName" type="bdc:LocalizedDisplayName" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="LocalizedDisplayName" mixed="true"> <xs:attribute name="LCID" type="xs:integer" use="required"/> </xs:complexType> <xs:complexType name="LobSystem"> <xs:complexContent> <xs:extension base="bdc:IndividuallySecurableMetadataObject"> <xs:sequence> <xs:element name="LobSystemInstances" type="bdc:LobSystemInstances" minOccurs="0" maxOccurs="1"> <xs:unique name="LobSystemInstanceNameKey"> <xs:selector xpath="*"/> <xs:field xpath="@Name"/> </xs:unique> </xs:element> <xs:element name="Entities" type="bdc:Entities" minOccurs="0" maxOccurs="1"> <xs:unique name="EntityNameNamespaceVersionKey"> <xs:selector xpath="*"/> <xs:field xpath="@Name"/> <xs:field xpath="@Namespace"/> <xs:field xpath="@Version"/> </xs:unique> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="LobSystemInstances"> <xs:sequence> <xs:element name="LobSystemInstance" type="bdc:LobSystemInstance" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="LobSystemInstance"> <xs:complexContent> <xs:extension base="bdc:MetadataObject"/> </xs:complexContent> </xs:complexType> <xs:complexType name="Entities"> <xs:sequence> <xs:element name="Entity" type="bdc:Entity" minOccurs="1" maxOccurs="unbounded"> <xs:unique name="MethodInstanceNameKey"> <xs:selector xpath=".//bdc:MethodInstances/*"/> <xs:field xpath="@Name"/> </xs:unique> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="Entity"> <xs:complexContent> <xs:extension base="bdc:IndividuallySecurableMetadataObject"> <xs:sequence> <xs:element name="Identifiers" type="bdc:Identifiers" minOccurs="0"> <xs:unique name="IdentifierNameKey"> <xs:selector xpath="*"/> <xs:field xpath="@Name"/> </xs:unique> </xs:element> <xs:element name="Methods" type="bdc:Methods" minOccurs="0"> <xs:unique name="MethodNameKey"> <xs:selector xpath="*"/> <xs:field xpath="@Name"/> </xs:unique> </xs:element> <xs:element name="AssociationGroups" type="bdc:AssociationGroups" minOccurs="0"> <xs:unique name="AssociationGroupNameKey"> <xs:selector xpath="*"/> <xs:field xpath="@Name"/> </xs:unique> </xs:element> <xs:element name="Actions" type="bdc:Actions" minOccurs="0"> <xs:unique name="ActionNameKey"> <xs:selector xpath="*"/> <xs:field xpath="@Name"/> </xs:unique> </xs:element> </xs:sequence> <xs:attribute name="Namespace" type="bdc:NameString" use="required"/> <xs:attribute name="Version" type="bdc:VersionString" use="required"/> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="AssociationGroups"> <xs:sequence> <xs:element name="AssociationGroup" type="bdc:AssociationGroup" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="AssociationGroup"> <xs:complexContent> <xs:extension base="bdc:MetadataObject"/> </xs:complexContent> </xs:complexType> <xs:complexType name="Identifiers"> <xs:sequence> <xs:element name="Identifier" type="bdc:Identifier" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="Identifier"> <xs:complexContent> <xs:extension base="bdc:MetadataObject"/> </xs:complexContent> </xs:complexType> <xs:complexType name="Methods"> <xs:sequence> <xs:element name="Method" type="bdc:Method" minOccurs="1" maxOccurs="unbounded"> <xs:key name="ParameterNameKey"> <xs:selector xpath=".//bdc:Parameter"/> <xs:field xpath="@Name"/> </xs:key> <xs:key name="MethodMethodInstanceNameKey"> <xs:selector xpath=".//bdc:MethodInstances/*"/> <xs:field xpath="@Name"/> </xs:key> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="Method"> <xs:complexContent> <xs:extension base="bdc:IndividuallySecurableMetadataObject"> <xs:sequence> <xs:element name="FilterDescriptors" type="bdc:FilterDescriptors" minOccurs="0" maxOccurs="1"> <xs:unique name="FilterDescriptorNameKey"> <xs:selector xpath="*"/> <xs:field xpath="@Name"/> </xs:unique> </xs:element> <xs:element name="Parameters" type="bdc:Parameters" minOccurs="0" maxOccurs="1"/> <xs:element name="MethodInstances" type="bdc:MethodInstances" minOccurs="0" maxOccurs="1"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="FilterDescriptors"> <xs:sequence> <xs:element name="FilterDescriptor" type="bdc:FilterDescriptor" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="FilterDescriptor"> <xs:complexContent> <xs:extension base="bdc:MetadataObject"/> </xs:complexContent> </xs:complexType> <xs:complexType name="MethodInstances"> <xs:choice minOccurs="1" maxOccurs="unbounded"> <xs:element name="Association" type="bdc:Association"/> <xs:element name="MethodInstance" type="bdc:MethodInstance"/> </xs:choice> </xs:complexType> <xs:complexType name="MethodInstance"> <xs:complexContent> <xs:extension base="bdc:IndividuallySecurableMetadataObject"/> </xs:complexContent> </xs:complexType> <xs:complexType name="Parameters"> <xs:sequence> <xs:element name="Parameter" type="bdc:Parameter" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="Parameter"> <xs:complexContent> <xs:extension base="bdc:MetadataObject"> <xs:sequence> <xs:element name="TypeDescriptor" type="bdc:TypeDescriptor"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="TypeDescriptor"> <xs:complexContent> <xs:extension base="bdc:MetadataObject"> <xs:sequence> <xs:element name="TypeDescriptors" type="bdc:TypeDescriptors" minOccurs="0"> <xs:unique name="TypeDescriptorNameKey"> <xs:selector xpath="*"/> <xs:field xpath="@Name"/> </xs:unique> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="TypeDescriptors"> <xs:sequence> <xs:element name="TypeDescriptor" type="bdc:TypeDescriptor" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="Actions"> <xs:sequence> <xs:element name="Action" type="bdc:Action" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="Action"> <xs:complexContent> <xs:extension base="bdc:MetadataObject"> <xs:sequence> <xs:element name="ActionParameters" type="bdc:ActionParameters" minOccurs="0"> <xs:unique name="ActionParameterNameKey"> <xs:selector xpath="*"/> <xs:field xpath="@Name"/> </xs:unique> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="ActionParameters"> <xs:sequence> <xs:element name="ActionParameter" type="bdc:ActionParameter" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="ActionParameter"> <xs:complexContent> <xs:extension base="bdc:MetadataObject"/> </xs:complexContent> </xs:complexType> <xs:complexType name="Association"> <xs:complexContent> <xs:extension base="bdc:IndividuallySecurableMetadataObject"/> </xs:complexContent> </xs:complexType> <xs:complexType name="Property" mixed="true"> <xs:attribute name="Name" type="bdc:NameString" use="required"/> <xs:attribute name="Type" type="bdc:TypeNameString" use="required"/> </xs:complexType> <xs:complexType name="Properties"> <xs:sequence> <xs:element name="Property" type="bdc:Property" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="AccessControlList"> <xs:sequence> <xs:element name="AccessControlEntry" type="bdc:AccessControlEntry" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="AccessControlEntry"> <xs:sequence> <xs:element name="Right" type="bdc:Right" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="Principal" type="xs:string" use="required"/> </xs:complexType> <xs:complexType name="Right"> <xs:attribute name="BdcRight" type="bdc:BdcRightName" use="required"/> </xs:complexType> <xs:simpleType name="BdcRightName"> <xs:restriction base="xs:string"> <xs:enumeration value="None"/> <xs:enumeration value="Execute"/> <xs:enumeration value="Edit"/> <xs:enumeration value="SetPermissions"/> <xs:enumeration value="SelectableInClients"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="NameString"> <xs:restriction base="xs:string"> <xs:minLength value="1"/> <xs:maxLength value="255"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="TypeNameString"> <xs:restriction base="xs:string"> <xs:minLength value="1"/> <xs:maxLength value="255"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="VersionString"> <xs:restriction base="xs:string"> <xs:pattern value="[0-9]+(\.[0-9]+){1,3}"/> </xs:restriction> </xs:simpleType> </xs:schema>