Samouczek XML

Strona główna XML Wprowadzenie do XML XML Jak używać Drzewo XML Składnia XML Elementy XML Atrybuty XML Przestrzenie nazw XML Wyświetlacz XML Żądanie HTTP XML Parser XML XML DOM XML XPath XML XSLT XML XQuery XML XLink Walidator XML XML DTD Schemat XML Serwer XML Przykłady XML Quiz XML Certyfikat XML

XML AJAX

Wprowadzenie do AJAX AJAX XMLHttp Żądanie AJAX Odpowiedź AJAX Plik XML AJAX AJAX PHP ASP AJAX Baza danych AJAX Aplikacje AJAX Przykłady AJAX

XML DOM

Wprowadzenie do DOM Węzły DOM Dostęp do DOM Informacje o węźle DOM Lista węzłów DOM Przechodzenie DOM Nawigacja DOM DOM Uzyskaj wartości Zmiana węzłów DOM DOM Usuń węzły DOM Zamień węzły DOM Utwórz węzły DOM Dodaj węzły Węzły klonowania DOM Przykłady DOM

Samouczek XPath

Wprowadzenie do XPath Węzły XPath Składnia XPath Osie XPath Operatorzy XPath Przykłady XPath

Samouczek XSLT

Wprowadzenie XSLT Języki XSL Transformacja XSLT XSLT <szablon> XSLT <wartość-z> XSLT <dla każdego> XSLT <sortuj> XSLT <jeśli> XSLT <wybierz> XSLT Zastosuj XSLT na kliencie XSLT na serwerze XSLT Edytuj XML Przykłady XSLT

Samouczek XQuery

Wprowadzenie do XQuery Przykład XQuery XQuery FLWOR XQuery HTML Warunki XQuery Składnia XQuery XQuery Dodaj XQuery Wybierz Funkcje XQuery

XML DTD

Wprowadzenie do DTD Bloki konstrukcyjne DTD Elementy DTD Atrybuty DTD Elementy DTD a Attr Jednostki DTD Przykłady DTD

Schemat XSD

Wprowadzenie do XSD XSD Jak to zrobić XSD <schemat> Elementy XSD Atrybuty XSD Ograniczenia XSD

Kompleks XSD

Elementy XSD XSD Pusty Tylko elementy XSD Tylko tekst XSD Mieszane XSD Wskaźniki XSD XSD <dowolny> XSD <dowolnyAtrybut> Zastąpienie XSD Przykład XSD

Dane XSD

XSD ciąg Data XSD Numeryczne XSD XSD Różne Odniesienie XSD

Usługi internetowe

Usługi XML XML WSDL MYDŁO XML XML RDF XML RSS

Bibliografia

Typy węzłów DOM Węzeł DOM Lista węzłów DOM DOM NamedNodeMap Dokument DOM Element DOM Atrybut DOM Tekst DOM DOM CDATA Komentarz DOM DOM XMLHttpRequest Analizator DOM Elementy XSLT Funkcje XSLT/XPath

Atrybuty XML


Elementy XML mogą mieć atrybuty, podobnie jak HTML.

Atrybuty są zaprojektowane tak, aby zawierały dane związane z określonym elementem.


Atrybuty XML muszą być cytowane

Wartości atrybutów muszą być zawsze cytowane. Można używać pojedynczych lub podwójnych cudzysłowów.

Dla płci osoby element <person> można zapisać w następujący sposób:

<person gender="female">

lub tak:

<person gender='female'>

Jeśli sama wartość atrybutu zawiera podwójne cudzysłowy, możesz użyć pojedynczych cudzysłowów, jak w tym przykładzie:

<gangster name='George "Shotgun" Ziegler'>

lub możesz użyć jednostek znakowych:

<gangster name="George &quot;Shotgun&quot; Ziegler">

Elementy XML a atrybuty

Spójrz na te dwa przykłady:

<person gender="female">
  <firstname>Anna</firstname>
  <lastname>Smith</lastname>
</person>
<person>
  <gender>female</gender>
  <firstname>Anna</firstname>
  <lastname>Smith</lastname>
</person>

W pierwszym przykładzie płeć jest atrybutem. W ostatnim przykładzie płeć jest elementem. Oba przykłady dostarczają tych samych informacji.

Nie ma reguł dotyczących tego, kiedy używać atrybutów lub kiedy używać elementów w XML.



Mój ulubiony sposób

Poniższe trzy dokumenty XML zawierają dokładnie te same informacje:

W pierwszym przykładzie użyto atrybutu daty:

<note date="2008-01-10">
  <to>Tove</to>
  <from>Jani</from>
</note>

W drugim przykładzie użyto elementu <date>:

<note>
  <date>2008-01-10</date>
  <to>Tove</to>
  <from>Jani</from>
</note>

Rozwinięty element <data> jest używany w trzecim przykładzie: (TO JEST MOJE ULUBIONE):

<note>
  <date>
    <year>2008</year>
    <month>01</month>
    <day>10</day>
  </date>
  <to>Tove</to>
  <from>Jani</from>
</note>

Unikaj atrybutów XML?

Niektóre rzeczy, które należy wziąć pod uwagę podczas korzystania z atrybutów, to:

  • atrybuty nie mogą zawierać wielu wartości (elementy mogą)
  • atrybuty nie mogą zawierać struktur drzewiastych (elementy mogą)
  • atrybuty nie są łatwo rozszerzalne (dla przyszłych zmian)

Nie kończ tak:

<note day="10" month="01" year="2008"
to="Tove" from="Jani" heading="Reminder"
body="Don't forget me this weekend!">
</note>

Atrybuty XML dla metadanych

Czasami do elementów przypisywane są referencje ID. Te identyfikatory mogą być używane do identyfikowania elementów XML w podobny sposób, jak atrybut id w HTML. Ten przykład pokazuje to:

<messages>
  <note id="501">
    <to>Tove</to>
    <from>Jani</from>
    <heading>Reminder</heading>
    <body>Don't forget me this weekend!</body>
  </note>
  <note id="502">
    <to>Jani</to>
    <from>Tove</from>
    <heading>Re: Reminder</heading>
    <body>I will not</body>
  </note>
</messages>

Powyższe atrybuty id służą do identyfikacji różnych notatek. Nie jest częścią samej notatki.

Chcę tutaj powiedzieć, że metadane (dane o danych) powinny być przechowywane jako atrybuty, a same dane powinny być przechowywane jako elementy.