XML 스키마 모든 요소
XSD <any> 요소
><any> 요소는 스키마에 지정되지 않은 요소로 XML 문서를 확장하는 기능을 제공합니다!
h2><any> 요소
<any> 요소는 스키마에 지정되지 않은 요소로 XML 문서를 확장하는 기능을 제공합니다.
다음 예는 "family.xsd"라는 XML 스키마에서 인용된 조각입니다. 이는 "person" 요소에 대한 선언을 보여줍니다. <any> 요소를 사용하면 (<lastname> 뒤의) "person"의 내용을 확장할 수 있습니다.
<xs:element name="person">
<xs:복합 유형>
<xs:순서>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="성" type="xs:string"/>
<xs:any minOccurs="0"/>
</xs:순서>
</xs:complexType>
</xs:element>
<xs:복합 유형>
<xs:순서>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="성" type="xs:string"/>
<xs:any minOccurs="0"/>
</xs:순서>
</xs:complexType>
</xs:element>
이제 "person" 요소를 "children" 요소로 확장하려고 합니다. 이 경우 위 스키마의 작성자가 "하위" 요소를 선언하지 않은 경우에도 이를 수행할 수 있습니다.
"children.xsd"라는 이름의 이 스키마 파일을 참조하세요.
<?xml version="1.0" 인코딩="ISO-8859-1"?>
<xs:schema xmlns:xs= " http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3schools.com"
xmlns="http://www.w3schools.com"
elementFormDefault="qualified"> ;
<xs:element name="children">
<xs:복합 유형>
<xs:순서>
<xs:element name="childname" type="xs:string"
maxOccurs="무제한"/>
</xs:순서>
</xs:complexType>
</xs:element>
</xs:schema>
<xs:schema xmlns:xs= " http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3schools.com"
xmlns="http://www.w3schools.com"
elementFormDefault="qualified"> ;
<xs:element name="children">
<xs:복합 유형>
<xs:순서>
<xs:element name="childname" type="xs:string"
maxOccurs="무제한"/>
</xs:순서>
</xs:complexType>
</xs:element>
</xs:schema>
다음 XML 파일("Myfamily.xml")은 두 가지 다른 스키마 "family.xsd" 및 "children.xsd"의 구성 요소를 사용합니다.
<?xml version="1.0 " 인코딩="ISO-8859 -1"?>
<persons xmlns="http://www.microsoft.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema -instance"
xsi:schemaLocation ="http://www.microsoft.com family.xsd
http://www.w3schools.com children.xsd">
<사람>
<이름>헤게</이름>
<성>Refsnes</성>
<어린이>
<childname>Cecilie</childname>
</children>
</person>
<person>
<이름>오래된</이름>
<lastname>Refsnes</lastname>
</person>
</persons>
<persons xmlns="http://www.microsoft.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema -instance"
xsi:schemaLocation ="http://www.microsoft.com family.xsd
http://www.w3schools.com children.xsd">
<사람>
<이름>헤게</이름>
<성>Refsnes</성>
<어린이>
<childname>Cecilie</childname>
</children>
</person>
<person>
<이름>오래된</이름>
<lastname>Refsnes</lastname>
</person>
</persons>
위의 XML 파일은 "family.xsd" 스키마를 통해 "lastname" 요소를 전달할 수 있으므로 유효합니다. 다음 선택적 요소는 "person" 요소를 확장합니다.
<any> 및 <anyAttribute> 모두 확장 가능한 문서를 만드는 데 사용할 수 있습니다. 이는 문서에 기본 XML 스키마에 선언되지 않은 추가 요소를 포함하는 기능을 제공합니다.