poniedziałek, 11 marca 2013

XML w praktyce vol 1 - elementy struktury pliku XML

Chyba każdy programista pewnego dnia stanie przed zadaniem parsowania pliku XML. Zanim jednak zabierzemy się za sam program warto uświadomić sobie co jest co w naszym pliku XML. Poniżej prezentuję przykładowy plik, natomiast w komentarzach zostały zawarte wyjaśnienia do poszczególnych fragmentów.

<!--?xml version="1.0 standalone="no" encoding="UTF-8"?-->

<!-- Deklaracja xml zawiera następujące atrybuty:
1. version - określa wersję XML. Atrybut OBOWIĄZKOWY;
2. standalone - określa tryb dokumentu XML, może przyjmować wartość yes lub no. Jeśli ustawimy wartość na yes to będzie oznaczało, że dokument nie zawiera innych plików, które muszą zostać przetworzone wraz z dokumentem. Jest nieobowiązkowy, warość domyślna - no;
3. encoding - kodowanie znaków w pliku XML. Atrybut nie obowiązkowy, wartość domyślna UTF-8 -->

<!--?xml-stylesheet type="text/css" href="asd.css"?-->

<!--Do naszego pliku XML możemy dołączyć arkusz styli CSS, dzięki czemu będziemy mogli "ozdobić" nasz plik w przypadku otwarcia go w przeglądarce. Warto zwrócić uwagę, że po dołączeniu arkusza przeglądarka nie wyświetli tagów XML tylko same dane, które na dodatek zostaną zaprezentowane jaki jeden dłuuuuugi ciąg znaków:( Aby tego uniknąć w opisie każdego ze znaczników można np. podać "display:block". -->

<!-- Dane w pliku XML opisane są za pomocą znaczników. Połączenie znaczników otwierającego i zamykającego oraz zawartych pomiędzy nimi danych nazywamy ELEMENTEM. Nazwy znaczników w XML są zupełnie dowolne, należy tylko pamiętać, że rozróżniana jest wielkość znaków. 
Opisywanie danych zaczynamy od utworzenia głównego elementu tzw. ELEMENTU ROOT.  Może on mieć dowolną nazwę, a także atrybuty. MUSI JEDNAK BYĆ ZDEFINIOWANY I MOŻE WYSTĄPIĆ TYLKO RAZ. -->

<root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nonamespaceschemalocation="asd.xsd">

<!-- jeśli chcemy do naszego pliku dołączyć schemat XSD, robimy to umieszczając instrukcję xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="asd.xsd" w znaczniku ROOT. asd.xsd to ścieżka do naszego pliku ze schematem XSD -->

<pracownik id="23" plec="M">
<!-- id="23" podobnie jak plec="M" to atrybuty elementu pracownik. Dane w XML możemy przekazywać nie jako atrybuty lub jako wartości. Element imie przekazuje nam dane jako wartość (value) -->
<imie>Jan</imie>
<imie>Tadeusz</imie>

<wiek lat="24">
<!--ELEMENT PUSTY - nie zawiera żadnych danych, ani elementów, może natomiast zawierać atrybuty-->

<info><!--[CDATA["Janek pochodzi z warszawy"]]--></info>
<!-- BLOK CDATA - informujr parser, że zawiera dane, które nie będą przetwarzane, tylko przekazane dalej w dokładnie takiej postaci. -->

</wiek></pracownik>
<!-- Elementy w XML mają hierarchiczną strukturę, oznacza to, że element w ramach jednej gałęzi otwarty jako pierwszy musi być zamknięty jako ostatni. Dlatego element <pracownik> został zamknięty na samym końcu. -->
 
<!--?javascript alert("To jest właśnie to"); ?-->
<!--?php mysql_connect($db, $user, $pass); ?-->
<!-- INSTRUKCJA PRZETWARZANIA - zawarta jest w znacznikach <? ... ?>. Po znaczniku otwarcia należy podać cel, czyli aplikację do której adresowana jest instrukcja, a następnie samą instrukcję -->

</root>




Brak komentarzy:

Prześlij komentarz