Markeringsspråk og XML



Like dokumenter
Markeringsspråk og XML

Læringsmål XML. Markering av tekst. SGML-familien. Forstå prinsippene bak XML og XHTML. Forstå hva XML kan brukes til og hvordan.

Markeringsspråk og XML Nettsider og XHTML

INF1040 Oppgavesett 5: XML

XML og XHTML. Hva er nå egentlig denne teksten? Et litt mer avansert XML-eksempel. Et meget enkelt XML-eksempel. For å få fortalt hva teksten er

Markeringsspråk og XML

Markeringsspråk og XML

1. Lage og vise et enkelt XML-dokument

Håkon Tolsby Håkon Tolsby

1. Mer om oppbyning av XML-dokument

1. XHTML. Innhold Innledning

XML. Figur Et eksempel på et XML-dokument

HØGSKOLEN I SØR-TRØNDELAG

Nettsider og XHTML. SGML-familien. Hvordan lage et nettsted

Intro til WWW, HTML5 og CSS

HVA ER XML? extensible Markup Language En standardisert måte å strukturere ulike typer data Åpent format Enkelt:

Oppsummering 2008 del 1

Oppsummering 2008 del 1

INF1040 Digital representasjon Oppsummering

HUMIT1731. Tekstkoding. Koding/merking av tekst Uke 35. Tekster som teknologiske produkter. Koding/merking på flere nivå. Utvikling av notesystemet

INF1040 Oppgavesett 4: CSS

Semistrukturerte data og XML

1. XML Grunnlag

Web fundamentals. Web design. Frontend vs. Backend Webdesign 17. januar Monica Strand

NCE TOURISM FJORD NORWAY. FJORDNETT INTERNETTFORUM 2012 Bergen, 12./13. juni 2012

Beskrivelse av filformatet for likningsoppgaven pass og stell av barn

og XML Where is the Life we have lost in living? Where is the wisdom we have lost in knowledge? Where is the knowledge we have lost in information?

Ordliste 2. Byte (byte) En streng på 8 biter som behandles som en enhet.

<?php. count tar en array som argument, og returnerer et tall som uttrykker antallet innførsler i arrayen.

Skatteetaten Boligsameie Beskrivelse av filformatet for innsending av opplysninger til Skatteetaten Gjelder fra og med innrapportering i januar 2016

(X)HTML, CSS og JavaScript HTML. Det første dokumentet Grunnleggende programmering i Java Monica Strand 26.

HTML-del. 1. <!-- ikke slett min kode, vær så snill --> er a) en HTML stil-tag b) en CSS stil-tag c) en HTML kommentar-tag d) en CSS kommentar-tag

Verdier, variabler og forms

Spesifikasjon for utfylling og innsending av opplysninger over tilskudd til vitenskapelig forskning eller yrkesopplæring til Skatteetaten.

INF1040 Oppgavesett 2: Nettsider og XHTML

User Input / Output Handling. Innocent Code kap 3-4 INF-329 Øystein Lervik Larsen oysteinl@ii.uib.no 7/11-05

Forskrift 25. september 2009 nr om IT-standarder i offentlig forvaltning

Navngivning av XML elementer

Høringsnotat ny delversjon av Referansekatalog for anbefalte og obligatoriske IT-standarder i offentlig sektor, våren 2015

Grunnleggende om websider og HTML-kode

Bachelor i bibliotek- og informasjonsvitenskap Kunnskapsorganisasjon og gjenfinning 1.1

OBLIG 1 - WEBUTVIKLING

the web Introduksjon Lesson

Javascript. Mer om layout

HØGSKOLEN I SØR-TRØNDELAG

Norsk standard for utveksling av fjernlånsdata, NILL. Versjon 1.3

MPEG-7. Problemstilling:

SMART hus via nettleseren

Boligsameie. Spesifikasjoner for utfylling og innsending av opplysninger til Skatteetaten. Gjelder for innrapportering fra og med januar 2016

