1
고유 한 요소를 만들려고합니다. 여기 내 코드의 일부입니다. XS- 스키마 고유 요소
<complexType name="DeliveryOrder">
<sequence>
<element name="Depot" type="tns:County" minOccurs="1" maxOccurs="1"></element>
<element name="CustomerDetails" type="tns:CustomerDetails" minOccurs="1" maxOccurs="1"></element>
<element name="ItemsToBeDelivered"
type="tns:ItemsToBeDelivered" maxOccurs="unbounded" minOccurs="1">
</element>
</sequence>
</complexType>
<complexType name="CustomerDetails">
<sequence>
<element name="FirstName">
<simpleType>
<restriction base="string">
<pattern value="[a-zA-Z][a-z][a-z]*"></pattern>
</restriction>
</simpleType>
</element>
<element name="Surname">
<simpleType>
<restriction base="string">
<pattern value="[a-z{^}A-Z][a-z][a-z]*"></pattern>
</restriction>
</simpleType>
</element>
<element name="AddressLine1">
<simpleType>
<restriction base="string">
<minLength value="4"></minLength>
<whiteSpace value="collapse"></whiteSpace>
</restriction>
</simpleType>
</element>
<element name="AddressLine2">
<simpleType>
<restriction base="string">
<minLength value="4"></minLength>
<whiteSpace value="collapse"></whiteSpace>
</restriction>
</simpleType>
</element>
<element name="AddressLine3" type="string">
</element>
<element name="County" type="tns:County" maxOccurs="1" minOccurs="1"></element>
</sequence>
</complexType>
<complexType name="County">
<choice>
<element name="CountyName">
<simpleType>
<restriction base="string">
<enumeration value="Dublin"></enumeration>
<enumeration value="Cork"></enumeration>
<enumeration value="Kildare"></enumeration>
<enumeration value="Waterford"></enumeration>
<enumeration value="Wicklow"></enumeration>
</restriction>
</simpleType>
</element>
</choice>
</complexType>
<complexType name="DaysForDelivery">
<sequence>
<element name="Day">
<simpleType>
<restriction base="string">
<enumeration value="Monday"></enumeration>
<enumeration value="Tuesday"></enumeration>
<enumeration value="Wednesday"></enumeration>
<enumeration value="Thursday"></enumeration>
<enumeration value="Friday"></enumeration>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
<element name="DeliveryOrder" type="tns:DeliveryOrder"></element>
<complexType name="ItemsToBeDelivered">
<sequence>
<element name="DaysForDelivery" type="tns:DaysForDelivery"
maxOccurs="unbounded" minOccurs="1">
</element>
<element name="Item" type="tns:Item" maxOccurs="unbounded" minOccurs="1"></element>
</sequence>
</complexType>
<complexType name="Item">
<sequence>
<element name="Description">
<simpleType>
<restriction base="string">
<enumeration
value="Regular Milk - 1 litre carton.">
</enumeration>
<enumeration
value="Low Fat Milk - 1 litre carton.">
</enumeration>
<enumeration
value="Strawberry Yoghurt - 100ml pot">
</enumeration>
<enumeration
value="Raspberry Yoghurt - 100ml pot">
</enumeration>
<enumeration value="Cream - 125ml carton"></enumeration>
<enumeration value="Cream - 250ml carton"></enumeration>
</restriction>
</simpleType>
</element>
<element name="Quantity">
<simpleType>
<restriction base="int">
<minInclusive value="1"></minInclusive>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
그래서, 나는 요소 "DaysForDelivery"에서 "날"고유해야합니다. 예 : 나는 월요일에 X 항목을 가질 수 있으며 그 이후에 다시 월요일을 사용할 수 없게됩니다. 고유 태그를 사용해야한다는 것을 알고 있으며, 많은 예제를 살펴 보았지만 xpaths를 사용하여 엉망이되었습니다.
은 사전에 감사
답변 해 주셔서 감사합니다.하지만 같은 날을 입력해도 오류가 아닙니다. 아마 내 전체 xsd를 제공하는 것이 필요합니다. (따라서, xsd 코드 전체로 내 질문을 업데이트 할 것입니다.) – kostas89
@ kostas89, 여기 오해의 소지가 있습니다. DaysForDelivery를 반복하는 대신 일을 반복해야합니다. 나는 이것이 여기에 약간의 혼란을 야기했을지도 모른다고 생각한다 ... –
그것은 완벽하게 작동한다, 정말로 고마워! – kostas89