User Tools

Site Tools

xml

This is an old revision of the document!


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,..

aplikace XML

  • XHTML - nástupce po HTML… no…
  • RDF (resource description framework) - specifikace umožňující popsat metadata (anotace html třebas)
  • 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

Permalink xml.1483804039.txt.gz · Last modified: by efox

oeffentlich