Ein XML-Dokument enthält XML-Elemente.
Was ist ein XML-Element?
Ein XML - Element ist alles von (including) der Start - Tag des Elements zu (including) dem End - Tag des Elements.
<price>29.99</price>
Ein Element kann enthalten:
- Text
- Attribute
- andere Elemente
- oder eine Mischung aus dem obigen
<bookstore>
<book category="children">
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="web">
<title>Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
In dem obigen Beispiel:
<title>, <author>, <year> und <price> haben text content , weil sie Text enthalten (like 29.99) .
<bookstore> und <book> haben element contents , weil sie Elemente enthalten.
<book> hat ein attribute (category="children") .
Leere XML-Elemente
Ein Element ohne Inhalt wird gesagt, leer zu sein.
In XML können Sie ein leeres Element wie folgt an:
<element></element>
Sie können auch eine so genannte selbstschließenden Tag benutzen:
<element />
Die beiden Formen erzeugen identische Ergebnisse in XML-Software (Leser, Parsers, Browser).
Leere Elemente können Attribute haben.
Regeln XML Naming
XML-Elemente müssen diese Benennungsregeln folgen:
- Elementnamen sind case-sensitive
- Elementnamen müssen mit einem Buchstaben oder Unterstrich beginnen
- Elementnamen können nicht mit dem Buchstaben xml beginnen (or XML, or Xml, etc)
- Elementnamen können Buchstaben, Ziffern, Bindestriche, Unterstriche und Punkte
- Elementnamen dürfen keine Leerzeichen
Jeder Name kann verwendet werden, sind keine Worte reserviert (except xml) .
Beste Naming Practices
Erstellen Sie beschreibende Namen, wie folgt aus : <person>, <firstname> , <lastname> .
Erstellen Sie kurze und einfache Namen, wie folgt aus : <book_title> nicht so: <the_title_of_the_book> .
Vermeiden Sie "-" . Wenn Sie etwas nennen "first-name" , denken einige Software können Sie subtrahieren wollen "name" von "first" .
Vermeiden Sie "." . Wenn Sie etwas nennen "first.name" , können einige Software denken , dass "name" ist eine Eigenschaft des Objekts "first" .
Vermeiden Sie ":" . Colons sind für Namensräume reserviert (more later) dazu (more later) .
Nicht-englische Buchstaben wie eoa sind in XML völlig legal, aber für Probleme aufpassen, wenn Sie Ihre Software nicht unterstützt werden.
Namens Styles
Es gibt keine Namens Stile für XML-Elemente definiert. Aber hier sind einige häufig verwendete:
Stil | Beispiel | Beschreibung |
---|---|---|
Lower case | <firstname> | Alle Buchstaben Kleinbuchstaben |
Upper case | <FIRSTNAME> | Alle Buchstaben Großbuchstaben |
Underscore | <first_name> | Unterstrichen trennt Worte |
Pascal case | <FirstName> | Versalien ersten Buchstaben in jedem Wort |
Camel case | <firstName> | Versalien ersten Buchstaben in jedem Wort mit Ausnahme des ersten |
Wenn Sie eine Namens Stil wählen, ist es gut, konsequent zu sein!
XML-Dokumente haben oft eine entsprechende Datenbank. Eine gängige Praxis ist die Benennungsregeln der Datenbank für die XML-Elemente zu verwenden.
Kamel Fall ist eine gemeinsame Namensregel in JavaScripts.
XML-Elemente sind Extensible
XML-Elemente können erweitert werden, um mehr Informationen zu tragen.
Schauen Sie sich das folgende XML-Beispiel:
<note>
<to>Tove</to>
<from>Jani</from>
<body>Don't forget me this weekend!</body>
</note>
Stellen wir uns vor , dass wir eine Anwendung erstellt, die die <auf>, <aus> extrahiert und <body> Elemente aus dem XML - Dokument , das diese Ausgabe zu erzeugen:
MESSAGE To: Tove Vergessen Sie nicht, mich an diesem Wochenende! |
Stellen Sie sich vor, dass der Autor des XML-Dokuments einige zusätzliche Informationen hinzugefügt:
<note>
<date>2008-01-10</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Sollte der Antrag brechen oder Absturz?
Nein . Die Anwendung sollte noch in der Lage sein , das zu finden <to>, <from> und <body> Elemente im XML - Dokument und produzieren die gleiche Leistung.
Dies ist eine der Schönheiten von XML. Es kann, ohne zu brechen Anwendungen erweitert werden.