270 likes | 466 Views
Les 4 : XSLT stylesheets. Wat is XML: een bouwwerk van standaarden. Betekenis: Structuur: Tekst: Digitaal:. HTML. RSS. VUML. QTI. XML. Unicode. Bits & Bytes. Wellformed en Valide XML. Specifieke taal die uitgedrukt word in wellformed XML Een document is wellformed als
E N D
Les 4 : XSLT stylesheets Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Wat is XML: een bouwwerk van standaarden Betekenis: Structuur: Tekst: Digitaal: HTML RSS VUML QTI XML Unicode Bits & Bytes Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Wellformed en Valide XML Specifieke taal die uitgedrukt word in wellformed XML • Een document is wellformed als • Het voldoet aan alle algemene XML regels waardoor het parseerbaar ( ontrafelbaar) is met een generieke XML parser • Een document is valide als: • Het is wellformed • Het voldoet aan de specifieke regels van een “XML schema” Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Scheiding van inhoud/structuur en presentatie/vorm Enkele praktijk voorbeelden Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Albert Hein • Producten en boodschappenlijstjes Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
ThiemeMeulenhoff • Educatieve uitgeverij van • O.a. oefeningen/multiple choice vragebn Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
HVA intranet Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
IAM digitaal studiedossier • Eind opdracht van dit blok ‘internet standaarden’ Inhoud in XML formaat + XSLT templates / CSS = (X)HTML / CSS Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
XML gerelateerde technieken / A4X Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
XML programming models Verschillende manieren om XML te verwerken in een applicatie. • Text-based processing bijv: regular expressies • Push-based processing bijv: SAX • Pull-based processing bijv: XMLReader • Tree-based processing bijv: DOM, E3X • Transformaties bijv: XSLT • Specifieke methode voor specifieke toepassingen bijv SOAP toolkits Niet gebruikenals het niet anders kan standaard methodes Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
XML transformaties met XSLT • Het presenteren van XML data in een XHTML pagina Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
XSLT voorbeelden • VUML • SD:persoongegevens Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Basic XSLT <xsl:template match=“/” > het hoofdtemplate <xsl:value-of select=“een_xpath_expressie”/> het selecteren van een waarde uit de xml-bron <xsl:for-each select=“een_xpath_expressie”/> het loopen door een lijst uit de xml-bron <xsl:apply-templates select=“een_xpath_expressie”/> het selecteren van een waarde uit de xml-bron en daar vervolgens templates bij zoeken en toepassen Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Basic XPath Het selecteren van een element: /uitslagen/uitslag/thuisteam /uitslagen/uitslag/uitteam Attributen selecteren met @ : /uitslagen/@datum /uitslagen/@competetie Relatieve paden: ten opzichte van /uitslagen/uitslag thuisteam uitteam verslag/p Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Wat is XPath? Meer voorbeelden Voorbeeldbestand: les2: artikel.xml de titel van het artikel artikel/titel het bron-attribuut van het artikel artikel/@bron alle elementen in de tekst van het artikel artikel/tekst/* alle plaatjes in het document //plaatje de eerste alinea van de tekst van het artikel artikel/tekst/alinea[position()=1] de alinea’s waarin jochem wordt geciteerd /artikel/tekst/alinea[//citaat/@geciteerde="jochem"] Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
XPath • SQL voor relationele database = • XPath voor XML Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Oefening XSLT • Maak een XSLT stylesheet voor - curriculum vitae- kookrecept Maak gebruik van tutorial • W3schools.com Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
XSLT • Het XSLT proces kan • zowel clientside ( processing-instruction meegeven ) • als serverside ( serverside-script uitvoeren, bijv PHP ) uitgevoerd worden Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl