De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -

Verwante presentaties


Presentatie over: "Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -"— Transcript van de presentatie:

1 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Les 3 : documentontwerp ( i.p.v. geplande gastpresentatie QTI ) Maar ook: Enkele voorbeelden uit de praktijk

2 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Wat is XML?  een standaard manier om markup-talen te definieren. OPEN STANDAARDEN  Enkele voorbeelden van open standaarden die gebaseerd zijn op XML  (X)HTML  MathML  SOAP  IMS QTI  OpenDocument

3 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Waarvoor dient XML? Toepassingen:  Scheiding van structuur en vorm  Bijv artikel, recensie, recept, documentatie  Uitwisselen van informatie tussen systemen  Bijv nieuws, bestellingen Meer abstract:  XML maakt het relatief eenvoudig om een nieuwe talen/formaten te definieren !  XML maakt het relatief eenvoudig om verschillende talen/formaten te combineren !

4 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Wat is XML  (internationale) afspraken op afspraken. TEXT : unicode XML HTMLRSSMathML QTI

5 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Oplossing met XML eXtensible Markup Language Voor het ontrafelen van de tekst is standaard programmatuur beschikbaar in iedere ontwikkelomgeving! De XML-PARSER!

6 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Hoe werkt XML? De XML familie  Verschillende technieken voor verschillende doeleinden

7 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese voorbeeld  DOM en XPath in PHP.  voorbeeldcode

8 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese XPath  SQL voor database  XPath voor XML  Een manier om data uit een XML bestand te seleceteren.  Eigenlijk: met XPath beschrijf je een pad door een XML bestand naar de gewenstte data.

