4 °TVEZE WXYHMNR°LS TVSKVEQY -RJSVQEXMOE NI TSHTSVSZ¤RE TVSNIOXIQ RERGSZERÀQ ^ )ZVSTWO¬LS WSGM¤PR°LS JSRHY E VS^TSÐXY LPEZR°LS QÞWXE 4VEL] 4VELE
)9 -RZIWXYNIQI HS ZE%° FYHSYGRSWXM
Úvod do XML Technologie BI-TWA Peter Vojtáš s korekturou Martina Kruliše
TWA – kde jsme, co dál … V dvou třetinách přednášky „HTML a PHP“svět, s relačními daty (1NF, CWA, …) Problémy a potřeby dat na webu, různé cesty - XML - standard pro data (bez 1NF, OWA, …) - Sémantický web (automatizace – web of data) - Web 2.0 (sociální web, wisdom of crowds, Web Science (WSRI), …) - Sémantizace webu (proces, WIE, anotace, …)
Dnes – datový model – XML, příště dotazování, RDF, … BI-TWA
Úvod do XML
2
Práce s velikými daty již 1890
data processing or keypunch cards BI-TWA
Úvod do XML
3 Copyrighted pictures used only for teaching purpose
Analogie – motivace?
Web stránky Internet
Google Sémantický web (IMS) BI-TWA
Úvod do XML
4 Copyrighted pictures used only for teaching purpose
Propojit celé lidské know-how v 1945 Wikipedia The memex is the name given by Vannevar Bush to the theoretical proto -hypertext computer system in As We May Think. The memex has influenced the hypertext and intellect augmenting computer systems.
V roce 1945… dnes? BI-TWA
Úvod do XML
5 Copyrighted pictures used only for teaching purpose
Tříúrovňový model • Fyzická úroveň • Fyzikální princip • papír • mikrofilm • magnetizmus •… • Reprezentační (datová) vrstva • vnitřní reprezentace dat, např. stoh • XML •… • Logická úroveň • Prezentační (externí úroveň) BI-TWA
Úvod do XML
6 Copyrighted pictures used only for teaching purpose
Značkovací jazyky – MarkUp languages IBM Generalized Markup Language už tady byl 1960 Myšlenka dodat sémantiku (metadata) pomocí značek
Standard Generalized Markup Language (ISO 8879:1986 SGML) Značky lze vnořit, měly by zachovat strom. strukturu nelze např.
……… Někdy ale se sémantika (kontext) překrývají, lze pak
…………??? BI-TWA
Úvod do XML
7
Značkovací jazyky – HTML Myšlenka „MarkUp“ – značkování, anotace. příklad HTML Tato přednáška má název Tvorba webovských aplikací
V prohlížeči to pak vypadá Tato přednáška má název Tvorba webovských aplikací
Cíle HTML • •
Dříve především úprava vzhledu obsahu Dnes definuje „typ“ obsahu • •
Tohle je nadpis, tohle odstavec, … Vzhled určuje prohlížeč (a CSS)
HTML 5 už dál… BI-TWA
Úvod do XML
8
J. Pokorný a kol. XML technologie Principy a aplikace v praxi, Grada 2009
XML – syntax (stručně) XML • •
Pravidla pro značkování Značky si zvolí uživatel sám (program, který je zpracovává musí vědět, co znamenají)
Tato přednáška má název Tvorba webovských aplikací
Formát XML dokumentu •
Preambule
• Právě jeden kořenový element <můj_dokument> …
BI-TWA
Úvod do XML
9
J. Pokorný a kol. XML technologie Principy a aplikace v praxi, Grada 2009
XML – syntax – stromová struktura Značky lze vnořit, ale zachovat strom, nelze např. ……… element
název
Úvod
<Titul>
Úvod Titul
Prof. Peter Vojtáš
BI-TWA
podelement
přednáška
přednášející
Prof.
křestní Peter příjmení Vojtáš
Úvod do XML
10
Motivováno P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
XML – syntax – stromová struktura Jednoduché hodnoty lze psát dovnitř elementu jako hodnoty atributů (různě)
Úvod
Peter Vojtáš
BI-TWA
Rozdíl: Atributy se na rozdíl od elementů nemůžou opakovat a obsahují pouze literál.
Úvod do XML
11
Motivováno P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
XML – (globální) identifikátory - URI Na webu je první problém s identifikací URI – Uniform Resource Identifier, URI schema <SchemeName>:[?][#]
„SchemeName“ může být •protokol (ftp, http, mailto, gopher, …) •ale také jiné (např. fax, news, about, javascript …)
BI-TWA
Úvod do XML
12
XML – (globální) identifikátory - URI obvykle začíná // a může být např. [uzivatel[:heslo]@]server[:port]/cesta Např. http://www.ksi.mff.cuni.cz:8080/bib/?section=publications
URI vs. URL •URL je speciálním případem URI •URI slouží především k identifikaci zdroje •URL slouží především jako cesta k dosažení zdroje BI-TWA
Úvod do XML
13
DTD, Schema, sémantika v XML • XML dokument ~ data, databáze
• Dobře vytvořený (well formed) XML dokument – preambule, jeden kořen a správně vytvořené entity (elementy, atributy, odkazy) • XML dokument může být validní vzhledem ke schématu – specifikaci struktury (DTD, Schema, …) • DTD (už SGML) je bezkontextová gramatika • XML Schema, silnější než DTD (např. typy) • Další (Schematron, RelaxNG, …)
• je to vhodná sémantika pro automatizaci webu ? BI-TWA
Úvod do XML
14
Příklad z W3C materiálu Resource Description Framework (RDF) Primer http://www.w3.org/TR/rdf-primer/
DTD pro XML <paper id="o12"> Foundations of Databases Serge Abiteboul 1997 Addison Wesley ... Jaké elementy jsou povoléné?
Jak se do sebe smí vnořovat? Kolikrát se můžou opakovat? Kde tyhle věci definovat? BI-TWA
Úvod do XML
15
Motivováno P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
DTD pro XML <paper id="o12"> Foundations of Databases Serge Abiteboul 1997 Addison Wesley ... BI-TWA
paper (author+, year, publisher?)> paper id ID #REQUIRED> author (firstname*, lastname)> firstname (#PCDATA)> lastname (#PCDATA)> year (#PCDATA)> publisher (#PCDATA)>
Úvod do XML
16
Motivováno P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
DTD pro XML – deklarace elementů Definition - Atomární typ #PCDATA (Parsed Character DATA) - (a, b, c) seznam podelementů - (a|b|c) alternativy - * + ? EMPTY bib je kořenový prvek elementů paper paper má alespoň jeden podele ment autor, jeden year, může … Firstname je typu řetězec znaků … ... ]> BI-TWA
Úvod do XML
17
Motivováno P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
DTD pro XML – deklarace atributů defAtributu = název typ volitelnost [výchozíHodnota] Typ může být CDATA (řetězec znaků), ID (OID), IDREF (odkaz na ID) nebo IDREFS (množina odkazů) Volitelnost REQUIRED, IMPLIED ... ]> BI-TWA
Úvod do XML
paper má jeden atribut který musí mít jednoznačnou hodnotu author může mít atribut age
18
Motivováno P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
DTD pro XML - OID a odkazy Jane Doe children= „jane jack“ > John Doe id ID #REQUIRED mother IDREF #IMPLIED children IDREFS #IMPLIED> ]> Mary Smith Jack Smith BI-TWA
Úvod do XML
19
Motivováno P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
XML Schema • Alternativní jazyk pro zápis XML schémat • • •
Silnější než DTD Přidává typy a integritní omezení na literály Schéma (v XML Schema) je také XML dokument
• XML Schema vs. DTD •
•
Příklad: chceme definovat element A, který může obsahovat podelementy X, Y, Z v libovolném pořadí (každý právě jednou) DTD – musíme vypsat všechny permutace
• BI-TWA
XML Schema – máme k dispozici kontajner all, který povoluje, aby podelementy byly v lib. pořadí. Úvod do XML
20
XML Schema je XML dokument s jazykem <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:element name=“bib”> <xsd:complexType> <xsd:element name=“paper” minOccurs=“0” maxOccurs=“unbounded”> <xsd:complexType> <xsd:attribute name=“id” type=“ID” use=“required”/> <xsd:sequence> <xsd:element name=“author” type=“authorType” maxOccurs=“unbounded”/> <xsd:element name=“year” type="xsd:string"/> <xsd:element name=“publisher” type="xsd:string" minOccurs=“0”/> ...]> BI-TWA
Úvod do XML
21
Motivováno P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
XML Schema prvky, atributy, typy, … <xsd:element name=“bib”/> <xsd:element name=“paper” minOccurs=“0” maxOccurs=“unbounded”/> <xsd:element name=“publisher” type="xsd:string" minOccurs=“0”/> nenese sémantiku
<xsd:attribute name=“id” type=“ID” use=“required”/> <xsd:attribute name=“age” type="xsd:string" use=“optional”/> <xsd:attribute name=“language” type="xsd:string" use=“default” value=“de”/> atomární: xsd:year, “xsd:positiveInteger, xsd:unsignedShort
jednoduché: <xsd:simpleType name=“humanAge“ base=“xsd:unsignedShort“> <xsd:maxInclusive value=“200“/> <xsd:attribute name=“age“ type=“humanAge“/> nese sémantiku v angličtině komplexní: vytvořené pomocí konstrukcí <xsd:sequence> … pevné pořadí <xsd:all> … volné pořadí <xsd:choice> … jedno z … BI-TWA
Úvod do XML
22
Motivováno P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
XML – jmenné prostory • Jména elementů a atributů by měla platit obecně •
XML aplikace je musí jednoznačně interpretovat
• XML dokument může obsahovat integrovaná data z různých slovníků • •
Každý má vlastní schéma Názvy elementů můžou kolidovat
• Jmenné prostory zamezí konfliktům Prefix:JménoZnačky (elementu, atributu, …) Prefix definuje jmenný prostor BI-TWA
Úvod do XML
23
XML – jmenné prostory - příklad <Buch xmlns =''http://www.semanticweb-grundlagen.de/'' xmlns:aifb =''http://www.aifb.Uni-karlsruhe.de/''> <Titel>Semantic Web Grundlagen Pascal Hitzler Dr. York Sure Dr. BI-TWA
Úvod do XML
24
Příklad z P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
XML – jmenné prostory - příklad Semantic Web Grundlagen Pascal Hitzler Dr. York Sure Dr. BI-TWA
Úvod do XML
25
Příklad z P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
XML Schema rozšíření typů, …omezení… XML Schema pro XML Schema … Hierarchie typů Rozšíření, restrikce (databázové pokušení) Jakou nesou sémantiku, jakou lidi rozumí … Jmenné prostory mohou pomoci Hlavní omezení – stromová struktura Jak kódovat „Informační zdroj IZ1 si myslí že přednáška P1 odzněla na AWIC09 a přednesl ji L1“ a „IZ2 si myslí že na DATAKON08 odzněla přednáška jejíž název obsahuje „sémantizace“… “… BI-TWA
Úvod do XML
26
XML Schema, …omezení… RDF Springer-Verlag Semantic Web - Grundlagen P. Hitzler a kol.
Jaká je sémantika
P. Hitzler … BI-TWA
Úvod do XML
27
Motivováno P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure. Semantic Web Grundlagen
Pokračování – od stromů ke grafům XML v podstatě stromy (i když reference - rekurze)
RDF model je orientovaný graf, … později Další info J. Pokorný a kol. XML technologie Principy a aplikace v praxi, Grada 2009 W3C , Foundations of Semantic Web Technologies, Chapman & Hall, P. Hitzler, M. Krötzsch, S. Rudolph XML and Semantic Web Technologies, Lars Schmidt-Thieme, přednášky na webu , BI-TWA
Úvod do XML
28
Více … Více detailů, XML and Semantic Web Technologies, Lars Schmidt-Thieme, přednášky na webu , XML pro programátory XML databáze XML dotazovací jazyky
BI-TWA
Úvod do XML
29
Příklad z W3C materiálu Resource Description Framework (RDF) Primer http://www.w3.org/TR/rdf-primer/
Více … XML pro programátory XML databáze XML dotazovací jazyky
BI-TWA
Úvod do XML
30 Google images „Hype curve“ a Gartner Hype Curve
Více …
BI-TWA
Úvod do XML
31 Google images „Hype curve“ a Gartner Hype Curve 2009
Více …
BI-TWA
Úvod do XML
32
Google images „Hype curve“ a Gartner Social Hype Curve
Více …
BI-TWA
Úvod do XML
33 Google images „Hype curve“ a Gartner 2006
Závěr, příklady, materiály, … Dotazy?
BI-TWA
Úvod do XML
34