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 - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl Les 3 : documentontwerp een XML schema voor specifieke toepassingen Bankafschrift_ML Kookrecept_ML Recensie_ML

2 Maar eerst nog even dit…  Andere verwerkingsmethode dan DOM+Xpath  Iets meer over een paar extra dingetjes in XML  SGML de voorloper van XML  Wat is Unicode ( UTF-8) en waarom. Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

3 Vorige week DOM+Xpath Er zijn naast DOM en Xpath vele andere verwerkings modellen. O.a.:  Objectstructuren (vergelijkbaar met DOM)  E4X ( actionscript 3 )  simpleXML ( php )  XSLT  Declaratieve programmeertaal speciaal voor XML  Text based processing  Zoals je ‘normaal’ PHP en XHTML gebruikt  (Eigenlijk heel primitief) Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

4 SGML/XML geschiedenis  1986 : SGML  1989 : HTML 1.0,….  1998 : XML ( strengere versie van SGML )  1999: XHTML 1.0 ( strengere versie van HTML)  2008: XHTML 2 loopt op de klippen  201? : HTML5  HTML ( op sgml gebaseerd) is niet uit te roeien. Ondanks pogingen van W3C daartoe. helaas Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

5 Een paar extra dingetjes in XML We hadden de bouwblokken (Nodes )  ElementNodes  AttributeNodes  TextNodes Daar komen de volgende dingetjes bij Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

6 dingetjes in XML Noodzakelijke kwaden en/of handige dingetjes  xml declaratie  commentaar  documenttype declaratie  namespace declaratie  processing-instruction  entiteit  CDATA Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

7 UNICODE Wat is text? Dwz.txt  Een serie karakters achter elkaar  Niet opmaak, niet lettertype, niet kleur Hoe staat dat in het bestand?  Als een serie getallen  Ieder getal staat voor een karakter  32 = a  33 = b  78 = ?  78 = ! etc Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

8 UNICODE karakterset Er bestaan verschillende karakterssets  ASCII  128 karakters  Geschikt voor engels, geen arabische, geen chinees  Geen é, ü,  Uitbreidingen van ASCII  256 karakters  Ascii + westeuropees, asci + scandinavisch  Andere karaktersset  256 karakters  Grieks, arabisch, thais, etc Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

9 Unicode standaard  Unicode: alle karakters in de hele wereld een vast getal: de universele karakterset  Miljoenen karakters  Alle talen  Verschillende manier om de getallen te coderen  UTF-8  8 bits, meer als getal groter dan 128  Meeste westeuropese karakters < 128  UTF-16  16 bits, meer als nog groter  Karakters in niet westerse talen altijd > 128 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

10 Alles moet in unicode  Er bestaan nog veel niet unicode bestanden in de wereld  Maak geen nieuwe: zet alles defaults op UTF-8, waar mogelijk. Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

11 Document ontwerp  En dan nu waar het deze les om gaat:  documentontwerp Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

12 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

13 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: Unicode XML HTMLRSSVUMLQTI Bits & Bytes

14 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl Valide XML  Een XML bestand dat voldoet aan een specifiek ‘xml schema’  XML schema: definieert een specifieke taal die gebruik maakt van XML formaat  XHTML  RSS  VUML  OOXML/ODF

15 Document ontwerp  Bankafschrift  Filmrecensie  Kookrecept  ??? Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl

16 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 )

17 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl oefeningen  Oefening 1:  Ontwerp een XML schema voor bankafschrift  Rekeninginformatie, mutaties  Oefening 2:  Ontwerp zelf een XML schema voor de boekrecensies van het parool.  www.parool.nl/????  Oefening 3:  Ontwerp een XML schema voor een kookrecept.  Titel, aantal personen, bereidingstijd, Ingrediënten, benodigdheden, bereiding, …

18 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl Schema ontwerp  Analyseer de hierachische structuur  Geef namen aan element/attributen  Maak een voorbeeld met inhoud  Check je ontwerp  (goede_en_foute_ontwerppatronen.pdf)

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

20 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl Goede XML, algemene stijl ‘fouten’ Wel wellformed XML, maar toch niet effectief:  niet-xml markering in tekstelementen  Nummers in elementnamen  Te veel ‘inhoud’ in element- of attribuutnaam  Niet groeperen van elementen Bestudeer document ‘goed en foute ontwerppatronen’

21 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl 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

22 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl Goede XML bevat en markeert alle benodigde informatie Tot welk detailsniveau moeten alle informatieblokjes expliciet gemarkeerd worden? 3 kilo aardappelen aardappel kilo 3 drie kilo aardappelen

23 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl 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

24 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl 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  Alles in elementen  Behalve attributen voor ID en IDREF

25 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl 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 voor de lezer niet ‘noodzakelijk’ is om het document te begrijpen  Opmaakattributen ( align, color, … )  Stuurattributen ( href, onClick, … )  Metadata ( auteur, datum, … )  Id/idref ( id, idref, … )

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

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

28 Schema technieken Meerder technieken voorhanden om een schema te definieren:  DTD document type definitie  XSD XML Schema Definition  RelaxNG  Schematron

29 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl 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

30 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl ‘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

31 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl Literatuur: Goed bestuderen:  Schema Uses and Development Lezen:  XML as Document Format  XML as Data Format


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

Verwante presentaties


Ads door Google