9 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Wat is XPath? voorbeelden artikel/titel ( de titel van een artikel ) ( het bron-attribuut van een artikel ) artikel/tekst/* ( alle elementen in de tekst van een artikel ) //plaatje ( alle plaatjes in het document ) artikel/tekst/alinea[1] ( de eerste alinea van de tekst van een artikel ) /artikel/tekst/alinea[ ( de alinea’s aarin jochem wordt geciteerd ) w3schools.org

10 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese DOM + XPath  extendedDOM is een uitbreiding van de standaard PHP DOM met Xpath functionaliteit ( php 5.2 of hoger )  $domnode->selectSingleNode( $xpath ) $domnode->selectNodes( $xpath )  Lijkt op de DOM zoals microsoft die aanbiedt  Niet echt anders dan de standaard PHP DOM, wel een klein beetje gemakkelijker.

11 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Voordelen van XML boven andere bestandsformaten  Leesbaar voor mens en machiene  Uitbreidbaar tbv van vele toepassingen  Transporteerbaar als text bestand over HTTP  Rijke structuur, hierarchie, attributen  Standaard !  Dus ondersteuning met diverse gereedschappen op vele platforms

12 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Praktijk voorbeelden Oorspronkelijke presentatie Matthe Stet

13 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese XML document ontwerp Gewoon doen en ervaren. Tegen vragen/problemen aanlopen.

14 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Well formed XML Correct gevormde xml

15 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

16 XML Bouwblokken Over elementen, attributen en tekst

17 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese XML bouwblokken Belangrijkste bouwblokken  Elementen  Attributen  Tekst

18 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese element Element  Naam  Attributen  Kinderen:  Elementen  Tekst Opentag, sluittag met naam In de opentag staan attributen Tussen de open- en sluittage staat de inhoud

19 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Inhoud van een xml-element Een element kan bevatten:  Leeg  Tekst  Elementen  Combinatie tekst en elementen

20 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese attribuut Attribuut  Naam  Waarde: tekst In de opentag Volgorde is niet van belang

21 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese tekst Tekst  Karakterset ( unicode )  Witruimte  Entiteiten : Speciale xml-karakters ( ) < & ' " >

22 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese XML bouwblokken  Element  Naam  Attributen  Kinderen  Elementen  Tekst  Attribuut  Naam  Waarde: tekst  Tekst  Karakters ( unicode )  Witruimte  Speciale karakters: < & ' " >

23 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese XML bouwblokken  Elementen  Attributen  Tekst  Is dit nieuw? Dit wist je het eigenlijk al van HTML?

24 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Geschiedenis: XML opvolger van SGML  1986: SGML Standard Generalized Markup Language  1998: XML eXtensible Markup Language XML is een vereenvoudiging van SGML

25 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese SGML vs XML = HTML vs XHTML  1986: SGML Standard Generalized Markup Language  1998: XML eXtensible Markup Language SGML --> HTML XML --> XHTML  Er zijn kleine doch belangrijke verschillen tussen SGML en XML !  XML is een vereenvoudiging van SGML

26 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese XML = streng XML die voldoet aan alle strengere XML normen  Case sensitive  Aanhalingstekens om  Tags afsluiten  Stricte hierarchie “ wellformed XML ”

27 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

28 Tot zover de basics van “wellformed XML”  Bouwstenen:  Element  Attribuut  Tekst ( karakters, witruimte, entiteiten )  XMLdata vormt een boomstructuur  Parser analyseert de tekst volgens de XML grammatica  Well-formed XML voldoet aan strenge regels van W3C

29 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese documentontwerp  Scheiding van inhoud en presentatie  XML document bevat gestructureerde inhoud zonder presentatie  Vgl: semantische (X)HMTL XML gaat nog een stap verder:  i.p.v. html-elementen een class-attribuut te geven, bedenken we element-namen met meer betekenis  XML kan worden gepresenteerd met een stylesheet ( CSS of XSLT )

30 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese oefeningen  Oefening 1:  Maak het voorbeeld xml document ‘well-formed’  Oefening 2:  Ontwerp zelf een XML schema voor de boek recensies van het parool.   Oefening 3:  Ontwerp een XML schema voor een kookrecept.  Titel, aantal personen, bereidingstijd, Ingrediënten, benodigdheden, bereiding, …

31 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Een goede xml-editor  NotePad++ ( met XML-tools plugin )  XML SPY ( niet gratis )  Dreamweaver Eigenschappen goede editor:  Kleurcodering  Tags sluiten  Check well-formedness  Automatisch inspringen  Validatie

32 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese ‘Goede’ XML wat is ‘goed’ XML documentontwerp.  Formeel: Well-formed XML  Inhoudelijk: bevat het alle relevante informatie  Stijl : ‘fouten’ en ‘keuzen’

33 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Goede XML bevat en markeert alle benodigde informatie  Is sterk afhankelijk van het doel waarvoor je de documenten wilt gebruiken:  Moet het leesbaar zijn voor mensen  Moet het in een geautomatiseerd proces  Inhoeverre moeten alle informatieblokjes expliciet gemarkeerd worden? 3 kilo aardappelen

34 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Goede XML, stijl ‘fouten’ Wel wellformed XML, maar je mist het punt:  Non-xml Structuur in tekstelementen  Nummers in elementnamen  Variabiliteit in element- of attribuutnaam  Tekst én elementen in datageorienteerde XML  Niet groeperen van elementen Bestudeer document ‘goed en foute ontwerppatronen’

35 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Goede XML stijl  Er zijn vele gelijkwaardige mogelijkheden om dezelfde informatie in een XML bestand te zetten.  Attributen of elementen  Hoe elementen te groeperen  Abstractie niveau’s  Belangrijk is:  Consistentie  Volledigheid  Eenvoud  ‘Goede’ namen

36 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Goede XML: stijl ‘keuze’ Attributen of elementen Groeperen Abstractieniveau Stijlkeuze afhankelijk van het soort XML  Data Format ( automatische verwerking )  Document Format (door mensen te lezen )

37 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese DATA-Format vs DOCUMENT-Format DataFormat  Door machine te verwerken  Uitwisselen van data tussen applicaties ( interoperabiliteit )  Datatabellen  Bijv.: bankafschrift, adressenbestand DocumentFormat  Door mensen te lezen  Scheiding van vorm en inhoud  Teksten  Bijv.: filmrecensie, webpagina Mengvormen  Bijv.: kookrecept

38 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Goede XML: stijl ‘keuze’ Document Format  Elementen  Groeperen van elementen  Elementen:  Tekst die de lezer moet lezen om het document te begrijpen.  Attributen:  Alles wat niet ‘noodzakelijk’ is om het document te begrijpen  Opmaakattributen ( align, color, … )  Stuurattributen ( href, onClick, … )  Metadata ( auteur, datum, … )  Id/idref ( id, idref, … )

39 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Goede XML: stijl ‘keuze’ DATA Format  Elementen:  Groeperen van elementen  Element of Attribuut Wees consequent: Altijd elementen of altijd attributen  Voordelen van attributen:  Weinig ruimte, makkelijk typen  Voordelen van elementen:  Gemakkelijke uitbreidbaar  Voorkeur van Fons  Elementen  Attributen voor ID en IDREF

40 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese XML documentontwerp-stijl Vervelend nadeel van XML:  Er zijn vele verschillende manieren om hetzelfde te doen.  Het is niet eenvoudig om de ‘juiste’ manier te vinden.

41 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese XML schema  Eenmaal een goede structuur voor je document gevonden, kan je die vastleggen in een XML schema.  Verschillende mogelijkheden: DTD, XSD, e.a.  Waarom je dat zou doen?  Input validatie: XMLparsers kunnen automatisch controleren of een bepaald document goed is gesctructureerd.  Editorbesturing: de editor krijgt alleen toegestane optie te zien.  Documentatie: zodat iedereen kan zien wat de bedoeling is.  Valide XML: xml document dat voldoet aan een bepaald schema.

42 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese ‘well-formed’ versus ‘valide’ Twee belangrijke begrippen die je moet kennen.  Well-formed XML: voldoet aan de algemene regels van XML  Valide XML: voldoet aan specifieke regels voor een bepaalde documenttype, die zijn vastgelegd in een xml schema

43 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese Literatuur: Introducing XML 1.Introducing XML 2.XML Fundamentals 3.Schema Uses and Development 4.XML as Document Format 5.XML as Data Format


Download ppt "Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -"

Verwante presentaties


Ads door Google