0
일부 제품 색인은 XSD에서 작동합니다. 문제는 다음과 같습니다. "artikelgruppe"(= Product-Group)에 고유 한 "GRUPPE"(= GroupNumber)를 갖기를 원합니다. "artikel"/ "ARTNR"도 마찬가지입니다.XSD - 고유 한 문으로 중복을 막지 못합니다.
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="artikelkatalog">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="artikelgruppen">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="artikelgruppe" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="GRUPPE" type="xsd:integer">
</xsd:element>
<xsd:element name="GRUP_TXT" type="xsd:string">
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:unique name="unique_GRUPPE">
<xsd:selector xpath="artikelgruppe" />
<xsd:field xpath="@GRUPPE" />
</xsd:unique>
</xsd:element>
<xsd:element name="alle_artikel">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="artikel" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ARTNR" type="xsd:integer">
</xsd:element>
<xsd:element name="ARTBEZ" type="xsd:string">
</xsd:element>
<xsd:element name="EKPREIS" type="xsd:float">
</xsd:element>
<xsd:element name="EKWAEHRUNG" type="xsd:string">
</xsd:element>
<xsd:element name="VPREIS" type="xsd:float">
</xsd:element>
<xsd:element name="VWAEHRUNG" type="xsd:string">
</xsd:element>
<xsd:element name="GRUPPE" type="xsd:integer">
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:unique name="unique_ARTNR">
<xsd:selector xpath="artikel" />
<xsd:field xpath="@ARTNR" />
<!--<xsd:keyref name="keyref_GRUPPE_REFERENZ" refer="unique_ARTNR">
<xsd:selector xpath="artikelgruppe" />
<xsd:field xpath="@ARTNR"/>
</xsd:keyref>-->
</xsd:unique>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
내 코드는 오류가 발생하지 않습니다,하지만 일을하지 않습니다 :(나는이 공급 :
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<artikelkatalog>
<artikelgruppen>
<artikelgruppe>
<GRUPPE>20</GRUPPE>
<GRUP_TXT>Workstation</GRUP_TXT>
</artikelgruppe>
<artikelgruppe>
<GRUPPE>20</GRUPPE>
<GRUP_TXT>Server</GRUP_TXT>
</artikelgruppe>
<artikelgruppe>
<GRUPPE>30</GRUPPE>
<GRUP_TXT>Monitor</GRUP_TXT>
</artikelgruppe>
</artikelgruppen>
<alle_artikel>
<artikel>
<ARTNR>1100</ARTNR>
<ARTBEZ>Transtec 800</ARTBEZ>
<EKPREIS>720.00</EKPREIS>
<EKWAEHRUNG>€</EKWAEHRUNG>
<VPREIS>749.00</VPREIS>
<VWAEHRUNG>€</VWAEHRUNG>
<GRUPPE>10</GRUPPE>
</artikel>
<artikel>
<ARTNR>1100</ARTNR>
<ARTBEZ>Trinitron 17"</ARTBEZ>
<EKPREIS>375.00</EKPREIS>
<EKWAEHRUNG>$</EKWAEHRUNG>
<VPREIS>399.00</VPREIS>
<VWAEHRUNG>$</VWAEHRUNG>
<GRUPPE>20</GRUPPE>
</artikel>
</alle_artikel>
</artikelkatalog>
를 그리고이 문제는 무엇 :(과 기계가 괜찮다고?