Skatteetaten Drosjesentraler Beskrivelse av filformatet for innsending av opplysninger til Skatteetaten Gjelder fra inntektsåret 2013 Versjon 1.0.

Steg 1: Vi starter fra toppen

Brukerveiledning Bruk av siden. Når du går inn på siden får du opp følgende bilde:

XML og JDOM. Helge Furuseth

GRUPPE 7. «Superbrukere løser alt» Jon Martin Filberg Jørgen Pedersen. Informasjonssystemer. Side 1 av 12

EKSAMEN. Elektronisk publisering. INNFØRING MED PENN, evt. trykkblyant som gir gjennomslag

file:///c:/users/michaelp/sites/dkdm/dw5/dreamweaver5_1.html

Oppsummering - Kurset (10/ )

Oblig 1. Oppgave 1. Gå gjennom nettsiden arngren.net og list opp alle problemene du ser. Både i funksjonalitet/bruk og i koden bak.

La oss gjøre nettsiden vår bedre med noen stiler. I denne og den neste leksjonen skal vi lære hvordan man endrer farge, tekst, størrelser og mer!

MMT105 Internettprogrammering Uke 44, høst 2007

while-økker while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt Eksempel 1: en enkel while-løkke

Bruk av OpenOffice.org 3 Writer

Rammer. Mer om Javascript

Digital representasjon

Pass og stell av barn

E-bøker. Ellen Wiger, bokselskap.no. Workshop: Bibliotek- og informasjonsvitenskap, HIOA, januar-februar økt: om Bokselskap og tekstkoding

CSS-formatering: stilark med kommentarer

Introduksjon til HyperText Markup Language

This Learning Activity must be published on your WordPress blog by the end of the fifth week of Web Design.

Leveringsguiden. tjeneste for henting av informasjon om Postens transportprodukter. Versjonshistorikk: nummer 30.mars à jour.

Del 1: Overgang fra gammel hjemmeside til ny hjemmeside

- <!-- Generated on :28:44 at KITH. - <!-- XML-Schema level supported is specified by W3C. - <!--

Dobbelklikk på program-ikonet!

Stilark Cascading Style Sheets - CSS

Stilark Cascading Style Sheets - CSS

Løsningsskisse prøve IT1

Innhold 1 Innledning 2 Teori 3 Bruk av dokumentformater

Semistrukturerte data og XML

NY PÅ NETT. Enkel tekstbehandling

HTML: Legg til lyd og video

Læringsmål og pensum. Hvordan virker webteknologi? (klient-tjener arkitektur) HTML - virkemåte. Nettleser: Firefox, Opera, Safari

Kravspesifikasjon. Leserveiledning Kravspesifikasjonen består av følgende deler: Presentasjon Om bedriften

LO130A Webpublisering. Forelesning

Kort om earkiv/ikt-sidene ved arkivregelverket

Veileder for harmonisering av geografiske data

Styling og formatering av tekst

Individuelle pensjonsordninger

I denne oppgaven skal du lære hvordan du kan flytte rundt på elementer og gjemme elementene bak andre elementer ved hjelp av CSS.

NKKN typeforslag versjon Definisjon av grunntypene

DRI1002 IKT og Informasjonssøking Våren forelesning 16. Januar Arild Jansen, Avd. for forvaltningsinformatikk, UiO

EKSAMEN. Webutvikling Dato: ITF Eksamenstid: 25/ Hjelpemidler: Faglærer: Ingen. Tom Heine Nätt

Universell utforming Deltakelse og tilgjengelighet

Oppgave 1 (Etter forelesning 31/8) Gå gjennom nettsiden arngren.net og list opp alle problemene du ser. Både i funksjonalitet/bruk og i koden bak.

3 emner i dag! INF1000 Uke 5. Objekter og pekere. null. Litt om objekter, pekere og null Filer og easyio Litt mer om tekster

Grunnleggende Tekstbehandling

