XML. Extensible Markup Language

Relevanta dokument
Uppmärkningsspråk. TDP007 Konstruktion av datorspråk Föreläsning 3. Peter Dalenius Institutionen för datavetenskap


<sid nr="1" av="2" /> Stackenföreläsning: XML & XSLT: Intro. XML och XSLT

Uppmärkningsspråk. TDP007 Konstruktion av datorspråk Föreläsning 3. Peter Dalenius Institutionen för datavetenskap

Metaspråket XML Mika Suonvieri

ITK:P2 F1. Hemsidor med HTML HTML. FTP, HTTP, HTML, XML och XHTML

Konstruktion av datorspråk

Vad är XLink. XLink/XPointer/XSLT-FO. Namespace. Simple Links

Vad är XSLT XSLT extensible Stylesheet Language Transformations

XSLT. Extensible Stylesheet Language Transformations

HTML och CSS. Eric Elfving Institutionen för datavetenskap. 18 augusti 2015

Hantera informationspaket i system för bevarande

Lektion 2 - CSS. CSS - Fortsätt så här

Vad är XML XML. Exempel - SMIL. Exempel - XHTML. extensible Markup Language

HTML och CSS. Eric Elfving Institutionen för Datavetenskap (IDA)

En snabb titt på XML LEKTION 6

Webbteknik. Innehåll. Historisk återblick Teknisk beskrivning Märkspråk Standardisering Trender. En kort introduktion

Introduktion till XSLT

XML. XML is a method for putting structured data in a text file

XML. Dagens föreläsning. Vad är XML extencible Markup Language. Exempel - XHTML

Dagens föreläsning. Vad är XML. Exempel - XHTML. extencible Markup Language

Strukturering med XML och DTD

Generering av XSLT-dokument

Lektion 8 Del 1 XML, Kapitel 20

EDA095 HTML. Per Andersson. April 26, Lund University Innehåll: HTML, CSS, DOM, JavaScript

Hur hänger det ihop? För att kunna kommunicera krävs ett protokoll tcp/ip, http, ftp För att veta var man skall skicka

Introduktion till programmering

Programmeringteknik. Planering MÅL LABB: MOMENT LAB4 HTML - EXEMPEL HTML. Webbdelen

Webbens grundbegrepp. Introduktion till programmering. Ytterligare exempel. Exempel på webbsida. Föreläsning 5

Föreläsning 4. CSS Stilmallar för webben

XML och C#.NET Att hantera XML-dokument

Kompletterande exempel till XSLT

21/01/2016. Stilmallar. styra utseendet av webbplatsen DEL 1. Karin Fahlquist. index.html. recept.html frukt.html grönsaker.html

Användarberoende vyer av XML-data (HS-IDA-EA )

Uppmärkningsspråk. TDP007 Konstruktion av datorspråk Föreläsning 4. Peter Dalenius Institutionen för datavetenskap

XML - Vad är det? Hur vet jag vad som är vad - End Note? Publikationsreferens. XML för bibliotekarier. Anders Ardö.

Extensible Stylesheet Language Transformations (XSLT) och XML Path Language (XPath)

ORDLISTA WEBBDESIGN 100P

Föreläsning 3 i kursen: Monica Langerth Zetterman Uppsala universitet. Extensible Style Language (XSL) är en språkfamilj

Märkspråk, HTML, XHTML, CSS & JavaScript: kort intro med pekare till till mer information Föreläsning 4

Tillämpningsanvisningar

2I1073 Föreläsning 1. HTML och XHTML XHTML

Cascading Style Sheets (CSS) An Introduction. Nayeb Maleki

Innehåll Introduktion... 3 InteractiveScene.config... 3 Scener <scenes>... 3 Typsnitt <fonts>... 3 Övergångar <transitions>...

Bilaga 3. En redogörelse kring metadata och XML. Status Slutlig. Sid 1 (7) Dokumenttyp. Versionsdatum

12/9/2010 REGLER WEBBPRODUKTION WEBBDESIGN CASCADING STYLE SHEETS CSS LOKALA STILMALLAR GLOBALA STILMALLAR. Selektor. Deklaration

extensible Markup Language

Heldag om FGS FGS:er och deras tekniska regelverk. Karin Bredenberg, FGS funktionen. Standarder. FGS:er och deras tekniska regelverk 1

Informationsmodellering och e-infrastrukturer

Språk för webben introduk4on 4ll HTML

DP7 Kompletterande information

Webbutveckling med AngularJS

XML Lars Celander en effektiv introduktion m n skonsam E

F02 En första sida. Dagens agenda

Paketstruktur. Karin Bredenberg /

Repetition. Hypertext. Internet HTTP. Server och klient Text försedd med länkar till andra texter. Många sammankopplade nät

Repetition. Hypertext. Internet HTTP. Server och klient Föreläsning 2. Text försedd med länkar till andra texter. Många sammankopplade nät

TNMK30 - Elektronisk publicering

TNMK30. Elektronisk publicering

! Katerina Vrotsou! Medieteknik. 2004! Informationsvisualisering, visuell data analys

Objektorienterad Programkonstruktion. Föreläsning 10 7 dec 2015

XML+ANT+CVS+DIARY. XML: Exempel. XML: Syntax (1) Genomgång av några av de verktyg som används på kursen. <?xml version="1.0" encoding="iso "?

CSS- Cascading Stylesheets

CSS-övningar. 1. Grunder

Förkunskaper: Tim Berners Lees vision webbläsarkriget W3C strukturtagg <h1> layout-tagg <font size="6">

Beskrivning av xml-produkten FirmagranskningSokord(F34) version 2.00

TNMK30. Elektronisk publicering

Tryckning från Internet En översikt av standarder

Lektion 3 HTML, CSS och JavaScript

Lektion 2 Del 1 Kapitel 6

Post- och telestyrelsens författningssamling

HTML, SGML, CSS, XML, XHTML, MIME, HTTP

Varför XML? En studie av XML ur ett produktivt perspektiv

<Webbutvecklare lektion="02"> Kursledare: Mahmud Al Hakim

Införande av CSS i existerande tabellbaserat HTML-dokument

Tentamen ITK:P2. Inga hjälpmedel tillåtna förutom penna och papper. Skriv tydligt och texta gärna. 14 st frågor, 70 poäng.

PHP - Fortsättning. PHP och MySQL

Dagens föreläsningar

Skapandet av en databas, produktkatalog och hemsida

Beskrivning av xml-produkten Dokumentleverans (D4) version 2.04

WEBBUTVECKLING Kursplanering

F07 Stilmallar Dagens agenda

En grundkurs i hemsidor och hur de är uppbyggda

Grundläggande datavetenskap, 4p

Layoutbegränsningar i XSL-FO Layout restrictions in XSL-FO. Per Töyrä. EXAMENSARBETE Grafisk Teknologi Nr: E 3677 GT

F02 HTML. Föreläsning 2, HT2013 HTML. Kurser: Klientbaserad Webbutveckling 1DV435. Johan Leitet

E-pliktleverans via RSS-feeds

Olika slags datornätverk. Föreläsning 5 Internet ARPANET, Internet började med ARPANET

JavaScript in SharePoint and not just for Apps. Wictor Wilén

Öppna standarder. Programvaror och tjänster 2014

FHIR OCH INTEROPERABILITET I SJUKVÅRDEN OSKAR THUNMAN

Karusell med länkade omslagsbilder

Introduk+on +ll programmering i JavaScript

Föreläsning 6 Mål. Mänskor och IP adresser. Domain Name System (1/3) Numeriska adresser används i Internet

Dagens föreläsningar

SKÖRDNING AV LOKALA DATAKÄLLOR I XML. Marika Lundqvist Umeå universitetsbibliotek

Översikt. Mer om XML & TEI Kurstillfälle 2. Grundläggande principer 1. Grundläggande principer 2. Hierarkisk dokumentmodell. XML & flexibilitet

Teknisk rapport SIS-TR 38:2011

<header> </header> <footer> </footer>

Labb 3: ASP.NET 4.5 Anpassningar av användargränssnittet: Master Pages, Teman, och Kontroller

Transkript:

XML Extensible Markup Language

XML - 1969 Generalized Markup Language (GML) 1979-85 Standard Generalized Markup Language (SGML) 1990 HyperText Markup Language (HTML) 1996-98 Extensible Markup Language (XML) Delmängd av SGML Är inte ett språk, utan standard för att skapa språk

+ Standard + Många verktyg + Enkelt att bygga ut + Läsbart - Stora filer

<?xml version="1.0" encoding="iso-8859-1"?> <groups> <group name="räjs&träjs" id="5"> <members> <member> <name>angela Sjöholm</name> <persnr>123456-7890</persnr> <mail>ansjovis@student.uu.se</mail> </member>... </members> </group>... </groups>

Allt mellan < och > är en tag. <name> är en start-tag, </name> är en endtag. Varje start-tag måste matchas av en endtag. <name></name> <=> <name/> <name>till Lindemann</name>är ett element. Element kan innehålla andra element. Det kan endast finnas ett element på toppnivån (root element) Element måste vara snyggt nästlade, dvs <a><b></a></b> är inte tillåtet. + ett gäng med fler regler om element. Ett attribut är ett namn-värde-par som finns i start-tagen.

