Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Tomáš Kliegr, David Chudán upravil D. Pejčoch.  Procvičování regulárních výrazů  XML, XML schéma, XSLT  Práce v SW Kernow (open source)  Práce v SW.

Podobné prezentace


Prezentace na téma: "Tomáš Kliegr, David Chudán upravil D. Pejčoch.  Procvičování regulárních výrazů  XML, XML schéma, XSLT  Práce v SW Kernow (open source)  Práce v SW."— Transkript prezentace:

1 Tomáš Kliegr, David Chudán upravil D. Pejčoch

2  Procvičování regulárních výrazů  XML, XML schéma, XSLT  Práce v SW Kernow (open source)  Práce v SW Oxygen (komerční)  Jak na úkol č. 2

3  Formát pro výměnu dat  Odděluje data od způsobu jejich prezentace  Snadno čitelný a editovatelný  Standardizován W3C, odvozen od SGML  Zaměřeno na obsah  Stromová struktura Hello world!

4  Služba, s jejíž pomocí je možné vyhledávat informace o nabízeném zboží a jeho cenách mezi internetovými obchody registrovanými na  Jedná se o zprostředkování prodeje  Nápověda pro službu k dispozici na da-pro-internetove-obchody/ da-pro-internetove-obchody/

5  - kořenový tag pro celý obchod  - tag pro jednu nabízenou položku  - popis výrobku  - odkaz na stránku s nabídkou výrobku  - součet ceny všech poplatků, které je nutné zaplatit při zakoupení výrobku  Celý přehled tagů: xml.html

6  XML Schema umožňuje vytvořit vlastní„datový formát“  Definujeme ◦ povolené elementy, ◦ atributy, ◦ přípustné kombinace elementů a atributů, ◦ vlastní datové typy odvozené od existujících typů  Syntaxe je založena XML, soubor má příponu.xsd  Validace: Proces kontroly, zda XML dokument odpovídá schématu Feed.xsd

7  Detailní pokrytí XML Schématu je předmětem kurzu 4iz238  Tento kurz pokrývá pouze základní úpravy XML schémat bez jmenných prostorů  Komentář k souboru zbozi_feed.xsd Dokument musí obsahovat element "SHOP", struktura tohoto elementu je dána typem SHOP_TYPE Typy XML Schématu jsou komplexní a jednoduché.

8 Komplexní typy se mohou skládat z elementů a atributů. Například SHOP_TYPE je komplexní typ: Elementy typu SHOP_TYPE musí obsahovat alespoň jeden element SHOPITEM, který je typu SHOPITEM_TYPE

9 SHOPITEM_TYPE je opět komplexní typ. Skládá se z elementů DESCRIPTION, DUES,… FIRMY_CZ. Atribut minOccurs a maxOccurs udává, kolikrát se může element vyskytovat, výchozí hodnota atributu je 1. Pokud nejsou atributy uvedeny, musí se element vyskytovat právě jednou. Instrukce udává, že elementy mohou být v XML dokumentu uvedeny v libovolném pořadí

10  XML Schéma obsahuje základní / primitivní datové typy jako xs:string, xs:boolean, xs:decimal, xs:dateTime, xs:anyURI..  Můžeme definovat vlastní datové typy restrikcí nebo odvozením existujících datových typů … Se odvolává na uživatelsky definovaný datový typ: Tento uživatelsky definovaný datový typ vzniknul odvozením restrikcí od předdefinovaného datového typu xs:string. Restrikce spočívá v tom, že přípustný popis produktu musí mít alespoň jeden znak a nejvíce 512 znaků.

11  Rozšíření o výrobce produktu … Na libovolné místo v definici komplexního typu vložíme nový řádek, který zavádí nový nepovinný element MANUFACTURER

12  Rozšíření o EAN Kód … EAN bychom mohli definovat jednoduše přímo jako xs:integer, ale můžeme využít uživatelského typu ke kontrole počtu číslic. Pokud může XML obsahovat EAN13 nebo EAN8 kód, můžeme využít regulárního výrazu

13  Stylový jazyk  Oddělení obsahu dokumentu od jeho vzhledu  Plní dvě funkce: ◦ Transformace XML dokumentů (XSLT) ◦ Definice vzhledu formátování (XSL)

14

15 ...

16  Jsou základem každého stylu, základní tvar je: tělo šablony  Tělo šablony definuje, jak se budou části šablony, vyhovující konkrétnímu výrazu, zpracovávat.

17  Vybere obsah textových uzlů, které jsou potomky elementu určeného pomocí výrazu. Tento výraz použijeme, pokud nechceme aplikovat na další šablony.  Daná větev stromu se má zpracovávat dále (další potomci uzlu, pro který je vybrána šablona, se nezpracovávají automaticky) a mají se pro její uzly hledat odpovídající šablony.

18  Podmíněný příkaz  příkazy  Pokud je výraz pravdivý, provedou se příkazy v této podmínce.  Není zde k dispozici část else, místo toho se využívá

19 XSLT transformace se skládá ze šablon (template) Atribut match obsahuje XPath výraz určující uzly na které se má šablona uplatnit. Tato šablona se má uplatnit na kořenový uzel – element SHOP Výklad jazyka XPath přesahuje rámec kurzu 4iz210. Pro účely seminární práce není třeba nové šablony přidávat nebo měnit množinu uzlů, na které se šablony aplikují. Pokud se šablona uplatní, vypíše se její obsah na výstup. V tomto případě se jedná o značky jazyka HTML. Nabídka produktů našeho eshopu Výpis produktů: …