Beskrivelse av filformatet for opplysninger om "Kjøp fra primærnæring Pelsdyrskinn" til Skatteetaten

Oversikt. Intro til LaTex. Hva du trenger å kunne for å skrive en bra rapport til oblig 1, inf3190 L A T E X. Filens utseende.

Brukermanual til Domenia Norges adminløsning

HØGSKOLEN I SØR-TRØNDELAG

I denne oppgaven blir du introdusert for programmeringsspråket JavaScript. Du skal gjøre den klassiske oppgaven Hei verden, med en katt.

Transkript:

Markeringsspråk og XML <?xml version ="1.0" encoding= utf-8"?> 8? <eventyr> Det var en gang og snipp, snapp, snute, så var det eventyret e et ute. </eventyr> Læringsmål XML Forstå prinsippene bak XML og XHTML. Forstå hva XML kan brukes til og hvordan. Forstå hva XML er og hva det ikke er. Kunne lage XML-dokumenter. Kunne bruke dokumenttypedefinisjoner d i (DTDer) og XML-skjemaer. Kjenne prinsippene i id de nyeste standardene d for lagring av bl.a. tekster, regneark og presentasjoner Kapittel 3 INF1040-XML- 1 INF1040-XML- 2 Rå tekst vs. formatert tekst Standarder som ASCII, ISO 8859-x og Unicode gjelder rå tekst ( plain text ) t ) og omfatter derfor svært lite om hvordan teksten skal vises fram I tillegg til råteksten trengs formateringsdirektiver for å påvirke Valg av glyfer (skrifttype, skriftstørrelse, se, skriftfarge,) Bruk av white space (avsnitts- og linjeavstand, innrykk, ) Integrasjon med andre visuelle elementer (bilder,) INF1040-XML- 3 Markeringsprinsipper ( markup principles ) Spesifikk markering (eksempel fra WordStar).PL 66 page length 66 linjer.mt 6 margin top = 6 linjer.mb 9 margin bottom = 9 linjer ^B Innhold INF1040^B switch bold on and off I ^BINF1040^B skal vi blant annet lære Generalisert markering (eksempel fra XHTML) <h1>innhold INF1040</h1> <p>i <strong>inf1040</strong> skal vi blant annet lære</p> Generisk markering (eksempel fra XML) <chapter> <chapter name>innhold INF1040</chapter name> <paragraph>i <topic>inf1040</topic> skal vi blant annet lære </paragraph> </chapter> INF1040-XML- 4

Redigeringsprogrammer (editorer) To hovedtyper ( se eksempler på de følgende lysark) WYSYWYG What you see is what you get Direkte redigering av markeringer De to trinn i moderne tekstbehandling Trinn 1 Generalisert eller generisk markering: Hver enkelt del av teksten deklareres til å være av en bestemt type (eksempelvis overskrift, brødtekst, sitat, opplisting,...) Trinn 2 Formatering: Hver av teksttypene tilordnes en kombinasjon av formater (ofte kalt en stil) Dette prinsippet gjør at dersom man ønsker å endre utseende f.eks. på alle overskrifter, er det tilstrekkelig å endre stilen Skill mellom innhold (hva er teksten) og visualisering (hvordan vise fram teksten) Eksempel: WYSIWYG i MS-Word I Produserer en fil testeksempel.docx iooxml XML-format (se senere) INF1040-XML- 5 INF1040-XML- 6 Direkte redigering LaTeX teksteksempel.tex \documentclass[a4paper,12pt]{article} \usepackage[latin1]{inputenc} \begin{document} teksteksempel.dvi teksteksempel.ps \section{innhold INF1040} I \textbf{inf1040} skal vi blant annet lære om hvordan vi i en LaTeX dvips datamaskin representerer \begin{itemize} \item tekst \item tall \item lyd \item bilder \end{itemize} og hva dette innebærer for \textit{lagring, overføring} og \textit{fremvisning} \end{document} INF1040-XML- 7 <?xml version="1.0" encoding="windows-1252"?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/tr/html4/strict.dtd"> <html> <head> <title>beskrivelse INF1040</title> </head> <body> <h1> Innhold INF1040</h1> <p>i <b>inf1040</b> skal vi blant annet lære om hvordan vi i en datamaskin nettleser representerer</p> p (browser) <ul> <li>tekst</li> <li>tall</li> <li>lyd</li> <li>bilder</li> </ul> <p>og hva dette innebærer for <i>lagring, overføring</i> og <i>fremvisning</i> </p> </body> </html> Direkte redigering XHTML INF1040-XML- 8