Document Type Definition () <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE scene SYSTEM "http://www.csd.uu.se/kurs/pm2/ht02/www/pm2gl.dtd"> <scene> <camera> <location> <vector x="0.000" y="3.000" z="-10.000"> </vector> </location> <sky> <vector x="0.000" y="1.000" z="0.000"> </vector> </sky> <look_at> <vector x="0.000" y="0.000" z="0.000"> </vector> </look_at> </camera>...

Document Type Definition () <!ELEMENT scene (camera, background?, world)> <!ELEMENT camera (location, sky, look_at)> <!ELEMENT sky (vector)> <!ELEMENT look_at (vector)> <!ELEMENT location (vector)> <!ELEMENT vector EMPTY> <!ATTLIST vector x CDATA #required y CDATA #required z CDATA #required>

Document Type Definition () - Använder egen syntax (ärvt från SGML). - Begränsad uttryckskraft. Ordning på element. Dålig hantering av datatyper. + Enkelt att lära och använda. + Många verktyg stöder :er.

XML s <?xml version="1.0"?> <schema xmlns="http://www.w3.org/2001/xml"> <element name="vector"> <complextype/> <attribute name="x" type="float"/> <attribute name="y" type="float"/> <attribute name="z" type="float"/> </element> <element name="location"> <complextype> <sequence> <element ref="vector"/> </sequence> </complextype> </element>

XML s + Kraftfulla + Använder XML-syntax + Bra stöd för arv. - Svårare att lära sig. - Stöds ännu inte 100%-igt av verktygen.

Det finns massor av verktyg för att läsa XMLfiler, t.ex. expat. I huvudsak två kategorier: Document Object Model () Simple API for XML ()

Document Object Model () Bygger en trädstruktur utifrån XMLdokumentet. Ett standard-api används sedan för att komma åt information i trädet. - Läser in hela XML-dokumentet i minnet. Kan ta mycket minne. Kan ta lång tid.

Simple API for XML () Händelsestyrt. Objektorienterat. + Enkelt att använda. + Man behöver inte läsa in hela XML-filen. - Man måste själv hålla reda på var i filen man befinner sig. Expat är också händelsestyrt.

Ett schema eller en beskriver en vokabulär. Man kan använda element från flera vokabulärer i samma XML-dokument. Kan leda till krockar! En namnrymd är en grupp av namn som hör ihop rent konceptuellt. Prefix kan användas för att ange namnrymd. Ex. <html:title> och <book:title> Problem: Hur ska man göra prefixen unika? Lösning: Utnyttja URI (Uniform Resource Identifier), t.ex. URL. Ex. <book xmlns="http://www.it.uu.se/book" xmlns:html="http://www.w3.org/1999/xhtml">

Extensible Stylesheet Language Transformations () Ett XML-baserat språk. Används för att översätta från XML till andra text-baserade språk (t.ex. HTML, XML). Deklarativt språk. Det säger vad, istället för hur. Ett program, t.ex. xsltproc, läser källfilen (XML), applicerar mallarna i stylesheetfilen (XSL), och skriver ut resultatet till en fil (t.ex. HTML).

Extensible Stylesheet Language Transformations () Exempel: <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl= "http://www.w3.org/1999/xsl/transform"> <xsl:output method="html" ident="yes" encoding="iso-8859-1"/> <xsl:template match="/"> <html> <head><title>pm2-grupper</title></head> <body> <h1>pm2-grupper</h1> <table border="1"> <xsl:apply-templates/> </table> </body> </html> </xsl:template>...

Extensible Stylesheet Language Transformations () Resultat av groups.xsl:

Extensible Stylesheet Language Transformations () Resultat av groupstatus.xsl:

Hitta rätt i XML-filer. Exempel: <xsl:template match="//group"> <tr><td> (<xsl:value-of select="./@id"/>) <xsl:value-of select="./@name"/> </td> <xsl:apply-templates/> </tr> </xsl:template> Används inte bara av XSL, utan även av t.ex. XPointer.

Cascading Style Sheets (CSS) Ett sätt att styra hur XML och HTML ska visas. Ett HTML-exempel: <h1><font size="7" face="new Times Roman"> Det här är en titel.</font></h1> Med CSS skulle detta i stället kunna göras som: <link href="mystyle.css" rel="stylesheet" type="text/css"/> <h1>det här är en titel</h1> mystyle.css: h1 { font-family: New Times Roman;

XLink är ett sätt att länka XML-dokument till varandra. Begränsningar hos HTML-länkar: Länkar bara två saker: dokumentet den finns i och dokumentet den länkar till. Är enkelriktade. XLink löser detta. XPointer används för att länka till delar av XML-dokument. För att göra detta använder XPointer. Tillsammans kan XLink och XPointer skapa komplexa länkar.

Slut - frågor? Fler XML saker: XQuery - frågespråk, jämför med SQL.

Nähä. Bra, då slutar vi.