XSD <any> Element

یعطی لنا عناصر <any> القدرة على توسيع محتويات "person" بأي عنصر لم یُحدد في schema!

عناصر <any>

یعطی لنا عناصر <any> القدرة على توسيع محتويات "person" بأي عنصر لم یُحدد في schema!

هذا المثال یأتي من جزء من XML schema یُدعى "family.xsd". یظهر هذا الاشارة لـ "person".

<xs:element name="person">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="firstname" type="xs:string"/>
      <xs:element name="lastname" type="xs:string"/>
      <xs:any minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>

халифани, аңгамаллар "children" элемент кеңәйтеү һәм "person" элемент. бу тәртиптең кайда да булса, әгәр schema элемент авторы "children" элемент түгел белгән булса, бу күрсәткәндә.

ни гына гына schema файл, ацена "children.xsd":

<?xml version="1.0" encoding="ISO-8859-1"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.codew3c.com"
xmlns="http://www.codew3c.com"
elementFormDefault="qualified">
<xs:element name="children">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="childname" type="xs:string"
      maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>
</xs:schema>

ни гына гына XML файл (ацена "Myfamily.xml"), тир аңгамаллар сау һәм тәүлек башыннан аңгамаллар сау, "family.xsd" һәм "children.xsd":

<?xml version="1.0" encoding="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.codew3c.com children.xsd">
<person>
<firstname>David</firstname>
<lastname>Smith</lastname>
<children>
  <childname>mike</childname>
</children>
</person>
<person>
<firstname>Tony</firstname>
<lastname>Smith</lastname>
</person>
</persons>

The above XML file is valid because the schema "family.xsd" allows us to extend the "person" element by adding an optional element after the "lastname" element.

Both <any> and <anyAttribute> can be used to create extensible documents! They make documents capable of including additional elements that are not declared in the main XML schema.