Podstawy programowania II 5


Podstawy programowania II
dr inż. Paweł Róg
1
Zagadnienia
%
Projektowanie dokumentów XML
Ä…
Elementy i atrybuty
Ä…
Typy dokumentów XML
Ä…
Pisanie dokumentów XML
Ä…
Testowanie dokumentów XML
2
Przykładowy dokument XML


Verbatim
DataLife MF 2HD
10
3.5"
black
floppy disks

3
Bardzo prosty dokument XML

Alan Turing

%
Dokument ten składa się z jednego elementu
o nazwie person, ograniczonego tagami
i oraz zawartości Alan
Turing
%
i sÄ… znacznikami
4
Składnia znaczników
%
Znaczniki XML mają podobną składnię do
znaczników HTML.
%
Znacznik poczÄ…tkowy rozpoczyna siÄ™ od <, natomiast
końcowy  od znacznika, zakończona w obu przypadkach >.
%
W przeciwieństwie do HTML, w XML nazwy
znaczników mogą być dowolne.
%
Elementy puste (które nie mają zawartości) mogą być
zapisane albo w postaci albo
w postaci . Nie może być natomiast
niedomkniętych znaczników (np.
lub
).
%
Rozróżniana jest wielkość znaków w nazwach
znaczników (, oraz
są różnymi znacznikami).
5
Nieco bardziej złożony dokument


Alan
Turing

computer scientist
mathematician
cryptographer

6
Korzeń, rodzice i dzieci
%
Zależności pomiędzy elementami można
przedstawić w postaci drzewa
7
Rodzice i dzieci
%
Dokument z powyższego przykładu nadal składa
siÄ™ z jednego elementu person, jednak
zawartością tego elementu nie jest zwykły tekst,
ale cztery inne elementy: jeden element name
oraz trzy elementy profession.
%
Element person jest nazywany rodzicem
elementów name i profession, które z kolei są
nazywane jego dziećmi.
%
Jeden rodzic może mieć wiele dzieci, jednak
każde dziecko musi mieć (poza jednym wyjątkiem)
dokładnie jednego rodzica.
8
Korzeń
%
Każdy dokument XML ma jeden element, który nie
ma rodzica.
%
Jest to pierwszy element w dokumencie. Element
ten zawiera wszystkie pozostałe elementy.
%
Element ten jest nazywany korzeniem dokumentu.
%
Każdy dobrze sformatowany dokument XML
zawiera dokładnie jeden korzeń.
%
W naszym przypadku korzeniem jest element
person.
9
Mieszana zawartość
%
W poprzednim przykładem zawartością
elementów first_name, last_name oraz
profession były dane tekstowe, które nie
zawierały znaczników.
%
Zawartością elementów person oraz name były
elementy-dzieci.
%
Taki podział na elementy, które zawierają
wyłącznie inne elementy oraz elementy, które
zawierają wyłącznie tekst jest popularny
w dokumentach o charakterze rekordów danych.
%
XML może być jednak używany do tworzenia
dokumentów narracyjnych, takich jak raporty,
artykuły, opowiadania, strony WWW itp.
0
1
Narracyjny dokument XML


Alan
Turing
was one of the first
people to truly deserve the name computer
scientist
. Although his contributions to the field
are too numerous to list, his best-known are the eponymous
Turing Test and Turing
Machine
.

The Turing Test is to this day the
standard test for determining whether a computer is truly
intelligent. This test has yet to be passed.

1
1
A Turing Machine is an abstract
finite state automaton with infinite memory that can be proven
equivalent to any any other finite state automaton with
arbitrarily large memory. Thus what is true for one Turing
machine is true for all Turing machines no matter how
implemented.


Turing was also an
accomplished mathematician and
cryptographer. His assistance was
crucial in helping the Allies decode the German Enigma cipher.
He committed suicide on June day>7,
1954
after being convicted of
homosexuality and forced to take female hormone injections.