SGML-familien SGML Standard General Markup Language ISO 8879:1985 HTML Hypertext Markup Language XML Extensible Markup Language Et standardisert format for data + beskrivelse av data Standardisert av World Wide Web Consortium se www.w3.org Eksempel se neste lysark XML Extensible Markup Language XHTML Extensible Hypertext Markup Language Other XML-based Languages ODF, OO XML ISO/IEC 26300 Office document standards d ISO/IEC 29500 INF1040-XML- 9 INF1040-XML- 10 Alle XML-filer begynner slik! Startmarkering (starttag) Sluttmarkering (endtag) Et meget enkelt XML-eksempel Hvilken XMLversjon som er benyttet <?xml version = "1.0" encoding= utf-8"?> 8?> <eventyr> Tegnsettet brukt i XML-filen Det var en gang og snipp, snapp, snute, så var det eventyret ute. </eventyr> Element XML er ikke ment for direkte fremvisning XML-teksten kan oversettes til egnet XHTML (eller et hvilket som helst annet tekstformat) ved hjelp av en XSLT-prosessor, et program som styres av instrukser på en XSLT-fil. (XSLT = Extensible Style Sheet Language Translator) Enkelte moderne nettlesere har en XSLT-prosessor innebygd XML-fil XSLT-fil XHTML-fil andre formater CSS-fil XSLTprosessor Nett- leser INF1040-XML- 11 INF1040-XML- 12

Et litt mer avansert XML-eksempel <?xml version = "1.0" encoding= utf-8"?> <emne id="inf1040"> <emnekode>inf1040</emnekode> <emnenavn>digital representasjon</emnenavn> <emnebeskrivelse>i INF1040 skal vi blant annet lære om hvordan vi i en datamaskin representerer <temaliste> <tema>tekst</tema> <tema>tall</tema> <tema>lyd</tema> Vi snakker gjerne om et XMLdokument, selv om det ikke er <tema>bilder</tema> </temaliste> meningen å skrive det ut på og hva dette innebærer for papir. <stikkord>lagring</stikkord> g Terminologien understreker <stikkord>overføring</stikkord> imidlertid at XML er et <stikkord>fremvisning</stikkord> tekstbasert format. </emnebeskrivelse> </emne> INF1040-XML- 13 Velstrukturerte XML-dokumenter Et XML-dokument er sammensatt av elementer, avgrenset med markeringer ( tags ) Et XML-dokument skal ha ett eneste rotelement Elementer må være perfekt nøstet (danne en hierarkisk struktur) <m1><m2></m2></m1>, ikke <m1><m2></m1></m2> Sjekk av struktur kan gjøres med http://www.w3schools.com/dom/dom_validate.asp http://www.xml.com/pub/a/tools/ruwf/check.html Er XML-dokumentet på lysark 13 velstrukturert? INF1040-XML- 14 Elementene danner en hierarkisk struktur emne emne- emne- emne- kode navn beskrivelse INF1040 Digital representasjon I INF1040 skal vi blant annet lære om hvordan vi i en datamaskin representerer temaliste Grunnlaget for Document Object Model DOM og hva dette innebærer for stikkord* tema* lagring overføring fremvisning Oppbyggingen av et element Hvert element starter med en startmarkering og avsluttes med en tilsvarende sluttmarkering: <elementnavn>elementinnhold</elementnavn> Eksempel fra XHTML: <h1>inf1040 Digital representasjon</h1> Hvis elementet er tomt kan start- og sluttmarkeringen slås sammen: <elementnavn /> <br /> Startmarkeringen kan inneholde ett eller flere attributter med tilhørende verdier: <elementnavn attributt= verdi >elementinnhold</elementnavn> <a href= http://www.uio.no/ >UiO</a> <img src= uiologo.gif g alt= UiO-logo width= 75 height= 75 /> tekst tall lyd bilder INF1040-XML- 15 INF1040-XML- 16

