RequestNo
(특성 수준)에 고유성을 갖는 하나의 xsd 파일이 있습니다. 이제는 EmpID
(요소 레벨에 있음)에 대한 고유성을 하나 더 추가하고 싶습니다.xml에 대한 고유성 둘 다 XSD의 특성 및 요소 수준 값
참고 : RequestNo
고유성은 정상적으로 작동하지만 요소 수준 (EmpID
)에서는 작동하지 않습니다.
아래 코드를 사용해 보았습니다. 하지만 작동하지 않습니다. 아무도 저를 시정 할 수 있습니까?
XSD :
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<xs:element name="ArrayRequests" type="rootNode">
<xs:unique name="uniqueID">
<xs:selector xpath=".//*" />
<xs:field xpath="@RequestNo" />
</xs:unique>
</xs:element>
<xs:complexType name="rootNode">
<xs:sequence>
<xs:element name="Requests">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Request">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="AddEmp">
<xs:complexType>
<xs:sequence>
<xs:element name="EmpID" type="xs:string" minOccurs="1" maxOccurs="unbounded" />
<xs:element name="FullName" type="xs:string" minOccurs="1" maxOccurs="unbounded" />
<xs:element name="Sal" type="xs:string" minOccurs="0"/>
<xs:element name="Dept" type="xs:string" minOccurs="1" />
<xs:element name="Address" type="xs:string" minOccurs="0"/>
<xs:element name="Email" minOccurs="0" xsi:nil="true" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:unique name="uniqueEmpID">
<xs:selector xpath="EmpID"/>
<xs:field xpath="."/>
</xs:unique>
</xs:element>
</xs:sequence>
<xs:attribute name="RequestNo" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:schema>
내 XML
<?xml version="1.0"?>
<ArrayRequests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Requests>
<Request RequestNo="Emp001">
<AddEmp>
<EmpID>1001</EmpID>
<FullName>FullName-1</FullName>
<Sal>1000</Sal>
<Dept>Dept1</Dept>
<Address>Address2</Address>
<Email>[email protected]</Email>
</AddEmp>
</Request>
<Request RequestNo="Emp002">
<AddEmp>
<EmpID>1001</EmpID>
<FullName>FullName2-1</FullName>
<Sal>20000</Sal>
<Dept>Dep1</Dept>
<Address>Address2</Address>
<Email>[email protected]</Email>
</AddEmp>
</Request>
</Requests>
</ArrayRequests>
soo 고맙습니다 ... 그 작품 :) – Jagadeesh