2
1
%
Korzeniem przedstawionego dokumentu jest
element biography.
%
Element biography zawiera elementy-dzieci
paragraph i definition.
%
Elementy paragraph i definition zawierajÄ…
elementy-dzieci: term, emphasize, name
i profession oraz dane tekstowe nie
zawierające znaczników. Elementy te mają
mieszaną zawartość.
%
Tego typu zawartość jest mniej popularna
i trudniejsza do zarzÄ…dzania poprzez programy
komputerowe.
3
1
Atrybuty
%
Elementy mogą mieć atrybuty, które są parami typu
nazwa-wartość, dołączonymi do znacznika
otwierajÄ…cego.
%
Nazwy są oddzielone od wartości za pomocą znaku =.
%
Wartości są otoczone znakami " lub '.

Alan Turing

4
1
%
Kolejność, użycie " lub 'oraz znaki odstępu nie mają
wpływu na znaczenie atrybutów:

Alan Turing

5
1
%
Poprzedni przykład możemy przepisać wykorzystując
atrybuty:






6
1
Narracyjny dokument z atrybutami

source="http://www.turing.org.uk/turing/pi1/busgroup.jpg"
width="152" height="345"/>
Alan
Turing
was one of the first
people to truly deserve the name computer
scientist
. Although his contributions to the field
were too numerous to list, his best-known are the eponymous
xlink:href="http://cogsci.ucsd.edu/~asaygin/tt/ttest.html">Tur
ing Test
and xlink:href="http://mathworld.wolfram.com/TuringMachine.html">T
uring Machine
.

7
1
Turing was also an
accomplished mathematician and
cryptographer. His assistance was
crucial in helping the Allies decode the German Enigma
machine.1

Turing committed suicide on
June 7,year>1954
after being convicted of homosexuality and forced to take
female hormone injections.2


8
1
Nazwy w XML
%
Element lub inna nazwa w XML (np. atrybut) może
zawierać znaki alfanumeryczne: A-Z, a-z, 0-9 oraz
znaki spoza alfabetu angielskiego, np. ö, ç, itp.
Może także zawierać:
Ä…
_ znak podkreślenia,
Ä…
- myślnik,
Ä…
. kropkÄ™.
%
Nazwa XML nie może zawierać innych znaków
interpunkcyjnych, np. ", ', $, %, ;.
%
Nazwa XML nie może zawierać znaków odstępu.
%
Wszystkie nazwy zaczynajÄ…ce siÄ™ od  XML sÄ…
zarezerwowane.
9
1
Przykłady poprawnych nazw XML
%
98 NY
32

%
7/23/2001
%
Alan
%
<_4-lane>I-610
%
011 33 91 55 27 55 27
%
0
2
Przykłady błędnych nazw XML
%
98 NY
32

