• Nie Znaleziono Wyników

Poprawność składniowa i strukturalna dokumentu XML.  P29-DawidGałecki

N/A
N/A
Protected

Academic year: 2021

Share "Poprawność składniowa i strukturalna dokumentu XML.  P29-DawidGałecki"

Copied!
15
0
0

Pełen tekst

(1)

29. Poprawność składniowa i strukturalna dokumentu XML

Dawid Gałecki

13 października 2015

(2)

1 Poprawność składniowa

2 Poprawność strukturalna

(3)

Poprawność składniowa

Poprawny składniowo dokument XML powinien być tworzony zgodnie z poniżej przedstawionymi zasadami.

(4)

Deklaracja XML

Powinien zawierać deklarację XML, która musi być umieszczona na samym początku pliku (nie może być poprzedzona np.

komentarzem) oraz musi posiadać atrybut version (dopuszczalne wartości to 1.0 albo 1.1) oraz opcjonalnie atrybuty:

Encoding – deklaruje zestaw znaków używanych w

dokumencie XML, wartością domyślną jest kodowanie UTF-8 w systemie Unicode.

Standalone – określa tryb dokumentu XML, może przyjmować wartość yes lub no. Jeśli ustawimy wartość na yes będzie to oznaczało, że dokument nie zawiera innych plików, które muszą zostać przetworzone wraz z nim samym. Może to być np. zewnętrzny arkusz stylów lub definicja DTD.

(5)

Jeden element główny

Musi zawierać dokładnie jeden element główny.

Znaczniki początkowy i końcowy

Każdy element musi zaczynać się znacznikiem początku elementu, np. <imie>, oraz kończyć identycznym znacznikiem końca

elementu, np. </imie>. Wyjątek stanowią elementy puste (np.

<element-pusty />), czyli takie, które nie zawierają żadnych danych ani innych elementów, ale mogą zawierać atrybuty.

(6)

Jeden element główny

Musi zawierać dokładnie jeden element główny.

Znaczniki początkowy i końcowy

Każdy element musi zaczynać się znacznikiem początku elementu, np. <imie>, oraz kończyć identycznym znacznikiem końca

elementu, np. </imie>. Wyjątek stanowią elementy puste (np.

<element-pusty />), czyli takie, które nie zawierają żadnych danych ani innych elementów, ale mogą zawierać atrybuty.

(7)

Nazwy elementów

Nazwy elementów mogą zawierać znaki alfanumeryczne (litery a-z, A-Z oraz cyfry 0-9) oraz znaki interpunkcyjne: podkreślenie, myślnik i kropkę. Nie mogą natomiast zaczynać się od myślnika, kropki ani cyfry.

(8)

Zagnieżdżanie elementów

Elementy można zagnieżdżać w sobie i wtedy każdy element znajdujący się wewnątrz innego elementu jest nazywany

„dzieckiem” tego elementu, a element, wewnątrz którego znajdują się inne elementy, zwany jest „rodzicem” tych elementów. Nie można stosować konstrukcji typu <news><tresc> ...

</news></tresc>, ponieważ element <tresc> nie jest prawidłowo zagnieżdżony w elemencie <news>.

Atrybuty

Każdy element może zawierać atrybuty, które definiuje się w znaczniku początkowym elementu. <usmiech szczery=”tak”> – tu atrybutem elementu usmiech jest atrybut o nazwie szczery oraz wartości tak. Wartości atrybutów podaje się w cudzysłowach.

(9)

znajdujący się wewnątrz innego elementu jest nazywany

„dzieckiem” tego elementu, a element, wewnątrz którego znajdują się inne elementy, zwany jest „rodzicem” tych elementów. Nie można stosować konstrukcji typu <news><tresc> ...

</news></tresc>, ponieważ element <tresc> nie jest prawidłowo zagnieżdżony w elemencie <news>.

Atrybuty

Każdy element może zawierać atrybuty, które definiuje się w znaczniku początkowym elementu. <usmiech szczery=”tak”> –

(10)

Zabronione znaki

W danych, atrybutach oraz nazwach elementów nie mogą pojawiać się znaki takie jak < albo & ponieważ parsery XML „widząc” np.

znak mniejszości wewnątrz elementu stwierdzą, że jest to początek znacznika i dokument zostanie błędnie zinterpretowany.

Specyfikacja XML daje jednak możliwość używania takich znaków – jeśli chcemy wstawić znak < wpisujemy zamiast niego sekwencję

&lt;, a gdy chcemy wprowadzić znak & wpisujemy &amp;.