Regler for elementnavn i XML Kan inneholde bokstaver, tall og andre tegn. Ikke-engelske bokstaver er tillatt, men det er ikke sikkert all programvare forstår dem. Kan ikke inneholde mellomrom (space). Kan ikke starte te med tall, skilletegn eller e xml, XML, Xml Kan starte med _ (underscore) Unngå tegnene. : De kan lett misforstås Spesielle tegn Tegnene < > & har en spesiell betydning i XML de brukes som escape -tegn Hvis slike tegn inngår i teksten, må de kodes på en spesiell måte: &tegnnavn; eller &#kodepunkt; altså: < < < > > > & & & # betyr at tegnet er angitt som et kodepunkt (dvs. numerisk) x betyr at kodepunktet er angitt i heksadesimal INF1040-XML- 17 INF1040-XML- 18 Gyldige XML-dokumenter I utgangspunktet kan markeringer, attributter og verdier velges fritt. Strengere regler kan pålegges ved hjelp av en Dokumenttypedefinisjon Document Type Definition (DTD) eller et XML-Schema Disse reglene kan blant annet spesifisere lovlige markeringer Et XML-dokument kan da være gyldig i henholdt til en gitt DTD eller et gitt XML Schema Sjekk av gyldighet (validering) kan gjøres for eksempel med http://www.stg.brown.edu/service/xmlvalid/ Det finnes en mengde standardiserte DTDer for ulike formål elektronisk handel, geografiske informasjonssystemer, elektroniske valg, undervisning, varslingssystemer, INF1040-XML- 19 Eksempel på en Dokumenttypedefinisjon - DTD Dokumenttypedefinisjon på filen emne.dtd: <!ELEMENT emne (emnekode, emnenavn, emnebeskrivelse)> <!ELEMENT emnekode (#PCDATA)> <!ELEMENT emnenavn (#PCDATA)> <!ELEMENT emnebeskrivelse (#PCDATA temaliste stikkord)*> t tikk <!ELEMENT temaliste (tema*)> <!ELEMENT tema (#PCDATA)> <!ELEMENT stikkord (#PCDATA)> På filen emne.xml <?xml version = "1.0" encoding= utf-8"?> <!DOCTYPE emne SYSTEM "emne.dtd"> <emne> <emnekode>inf1040</emnekode> Dokumenttypedeklarasjon #PCDATA = Parced Character Data, dvs vanlig tekst INF1040-XML- 20

