Tutorial Skema ...login
Tutorial Skema XML
pengarang:php.cn  masa kemas kini:2022-04-20 14:13:02

Skema XML sebarang elemen Atribut


XSD <anyAttribute> Elemen


<anyAttribute> memberikan kami keupayaan untuk melanjutkan dokumen XML dengan atribut yang tidak dinyatakan mengikut skema! Elemen


<anyAttribute> memberi kami keupayaan untuk melanjutkan dokumen XML dengan atribut yang tidak ditentukan oleh skema!

Contoh di bawah ialah serpihan daripada skema XML bernama "family.xsd". Ia menunjukkan kepada kita pengisytiharan untuk elemen "orang". Dengan menggunakan elemen <anyAttribute>, kami boleh menambah sebarang bilangan atribut pada elemen "orang":

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

Sekarang, kami mahu melanjutkan elemen "orang" dengan atribut "jantina". Dalam kes ini, kita boleh melakukan ini walaupun pengarang skema tidak pernah mengisytiharkan sebarang atribut "jantina".

Sila lihat fail skema ini, bernama "attribute.xsd":

<?xml version="1.0" encoding="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:attribute name="gender">
, <xs:simpleType>
' <xs:restriction base="xs:string">
                        <xs:pattern value="lelaki|perempuan"/>
' </xs:restriction>
, </xs:simpleType>
</xs:attribute>

</xs:schema>

XML berikut (dinamakan "Myfamily.xml") menggunakan komponen daripada skema berbeza, "family.xsd" dan "attribute.xsd":

<?xml version ="1.0" encoding="ISO-8859-1"?>

<orang 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 attribute.xsd">

<person gender="female">
<nama pertama>Hege</nama pertama>
<nama keluarga>Refsnes</nama keluarga>
</orang>

<orang jantina="lelaki">
<nama pertama>Lapuk</nama pertama>
<lastname>Refsnes</lastname>
</person>

</persons>

Fail XML di atas adalah sah kerana keluarga skema ". xsd" membolehkan kami menambah atribut pada elemen "orang".

<mana-mana> dan <anyAttribute> kedua-duanya boleh digunakan untuk membuat dokumen berskala! Mereka memberikan dokumen keupayaan untuk mengandungi elemen tambahan yang tidak diisytiharkan dalam skema XML utama.