Wprowadzenie. XML podobnie jak HTML sa. z SGML. Semantic Web Primer, autorzy: Grigoris Antoniou i Frank van Harmelen, Second Edition, MIT Press 2008
|
|
- Patrycja Głowacka
- 5 lat temu
- Przeglądów:
Transkrypt
1 Wprowadzenie XML podobnie jak HTML sa jezykami znacznikowymi wywodzacymi sie z SGML. Ten wyk lad zosta l opracowany na podstawie podr ecznika Semantic Web Primer, autorzy: Grigoris Antoniou i Frank van Harmelen, Second Edition, MIT Press 2008 XML wprowadzenie 1
2 Przyk ladowy dokument HTML <h2>nonmonotonic Reasoning: Context-Dependent Reasoning</h2> <i>by <b>v. Marek</b> and <b>m. Truszczynski</b></i><br> Springer 1993<br> ISBN Dokument może być sformatowany dla latwiejszego czytania, i edycji przez cz lowieka. Formatowanie naśladuje w tym przypadku docelowy wyglad dokumentu. XML wprowadzenie 2
3 Analogiczny dokument w XML <book> <title> Nonmonotonic Reasoning: Context-Dependent Reasoning </title> <author>v. Marek</author> <author>m. Truszczynski</author> <publisher>springer</publisher> <year>1993</year> <ISBN> </ISBN> </book> Dokument XML też może być sformatowany w celu latwiejszego czytania i edycji manualnej. W tym wypadku formatowanie odzwierciedla struktur e dokumentu. XML wprowadzenie 3
4 Podobieństwa HTML do XML Jedne i drugie używaja znaczników (tags) (np. <h2> albo </year>). Znaczniki moga być zagnieżdżane. Ludzie moga czytać i interpretować zarówno HTML jak i XML wzglednie latwo.... A maszyny? XML wprowadzenie 4
5 Problemy z automatyczna interpretacja dokumentów HTML Oczywiście, maszyna nie ma problemu z renderowaniem dokumentu HTML w okienku przegladarki, ani np. z pokazaniem drzewiastej struktury dokumentu XML. Za lóżmy jednak, że inteligentny agent chcia lby wy luskać nazwiska autorów ksiażki: Nazwiska moga pojawić sie zaraz za tytu lem, albo za s lowem by. Czy autorów jest dwóch? Czy jest jeden: V. Marek and M. Truszczynski? XML wprowadzenie 5
6 Porównanie HTML z XML: informacja strukturalna Dokumenty HTML nie zawieraja informacji strukturalnej, czyli wyszczególnienia elementów dokumentu i ich wzajemnych zwiazków. XML jest latwiej dost epny dla maszyny, ponieważ: Każdy element informacyjny jest oddzielnie opisany. Zwiazki miedzy nimi sa również odzwierciedlone, przez zagnieżdżenie struktury. Np. znacznik <author> pojawia sie wewnatrz znaczników <book>, zatem opisuje one jakaś w lasność danej ksiażki. XML wprowadzenie 6
7 Porównanie HTML z XML: informacja strukturalna (2) Maszyna analizujaca dokument XML może wydedukować, że: element autor odnosi sie do zawierajacego go elementu book, zwiazki wyrażone sa przez strukture, a nie np. przez sasiedztwo lub bliskość. XML dopuszcza też ograniczenia na wartości: np. że rok musi być wyrażony czterocyfrowa liczba. XML wprowadzenie 7
8 Porównanie HTML z XML: formatowanie Dokument w formacie HTML zawiera dodatkowa informacje o formatowaniu. Jest to naturalne, ponieważ g lównym wykorzystaniem dokumentów HTML jest proces wyświetlania informacji. Struktura dokumentu (i zawartych w nim informacji) jest sygnalizowana użytkownikowi przez jego wyglad. Jednak ta warstwa informacyjna nie podlega żadnym regu lom, jest niejednoznaczna. Dla odróżnienia, w dokumencie XML treść dokumentu jest ca lkowicie odseparowana od formatowania. Te same informacje moga być wyświetlane w różny sposób. XML wprowadzenie 8
9 W HTML: Porównanie HTML z XML: inny przyk lad <h2>relationship force-mass</h2> <i> F = M x a </i> W XML: <equation> <meaning>relationship force-mass</meaning> <leftside> F </leftside> <rightside> M x a </rightside> </equation> Co możemy zauważyć w porównaniu z przyk ladem z ksiażkami? XML wprowadzenie 9
10 Porównanie HTML z XML: inna rola znaczników W obu dokumentach HTML używa si e tych samych znaczników. W dokumentach XML znaczniki sa ca lkiem inne. Znaczniki HTML definiuja wyświetlanie (kolory, czcionki, itp.). Znaczniki HTML maja ustalone znaczenie (w definicji dokumentu HTML). Znaczniki XML nie sa ustalone; moga być definiowane przez użytkownika. XML jest metaj ezykiem znacznikowym jest to j ezyk definiowania j ezyków znacznikowych. XML wprowadzenie 10
11 Terminologia XML Aplikacje internetowe musza mieć uzgodniona terminologie aby mog ly sie komunikować i wspó lpracować. Grupy użytkowników i sektory biznesu definiuja sobie w laściwe terminologie: matematyka (MathML) bioinformatyka (BSML) zasoby ludzkie (human resources) (HRML)... XML wprowadzenie 11
12 J ezyk XML Dokument XML sk lada sie z: prologu, pewnej liczby elementów, opcjonalnego epilogu. XML opis szczegó lowy 12
13 Prolog dokumentu XML Prolog sk lada sie z: deklaracji XML, opcjonalnego odwo lania do zewnetrznych dokumentów strukturalnych. Na przyk lad: <?xml version="1.0" encoding="utf-16"?> <!DOCTYPE book SYSTEM "book.dtd"> XML opis szczegó lowy 13
14 Elementy XML Elementy dokumentu XML dotycza obiektów opisywanych, np. ksiażek, autorów, wydawnictw, itp. Element sk lada si e ze: znacznika otwierajacego zawartości znacznika zamykajacego Na przyk lad: <lecturer>david Billington</lecturer> XML opis szczegó lowy 14
15 Elementy XML (2) Nazwy znaczników moga zawierać szerokie spektrum znaków, jedynie: pierwszy znak musi być litera, podkreślnikiem, lub dwukropkiem, nazwa nie może zaczynać sie sekwencja xml, w żadnej kombinacji dużych i/lub ma lych liter, np. Xml, xml,..., nazwa nie może zawierać bia lych znaków. XML opis szczegó lowy 15
16 Zawartość elementów XML Zawartościa może być jakiś tekst, albo inne elementy, albo pusty string <lecturer> <name>david Billington</name> <phone> </phone> </lecturer> Jeśli element nie ma treści to jest nazywany pustym, i może być zapisany skrótowo: <lecturer/> zamiast <lecturer></lecturer> XML opis szczegó lowy 16
17 Atrybuty XML Pusty element nie musi być pozbawiony znaczenia może mieć pewne wartości w postaci atrybutów. Atrybut jest para nazwa-wartość w znaczniku otwierajacym elementu, np.: <lecturer name="david Billington" phone=" "/> XML opis szczegó lowy 17
18 Atrybuty XML: przyk lad <order orderno="23456" customer="john Smith" date="october 15, 2002"> <item itemno="a528" quantity="1"/> <item itemno="c817" quantity="3"/> </order> XML opis szczegó lowy 18
19 Atrybuty XML: ten sam przyk lad bez atrybutów <order> <orderno>23456</orderno> <customer>john Smith</customer> <date>october 15, 2002</date> <item> <itemno>a528</itemno> <quantity>1</quantity> </item> <item> <itemno>c817</itemno> <quantity>3</quantity> </item> </order> XML opis szczegó lowy 19
20 Elementy XML w porównaniu z atrybutami Atrybuty można zastapić elementami. Na odwrót nie zawsze jest to możliwe; atrybuty maja wieceń ograniczeń. Kiedy użyć elementów a kiedy atrybutów jest czesto kwestia stylu. Jednak atrybuty nie moga być zagnieżdżone. Jak również atrybut o danej nazwie może wystapić tylko raz. XML opis szczegó lowy 20
21 Instrukcje przetwarzania Instrukcje przetwarzania (Processing Instructions, PI) Wprowadzaja mechanizm przekazania aplikacji informacji o tym jak należy traktować elementy. Ogólna postać PI: <?target instruction?> przyk lad: <?stylesheet type="text/css" href="mystyle.css"?> XML opis szczegó lowy 21
22 Komentarze Fragment tekstu, który powinien być pomini ety przez parser, np.: <!-- This is a comment --> XML opis szczegó lowy 22
23 Formalnie poprawne dokumenty XML Dokument XML nazywa si e formalnie poprawnym (well-formed) jeśli spe lnia wymagania sk ladniowe XML. Regu ly sk ladni XML (wybrane): Tylko jeden element na najwyższym poziomie (root element). Każdy element zawiera znacznik otwierajacy i zamykajacy. Elementy nie moga na siebie nachodzić, np. (niepoprawne): <author><name>lee Hong</author></name> Atrybuty w ramach jednego elementu musza mieć unikalne nazwy. Nazwy elementów i znaczników musza być dopuszczalne. XML opis szczegó lowy 23
24 Formalnie poprawne dokumenty XML (2) Istnieja narzedzia do sprawdzania formalnej poprawności (wellformedness) dokumentów XML. XML opis szczegó lowy 24
25 Drzewiasty model dokumentu XML: przyk lad Formalnie poprawne dokumenty XML można przedstawić w postaci drzewa, zatem drzewa można traktować jako model danych dla XML. Rozważmy przyk ladowy dokument: < > <head> <from name="michael Maher" address="michaelmaher@cs.gu.edu.au"/> <to name="grigoris Antoniou" address="grigoris@cs.unibremen.de"/> <subject>where is your draft?</subject> </head> <body> Grigoris, where is the draft of the paper you promised me last week? </body> </ > XML opis szczegó lowy 25
26 Drzewiasty model dokumentu XML: przyk lad (2) Formalnie poprawny dokument XML jest uporzadkowanym drzewem etykietowanym: - Tylko jeden korzeń. - Wez ly potomne danego wez la - Brak cykli. sa uporzadkowane. - Każdy weze l, który nie jest korzeniem, -... natomiast porzadek ma dok ladnie jednego rodzica. atrybutów jest nieistotny. - Każdy weze l ma etykiete. XML opis szczegó lowy 26
27 Budowanie struktury dokumentów XML 1. Zdefiniuj wszystkie nazwy elementów i atrybutów, które moga być użyte. 2. Zdefiniuj struktur e: wartości jakie może przyjmować dany atrybut, jakie elementy moga lub musza wystapić wewnatrz danego elementu. Jeśli istnieje taka informacja strukturalna, to można dokonać walidacji dokumentu. Dokument XML jest poprawny (valid), jeśli: jest formalnie poprawny (well-formed), spe lnia swoje wymagania strukturalne. XML opis szczegó lowy 27
28 Definiowanie struktury dokumentów XML Sa dwa sposoby definiowania struktury dokumentów XML: DTD sposób starszy i bardziej ograniczony, XML Schema daje dodatkowe możliwości. XML opis szczegó lowy 28
29 Przyk ladowy dokument XML: DTD: definicja typu elementu <lecturer> <name>david Billington</name> <phone> </phone> </lecturer> Definicja DTD dla elementu lecturer, i jego elementów sk ladowych: <!ELEMENT lecturer (name,phone)> <!ELEMENT name (#PCDATA)> <!ELEMENT phone (#PCDATA)> Znaczenie powyższych definicji: W dokumencie moga wystapić elementy lecturer, name, i phone. Element lecturer zawiera elementy name i phone, w podanej kolejności. (Gdyby elementy te mog ly wystapić w dowolnej kolejności, patrz poniżej.) Elementy name i phone moga mieć dowolna zawartość. #PCDATA jest jedynym możliwym atomowym typem elementów w DTD. (To znaczy: inna możliwościa niż ciag wewnetrznych elementów). XML definicje DTD 29
30 DTD: alternatywa w definicji elementów Gdybyśmy chcieli określić, że w elemencie lecturer moga wystapić elementy name i phone w dowolnej kolejności, sytuacja jest bardziej z lożona. Można użyć konstrukcji alternatywy: <!ELEMENT lecturer (name phone)> Jednak powyższa definicja dopuszcza tylko jeden z elementów name i phone wewnatrz lecturer. Aby określić, że musza wystapić oba, ale w dowolnej kolejności, możemy zapisać nastepuj ac a alternatywe: <!ELEMENT lecturer ((name,phone) (phone,name))> XML definicje DTD 30
31 DTD: ograniczenia liczności W DTD można również określić, że pewne elementy wystapi a wiele razy, np.: <!ELEMENT lecturer (name,phone*)> <!ELEMENT name (#PCDATA)> <!ELEMENT phone (#PCDATA)> Po nazwie elementu może wystapić wyrażenie określajace liczność (cardinality) wystapień tego elementu. Możliwości:? oznacza, że element może wystapić jeden raz lub wcale * oznacza, że element może wystapić zero lub wiecej razy + oznacza, że element może wystapić jeden lub wiecej razy brak ograniczenia liczności oznacza dok ladnie jedno wystapienie XML definicje DTD 31
32 DTD: użycie atrybutów <order orderno="23456" customer="john Smith" date="october 15, 2002"> <item itemno="a528" quantity="1"/> <item itemno="c817" quantity="3"/> </order> Odpowiednia definicja DTD: <!ELEMENT order (item+)> <!ATTLIST order orderno ID #REQUIRED customer CDATA #REQUIRED date CDATA #REQUIRED> <!ELEMENT item EMPTY> <!ATTLIST item itemno ID #REQUIRED quantity CDATA #REQUIRED comments CDATA #IMPLIED> Zwróćmy najpierw uwag e na określenie, że element item jest pusty. XML definicje DTD 32
33 DTD: definiowanie atrybutów Atrybuty dla danego elementu definiowane sa za pomoca listy atrybutów: <!ATTLIST order orderno ID #REQUIRED customer CDATA #REQUIRED date CDATA #REQUIRED> Lista atrybutów zawiera: nazw e elementu, którego lista dotyczy, sekwencj e trójek: nazwa, typ, i specyfikacja typu wartości atrybutu. Typ atrybutu może być jednym z określonego zestawu; najważniejsze możliwości: CDATA oznacza ciag znaków, ID oznacza nazwe elementu unikalna dla ca lego dokumentu XML, IDREF oznacza odniesienie do innego elementu o danym ID, IDREFS oznacza serie IDREF, (v 1... v n ) oznacza jedna z podanych wartości Typ atrybutu nie dopuszcza wartości liczbowych, musza one być zapisywane jako stringi. Również nie można wymusić żadnej konkretnej struktury, np. dla daty. XML definicje DTD 33
34 DTD: specyfikacja typu wartości atrybutu Przypomnijmy przyk ladowa liste atrybutów dla elementu item: <!ATTLIST item itemno ID #REQUIRED quantity CDATA #REQUIRED comments CDATA #IMPLIED> Cztery możliwe określenia typu wartości: #REQUIRED oznacza, że atrybut musi pojawić sie w każdym wystapieniu elementu, #IMPLIED oznacza, że atrybut jest opcjonalny, #FIXED "value" oznacza, że element musi mieć ten atrybut, i ma on podana wartość (wartość podana w dokumencie XML jest ignorowana), "value" określa wartość domyślna atrybutu; jeśli w dokumencie XML pojawi sie inna wartość, to zastepuje ona podana wartość domyślna. XML definicje DTD 34
35 DTD: odwo lania IDREF i IDREFS Rozważmy przyk ladowa definicje DTD określajac a, że dokument XML bedzie opisywa l zbiór osób, miedzy którymi zachodza określone relacje, w tym przypadku zwiazki rodzinne. Te relacje można zapisać za pomoca atrybutów IDREF, IDREFS, odwo lujacych sie do atrybutów ID. <!ELEMENT family (person*)> <!ELEMENT person (name)> <!ELEMENT name (#PCDATA)> <!ATTLIST person id ID #REQUIRED mother IDREF #IMPLIED father IDREF #IMPLIED children IDREFS #IMPLIED> XML definicje DTD 35
36 DTD: przyk lad wykorzystujacy IDREF i IDREFS <family> <person id="bob" mother="mary" father="peter"> <name>bob Marley</name> </person> <person id="bridget" mother="mary"> <name>bridget Jones</name> </person> <person id="mary" children="bob bridget"> <name>mary Poppins</name> </person> <person id="peter" children="bob"> <name>peter Marley</name> </person> </family> XML definicje DTD 36
37 DTD: encje XML W dokumentach XML moga pojawiać sie encje (entities), które maja charakter predefiniowanych sta lych. Przyk lad encji: <!ENTITY thisyear " 2007 " > Możemy teraz zapisać odwo lania do encji: &thisyear zamiast: " 2007 ". Encje pe lni a nastepuj ace role: skrótowy zapis dla powtarzanego ciagu znaków, blok danych zewnetrznych (XML lub innych), cześć deklaracji elementu. Istnieje pi eć predefiniowanych encji dla wprowadzanie znaków specjalnych: & zast epuje: & < zast epuje: < > zast epuje: > " zast epuje: " ' zast epuje: XML definicje DTD 37
38 DTD: przyk lad elementu <!ELEMENT (head,body)> <!ELEMENT head (from,to+,cc*,subject)> <!ELEMENT from EMPTY> <!ATTLIST from name CDATA #IMPLIED address CDATA #REQUIRED> <!ELEMENT to EMPTY> <!ATTLIST to name CDATA #IMPLIED address CDATA #REQUIRED> <!ELEMENT cc EMPTY> <!ATTLIST cc name CDATA #IMPLIED address CDATA #REQUIRED> <!ELEMENT subject (#PCDATA)> <!ELEMENT body (text,attachment*)> <!ELEMENT text (#PCDATA)> <!ELEMENT attachment EMPTY> <!ATTLIST attachment encoding (mime binhex) "mime" file CDATA #REQUIRED> XML definicje DTD 38
39 DTD: komentarze do przyk ladu Element head zawiera (w kolejności): element from, co najmniej jeden element to, zero lub wi ecej elementów cc, element subject. W elementach from, to, i cc: atrybut name nie jest wymagany, atrybut address jest wsz edzie wymagany. Element body zawiera: element text, i ponim opcjonalnie dowolna liczba elementów attachment. Atrybut encoding elementu attachment musi mieć jedna z wartości mime lub binhex, i mime jest wartościa domyślna. XML definicje DTD 39
40 Dalsze uwagi o DTDs DTD można traktować jako rodzaj j ezyka podobnego do EBNF (Extended Backus-Naur Form): <!ELEMENT (head,body)> jest równoważny: := head body W DTD możliwe sa definicje rekurencyjne: <!ELEMENT bintree ((bintree root bintree) emptytree)> XML definicje DTD 40
41 Schematy XML XML Schema jest j ezykiem istotnie bogatszym o mechanizmy definiowania struktury dokumentów XML. Jego sk ladnia jest jednak oparta na XML-u. Ta cecha powoduje, że duża cześć technologii XML można użyć ponownie, nie trzeba pisać oddzielnych parserów, edytorów, i innych narzedzi do jego przetwarzania. Inna cecha jest możliwość ponownego wykorzystania istniejacych schematów. Istnieje możliwość rozszerzania lub ograniczania. Schematy XML pozwalaja na użycie rozbudowanych typów danych, w odróżnieniu od DTD, które wspieraja jedynie stringi. Schemat XML jest elementem z otwierajacym znacznikiem: <schema " version="1.0"> Ten element b edzie wykorzystywa l schemat ze strony W3C. Na jego bazie można budować nowe schematy. Struktura elementu schematu: element i typy atrybutów, z typami danych. XML schematy 41
42 Przyk ladowa deklaracja elementu: XML Schema: typy elementów <element name=" "/> <element name="head" minoccurs="1" maxoccurs="1"/> <element name="to" minoccurs="1"/> Elementy moga mieć ograniczenia liczności (cardinality constraints): minoccurs="x" (wartość domyślna 1) maxoccurs="x" (wartość domyślna 1) Sa one uogólnieniami ograniczeń liczności z DTD: *,+,? XML schematy 42
43 XML Schema: typy atrybutów Atrybuty definiowane sa za pomoca elementu attribute, wewnatrz elementu, do którego maja zastosowanie. Przyk lady: <attribute name="id" type="id" use="required"/> <attribute name="speaks" type="language" use="default" value="en"/> Ograniczenia na wyst epowanie danego atrybutu: use="x" gdzie x może być: optional lub required Wartości domyślne dla atrybutów: use="x" value="..." gdzie x może być: default lub fixed XML schematy 43
44 XML Schema: typy danych Istnieje szereg wbudowanych typów danych: numeryczne: integer, Short, itp. znakowe: string, ID, IDREF, CDATA, itp. data i czas: time, Month, itp. Możliwe sa również typy danych definiowane przez użytkownika: proste typy danych, które nie używaja elementów ani atrybutów, z lożone typy danych, moga używać elementy i atrybuty. Z lożone typy danych definiowane sa z już istniejacych typów danych przez definiowanie pewnych atrybutów (opcjonalne) i użycie: sequence sekwencji istniejacych typów (kolejność istotna), all zbioru elementów, które musza sie pojawić (kolejność nieistotna), choice zbioru elementów, z których jeden musi sie pojawić. XML schematy 44
45 XML Schema: przyk lad typu danych <complextype name="lecturertype"> <sequence> <element name="firstname" type="string" minoccurs="0" maxoccurs="unbounded"/> <element name="lastname" type="string"/> </sequence> <attribute name="title" type="string" use="optional"/> </complextype> XML schematy 45
46 XML Schema: rozszerzenie typu danych Istniejacy typ danych można rozszerzyć dodajac nowe elementy lub atrybuty, np.: <complextype name="extendedlecturertype"> <extension base="lecturertype"> <sequence> <element name=" " type="string" minoccurs="0" maxoccurs="1"/> </sequence> <attribute name="rank" type="string" use="required"/> </extension> </complextype> XML schematy 46
47 XML Schema: równoważny kompletny typ danych <complextype name="extendedlecturertype"> <sequence> <element name="firstname" type="string" minoccurs="0" maxoccurs="unbounded"/> <element name="lastname" type="string"/> <element name=" " type="string" minoccurs="0" maxoccurs="1"/> </sequence> <attribute name="title" type="string" use="optional"/> <attribute name="rank" type="string" use="required"/> </complextype> Pomiedzy oryginalnym i rozszerzonym typem danych istnieja zwiazki: instancje typu rozszerzonego sa instancjami typu bazowego, instancje typu rozszerzonego moga zawierać dodatkowe informacje, ale nie moga zawierać mniej informacji, ani informacji niew laściwego typu. XML schematy 47
48 XML Schema: ograniczenie typu danych Istniejacy typ danych może być ograniczony przez dodanie ograniczeń na pewne wartości. Ograniczenie nie jest odwrotnościa rozszerzania, nie jest tworzone przez usuwanie elementów ani atrybutów. Nastepuj ace zwiazki hierarchiczne pomiedzy typami danych nadal istnieja: instancje typu ograniczonego sa również instancjami typu bazowego, spe lniaja one wszystkie ograniczenia typu bazowego. XML schematy 48
49 XML Schema: przyk lad ograniczenia typu danych <complextype name="restrictedlecturertype"> <restriction base="lecturertype"> <sequence> <element name="firstname" type="string" minoccurs="1" maxoccurs="2"/> </sequence> <attribute name="title" type="string" use="required"/> </restriction> </complextype> XML schematy 49
50 XML Schema: ograniczenie prostych typów danych <simpletype name="dayofmonth"> <restriction base="integer"> <mininclusive value="1"/> <maxinclusive value="31"/> </restriction> </simpletype> <simpletype name="dayofweek"> <restriction base="string"> <enumeration value="mon"/> <enumeration value="tue"/> <enumeration value="wed"/> <enumeration value="thu"/> <enumeration value="fri"/> <enumeration value="sat"/> <enumeration value="sun"/> </restriction> </simpletype> XML schematy 50
51 XML Schema: przyk lad elementu <element name=" " type=" type"/> <complextype name=" type"> <sequence> <element name="head" type="headtype"/> <element name="body" type="bodytype"/> </sequence> </complextype> <complextype name="headtype"> <sequence> <element name="from" type="nameaddress"/> <element name="to" type="nameaddress" minoccurs="1" maxoccurs="unbounded"/> <element name="cc" type="nameaddress" minoccurs="0" maxoccurs="unbounded"/> <element name="subject" type="string"/> </sequence> </complextype> XML schematy 51
52 XML Schema: przyk lad elementu (cd.) <complextype name="nameaddress"> <attribute name="name" type="string" use="optional"/> <attribute name="address" type="string" use="required"/> </complextype> podobnie dla bodytype XML schematy 52
53 Przestrzenie nazw Dokument XML może używać wi ecej niż jednego DTD albo schematu. Ponieważ te definicje struktury by ly zapewne opracowane niezależnie, moga wystapić kolizje nazw. Rozwiazaniem jest użycie oddzielnego prefixu dla każdego DTD lub schematu: prefix:name XML przestrzenie nazw 53
54 Przestrzenie nazw przyk lad Przyk lad: we wspó lpracy pomiedzy Uniwersytetem Kentucky i australijskim Griffith University, moga powstawać takie dokumenty: <?xml version="1.0" encoding="utf-16"> <vu:instructors xmlns:vu=" xmlns:gu=" xmlns:uky=" <uky:faculty uky:title="assistant professor" uky:name="john Smith" uky:department="computer Science"/> <gu:academicstaff gu:title="lecturer" gu:name="mate Jones" gu:school="information Technology"/> </vu:instructors> Zauważmy, stanowisko lecturer w U.S.A. oznacza pracownika niezaliczanego do kadry naukowej, natomiast w Australii tak (odpowiada mniej wi ecej stanowisku assistant professor w U.S.A.). XML przestrzenie nazw 54
55 Deklaracje przestrzeni nazw Przestrzenie nazw sa deklarowane wewnatrz elementów i moga być nastepnie używane w tym elemencie, i jego elementach potomnych (wewnetrznych), w tym również w atrybutach. Deklaracja przestrzeni nazw ma postać: xmlns:prefix="location" gdzie location jest adresem DTD lub schematu. Jeśli prefix nie jest określony, to DTD lub schemat odwo lane w takiej deklaracji: xmlns="location" jest stosowane domyślnie. XML przestrzenie nazw 55
56 XML przestrzenie nazw 56
57 Adresowanie i odpytywanie dokumentów XML Jeśli potraktujemy dokumenty XML jako zbiory (lub bazy) danych, to aby móc je efektywnie przeszukiwać/odpytywać, potrzebne sa odpowiednie mechanizmy: jezyk formu lowania zapytań + odpowiedni procesor (interpreter), jezyk zapytań XML można traktować jako odpowiednik jezyka SQL dla relacyjnych baz danych, istniejace jezyki zapytań XML: XQuery, XQL, XML-QL. Pojeciem leżacym u podstaw jezyków zapytań jest pojecie ścieżki (path). Wyrażenie określajace ścieżke pozwala odwo lywać sie do określonego wez la lub wez lów w drzewie dokumentu XML. XML odwo lywanie si e i odpytywanie dokumentów XML 57
58 XPath XPath jest j ezykiem zapisu ścieżek w dokumentach XML. Jednocześnie jest centralnym elementem j ezyków zapytań XML. Dzia la na drzewiastym modelu danych XML. Sk ladnia wyrażenia XPath nie jest zgodna z XML. Typy ścieżek XPath: Bezwzgledne, zaczynaja sie od korzenia drzewa. Sk ladniowo zapisywane z symbolem / na poczatku ścieżki, który oznacza korzeń dokumentu (element g lówny dokumentu jest osadzony w tym korzeniu). Wzgledne, odnoszace sie do wez la kontekstu. XML XPath 58
59 Przyk ladowy dokument XML <library location="bremen"> <author name="henry Wise"> <book title="artificial Intelligence"/> <book title="modern Web Services"/> <book title="theory of Computation"/> </author> <author name="william Smart"> <book title="artificial Intelligence"/> </author> <author name="cynthia Singleton"> <book title="the Semantic Web"/> <book title="browser Technology Revised"/> </author> </library> XML XPath 59
60 /library/author Przyk lady wyrażeń ścieżkowych w XPath Określa wszystkie elementy author, które sa potomkami elementu g lównego (leżacego bezpośrednio w korzeniu) library. Ogólnie /t1/.../tn jest ścieżka, jeśli ti+1 jest wez lem potomnym wez la ti. XML XPath 60
61 //author Przyk lady wyrażeń ścieżkowych w XPath (2) Określa wszystkie elementy author. Sk ladnia // oznacza, że wszystkie elementy w ca lym dokumencie powinny być sprawdzone czy sa typu author. Ta ścieżka adresuje wszystkie elementy author w dowolnym miejscu dokumentu. XML XPath 61
62 Przyk lady wyrażeń ścieżkowych w XPath (3) /library/@location oznacza odwo lanie do atrybutów. W tym przypadku wyrażenie wybiera wez ly atrybutowe location po lożone wewnatrz wez la library (w korzeniu). //book[@title="artificial Intelligence"] Nawiasy kwadratowe oznaczaja wyrażenie filtrujace, które ogranicza zbiór wybranych wez lów. W tym przypadku wybierane sa wez ly book (po lożone w dowolnym miejscu dokumentu), ale z wartościa atrybutu title równa "Artificial Intelligence". XML XPath 62
63 Przyk lady wyrażeń ścieżkowych w XPath (4) Wybieramy wszystkie wez ly atrybutowe title, po lożone wewnatrz elementu book w dowolnym miejscu dokumentu, z wartościa "Artificial Intelligence": //book/@title="artificial Intelligence" XML XPath 63
64 Przyk lady wyrażeń ścieżkowych w XPath (5) Wybieramy wszystkie elementy book, z wartościa atrybutu title równa "Artificial Intelligence": //book[@title="artificial Intelligence"] XML XPath 64
65 Dalsze przyk lady: Przyk lady wyrażeń ścieżkowych w XPath (6) Pierwszy element author w dokumencie XML: //author[1] Ostatni element book w pierwszym elemencie author w dokumencie XML: //author[1]/book[last()] Wszystkie elementy book nie posiadajace atrybutu title: XML XPath 65
66 Ogólna postać wyrażeń ścieżkowych w XPath Wyrażenie ścieżkowe sk lada si e z serii kroków, oddzielonych znakami slash. Każdy krok sk lada sie z: specyfikacji osi (axis), testu wez la, opcjonalnego predykatu. XML XPath 66
67 Ogólna postać wyrażeń ścieżkowych w XPath (2) Specyfikacja osi określa relacj e adresowanego w ez la wzgl edem w ez la kontekstu w drzewie: np.: rodzic, przodek, potomek (domyślnie), sasiad, weze l atrybutowy, // jest specyfikacja osi oznacza potomka lub samego siebie. XML XPath 67
68 Ogólna postać wyrażeń ścieżkowych w XPath (3) Test wez la określa które wez ly bed a wybierane: najprostszym testem w ez la jest nazwa elementu XML, przyk ladem innego testu jest "*" wybiera wszystkie elementy, jeszcze inny przyk lad: comment() wybiera wszystkie w ez ly komentarzy. XML XPath 68
69 Ogólna postać wyrażeń ścieżkowych w XPath (4) Predykaty (wyrażenia filtrujace) sa opcjonalne i moga być użyte do ograniczenia zbioru wybranych wez lów. Przyk lady: wyrażenie [1] wybiera pierwszy element, wyrażenie [position()=last()] wybiera ostatni element, wyrażenie [position() mod 2 = 0] wybiera elementy parzyste. Powyższe przyk lady stanowia tylko ilustracje. XPath ma znacznie bardziej skomplikowana postać ogólna. XML XPath 69
70 XML XPath 70
71 Prezentacja dokumentów XML Dokumenty XML nie określaja sposobu w jaki powinny być wyświetlane, np.: <author> <name>grigoris Antoniou</name> <affiliation>university of Bremen</affiliation> < >ga@tzi.de</ > </author> może być wyświetlony: Grigoris Antoniou University of Bremen ga@tzi.de Grigoris Antoniou University of Bremen ga@tzi.de XML przetwarzanie 71
72 Arkusze stylu Arkusze stylu moga być napisane w różnych jezykach, np.: CSS2 kaskadowe arkusze stylu poziomu 2, XSL extensible stylesheet language Cechy XSL: zawiera j ezyk transformacji XSLT, zawiera j ezyk formatowania, oba sa aplikacjami XML. XML przetwarzanie 72
73 Transformacje XSL (XSLT) XSLT określa regu ly przekszta lcenia dokumentu XML w inny dokument XML, dokument HTML, albo zwyk ly tekst. Dokument wynikowy może używać tego samego DTD lub schematu, jak również zupe lnie innej definicji struktury. XSLT jest j ezykiem przetwarzania treści dokumentów XML i może być użyty niezależnie od j ezyka formatowania. XSLT może być wykorzystywany do: przenoszenia danych i metadanych z jednej reprezentacji XML do innej, komunikacji miedzy aplikacjami, które używaja różnych DTD lub schematów, maszynowego przetwarzania treści, niezależnie od ich prezentacji, jednak w tym wyk ladzie bedzie używany do prezentacji dokumentów XML. XML przetwarzanie 73
74 Transformacja XSLT dokumentów XML do HTML Arkusz stylu: <xsl:template match="/author"> <html> <head><title>an author</title></head> <body bgcolor="white"> <b><xsl:value-of select="name"/></b><br/> <xsl:value-of select="affiliation"/><br/> <i><xsl:value-of select=" "/></i> </body> </html> </xsl:template> Wynik przetwarzania przez arkusz stylu: <html> <head><title>an author</title></head> <body bgcolor="white"> <b>grigoris Antoniou</b><br/> University of Bremen<br/> </body> </html> XML przetwarzanie 74
75 Uwagi na temat XSLT Dokumenty XSLT sa dokumentami XML (XSLT jest aplikacja XML). Dokument XSLT definiuje szablon (template), w tym przypadku jest to szablon dokumentu HTML. Pozycje w tym szablonie wype lniane sa treścia z dokumentu źród lowego. xsl:value-of produkuje wartość elementu i wstawia ja do dokumentu wynikowego. Szablon: <html> <head><title>an author</title></head> <body bgcolor="white"> <b>...</b><br/>...<br/> <i>...</i> </body> </html> XML przetwarzanie 75
76 Szablony dodatkowe A co w przypadku, gdyby w dokumencie XML by ly informacje o wielu autorach, i należa lo je wszystkie wyświetlić wed lug jednakowego schematu? Odpowiedź, w dokumencie XSLT może istnieć wiele szablonów, i w arkuszu stylu moga one być jawnie wywo lywane przez xsl:apply-templates. Przyk ladowy dokument: <authors> <author> <name>grigoris Antoniou</name> <affiliation>university of Bremen</affiliation> < >ga@tzi.de</ > </author> <author> <name>david Billington</name> <affiliation>griffith University</affiliation> < >david@gu.edu.net</ > </author> </authors> XML przetwarzanie 76
77 Przyk lad szablonów dodatkowych (2) <xsl:template match="/"> <html> <head><title>authors</title></head> <body bgcolor="white"> <xsl:apply-templates select="authors"/> <!-- Apply templates for AUTHORS children --> </body> </html> </xsl:template> <xsl:template match="authors"> <xsl:apply-templates select="author"/> </xsl:template> <xsl:template match="author"> <h2><xsl:value-of select="name"/></h2> Affiliation:<xsl:value-of select="affiliation"/><br/> <xsl:value-of select=" "/> <p/> </xsl:template> XML przetwarzanie 77
78 Wynik przetwarzania Można zastosować jakiś procesor XSLT do wykonania napisanego arkusza stylu: # xmlstarlet tr authors_pr.xslt authors.xml <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>authors</title> </head> <body bgcolor="white"> <h2>grigoris Antoniou</h2> Affiliation:University of Bremen<br> ga@tzi.de<p></p> <h2>david Billington</h2> Affiliation:Griffith University<br> david@gu.edu.net<p></p> </body> </html> XML przetwarzanie 78
79 Uwagi ogólne o przetwarzaniu XSLT Jest dobra praktyka definiowanie szablonów dla każdego typu elementu, nawet jeśli nie definiujemy żadnego przetwarzania dla danego typu elementu. W powyższym przyk ladzie, nie ma specjalnej akcji dla elementu authors, jednak jego elementy wewnetrzne podlegaja przetwarzaniu i sa wyświetlane. W ten sposób wszystkie elementy dokumentu sa przetwarzane, od korzenia do liści, i wszystkie szablony sa wykonywane. XML przetwarzanie 79
80 Przetwarzanie atrybutów XML Teraz pokażemy przetwarzanie atrybutów. Na przyk lad, chcemy przetworzyć nastepuj acy element w samego siebie: <person firstname="john" lastname="woo"/> Rozwiazanie niepoprawne: <xsl:template match="person"> <person firstname="<xsl:value-of select="@firstname">" lastname="<xsl:value-of select="@lastname">"/> </xsl:template> Powyższe rozwiazanie nie jest poprawne, bo znaczniki nie moga wystapić wewnatrz wartości atrybutów, zatem wyrażenie nie jest formalnie poprawne. Wartości atrybutów należy wprowadzić do szablonu: <xsl:template match="person"> <person firstname="{@firstname}" lastname="{@lastname}"/> </xsl:template> XML przetwarzanie 80
81 Przyk lad przekszta lcanie dokumentu XML przetwarzanie 81
82 Przyk lad przekszta lcanie dokumentu (2) <xsl:template match="/"> <?xml version="1.0" encoding="utf-16"?> <authors> <xsl:apply-templates select="authors"/> </authors> </xsl:template> <xsl:template match="authors"> <author> <xsl:apply-templates select="author"/> </author> </xsl:template> <xsl:template match="author"> <name><xsl:value-of select="name"/></name> <contact> <institution><xsl:value-of select="affiliation"/></institution> < ><xsl:value-of select=" "/></ > </contact> </xsl:template> XML przetwarzanie 82
83 XPointer i XLink XPath: deklaratywny j ezyk dla określania w ez lów i fragmentów drzew XML, używany w XSL (dla dopasowania wzorców), XML Schema (dla unikalności i określenia zakresu), jak i XQuery (dla wyboru i iteracji). XPointer: rozszerzenie XPath dla linkowania, określa zwiazek miedzy wyrażeniami XPath i URI. XLink: rozszerzenie koncepcji linku HTML, wyższy poziom abstrakcji, przeznaczony dla XML, nie tylko hypertekstu, wi ecej możliwości (wiele celów, specjalne zachowanie, bazy linków, itp.), używa XPointer dla wskazywania zasobów. XML przetwarzanie 83
84 Narz edzia do przetwarzania XML xmlwf - determines if an XML document is well-formed xmlto - apply an XSL stylesheet to an XML document xsltproc - command line XSLT processor xmlpatterns - a tool for running XQuery queries xmllint - command line XML tool XML przetwarzanie 84
85 Podsumowanie XML jest metajezykiem pozwalajacym definiować znaczniki. XML oddziela zawartość i struktur e od prezentacji. XML jest de facto standardem dla reprezentacji i wymiany informacji strukturalnej w Internecie. XML jest wspierany przez j ezyki zapytań. XML przetwarzanie 85
XML extensible Markup Language. część 4
XML extensible Markup Language część 4 XML Schema (Podobnie jak DTD) XML Schema to opracowany przez W3C standard służący do definiowania struktury dokumentu XML. (W przeciwieństwie do DTD) XML Schema jest
Bardziej szczegółowoXQuery. XQuery. Przykład. dokument XML. XQuery (XML Query Language) XQuery 1.0: An XML Query Language. W3C Recommendation http://www.w3.
XQuery XQuery XQuery (XML Query Language) XQuery 1.0: An XML Query Language. W3C Recommendation http://www.w3.org/tr/xquery/ Język programowania funkcyjnego (podobnie jak Lisp) Język zapytań do danych
Bardziej szczegółowoXML extensible Markup Language. część 2
XML extensible Markup Language część 2 Definicja Typu Dokumentu - DTD Jeżeli dokument XML jest zgodny z określonym dla niego DTD mówimy wówczas że jest poprawny strukturalnie (w skrócie poprawny valid).
Bardziej szczegółowoLABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT
LABORATORIUM 5 WSTĘP DO SIECI TELEINFORMATYCZNYCH WPROWADZENIE DO XML I XSLT 1. Wstęp XML (Extensible Markup Language Rozszerzalny Język Znaczników) to język formalny przeznaczony do reprezentowania danych
Bardziej szczegółowoKurs WWW Język XML, część I
Język XML, część I Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Zawartość modułu Wprowadzenie do XML Składnia Znaczniki i atrybuty DTD XML Schema Na podstawie kursu ze strony: http://www.w3schools.com/schema/default.asp
Bardziej szczegółowoJęzyk XML Schema. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz
Język Schema Po zrealizowaniu materiału student będzie w stanie Stworzyć formalny opis dokumentu Deklarować elementy i atrybuty Określić strukturę elementów w dokumencie Operować dostępnymi typami danych
Bardziej szczegółowoWYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1
WYKŁAD 1 METAJĘZYK SGML CZĘŚĆ 1 SGML (Standard Generalized Markup Language) Standardowy uogólniony język znaczników służący do ujednolicania struktury i formatu różnego typu informacji (danych). Twórcy
Bardziej szczegółowoWYKŁAD 2 DTD DOCUMENT TYPE DEFINITION CZĘŚĆ 1
WYKŁAD 2 DTD DOCUMENT TYPE DEFINITION CZĘŚĆ 1 XML (ang. Extensible Markup Language Rozszerzalny język znaczników) Oparty o SGML prosty, elastyczny format tekstowy opisujący klasę obiektów nazywanych dokumentami
Bardziej szczegółowoWprowadzenie do technologii XML
Katedra Mikroelektroniki i Technik Informatycznych Łódź, 6 października 2005 roku 1 Informacje organizacyjne Omówienie przedmiotu 2 vs HTML Struktura 3 Struktura Informacje o przedmiocie Informacje organizacyjne
Bardziej szczegółowoJak wygląda XML? Definiowanie typów dokumentów Część 1. DTD, XML Schema. Struktura logiczna dokumentu XML. Składnia XML. Encje predefiniowane.
Definiowanie typów dokumentów Część 1. DTD, XML Schema Jak wygląda XML? st. asp. Jan Łapówka dołowice Górne wypadek
Bardziej szczegółowoXPath XML Path Language. XPath. XSLT część 1. XPath data model. Wyrażenia XPath. Location paths. Osie (axes)
XPath XML Path Language XPath. XSLT część 1. Problem: jednoznaczne adresowanie fragmentów struktury dokumentu XML. Rozwiązanie: drzewiasty model struktury dokumentu, normalizacja zawartości dokumentu (ten
Bardziej szczegółowoWprowadzenie do XML schema
Spis treści Tomasz Przechlewski 1. Podstawowe pojęcia. 1 2. Typy proste.. 3 3. Wzorzec regułowy 4 4. Typy złożone 5 5. Modele o prostej zawartości 5 6. Modele o złożonej zawartości. 6 7. Rozszerzanie modelu
Bardziej szczegółowoXML Path Language (XPath)
XML Path Language (XPath) 1 Cel adresowanie elementów /częś ci dokumentu XML składnia podobna do URI wyszukiwanie elementów bądź grup elementów dokument jako drzewo typy węzłów: element, attribute, text
Bardziej szczegółowo29. Poprawność składniowa i strukturalna dokumentu XML
29. i strukturalna dokumentu XML 13 października 2015 1 2 Poprawny składniowo dokument XML powinien być tworzony zgodnie z poniżej przedstawionymi zasadami. Deklaracja XML Powinien zawierać deklarację
Bardziej szczegółowoPlan dzisiejszego wykładu. Narzędzia informatyczne w językoznawstwie. XML - Definicja. Zalety XML
Plan dzisiejszego wykładu Narzędzia informatyczne w językoznawstwie Perl - Wprowadzenie do XML Marcin Junczys-Dowmunt junczys@amu.edu.pl Zakład Logiki Stosowanej http://www.logic.amu.edu.pl 16. kwietnia
Bardziej szczegółowoDokument poprawnie sformułowany jest zgodny z ogólnymi zasadami składniowymi:
DTD Document Type Definition Dokument poprawnie sformułowany (well-formed) Dokument poprawnie sformułowany jest zgodny z ogólnymi zasadami składniowymi: 1. KaŜdy znacznik musi posiadać zamknięcie (wyjątek
Bardziej szczegółowoXML Schema. Motywacja, struktura schematu, typy złożone. Patryk Czarnik. Instytut Informatyki UW
XML Schema Motywacja, struktura schematu, typy złożone Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Dlaczego nie DTD? Zastosowania XML-a w elektronicznej
Bardziej szczegółowoXML extensible Markup Language. część 4
XML extensible Markup Language część 4 Przestrzenie nazw Dwa muzea posiadają dokumenty XML i określone dla nich DTD (lub XML Schema) zawierające opisy eksponatów. Muzeum 1 (DTD 1):
Bardziej szczegółowoPrzykładowy dokument XML
Przykładowy dokument XML DTD - wady Ograniczona kontrola nad strukturą dokumentów. Zbyt wysokopoziomowe typy danych: liczby, daty są zawsze reprezentowane jako tekst! Bardzo ogólne metody definiowania
Bardziej szczegółowoSłowem wstępu. Część rodziny języków XSL. Standard: W3C XSLT razem XPath 1.0 XSLT Trwają prace nad XSLT 3.0
Słowem wstępu Część rodziny języków XSL Standard: W3C XSLT 1.0-1999 razem XPath 1.0 XSLT 2.0-2007 Trwają prace nad XSLT 3.0 Problem Zakładane przez XML usunięcie danych dotyczących prezentacji pociąga
Bardziej szczegółowoXML DTD XML Schema CSS
XML XML czyli Extensible Markup Language (rozszerzalny język znaczników) można traktować jak stosunkowo prosty i elastyczny format tekstowy wywodzący się z SGML. Pierwotnie został zaprojektowany aby umożliwiać
Bardziej szczegółowoextensible Markup Language, cz. 4 Marcin Gryszkalis, mg@fork.pl
extensible Markup Language, cz. 4 Marcin Gryszkalis, mg@fork.pl XML 5 XML Schema Projektowany jako rozszerzenie i uzupełnienie DTD Jest w stanie odwzorować dowolną definicję DTD (ale nie odwrotnie!) Bardzo
Bardziej szczegółowoXML Schema. Bartłomiej Świercz. Łódź, 19 listopada 2005 roku. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz XML Schema
XML Schema Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 19 listopada 2005 roku Wstęp XML Schema służy do definiowania struktury dokumentu XML (pełni podobną funkcję jak DTD).
Bardziej szczegółowoDTD - encje ogólne i parametryczne, przestrzenie nazw
DTD - encje ogólne i parametryczne, przestrzenie nazw Instytut Informatyki Encje Encja (ang.entity) - uogólnienie pojęcia makrodefinicji Encje to dogodny sposób reprezentacji danych które występują wielokrotnie,
Bardziej szczegółowoXML i nowoczesne technologie zarządzania treścią
XML i nowoczesne technologie zarządzania treścią Egzamin, 7 lutego 2014 r. Imię i nazwisko: Czas: 90 minut. Maksymalna suma punktów: 50. Pytania testowe są wielokrotnego wyboru, można przyjąć że co najmniej
Bardziej szczegółowoXML Schema. Typy proste, wyprowadzanie typów, modularyzacja schematu. Patryk Czarnik. Instytut Informatyki UW
XML Schema Typy proste, wyprowadzanie typów, modularyzacja schematu Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Typy proste i złożone Typy złożone struktura
Bardziej szczegółowoPrzykładowy dokument XML
Język XML XML (extensible Markup Language, czyli rozszerzalny język znaczników) to specyfikacja dotycząca przechowywania informacji. Jest to również specyfikacja opisujaca strukturę tych informacji. XML
Bardziej szczegółowoXML extensible Markup Language. Paweł Chodkiewicz
XML extensible Markup Language Paweł Chodkiewicz XML - extensible Markup Language Uniwersalny język znaczników przeznaczony do reprezentowania różnych danych w strukturalizowany sposób. Historia GML Projekt
Bardziej szczegółowoPrzetwarzanie dokumentów XML za pomocą XSLT (30.03.2015 r.)
Przetwarzanie dokumentów XML za pomocą XSLT (30.03.2015 r.) Przetwarzanie dokumentów XML oznacza zwykle, wyłuskanie z nich danych oraz przetwarzanie ich na inny format np HTML lub PDF. Jedną z metod przekształcania
Bardziej szczegółowoWprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT
Wprowadzenie do arkuszy stylistycznych XSL i transformacji XSLT Marek Wojciechowski marek@cs.put.poznan.pl http://www.cs.put.poznan.pl/~marek/ Formatowanie dokumentów XML Język XML opisuje strukturę i
Bardziej szczegółowoLAB 7. XML EXtensible Markup Language - Rozszerzalny Język Znaczników XSD XML Schema Definition Definicja Schematu XML
Informatyka sem. III studia inżynierskie Transport 2018/19 LAB 7 XML EXtensible Markup Language - Rozszerzalny Język Znaczników XSD XML Schema Definition Definicja Schematu XML 1. Prosty dokument XML lab7_1.xml
Bardziej szczegółowoSemistrukturalne bazy danych Wykład dla studentów matematyki
Semistrukturalne bazy danych Wykład dla studentów matematyki 30 maja 2015 Dane semistrukturalne Dzięki WWW i Internetowi łatwo umieszczać informacje w sieci tak, żeby były powszechnie dostępne. Chęć wykorzystania
Bardziej szczegółowoSłuży do wybierania/wyszukiwania fragmentów dokumentu XML. Przypomina trochę ścieżki w systemie operacyjnym. Niech będzie dany dokument XML:
Podstawy XPATH Służy do wybierania/wyszukiwania fragmentów dokumentu XML. Przypomina trochę ścieżki w systemie operacyjnym. Niech będzie dany dokument XML:
Bardziej szczegółowoXML w sosie własnym. Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik. Instytut Informatyki UW
XML w sosie własnym Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Patryk
Bardziej szczegółowoJak wygląda XML? Definiowanie typów dokumentów Część 1. DTD, XML Schema. Struktura logiczna dokumentu XML. Składnia XML. Encje predefiniowane.
Definiowanie typów dokumentów Część 1. DTD, XML Schema Jak wygląda XML? st. asp. Jan Łapówka dołowice Górne wypadek
Bardziej szczegółowoParadygmaty programowania. Paradygmaty programowania
Paradygmaty programowania Paradygmaty programowania Dr inż. Andrzej Grosser Cz estochowa, 2013 2 Spis treści 1. Zadanie 2 5 1.1. Wprowadzenie.................................. 5 1.2. Wskazówki do zadania..............................
Bardziej szczegółowoXML w sosie własnym. Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik. Instytut Informatyki UW
XML w sosie własnym Standard XML wraz z DTD, przestrzenie nazw, projektowanie struktury dokumentów. Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Podstawy
Bardziej szczegółowoRola języka XML narzędziem
Wprowadzenie do XML dr inż. Adam Iwaniak Szkolenie w Luboradzy, ZCPWZ, 12-13.02.2009r. Rola języka XML narzędziem Pierwszą rewolucją internetową było dostarczenie ludziom informacji. Znajdujemy się teraz
Bardziej szczegółowoPodstawy języka XML. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz
Podstawy języka XML Cel zajęć Po zrealizowaniu materiału student będzie w stanie Prawidłowo zidentyfikować składowe dokumentu XML Utworzyć dokument XML Dokonać sprawdzenia poprawności składniowej (syntaktycznej)
Bardziej szczegółowoPrzetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 02
Plan Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 02 T. Romańczukiewicz Jagiellonian University 2009/2010 Plan Plan 1 Przypomnienie 2 DTD 3 Schematy XML 4 Podsumowanie Plan Przypomnienie
Bardziej szczegółowoExtensible Markup Language III
KIiMK 2010 Plan XSLT-transformacje dokumentów 1 XSLT-transformacjedokumentów Informacje o XSLT Przykład transformacji 2 3 Informacje o XSLT Przykład transformacji Informacje o XSLT Przykład transformacji
Bardziej szczegółowoDefiniowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema. Elementy czy atrybuty? Wartości domyślne i ustalone. Elementy czy atrybuty?
Globalne i lokalne deklaracje elementów i atrybutów Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema Deklaracje lokalne:
Bardziej szczegółowoWprowadzenie do technologii XML
Wprowadzenie do technologii Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 11 kwietnia 2010 Program wykładu Celem wykładu jest przedstawienie technologii i pokrewnych do niej
Bardziej szczegółowoXML extensible Markup Language. część 1
XML extensible Markup Language część 1 Historia Czym jest język XML? Język XML to uniwersalny język formalny przeznaczony do reprezentowania różnych danych w ustrukturalizowany sposób. XML jest metajęzykiem
Bardziej szczegółowoINTEGRACJA I EKSPLORACJA DANYCH
INTEGRACJA I EKSPLORACJA DANYCH mgr inż. Anna Pankowska aniap@amu.edu.pl Anna Pankowska - I&E 1 Plan wykładu Integracja danych - Dane semistrukturalne i język XML jako standard składowania i wymiany danych
Bardziej szczegółowoAplikacje internetowe laboratorium XML, DTD, XSL
Aplikacje internetowe laboratorium XML, DTD, XSL Celem ćwiczenia jest stworzenie dokumentu XML, wyposażenie dokumentu w specyfikację struktury (przy użyciu DTD), oraz transformacja dokumentu XML do postaci
Bardziej szczegółowoDokumenty SEDU składają się z dwóch części: Opisu sprawy Formularza elektronicznego
Opis dokumentów SEDU Standard Elektronicznych Dokumentów Urzędowych są to dokumenty zapisane w standardzie XML, opisujące różnorakie procedury urzędowe, możliwe do częściowej lub całkowitej realizacji
Bardziej szczegółowo- wewnątrz elementów prostych występuje tylko jeden typ danych, wewnątrz złoŝonych nie moŝemy dokładnie określić liczby wystąpień elementu
XML Schema DTD a XML Schema DTD jako opis dokumentu XML: - pozwala stworzyć jedynie bardzo ogólny schemat dokumentu - w standardzie DTD dostępne mamy jedynie rozróŝnienie na elementy proste i złoŝone -
Bardziej szczegółowoSłowem wstępu. Standard: W3C XPath razem XSLT 1.0. XPath razem z XQuery 1.0 i XSLT 2.0. XPath trwają prace nad XPath 3.
Słowem wstępu Standard: W3C XPath 1.0-1999 razem XSLT 1.0 XPath 2.0-2007 razem z XQuery 1.0 i XSLT 2.0 XPath 3.0-2014 trwają prace nad XPath 3.1 XPath Język deklaratywny służący wskazywaniu elementów,
Bardziej szczegółowoPrzetwarzanie dokumentów XML i zaawansowane techniki WWW Przetwarzanie dokumentów XML za pomocą procesora XSLT (Zajęcia r.
Przetwarzanie dokumentów XML i zaawansowane techniki WWW Przetwarzanie dokumentów XML za pomocą procesora XSLT (Zajęcia 06 11.04.2016 r.) Przetwarzanie dokumentów XML oznacza zwykle, wyłuskanie z nich
Bardziej szczegółowoXPath XML Path Language. XPath. XSLT część 1. XPath data model. Wyrażenia XPath. Osie (axes) Location paths
XPath XML Path Language XPath. XSLT część 1 Problem: jednoznaczne adresowanie fragmentów struktury dokumentu XML. Rozwiązanie: abstrakcyjny drzewiasty model struktury dokumentu, normalizacja zawartości
Bardziej szczegółowoRozdzia l 3. Laboratorium 3. danych zawierajac
Rozdzia l 3 Laboratorium 3 3.1. Tablice Tablica jest struktura danych zawierajac a zmienne tego samego typu. CLR środowiska.net Framework wspiera tworzenie tablic jedno oraz wielo wymiarowych. 3.1.1. Tablice
Bardziej szczegółowoXML extensible Markup Language 3
XML extensible Markup Language 3 XSL transformations (XSLT) XSLT (ang. extensible Stylesheet Language Transformations) jest opartym na XML językiem transformacji dokumentów XML XSLT umożliwia przetłumaczenie
Bardziej szczegółowoStwórz dokument XML zawierający poniższe informacje. Wykorzystaj atrybuty.
XML zadania 2013 Zasady uzyskania zaliczenia na ostatniej stronie! Przydatne linki: http://www.validome.org/xml/ http://www.w3.org/2001/03/webdata/xsv Zadanie 1 (XML) Stwórz dwa dokumenty XML zawierającą
Bardziej szczegółowoWprowadzenie do XML. Joanna Jędrzejowicz. Instytut Informatyki
Instytut Informatyki Literatura http://www.w3c.org/tr/ - Technical Reports K. B. Stall - XML Family of Specifications, Addison-Wesley 2003 P. Kazienko, K. Gwiazda - XML na poważnie, Helion 2002 XML Rozszerzalny
Bardziej szczegółowoDrzewa podstawowe poj
Drzewa podstawowe poj ecia drzewo graf reprezentujacy regularna strukture wskaźnikowa, gdzie każdy element zawiera dwa lub wiecej wskaźników (ponumerowanych) do takich samych elementów; wez ly (albo wierzcho
Bardziej szczegółowoPrzykładowy dokument XML
Język XML XML (extensible Markup Language, czyli rozszerzalny język znaczników) to specyfikacja dotycząca przechowywania informacji. Jest to również specyfikacja opisujaca strukturę tych informacji. XML
Bardziej szczegółowoPlan prezentacji DTD. Wiązanie DTD z dokumentem XML Deklaracja typu dokumentu. Co to jest DTD. Wstęp. Przedmiot: XML i jego zastosowania
Plan prezentacji Przedmiot: XML i jego zastosowania Dr inż. Stanisław Polak Akademia Górniczo - Hutnicza w Krakowie, Katedra Informatyki http://www.icsr.agh.edu.pl/~polak/ Wstęp Deklarowanie elementów
Bardziej szczegółowoAplikacje internetowe laboratorium XML, DTD, XML Schema, XSL
Aplikacje internetowe laboratorium XML, DTD, XML Schema, XSL Celem ćwiczenia jest stworzenie dokumentu XML, wyposażenie dokumentu w specyfikację struktury (przy użyciu DTD i XML Schema), oraz transformacja
Bardziej szczegółowoBAZY DANYCH. Dr hab. Sławomir Zadrożny, prof. PR
BAZY DANYCH Dr hab. Sławomir Zadrożny, prof. PR Co to jest baza danych? Wiele możliwych definicji Zbiór danych, który istnieje przez dłuższy okres czasu Współdzielony zestaw logicznie powiązanych danych
Bardziej szczegółowoSchematy aplikacyjne UML i GML dla mapy zasadniczej oraz Modelu Podstawowego. Rozdział 1 Założenia podstawowe
Załącznik nr 8 Schematy aplikacyjne UML i GML dla mapy zasadniczej oraz Modelu Podstawowego Rozdział 1 Założenia podstawowe 1. Na treść załącznika składają się: 1) schemat aplikacyjny UML dla mapy zasadniczej;
Bardziej szczegółowoXML extensible Markup Language. część 3
XML extensible Markup Language część 3 Definicja Typu Dokumentu - DTD DTD (ang. Document Type Definition) rodzaj dokumentu definiujący formalną strukturę dokumentów XML. DTD określa składnię konkretnej
Bardziej szczegółowoDlaczego DTD nie wystarcza? Definiowanie typów dokumentów Część 2. XML Schema. Status XML Schema. DTD XML Schema. Definiowanie elementów i atrybutów
Dlaczego DTD nie wystarcza? Definiowanie typów dokumentów Część 2. XML Schema Zastosowania w integracji aplikacji struktury danych: przeniesienie zadania sprawdzania poprawności z tworzonej aplikacji na
Bardziej szczegółowoExtensible Markup Language (XML) Wrocław, Java - technologie zaawansowane
Extensible Markup Language (XML) Wrocław, 15.03.2019 - Java - technologie zaawansowane Wprowadzenie XML jest językiem znaczników (ang. markup language) używanym do definiowania zbioru zasad rozmieszczenia
Bardziej szczegółowoUEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz
Po zrealizowaniu materiału student będzie w stanie Prawidłowo zidentyfikować składowe dokumentu XML Utworzyć dokument XML Dokonać sprawdzenia poprawności składniowej (syntaktycznej) dokumentu 2 1 WWW Consortium,
Bardziej szczegółowoSchematy XML. Tomasz Traczyk. ttraczyk@ia.pw.edu.pl http://www.ia.pw.edu.pl/~ttraczyk/
Schematy XML Tomasz Traczyk ttraczyk@ia.pw.edu.pl http://www.ia.pw.edu.pl/~ttraczyk/ Plan prezentacji Dlaczego schematy? Przykład schematu XML Schema nieco szczegółów Rola schematów XML Problemy z DTD
Bardziej szczegółowoPodstawy (X)HTML i CSS
Inżynierskie podejście do budowania stron WWW momat@man.poznan.pl 2005-04-11 1 Hyper Text Markup Language Standardy W3C Przegląd znaczników Przegląd znaczników XHTML 2 Cascading Style Sheets Łączenie z
Bardziej szczegółowoXML extensible Markup Language 1
XML extensible Markup Language 1 Czym jest język XML? Język XML to uniwersalny język formalny przeznaczony do reprezentowania różnych danych w ustrukturalizowany sposób. XML jest metajęzykiem tzn. przy
Bardziej szczegółowoJak wygląda XML? Definiowanie typów dokumentów Część 1. DTD. Struktura logiczna dokumentu XML. Podstawy składni XML. Definiowanie języków
Definiowanie typów dokumentów Część 1. DTD Jak wygląda XML? st. asp. Jan Łapówka dołowice Górne wypadek dnia
Bardziej szczegółowoJak wygląda XML? Definiowanie typów dokumentów. Struktura logiczna dokumentu XML. Podstawy składni XML. Definiowanie języków. Poprawność dokumentów
Jak wygląda XML? 9 października 2003 Definiowanie typów dokumentów Część 1: DTD st. asp. Jan Łapówka dołowice Górne
Bardziej szczegółowoc TP: anything: 13 listopada 2004 roku 1
SGML/XML SGML: International Standard (ISO 8879). Information Processing Text and Office Systems Standardized Generalized Markup Language. Znakowanie powinno opisywać strukturę dokumentu (...) a nie określać
Bardziej szczegółowoPrezentacja i transformacja
Prezentacja i transformacja Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 21 października 2005 roku 1 Prezentacja Przykładowa aplikacja CSS- Cascading Style Sheets CSS2aXML
Bardziej szczegółowoPodstawy XML-a. Zaawansowane techniki programowania
Podstawy XML-a Zaawansowane techniki programowania Dokumenty XML XML = ang. Extensible Markup Language rozszerzalny język znaczników
Bardziej szczegółowoDefiniowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema
Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema Globalne i lokalne deklaracje elementów i atrybutów Deklaracje lokalne:
Bardziej szczegółowoXML Schema. Motywacja, struktura schematu, typy złożone. Patryk Czarnik. Instytut Informatyki UW
XML Schema Motywacja, struktura schematu, typy złożone Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Patryk Czarnik (MIMUW) 03 XML Schema XML 2007/08 1
Bardziej szczegółowoPlan prezentacji. Krótko o XML Arkusze stylów XSLT XSL XSL Path Przegląd konstrukcji języka i przykłady Narzędzia Podsumowanie Literatura
XSLT Dariusz Dudek Plan prezentacji Krótko o XML Arkusze stylów XSLT XSL XSL Path Przegląd konstrukcji języka i przykłady Narzędzia Podsumowanie Literatura Cechy XML a Rozszerzalny język znaczników Stworzony
Bardziej szczegółowoProgramowanie internetowe
Programowanie internetowe Wykład 1 HTML mgr inż. Michał Wojtera email: mwojtera@dmcs.pl Plan wykładu Organizacja zajęć Zakres przedmiotu Literatura Zawartość wykładu Wprowadzenie AMP / LAMP Podstawy HTML
Bardziej szczegółowoAplikacje internetowe. Interfejs użytkownika
Aplikacje internetowe Interfejs użytkownika Plan wykładu Formatowanie HTML za pomocą arkuszy stylów CSS Język XML ogólna struktura dokumentów opis struktury za pomocą DTD przestrzenie nazw Język XHTML
Bardziej szczegółowoXML i nowoczesne technologie zarządzania treścią
XML i nowoczesne technologie zarządzania treścią Egzamin, 1 lutego 2013 r. Imię i nazwisko: Czas: 75 minut. Pytania testowe są wielokrotnego wyboru jeśli nie napisano inaczej, możliwy jest dowolny układ
Bardziej szczegółowoWyk lad 9 Podpierścienie, elementy odwracalne, dzielniki zera
Wyk lad 9 Podpierścienie, elementy odwracalne, dzielniki zera Określenie podpierścienia Definicja 9.. Podpierścieniem pierścienia (P, +,, 0, ) nazywamy taki podzbiór A P, który jest pierścieniem ze wzgledu
Bardziej szczegółowork HTML 4 a 5 różnice
rk HTML 4 a 5 różnice kompatybilność Pierwszym dużym plusem języka HTML 5 jest to, że jest zdefiniowany w sposób umożliwiający kompatybilność wstecz. Składnia Przykład dokumentu podporządkowującego się
Bardziej szczegółowoModel semistrukturalny
Model semistrukturalny standaryzacja danych z różnych źródeł realizacja złożonej struktury zależności, wielokrotne zagnieżdżania zobrazowane przez grafy skierowane model samoopisujący się wielkości i typy
Bardziej szczegółowoGML w praktyce geodezyjnej
GML w praktyce geodezyjnej Adam Iwaniak Kon-Dor s.c. Konferencja GML w praktyce, 12 kwietnia 2013, Warszawa SWING Rok 1995, standard de jure Wymiany danych pomiędzy bazami danych systemów informatycznych
Bardziej szczegółowoElementarz HTML i CSS
Elementarz HTML i CSS Znaczniki przydatne w pracy redaktora stron internetowych 1 Elementarz HTML i CSS Znaczniki przydatne w pracy redaktora stron internetowych Treść, korekta, skład i oprawa graficzna
Bardziej szczegółowoXML extensible Markup Language. część 3
XML extensible Markup Language część 3 CSS Kaskadowe arkusze stylów CSS Kaskadowe arkusze stylów CSS to skrót od Cascading Style Sheets Style pozwalają definiować sposób wyświetlania elementów dokumentu
Bardziej szczegółowoĆwiczenia laboratoryjne nr 8 Podstawy języka XML.
Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 8 Podstawy języka XML. Celem ćwiczeń jest poznanie zasad tworzenia dokumentów w oparciu o język XML oraz metod modyfikacji ich
Bardziej szczegółowoNarzędzia informatyczne w językoznawstwie
Narzędzia informatyczne w językoznawstwie HTML i XHTML Marcin Junczys-Dowmunt junczys@amu.edu.pl Zakład Logiki Stosowanej http://www.logic.amu.edu.pl 17. października 2007 Marcin Junczys-Dowmunt Narzędzia
Bardziej szczegółowoKurs WWW Język XML, część II
Język XML, część II Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Zawartość modułu Wprowadzenie do XSL XPath XSLT XSL-FO Na podstawie kursów ze stron: http://www.w3schools.com/xpath/default.asp
Bardziej szczegółowomgr inż. Jacek Staniec Język XML staniec@wit.edu.pl
mgr inż. Jacek Staniec Język XML staniec@wit.edu.pl Zaliczenie przedmiotu (3 punkty ECTS) Obecność na 7 pierwszych zajęciach 15 punktów Sprawozdania z 7 pierwszych zajęć 15 punktów Projekt podstawowy 50
Bardziej szczegółowoDodatkowe możliwości RDF. Seminarium magisterskie Paweł Chrząszczewski
Dodatkowe możliwości RDF Seminarium magisterskie Paweł Chrząszczewski Inne możliwości RDF RDF posiada szereg dodatkowych funkcji, takich jak wbudowane typy i właściwości reprezentujące grupy zasobów i
Bardziej szczegółowoUruchamianie SNNS. Po uruchomieniu. xgui & lub snns & pojawia si e okno. programu. Symulator sztucznych sieci neuronowych SNNS 1
Uruchamianie SNNS Ca ly pakiet SNNS sk lada si e z programu interfejsu graficznego xgui, oraz z szeregu programów sk ladowych: analyze isnns netlearn snnsbat batchman linknets netperf td_bignet convert2snns
Bardziej szczegółowoRelacyjne bazy danych a XML
Relacyjne bazy danych a XML Anna Pankowska aniap@amu.edu.pl Internet, SQLiXMLwbiznesie Internet nieoceniony sposób komunikacji z klientami, pracownikami i partnerami handlowymi przyspiesza transakcje finansowe
Bardziej szczegółowoEkonomia matematyczna i dynamiczna optymalizacja
Ekonomia matematyczna i dynamiczna optymalizacja Ramy wyk ladu i podstawowe narz edzia matematyczne SGH Semestr letni 2012-13 Uk lady dynamiczne Rozwiazanie modelu dynamicznego bardzo czesto można zapisać
Bardziej szczegółowoParadygmaty programowania
Paradygmaty programowania Programowanie generyczne w C++ Dr inż. Andrzej Grosser Cz estochowa, 2016 2 Spis treści 1. Zadanie 3 5 1.1. Wprowadzenie.................................. 5 1.2. Obiekty funkcyjne................................
Bardziej szczegółowoPrzetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 04
Plan Przetwarzanie dokumentów XML i zaawansowane techniki WWW Wykład 04 T. Romańczukiewicz Jagiellonian University 2009/2010 Plan Plan 1 XSLT Plan 1 XSLT Wstęp Przykłady Instrukcje sterujace Elementy i
Bardziej szczegółowoPrezentacja dokumentów XML
Prezentacja dokumentów XML Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2011/12 Patryk Czarnik 06 Prezentacja XML 2011/12 1 / 64 1 Arkusze stylu Rozdzielenie
Bardziej szczegółowoPrezentacja i transformacja
Prezentacja i transformacja Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 11 kwietnia 2010 Prezentacja i transformacja CSS2a Ważną cechą dokumentów XML jest ich łatwa prezentacja
Bardziej szczegółowoJęzyki XPath i XQuery
Języki XPath i XQuery Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2008/09 Patryk Czarnik 07 XPath XML 2008/09 1 / 1 XPath i XQuery Wprowadzenie Status Języki
Bardziej szczegółowoWyk lad 7 Baza i wymiar przestrzeni liniowej
Wyk lad 7 Baza i wymiar przestrzeni liniowej 1 Baza przestrzeni liniowej Niech V bedzie przestrzenia liniowa. Powiemy, że podzbiór X V jest maksymalnym zbiorem liniowo niezależnym, jeśli X jest zbiorem
Bardziej szczegółowoXML Schema w przykładach
DTD a XML Schema Krótkie porównanie dla niecierpliwych: XML Schema w przykładach Maciej Ogrodniczuk mog@empolis.pl DTD Wywodzi się z SGML-a Specyficzna składnia 10 typów danych Brak kontroli tekstowej
Bardziej szczegółowo