Ein gültiges XML-Dokument muss das -Attribut des Elements deklarieren. Verwenden Sie zur Vervollständigung die ATTLIST-Deklaration. Eine ATTLIST kann mehrere Attribute für einen Elementtyp deklarieren.
REQUIRED> Das obige Beispiel deklariert, dass das Bildelement ein src-Attribut haben muss und der Wert dieses Attributs Zeichendaten sind. Sie können die ATTLIST-Anweisung verwenden, um mehrere Attribute für ein Element zu deklarieren, wie zum Beispiel:
width CDATA #REQUIRED height CDATA #REQUIRED alt CDATA #IMPLIED > ; Die obige Anweisung weist darauf hin, dass die Attribute src, width und height erforderlich sind und das alt-Attribut optional ist. 1. Attributtyp
Zeichenfolge enthalten. DTD kann das Attribut nicht als Ganzzahl oder Datum angeben. Schema kann leistungsfähigere Datentypen bereitstellen.
Der Attributwert vom Typ NMTOKEN ist ein XML-Namenstoken. XML-Namenstoken ähneln XML-Namen, aber XML-Namenstoken ermöglichen die Verwendung aller Zeichen als Anfangszeichen eines Namens, während der erste Buchstabe eines XML-Namens ein Buchstabe, ein ideografisches Zeichen und ein Unterstrich sein muss. Also 10, .bashrc ist ein legales XML-Namens-Tag, aber kein legaler XML-Name. Jeder XML-Name ist ein XML-Namenstag, aber nicht alle XML-Namenstags sind XML-Namen. Wenn das Attribut Ganzzahlen wie 1990, 2005 enthält, sollte sein Typ als NMTOKEN angegeben werden. Beispiel: Das Attribut vom Typ<!ELEMENT person birthday NMTOKEN #REQUIRED>
<person dates="02-01-2005 03-01-2005 05-01-2005">person</person>
<!ATTLIST person dates NMTOKENS #REQUIRED>
<!ATTLIST date month(January | February | March | April | May | June | July | August | September | October | November | December) #REQUIRED>
<!ATTLIST name card_id ID #REQUIRED>
<project project_id="p1"> <goal>deploy linux</goal> <team_member person_card_id="c123"> </project> <person card_id="c123"> <name>linuxsir</name> <assignment project_project_id="p1"> </person>
<!ATTLIST person card_id ID #REQUIRED> <!ATTLIST project project_id ID #REQUIRED> <!ATTLIST team_member person_card_id IDREF #REQUIRED> <!ATTLIST assignment project_project_id IDREF #REQUIRED>
auf mehrere andere Elemente verweisen muss. Zum Beispiel:
<!ATTLIST person card_id ID #REQUIRED assignment IDREFS #REQUIRED> <!ATTLIST project project_id ID #REQUIRED team IDREFS #REQUIRED>
<project project_id="p1" team="c123"> <gold>deploy linux</gold> </project> <person card_id="c123" assignment="p1"> <name>Linuxsir</name> </person>
-Positionen der DTD deklariert werden . Beispielsweise kann das Filmelement ein Entitätsattribut haben, das die MPEG- oder RM-Datei identifiziert, die bei Aktivierung abgespielt werden soll:
Wenn die DTD eine nicht geparste Entität mit dem Namen „play“ deklariert, kann dieses Filmelement in verwendet werden die XML-Dokument-Einbettungsdatei<!ATTLIST movie src ENTITY #REQUIRED>
<movie src="play" />
<!ATTLIST slide_show slides ENTITIES #REQUIRED>
<slide_show slides="slide1 slide2 slide3" />
<!NOTATION gif SYSTEM "image/gif"> <!NOTATION tiff SYSTEM "image/tiff"> <!NOTATION jpeg SYSTEM "image/jpeg"> <!NOTATION png SYSTEM "image/png"> <!ATTLIST image type NOTATION (gif | tiff | jpeg | png) #REQUIRED>
2.属性缺省值
每个ATTLIST声明除了要提供一种数据类型外,还要声明属性的缺省行为。
#IMPLIED,属性可选。
#REQUIRED,属性必须有。
#FIXED,属性是常量,不能更改。
<!ATTLIST person name CDATA #FIXED "linuxsir"
Literal,作为一个引用字符串的实际缺省值。
<!ATTLIST person name NMTOKEN "linuxsir"
如果没有显示指明person元素的name属性,则该值为linuxsir。
Das obige ist der detaillierte Inhalt vonXML-Erste-Schritte-Tutorial – Beispiel für einen Attributdeklarationscode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!