2016-06-10 5 views
1

이 내 샘플 XML 코드XSD에서 자식 요소의 시퀀스가있는 요소에 대한 특성 선언을 추가하는 방법은 무엇입니까? 현재이 XSD 사용</p> <pre><code><Address> <StreetAddress></StreetAddress> <OtherDestination /> <City>TORONTO</City> </Address> </code></pre> <p>:

<xs:element name="Address" nillable="true"> 
    <xs:complexType> 
     <xs:sequence minOccurs="0"> 
      <xs:element ref="StreetAddress" minOccurs="0"/> 
      <xs:element ref="OtherDestination" minOccurs="0"/> 
      <xs:element ref="City" minOccurs="0"/> 
     </xs:sequence> 
    </xs:complexType> 
</xs:element> 

는이 같은 Address 요소에 속성 id를 추가 할을 ..

<Address id="first"> 
     <StreetAddress></StreetAddress> 
     <OtherDestination /> 
     <City>TORONTO</City> 
</Address> 

요구 사항을 충족시키기 위해 기존 XSD를 어떻게 변경해야합니까?

답변

1

는 속성 선언은 xs:sequencexs:complexType 내에서 추가 할 수 있습니다

<?xml version="1.0" encoding="UTF-8"?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
      elementFormDefault="qualified"> 
    <xs:element name="Address"> 
    <xs:complexType> 
     <xs:sequence> 
     <xs:element name="StreetAddress" minOccurs="0" type="xs:string"/> 
     <xs:element name="OtherDestination" minOccurs="0" type="xs:string"/> 
     <xs:element name="City" minOccurs="0" type="xs:string"/> 
     </xs:sequence> 

     <!------------------------------------------> 
     <!-- This is where to declare attributes: --> 
     <xs:attribute name="id" type="xs:string"/> 
     <!------------------------------------------> 

    </xs:complexType> 
    </xs:element> 
</xs:schema> 

위의 XSD 성공적으로 XML 유효성을 검사합니다.

+0

작동했습니다 .Thanx a lot kjhughes – Thiwanka