%
7/23/2001
%
Alan
%
<4-lane>I-610
1
2
Referencje
%
Dane znakowe wewnÄ…trz elementu nie mogÄ…
zawierać znaku <, ponieważ jest on zawsze
interpretowany jako poczÄ…tek taga.
%
Jeśli potrzebny jest znak < w tekście należy użyć
referencji <.
%
Kiedy parser będzie czytał dokument, zamieni
każde wystąpienie <, ` lub < na
znak <.
2
2
Referencje

3
2
%
Podobnie, dane tekstowe nie mogą zawierać znaku &
dlatego należy go zastąpić referencją &
W.L. Gore & Associates
%
Ponieważ kod znaku & to 38, dlatego można go rónież
zastąpić referencją &
W.L. Gore & Associates
4
2
%
Predefiniowane referencje:
Ä…
<
Znak mniejszości, lewy nawias kątowy (<)
Ä…
&
Ampersand (&)
Ä…
>
Znak większości, prawy nawias kątowy (>)
Ä…
"
Cudzysłów (")
Ä…
'
Apostrof (')
5
2
%
Tylko < oraz & są wymagane. Pozostałe są
opcjonalne. " i ' sÄ… przydatne wewnÄ…trz
wartości atrybutów, w celu uniknięcia niejednoznaczności
z  i ':
width='122' height='66'
alt='Powered by O'Reilly Books'
/>
6
2
Sekcje CDATA
%
W przypadku, kiedy dokument XML zawiera
przykłady kodu zródłowego XML lub HTML,
wszystkie znaki < i & w tym kodzie muszą być
zastÄ…pione za pomocÄ… < i &
%
W przypadku większych fragmentów tekstu może
to się stać niewygodne i powodować błędy,
w przypadku, kiedy dokument XML jest edytowany
przez człowieka.
%
Aby temu zaradzić wprowadzono sekcje CDATA.
RozpoczynajÄ… siÄ™ one .
%
Wszystko pomiędzy jest
traktowane jako surowe dane znakowe. Znaki
< i & nie sÄ… interpretowane.
7
2
Sekcje CDATA

You can use a default xmlns
attribute to avoid having to add the svg prefix to
all your elements:


 width="12cm" height="10cm">

height="6cm" />

]]>

8
2
Komentarze
%
W dokumentach XML można umieszczać
komentarze rozpoczynajÄ…ce siÄ™ znakami .

9
2
Sterowanie przetwarzaniem
%
XML umożliwia wstawianie w dokumencie instrukcji
sterujących przetwarzaniem, umożliwiających
przekazanie informacji do aplikacji przetwarzajÄ…cych
dokument.
%
Instrukcja taka rozpoczyna siÄ™ znakami znakami ?>.
%
Po znakach skierowana jest instrukcja.
%
Przykładowa instrukcja skierowana do robotów
indeksujÄ…cych:

0
3
%
Inna postać instrukcji :)
mysql_connect("database.unc.edu", "clerk","password");
$result = mysql("HR", "SELECT LastName, FirstName FROM
Employees ORDER BY LastName, FirstName");
$i = 0;
while ($i < mysql_numrows ($result)) {
$fields = mysql_fetch_row($result);
echo "$fields[1] $fields[0] \r\n";
$i++;
}
mysql_close( );
?>
1
3
%
Przykładowa instrukcja polecająca przeglądarce
zastosowanie do dokumentu XML arkuszu stylów przed jego
wyświetleniem.


Alan Turing

2
3
Deklaracja XML
%
Dokument XML może rozpoczynać się od deklaracji XML:


Alan Turing

3
3
Atrybuty deklaracji XML
%
Atrybut version deklaracji XML określa numer
wersji XML i powinien mieć wartość 1.0.
%
Atrybut encoding określa sposób kodowania
dokumentu XML.
%
Atrybut standalone określa, czy dany dokument
XML wymaga odczytania zewnętrznego
dokumentu DTD.
4
3
Przykład innego kodowania
standalone="yes"?>

Erwin Schrödinger

5
3
Testowanie dokumentów XML
%
Każdy dokument XML, bez wyjątku, musi być
prawidłowo sformatowany. Tzn. musi spełniać
zbiór reguł, m.in.:
Ä…
Każdy tag otwierający musi mieć swój tag zamykający,
Ä…
Elementy mogą być zagnieżdżone, ale nie mogą się
przeplatać,
Ä…
Może być tylko jeden element-korzeń,
Ä…
Wartości atrybutów muszą być ograniczone " lub ',
Ä…
Element nie może mieć dwóch atrybutów o tej samej
nazwie,
Ä…
Komentarze i instrukcje sterujÄ…ce przetwarzaniem nie
mogą być umieszczone wewnątrz tagów,
Ä…
Znaki < i & nie mogą wystąpić w danych tekstowych
elementu lub atrybutu.
%
PrzeglÄ…darka, xmllint
6
3


Wyszukiwarka

Podobne podstrony:
Podstawy programowania II 2
Podstawy programowania II 4
Podstawy programowania II 3
Podstawy programowania II 6
Podstawy programowania II 1
zestawy cwiczen przygotowane na podstawie programu Mistrz Klawia 6
Podstawy Programowania Wersja Rozszerzona
Visual C 6 0 Podstawy programowania
matlab podstawy programowania
JP SS 2 algorytmy i podstawy programowania
podstawy programowania 5
Podstawy programowania  11 2013
podstawa programowa
podstawa programowa
ciurla,Podstawy ZarzÄ…dzania II, ZarzÄ…dzanie zasobami ludzkimi
Podstawy Programowania
Delphi podstawy programowania rejestr systemowy
wychowanie fizyczne w nowej podstawie programowej

więcej podobnych podstron