20  Ukázkový XML Feed obsahuje dvě šablony, První šablona zpracuje kořenový element XML dokumentu a vypíše základní strukturu výstupního HTML souboru Nabídka produktů našeho eshopu Instrukce Zavolá šablonu pro výpis konkrétních produktů.

21  V šabloně upravte HTML kód Seznam služeb nabízený firmou XYZ Stručná charakteristika portfolia firmy … Seznam služeb Nebudete-li s našimi službami spokojeni, vrátíme vám peníze! Tučně jsou označeny provedené úpravy.

22 Popis Cena v Kč bez DPH Cena v Kč s DPH Sazba DPH Podmíněný výpis obsahu elementu Instrukce xsl:if zajistí, že její obsah se vypíše, pouze pokud je XPath výraz v atributu test splněn. Cena v Kč bez DPH Řádek s cenou bez DPH je vypsán, obsahuje-li právě zpracovávaná položka element cena Hodnotu z XML souboru vypíšeme pomocí instrukce xsl:value-of select= "XPath výraz" Cena aktuálně zpracovávané položky je uložena v jejím dětském elementu PRICE, XPath výraz je v tomto případě jednoduchý – na dítě aktuálního elementu odkážeme pouhým uvedením jeho názvu.

23 0"> Pozor, tento produkt je k dodání až za dní! Popis Cena v Kč bez DPH Cena v Kč s DPH Sazba DPH EAN kód

24   Program není nutné instalovat, stačí rozbalit a spustit

25 XML soubor XSD soubor (schéma) Výsledek validace

26  Upravené schéma a XML Soubor si nezapomeňte uložit zkopírováním přes schránku do souboru.

27 XSLT transformace XML Soubor Hlášení, pokud je chyba v transformaci Výstup transformace

28  Upravenou XSLT transformaci si nezapomeňte uložit zkopírováním přes schránku do souboru.

29 XML Schéma Validovaný XML dokument Výsledek validace

30  Pokud XML schéma a XSLT transformaci upravené v Schema Sandbox a XSLT Sandbox uložíte do souboru

31  Alternativou k open source programu Kernow je program Oxygen, který nabízí mnohem větší komfort při tvorbě XML dokumentů, XSL transformacích a validaci.  Oxygen nabízí mj. code completion a XSLT debugger.  Na učebnách ho najdete v Application Exploreru  Pro účely seminární práce si ho můžete nainstalovat i na domácí počítač či notebook - licenci získáte (oproti vašemu xname a heslu do školní sítě) na https://badame.vse.cz/oxygen/index.php https://badame.vse.cz/oxygen/index.php

32 Pás s otevřenými soubory Hlavní okno Vedlejší okno, kde je možné označovat jednotlivé položky (všimněte si, že v hlavních okně je související položka SHOPITEM označená)

33  Validaci je možno uskutečnit dvojím způsobem: ◦ Pomocí schématu jakožto externího souboru. ◦ Přiřazením schématu přímo do XML souboru.

34  Pro validaci externím souborem zvolíme ikonu Validate  Zde vybereme External validation  Následně soubor najdeme a potvrdíme, čímž se validace provede.

35  Pro přiřazení schématu do XML souboru zvolíme ikonu Associate schema  V následujícím menu vybereme schéma a potvrdíme

36  Přiřazení schématu do XML souboru si můžeme ověřit tím, že přibylo přiřazení schématu (viz. obrázek) Nyní můžeme zvalidovat pomocí ikony Validate

37  Validace může buď proběhnout bez chyb (dokument je zvalidován a je v souladu se schématem) nebo může nějaké chyby obsahovat. Validace proběhla bez chyb Validace neproběhla bez chyb Seznam chyb najdeme v okně umístěném ve spodní části obrazovky

38  XSLT styl přiřadíme pomocí následující ikony (která se nachází vedle přiřazení schématu)  V následujícím okně opět vybereme příslušný soubor a potvrdíme.  Nyní si opět můžeme všimnout toho, že v XML souboru máme přiřazenou šablonu se stylem.

39

40  Nyní klikneme na ikonu Apply transformation scenario,potvrdíme a dojde k vygenerování HTML stránky a jejímu spuštění ve výchozím prohlížeči.

41

42  Do ukázkových souborů přidejte alespoň dva nové elementy (vyplňte u 5 produktů ze stránky )  Změňte styl tak, aby byl ve výstupu nadpis každého produktu červeně a podtržený, text více odsaďte od obrázku a v tabulce budou u vámi vybraných (naeditovaných) produktů zobrazeny příslušné informace.  Aktivujte jednoduché okraje jednotlivých buněk tabulky.  Po provedených úpravách vygenerujte HTML stránku, která musí všechny výše uvedené změny zohlednit.

43   xsl.html xsl.html  xml.html xml.html  Přednáška XML od Tomáše Kliegra


Stáhnout ppt "Tomáš Kliegr, David Chudán upravil D. Pejčoch.  Procvičování regulárních výrazů  XML, XML schéma, XSLT  Práce v SW Kernow (open source)  Práce v SW."

Podobné prezentace


Reklamy Google