Eksempel på et XML skjema XML-skjema for emnebeskrivelser på filen emne.xsd: <?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/xmlschema"> <xs:complextype> <xs:sequence> <xs:element name = "emnekode" type="xs:string"/> <xs:element name = "emnenavn" type="xs:string"/> <xs:element name = "emnebeskrivelse"> <xs:complextype mixed= true > <xs:element name = "tema" type="xs:string" minoccurs= 2 maxoccurs= 10 /> <xs:element name = "stikkord" type="xs:string" ti " minoccurs= 0 maxoccurs= unbounded /> </xs:complextype> </xs:sequence> </xs:complextype> </xs:schema> På filen emne.xml: Henvisning til et XML-skjema <?xml version = "1.0" encoding="utf-8"?> xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" instance <emne xsi:schemalocation="emne.xsd"> <emnekode>inf1040</emnekode> </emne> INF1040-XML- 21 INF1040-XML- 22 Nye standarder for lagring av formatert tekst, regneark, presentasjoner etc. ISO/IEC 26300: Open Document Format for Office Applications (OpenDocument) ISO/IEC 29500: Office Open XML (OO XML) Hvorfor to standarder? Felles trekk Bygger på XML Ikke omtalt i læreboka! Skiller selve teksten fra bekrivelsen av hvordan den skal se ut:» Hvilken stil har denne teksten?» Hvordan skal denne stilen se ut? Et tekstdokument består av en rekke filer som pakkes i en zip-fil Dokumentpakken i OpenDocument filnavn.odt meta-inf/manifest.xml meta.xml styles.xml content.xml settings.xml Liste over de øvrige filene i pakken Metadata: Forfatter, datoer, nøkkelord, Beskrivelse av navngitte stiler Selve teksten, med XML-markeringer For eksempel på innholdet i content.xml, se neste lysark INF1040-XML- 23 INF1040-XML- 24

Eksempel på content.xml <office:document-content xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0 " > <office:font-face-decls> <style:font-face style:name="calibri" svg:font-family="calibri" style:font-family- y generic="swiss" style:font-pitch="variable" svg:panose-1="2 15 5 2 2 2 4 3 2 4"/> <style:font-face style:name="times New Roman" svg:font-family="times New Roman" style:font-family-generic="roman" style:font-pitch="variable" svg:panose- 1="2 2 6 3 5 4 5 2 3 4"/> <style:font-face f style:name="cambria" svg:font-family="cambria" f style:font-family- f generic="roman" style:font-pitch="variable" svg:panose-1="2 4 5 3 5 4 6 3 2 4"/> </office:font-face-decls> <office:automatic-styles> <style:style t l style:name="p1" style:parent-style-name="normal" t t l l" style:master-page- t name="mp0" style:family="paragraph"> <style:paragraph-properties fo:break-before="page"/> </style:style> </office:automatic-styles> <office:body> <office:text text:use-soft-page-breaks="true"> <text:p text:style-name="p1">inf1040 Digital representasjon</text:p> </office:text> </office:body> </office:document-content> INF1040-XML- 25 XHTML XML for nettsider Kapittel 4 <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd w3 dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>inf1040</title> </head> <body> <h1>inf1040 Digital representasjon</h1> <p> I INF1040 skal vi blant annet lære om hvordan vi en datamaskin representerer </p> <ul> </ul> </body> </html> <li>tekst</li> <li>tall</li> <li>lyd</li> <li>bilder</li> INF1040-XML- 26 Strukturen i XHTML-eksemplet html Anvendelser av XML Som fundament for et lingua franca mellom systemer Endelig en standard! head body Emneorienterte markeringer må defineres (begge systemer må ha samme oppfatning av <eventyr>) Er tekstiig format alltid hensiktsmessig? title h1 p ul Stor datamessig overhead Men: Store muligheter for komprimering INF1040 INF1040 Digital representasjon I INF1040 skal vi blant annet lære om hvordan vi i en datamaskin representerer li* Som fundament for åpne standarder for lagring av dokumenter (bl.a. tekster, regneark, presentasjonsgrafikk, tabeller) tall tekst lyd bilder INF1040-XML- 27 INF1040-XML- 28

Oppsummering XML er blitt en helt sentral standard for markering av tekst Regler for markeringene kan spesifiseres i en Document Type Definition (DTD) eller et XML-skjema Det er utviklet en lang rekke DTDer og XML-skjema for ulike anvendelser En slik anvendelse er XHTML for oppsett av nettsider Document Object Model DOM: Oppdelingen av teksten i elementer (objekter) gjør det mulig å manipulere teksten på en enkel måte XML ligger i bunnen av moderne standarder for representasjon av dokumenter, som eksempelvis formaterte tekster, regneark, presentasjoner og tabeller. INF1040-XML- 29