5543eb9de8
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1824563 13f79535-47bb-0310-9956-ffa450edef68
96 lines
3.1 KiB
XML
96 lines
3.1 KiB
XML
<xsd:schema
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns="http://xbean/scomp/idConstraint/Constraint"
|
|
xmlns:con="http://xbean/scomp/idConstraint/Constraint"
|
|
targetNamespace="http://xbean/scomp/idConstraint/Constraint"
|
|
elementFormDefault="qualified"
|
|
attributeFormDefault="qualified"
|
|
>
|
|
|
|
|
|
<xsd:complexType name="productType">
|
|
<xsd:sequence>
|
|
<xsd:element name="department" maxOccurs="2">
|
|
<xsd:complexType>
|
|
<xsd:attribute name="name"/>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
<xsd:element name="id" type="xsd:token"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
|
|
<xsd:complexType name="OtherProductType">
|
|
<xsd:sequence>
|
|
<xsd:element name="department" minOccurs="0">
|
|
<xsd:complexType>
|
|
<xsd:attribute name="name"/>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
<xsd:element name="id" type="xsd:token"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
|
|
<xsd:complexType name="ProductListType">
|
|
<xsd:sequence maxOccurs="unbounded">
|
|
<xsd:element name="product" type="productType"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
|
|
<xsd:complexType name="OtherProductListType">
|
|
<xsd:sequence maxOccurs="unbounded">
|
|
<xsd:element name="product" type="productType"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
|
|
<xsd:element name="productList" type="ProductListType">
|
|
<xsd:unique name="deptProdUnique">
|
|
<xsd:selector xpath="con:product"/>
|
|
<xsd:field xpath="con:department/@con:name"/>
|
|
<xsd:field xpath="con:id"/>
|
|
</xsd:unique>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="KeyProductList" type="OtherProductListType" />
|
|
|
|
<xsd:complexType name="OrderType">
|
|
<xsd:sequence>
|
|
<xsd:element name="customerName" type="xsd:string"/>
|
|
<xsd:sequence maxOccurs="unbounded">
|
|
<xsd:element name="item">
|
|
<xsd:complexType>
|
|
<xsd:attribute name="SKU" type="xsd:token"/>
|
|
<xsd:attribute name="deptId"/>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
</xsd:sequence>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
|
|
|
|
<xsd:element name="CompanyDB">
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element ref="KeyProductList"/>
|
|
<xsd:sequence maxOccurs="unbounded">
|
|
<xsd:element name="order" type="OrderType" />
|
|
</xsd:sequence>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
|
|
<xsd:keyref name="ProdRef" refer="deptProdKey">
|
|
<xsd:selector xpath="con:order/con:item"/>
|
|
<xsd:field xpath="@con:deptId"/>
|
|
<xsd:field xpath="@con:SKU"/>
|
|
</xsd:keyref>
|
|
|
|
<xsd:key name="deptProdKey">
|
|
<xsd:selector xpath="con:KeyProductList/con:product"/>
|
|
<xsd:field xpath="con:department/@con:name"/>
|
|
<xsd:field xpath="con:id"/>
|
|
</xsd:key>
|
|
|
|
</xsd:element>
|
|
|
|
|
|
</xsd:schema>
|