Dokument XML zawiera elementy XML.
Co to jest element XML?
Element XML jest wszystko od (including) elementu zaczynają tag (including) znacznik końcowy elementu.
<price>29.99</price>
Element może zawierać:
- tekst
- atrybuty
- Inne elementy
- lub kombinacja powyższych
<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>
W powyższym przykładzie:
<title>, <author>, <year> i <price> posiada text content , ponieważ zawierają tekst (like 29.99) .
<bookstore> i <book> mają element contents , ponieważ zawierają one elementy.
<book> posiada attribute (category="children") .
Puste elementy XML
Element bez zawartości mówi się, że jest pusty.
W XML można wskazać pusty element takiego:
<element></element>
Można też użyć tzw samozamykający tag:
<element />
Obie formy produkować identyczne wyniki w oprogramowaniu XML (czytelników, parser, przeglądarki).
Puste elementy mogą mieć atrybuty.
Zasady nazewnictwa XML
Elementy XML muszą przestrzegać tych zasad nazewnictwa:
- Nazwy elementów jest rozróżniana
- Nazwy elementów musi zaczynać się od litery lub podkreślenia
- Nazwy elementów nie może zaczynać się od litery xml (or XML, or Xml, etc)
- Nazwy elementów mogą zawierać litery, cyfry, myślniki, podkreślenia i kropki
- Nazwy elementów nie może zawierać spacji
Każda nazwa może być stosowany, żadne słowa nie są zarezerwowane (except xml) .
Best Practices nazewnictwa
Tworzenie nazw opisowych, takich jak to: <person>, <firstname> , <lastname> .
Tworzenie krótkich i prostych nazw, na przykład: <book_title> nie w ten sposób: <the_title_of_the_book> .
Unikaj "-" . Jeśli coś nazwać "first-name" , niektóre programy mogą myśleć chcesz odjąć "name" z "first" .
Unikaj "." , Jeśli nazwać coś "first.name" , niektóre programy mogą pomyśleć, że "name" jest właściwością obiektu "first" .
Unikaj ":" . Colons są zarezerwowane dla nazw (more later) .
Non-angielskie litery jak EOA są całkowicie legalne w XML, ale należy zwrócić uwagę na problemy, jeśli oprogramowanie nie obsługuje ich.
Naming Style
Brak nazewnictwa style zdefiniowane dla elementów XML. Ale oto niektóre powszechnie stosowane:
Styl | Przykład | Opis |
---|---|---|
Lower case | <firstname> | Wszystkie litery małe litery |
Upper case | <FIRSTNAME> | Wszystkie litery wielkie litery |
Underscore | <first_name> | Podkreślenie oddziela słowa |
Pascal case | <FirstName> | Wielkie pierwsza litera każdego słowa |
Camel case | <firstName> | Wielkie pierwsza litera każdego wyrazu z wyjątkiem pierwszego |
Jeśli wybierzesz styl nazewnictwa, dobrze jest być spójne!
Dokumenty XML często mają odpowiednią bazę danych. Powszechną praktyką jest stosowanie zasady nazewnictwa bazy danych dla elementów XML.
Sprawa Camel jest powszechną regułą nazewnictwa w JavaScript.
Elementy XML są Extensible
Elementy XML mogą zostać przedłużone do przewozu więcej informacji.
Spójrz na poniższy przykład XML:
<note>
<to>Tove</to>
<from>Jani</from>
<body>Don't forget me this weekend!</body>
</note>
Wyobraźmy sobie, że stworzyliśmy aplikację, która wyodrębnione <do> <z> i <body> elementy z dokumentu XML do produkcji tego wyjścia:
MESSAGE To: Tove Nie zapomnij o mnie w ten weekend! |
Wyobraźmy sobie, że autor dokumentu XML dodano kilka dodatkowych informacji do niego:
<note>
<date>2008-01-10</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Jeżeli aplikacja złamać lub awarii?
Nie Aplikacja powinna nadal być w stanie znaleźć <to>, <from> i <body> elementy w dokumencie XML i produkować to samo wyjście.
Jest to jeden z uroków XML. Może on być przedłużony bez przerywania aplikacji.