introduktion til xml
DESCRIPTION
Introduktion til XML. Hvad er XML?. XML står for EXtensible Markup Language XML er en åben standard fra W3C XML er tekstbaseret ligesom HTML XML er et meta sprog – et koncept snarere end et sprog Man implementerer markup sprog ved hjælp af XML - PowerPoint PPT PresentationTRANSCRIPT
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Hvad er XML?• XML står for EXtensible Markup Language• XML er en åben standard fra W3C• XML er tekstbaseret ligesom HTML• XML er et meta sprog – et koncept snarere end et
sprog• Man implementerer markup sprog ved hjælp af
XML• Mange teknologier er i dag implementeret ved
hjælp af XML– XHTML, SMIL, RSS, WAP, WML, SVG, MathML, Daisy,
Office Open XML, OpenDocument, iWork
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Hvad er XML?• XML er en standard, som understøtter
maskinel behandling af information– Struktureret information som i en database– Mere løst narrativ som i skøn- eller faglitteratur– Klare og stringente regler for
IndholdStruktur (velformede)Syntaks (valide)
• XML programmer antager at XML dokumenter er velformede og valide
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Hvad er XML?• Eksempel på XML fil• Alle Unicode tegn kan anvendes
– Encoding skal specificeres• <?xml version="1.0" encoding="UTF-8" ?> • <?xml version="1.0" encoding="iso-8859-1"?>
– Visse tegn er reserverede (kontroltegn) og skal skrives på særlig møde
• < &• < > & ' " < > & ‘ “• 中 eller 中
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Referencedokumenter• http://www.w3.org/standards/xml/ • http://en.wikipedia.org/wiki/Xml
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Talsystemer
11 22 33 44
10
00
10
0 10 1
10-talsystemet (decimale)
0 1 2 3 4 5 6 7 8 9
11 11 00 11
8 4 2 1
2-talsystemet (binære)
0 1
FF AA 22 55
40
96
25
6 16 1
16-talsystemet (hexadecimale)
0 1 2 3 4 5 6 7 8 9 A B C D E F
11 00 00 00
163264
12
8
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Talsystemer
00 11 00 00
22 88 00 EE
00 00 11 00 11 11 11 0000 00 00 00
(10.254)
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Tegnsæt• 1 byte = 8 bits = 28 (256 kombinationer)• 2 bytes = 16 bits = 216 (65.536 kombinationer)• 3 bytes = 24 bits = 224 (16.777.216 kombinationer)• Single-byte tegnsæt
– Fx ASCII, Codepage 1252, Codepage 1250
• Multi-byte tegnsæt – Fx Unicode, UTF8– Unicode range 0x0000-0x0FFF– Unicode range 0x2000-0x2FFF
<?xml version="1.0" encoding="UTF-8"?>
<外语 >Китайська мова</外语 >
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Øvelser1. Find og installer en Unicode skrifttype
– Code2000
2. Vælg Code2000 som skrifttype i Notepad3. Opret en større tekstfil i Notepad og gem den i
forskellige kodninger– ANSI, UTF-8, Unicode– Tjek størrelsen af de tre filer
4. Hvad betyder følgende Unicode tegn0x2803 0x2817 0x2801 0x280A 0x2807 0x2807 0x2811
5. Brug RoboBraille til at skabe lidt punktskrift i Unicode. Kopier det ind i tekstfilen
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Markup, tags og indhold• XML-filer består af markup og indhold (content)• Markup kaldes også tags.• Tre typer tags:
1. Start tags (open tags): <section>2. End tags (close tags): </section>3. Empty-element tags <newline/>
(self-closing tags)
• Tags er ikke nødvendigvis definerede på forhånd
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Markup, tags og indhold• XML er case-sensitiv: <section> <Section>• Tags kan have attributter
– <heading text=”Hallo, dette er en prøve”/>– <name language=”da”>Her er en tekst.</name>
• Elementer– Open + close tags + attributter til open tags + tekst
og tags mellem open og close tags– Self-closing tags incl attributter
<p>As Yogi Berra said, <q>"It ain't over 'til it's over."</q></p>
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Velformet (well-formed)• XML kode skal være velformet, herunder:
– Koden skal bestå af prolog og rod-element<?xml version="1.0" encoding="UTF-8"?>
<book>
…
</book>
– Koden skal bestå af lovlige tegn– Koden skal indeholde mindst et element (rod
elementet)– Elementer skal struktureres korrekt
•Tags for tomme elementer skal afsluttes med />•Start tags skal sluttes med end tags•Samme stavemåde og case i start og end tags
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Velformet (well-formed)– Rod-elementet skal indeholde samtlige andre
elementer i dokumentet– Alle elementer skal nestes strengt hierarkisk
<employee>
<name>
<lastname>Kelly</lastname>
<firstname>Grace</firstname>
</name>
<hiredate>October 15, 2005</hiredate>
<projects>
<project>
<product>Printer</product>
<id>111</id>
<price>$111.00</price>
</project>
<project>
<product>Laptop</product>
<id>222</id>
<price>$989.00</price>
</project>
</projects>
</employee>
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Velformet (well-formed)• Attributnavne i samme element skal være
entydige• Alle attributværdier skal sættes i
anførselstegn – enkelt eller dobbelt<img src=”mountains.jpg”/>
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
ØvelseHvorfor er nedenstående XML kode ikke velformet?<?xml version = "1.0" standalone="yes"?> <employee>
<name>Frank</name>
<position>Chef</position>
</employee>
<employee>
<name>Ronnie</name>
<position>Chef</position>
</employee>
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
ØvelseHvorfor er nedenstående XML kode ikke velformet?<?xml version = "1.0" standalone="yes"?> <employee>
<kitchen_staff/>
<name language=en>Frank</name>
<new_hire />
<position language=en>Chef</position> </employee>
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
DTD: Syntaks og validitet• Tjek af velformethed har begrænsninger• Ofte behov for at tjekke om elementer står de
rigtige steder, har de rette attributter• Document Type Definition (DTD)
– Placering– Indhold– Attributter
• Tjek i forhold til DTD kaldes validering• XML dokumenter med DTD skal være valide• Daisy defineret ved hjælp af DTD
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Øvelser• Find og installer XML Copy Editor• Sæt hak i ”Enable network access for DTD
validation”
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Øvelser• Tjek at dokumenterne i mappen
www.sensus.dk/kursus/markup/validering er velformede og valide
• Ret eventuelle fejl
SensusSpecialister i tilgængelighedSensus
Specialister i tilgængelighed
Tag typer i XML
Objekt Formål Eksempel
Tomt element Information et bestemt sted i dokumentet
<xref linkend=”abc”/>
Almindeligt element
Sammenholder en række elementer
<p>Her er et afsnit.</p>
Erklæring Tilføjer ny parameter, entitet, grammatik
<!ENTITY author ”Erik Ray”>
Instruktion til processor
Instruktion til bestemt program
<?print-formatter force-linebreak?>
Kommentar Kommentar som ignoreres
<!–- dette er udeladt --!>
CDATA sektion Sektion, som ikke behandles
<![CDATA[Smiley! &&&:-)]]>
Reference til entitet
Indsætter tekst, som er defineret andetsteds
&firma-navn;