제공된 XSD가 있습니다. XSD를 수정하기에 충분하지 않습니다.C# XMLReader - 여러 자식 컬렉션 실패 XSD 스키마로 유효성 검사
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Dataset">
<xs:complexType>
<xs:sequence>
<xs:element name="Person">
<xs:complexType>
<xs:sequence>
<xs:element name="PayrollNumber" type="String16" maxOccurs="1" minOccurs="1" />
<xs:element name="Surname" type="String50" maxOccurs="1" />
<xs:element name="Name" type="String50" maxOccurs="1" />
<xs:element name="StreetAddress" type="String50" maxOccurs="1" />
<xs:element name="Suburb" type="String20" maxOccurs="1" />
<xs:element name="Skills">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Skill" type="String16" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="HomePhone" type="String14" maxOccurs="1" />
<xs:element name="MobilePhone" type="String14" maxOccurs="1" />
<xs:element name="PagerNumber" type="String14" maxOccurs="1" />
<xs:element name="Email" type="String80" maxOccurs="1" />
<xs:element name="RecordType" type="RecordType" maxOccurs="1" minOccurs="1" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:simpleType name="String16">
<xs:restriction base="xs:string">
<xs:maxLength value="16" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String50">
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String20">
<xs:restriction base="xs:string">
<xs:maxLength value="20" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String30">
<xs:restriction base="xs:string">
<xs:maxLength value="30" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String14">
<xs:restriction base="xs:string">
<xs:maxLength value="14" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String80">
<xs:restriction base="xs:string">
<xs:maxLength value="80" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="RecordType">
<xs:restriction base="xs:string">
<xs:enumeration value="A" />
<xs:enumeration value="E" />
<xs:enumeration value="D" />
</xs:restriction>
</xs:simpleType>
</xs:schema>
다음 XML이 있습니다.
<Dataset>
<Person>
<PayrollNumber>1234567</PayrollNumber>
<Surname>Denson</Surname>
<Name>John-Jaime-Winston Junior</Name>
<StreetAddress>Level 5, City Central Tower 2, 121 King William St</StreetAddress>
<Suburb>Mitcham</Suburb>
<Skills>
<Skill>Skill1</Skill>
<Skill>Skill2</Skill>
</Skills>
<HomePhone>08 8888 8888</HomePhone>
<MobilePhone>041 888 999</MobilePhone>
<PagerNumber>111111</PagerNumber>
<Email>[email protected]</Email>
<RecordType>A</RecordType>
</Person>
</Dataset>
NET 파일 유효성 검사기는 XMLReader와 잘 작동합니다.
그러나 여러 사람 레코드를 소개하면 - 즉. 유효성 검사가 실패한 컬렉션 유효성 검사 오류 : 'Dataset'요소에 잘못된 자식 요소 'Person'이 있습니다. 0 0
내 XSD를 어떻게 수정할 수 있습니까?
당신이 XML 또는 코드를 게시하면 ** 편집기 창에서 항상 해당 행을 강조 표시하고 편집기 도구 모음 (왼쪽에서 다섯 번째)에있는 "코드"버튼 (101 010)을 사용하여 해당 행을 코드/XML. 그렇다면 그들은 단지 멋지게 나타나고 구문이 강조 표시됩니다. –