Dane zawierające kod HTML

Część danych, które zawierają np. kod HTML lub XML, możemy zapisać w sekcji danych znakowych, która nie będzie przetwarzana przez analizator składni XML. Znacznik początku sekcji danych znakowych to <![CDATA[, a znacznik końca to ]]>.

(11)

się znaki takie jak < albo & ponieważ parsery XML „widząc” np.

znak mniejszości wewnątrz elementu stwierdzą, że jest to początek znacznika i dokument zostanie błędnie zinterpretowany.

Specyfikacja XML daje jednak możliwość używania takich znaków – jeśli chcemy wstawić znak < wpisujemy zamiast niego sekwencję

&lt;, a gdy chcemy wprowadzić znak & wpisujemy &amp;.

Dane zawierające kod HTML

Część danych, które zawierają np. kod HTML lub XML, możemy zapisać w sekcji danych znakowych, która nie będzie przetwarzana

(12)

Komentarze

W dokumencie XML możemy wykorzystywać komentarze, które zaczynają się znakami <!-- a kończą znakami --> – dokładnie tak jak w HTML-u.

Instrukcje przetwarzania

Specyfikacja XML zezwala na wstawianie instrukcji przetwarzania, które są wykorzystywane do przeniesienia informacji do aplikacji.

Instrukcje przetwarzania rozpoczynają się znakami <?, a kończą znakami ?>. Przykładem takiej instrukcji może być odniesienie do arkusza stylów, który jest powiązany z dokumentem XML:

<?xml-stylesheet type=”text/css” href=”style.css”?>.

(13)

W dokumencie XML możemy wykorzystywać komentarze, które zaczynają się znakami <!-- a kończą znakami --> – dokładnie tak jak w HTML-u.

Instrukcje przetwarzania

Specyfikacja XML zezwala na wstawianie instrukcji przetwarzania, które są wykorzystywane do przeniesienia informacji do aplikacji.

Instrukcje przetwarzania rozpoczynają się znakami <?, a kończą znakami ?>. Przykładem takiej instrukcji może być odniesienie do arkusza stylów, który jest powiązany z dokumentem XML:

(14)

Poprawność strukturalna

Poprawność strukturalna XML – poprawność konstrukcji dokumentu XML z punktu widzenia jego zgodności ze zdefiniowanym w DTD językiem. Porównanie dokumentu z językiem jest określane mianem walidacji i jest znacznie bardziej skomplikowanym procesem niż badanie poprawności składniowej.

Mówimy że dokument jest poprawny strukturalnie jeżeli jest zgodny z definicją dokumentu, tzn. dodatkowymi regułami określonymi przez użytkownika. Do precyzowania tych reguł służą specjalne języki, np. bardzo popularny DTD.

(15)

Poprawność strukturalna – przykład użycia DTD

Cytaty

Powiązane dokumenty

Zginęły negatywy Lublina, którego nie ma i którego już się nie zobaczy Wielokrotnie się przemieszczałem po Polsce ze swoją walizką czy jakimś plecakiem i parę razy mieszkałem

KWIATY WIOSENNE BĘDĄCE POD OCHRONĄ Wiele roślin kwitnących wiosną ze względu na rzadkość ich występowania, bądź zagrożenia wyginięciem, znajduje się pod ochroną..

[∗∗] Wiemy, że dolna granica na liczbę wykonywanych porównań przez dowolny algorytm znajdujący minimum w n–elementowym zbiorze wynosi n − 1.. Dolna granica na

sowanie leków doustnych – z wyjątkiem metforminy – u ko- biet chorych na cukrzycę przed ciążą oraz opowiedziano się za metforminą i glibenklamidem jako lekami, które

Z kolekcji Stefana Kiełsz- ni pozostało ponad 140 zdjęć, które zostały zgromadzone w Archiwum Fotografii Ośrod- ka „Brama Grodzka - Teatr

Interpretacja tak otrzymanych miar jest następująoas w przypadku, gdy wartości ich dążą do zera,oznaoza to coraz mniejsze sróżnicowanie badanych struktur, podczas

Dziecko powinno nauczyć się czegoś niezmiernie cennego: każdy popełnia błędy, ale najważniejsze jest to, co z tymi błędami zrobi. Umiejętność uczenia się na błędach to

Transformacˇnı´ cesta na´m bude uda´vat po- zici uzlu v dokumentu, podle jehozˇ vlastnosti, zadane´ hodnotovou cestou, bude tento uzel i s potomky prˇesunut v ra´mci