vlastnosti, syntaxe, typy uzlů, struktura @ DTD x XSD, transformace, XPath
extensible markup language
je to obecný značkovací jazyk
pro výměnu dat mezi dokumenty a pro pulikování dokumentů
nezabývá se sám o sobě vzhledem dokumentu nebo jeho částí
snadná transformace do jiného typu (formátu) dokumentu či do jiné struktury XML
nemá žádné předdefinované značky (tagy, jednotlivé elementy)
10x o XHTML
slouží ke strukturalizaci dat
pozor, není to programovací jazyk
soubor pravidel, která mi uspořádají data ve strukturách
nezávislé na platformě
má vysoký informační obsah
tagy vyznačují význam jednotlivých částí textu
jenom data ohraničuje (těmi tagy), ale nečte je → o to se stará až aplikace, která ta data čte
je text, co není určen ke čtení
ale pokud ho číst chci, tak můžu!
když zapomenu ukončit tag, tak si to ta aplikace nemůže domyslet, ale musí okamžitě nahlásit chybu
nešetří místem
XML je textový formát
je vždy větší, než ta samá data v binárním formátu
je to celá skupina technologií
XML 1.0 je specifikace, která říká, co jsou tagy a atributy – na jejím základě “XML rodina” - vytváří několik modulů, které nabízejí různé služby, které plní časté a důležité potřeby
Xlink popisuje standardní cestu, jak přidat do XML souboru hypertextové odkazy
XPointer je něco jako URL, akorát místo odkazů na dokumenty na webu odkazuje dovnitř XML dokumentů
XPath umožňuje adresovat jednotlivé části dokumentu
XSL je vylepšený jazyk pro zapisování stylů - založen na XSLT, transformačním jazyce používaném pro přidávání, odebírání i úpravu tagů a atributů
DOM je standardizace funkcí pro manipulaci s XML soubory v programovacích jazycích
je staronové
podobá se HTML
používá taky tagy a atributy
je modulární
dovoluje definovat nový formát kombinací jiných formátů
obsahuje mechanismus jmenných prostorů (namespaces) - např. XSL a RDF
je základem RDF a sémantického webu
systém popisu zdrojů od W3C (RDF) je XML formát podporující popis zdrojů a uplatnění metadat (hudební “playlisty”, file katalogy, knihovny)
RDF spojuje aplikace a agenty do jednoho sémantického webu
je nelicencované, platformě nezávislé a široce podporované
specifikace od W3C je přístupná totiž pro všechny
můžu fičet na čem chci (linux, winy,…)
typy uzlů
Uzel = to jsou ta vlastní data, uzavřena v metadatech
XML deklarace
<?xml version=“1.0” encoding=“UTF-8”?>
element, atribut, text
V terminologii XML se jednotlivým označeným částem dokumentu říká elementy. Elementy do sebe mohou být navzájem vnořené a tím dle potřeby zachycovat strukturu informací uložených v dokumentu
CDATA
Pokud potřebujeme do textu vložit větší kus textu, kde se hojně používají znaky se speciálním významem jako `<', `>' a `&', je nepohodlné je zapisovat pomocí znakových entit. Sekce CDATA oceníme zejména v případech, kdy je součástí XML dokumentu kód nějakého programu nebo HTML či XML kód
Každý XML dokument musí být celý obsažen v jednom elementu (musí být JEDEN kořenový element - takže to všechno prostě “obalím”)
ověřování dokumentu
tagy si definuju sama
a to pomocí DTD nebo XML schématu (XSD)
prostej text → well-formed → validní dokument
parser = syntaktický analyzátor = program, který vykonává syntaktickou analýzu
proces analýzy posloupnosti formálních prvků s cílem určit jejich gramatickou strukturu vůči předem dané (byť ne nutně explicitně vyjádřené) formální gramatice
transformace vstupního textu do datové struktury, většinou stromu
token = elementárních nositel významu v rámci daného formálního jazyka
styly
CSS
XLS
model XML dokumentu
parent-child-sibling (rodič, potomek, sourozenec)
ancestor → descendant (předchůdce, následovník)
uzly uspořádané ve stromové struktuře
to je DOM, druhá verze je Simple API for XML (SAX), která umožňuje proudové zpracování a oproti DOMu bývá několikrát rychlejší
definice struktury
DTD (document type definition)
neobsahuje možnost kontrolovat typy dat (čísla, měnové údaje, údaje o datu a čase)
jednoduchý, stručný, může být přímo součástí dokumentu XML
má nižší vyjadřovací schopnost a nepoužívá syntaxi XML
četnost: + je jednou a více, * je nula a více, ? je nula nebo 1
XSD (XML schema definitio)
W3C standard
včetně sady XSL stylů
složité a obsáhlé
super vyjadřovací schopnosti, zavádí datové typy, jmenné prostory apod.
datové typy: string, decimal, boolean, integer, date, time
komplexní dytové typy si deklaruju sama - můžou obsahovat další elementy nebo atributy
XSLT transformace
XML dokument + XSLT styl → XSLT procesor → XML, HTML, text,..
RSS - rodina XML formátů umožňující čít novinky webových stránek
SMIL (sznchroniyed multimedia integration language] / popis multimédií pomocí XML
MathML (mathematical markup language) - popis matematických vzorců apod. na webu
SVG (scalable vector graphic) - jazyk pro popis dvourozměrné vektorové grafiky
DocBook - sada definic dokumentů a stylů pro publikační činnosti
SOAP - protokol pro komunikaci mezi webovými službami
OpenDocument - souborový formát určený pro ukládání a výměnu dokumentů vytvořených kancelářskými aplikacemi
RSS a GeoRSS
RSS
metadatové formáty určené pro čtení novinek na webových stránkách a obecněji přebírání dat mezi weby = syndikace obsahu
technologie RSS umožňuje uživatelům přihlásit se k odběru novinek z webu, který nabízí RSS zdroj (RSS feed, = RSS kanál = RSS channel)
RSS formát poskytuje obsah celého článku, příp. jeho část, odkaz na původní článek a také jiná metadata
povinné elementy: <rss version=“1.0”> - kořenový element, <channel> - to je samotný kanál, který obsahuje vnořené elementy jako title, link, description a dále nepovinné jako language, pubDate, copyright, webMaster apod.
AtomSyndication: standard založený na XML, podporuje přenost textu a multimédií, protože byl potřeba jednotný formát pro informační kanály
Podcast: nešíří jenom text, ale i multimédia. pomocí tohoto kanálu si můžu do kompu stahovat mp3 písničky
GeoRSS
standard pro kódování geografické polohy websitu/zdroje v rámci webových kanálů
umožňuje doručování informací o změnách provedených v digitální mapě
spočívá v přidání prvku, který určuje přesnou polohu, do těla každé části RSS kanálu
pole where
geometrie prvků
bod
linie
polygon (4 páry souřadnic) - poslední pár totožný s prvním
box (čtverec - 2 páry souřadnic) - levý dolní a pravý horní roh
zápis geometrie:
Simple GeoRSS
podporuje jen WGS84
malá škála prvků
GeoRSS GML
point, lineString, envelope, polygon
souřadnicový referenční systém (SRS)
záladní je WGS84
vzájemné vztahy (relationship)
vztah obsahu webu ke konrétním prvkům na Zemi
nadmořská výška - jenom v SIMPLE GeoRSS!!
<elev> - výška od elipsoidu, <floor> počet pater budovy třeba
XPath (XML Path language)
umožňuje z XML dokumentu vybírat jednotlivé elementy a pracovat s jejich hodnotami a atributy
obsahuje knihovnu funkcí a slouží jako navigační nástroj
adresujé části XML dokumentů
základ: path expression - cesta k XML uzlu (Location Path)
jednotlivé kroky výrazu se spojí lomítkem, před atributem je @, vyhodnocení zleva doprava, povinný je pouze test uzlu
definováno celkem 13 os - např. child (dítě, implicitní), descendant (potomek), parent (rodič), ancestor (předek), attribute (atribut)
XML RPC (remote procedura call)
Cíl: umožnit aplikacím, bez ohledu na to jak rozdílné jednotlivé programy a jejich účely jsou, navzájem spolu standardizovaným způsobem komunikovat po síti
pracují jako požadavky protokolu HTTP realizované metodou POST
serializace - transformace dat do podoby přenositelné sítí
datové typy: pole, skalár, struktura
sémantický web
web, kde jsou informace strukturovány a uloženy podle standardizovaných pravidel, což usnadňuje jejich vyhledání a zpracování
uživatelé Internetu pracují s WWW jako s relační databází a dotazovat se na její obsah prostřednictvím jazyků podobných SQL
RDF (resource description framework)
obecný rámec pro popis, výměnu a znovupoužití metadat
formát RDF vyžaduje, aby byl pro každý element specifikován jmenný prostor
zajišťuje přístup ke klíčovým elementům RDF, tvořící strukturu dokumentu @ RDF
v kořenovém elementu, v Description, v atributu about
datový model RDF:
specifikace trojice: zdroj, vlastnost, hodnota vlastnosti
obloha má modrou barvu
klasifikační schémata
RDF/XML - je to pouze metajazyk pro popis dalších jazyků
== soubor vlastností s definovanou sémantikou a omezeními kladenými na možné hodnoty těchto vlastností
začlenění klasifikačních schémat do struktury RDF/XML = jmenné prostory XML
řízené slovníky
== tezaurus, terminologická ontologie
soubor předmětových hesel s definovanou strukturou nadřazených a podřazených termínů a určením synonym či jiných pojmových relací
pro určení hodnoty určité vlastnosti mohou klasifikační schémata vyžadovat použití hesla z konkrétního slovníku ⇔ přispívá k interoperabilitě metadat
využito v metainformačních systémech
GeoSPARQL
geografický dotazovací jazyk pro RDF data
geonames, data.gov, online mapové služby
OWL (ontology web language)
konceptualizace dat dostupných na Internetu, jejíž klíčovým nástrojem jsou formalizované reprezentace znalostí určené k jejich sdílení a znovupoužití (ontologie)
Permalink xml.txt · Last modified: 2017/09/21 16:48 by efox