Mifano ya Elementi ya <anyAttribute> ya XSD

Kitu cha <anyAttribute> kinanipa fahamu ya kuagiza kwa kipimo "person" kwa kufikia uadilifu wa kipimo kina schema!

Kitu cha <anyAttribute>

Kitu cha <anyAttribute> kinanipa fahamu ya kuagiza kwa kipimo "person" kwa kufikia uadilifu wa kipimo kina schema!

Mfano hili ni mafuriko kutoka kwa XML schema ya kina "family.xsd". Hii inonza kwa kumonisha uamuzi wa kipimo "person".

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

Sasa, tunatenda kwa kuweza kuongeza uendingaji wa "gender" kwa ukingo wa "person". Kwenye hali hii tunaweza kufanya hivyo, inaingia kwamba mwandishi wa schema hii hawajadilishe kiwango chake kwa ukingo huo.

Tazama faili ya schema hii, jina lake "attribute.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:attribute name="gender">
  <xs:simpleType>
    <xs:restriction base="xs:string">
      <xs:pattern value="male|female"/>
    </xs:restriction>
  </xs:simpleType>
</xs:attribute>
</xs:schema>

Hapa hizi XML (jina lake "Myfamily.xml") inatumi kufanya kazi ya kienyeza kutoka kwa schema mbalimbali, "family.xsd" na "attribute.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 attribute.xsd">
<person gender="female">
<firstname>Jane</firstname>
<lastname>Smith</lastname>
</person>
<person gender="male">
<firstname>David</firstname>
<lastname>Smith</lastname>
</person>
</persons>

Mafaa wa faili ya XML hii ni pekee, kwa sababu schema "family.xsd" inaruhusiwa kuingia katika hatua ya "person".

<any> na <anyAttribute> zingine zinaonekana kufanya hatua inayotumia hali ya kufupisha kufupisha! Zinaonesha kwamba hatua inaweza kuwa na elementi zaidi ambazo hazijazuiwa katika schema ya kina ya XML.