| Kode | Forklaring |
|---|---|
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Skjema for værdata Elin 2003 -->
|
dette er alltid første linje i en xml-, schema- eller xsl-fil.
Ingen linjeskift, spacer eller andre tegn må komme foran denne linja!
kommentar
|
| Kode | Forklaring |
|---|---|
<wt:schema xmlns:wt="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<wt:complexType name="weatherType" mixed="true">
<wt:sequence minOccurs="0" maxOccurs="unbounded">
<wt:element ref="city"/>
<wt:element ref="time"/>
<wt:element ref="temp"/>
<wt:element ref="wspd"/>
<wt:element ref="rain"/>
</wt:sequence>
</wt:complexType>
<wt:element name="city" type="wt:string"/>
<wt:element name="time" type="wt:dateTime"/>
<wt:element name="temp" type="wt:float"/>
<wt:element name="wspd" type="wt:float"/>
<wt:element name="rain" type="wt:integer"/>
<wt:element name="weatherdata">
<wt:complexType>
<wt:sequence>
<wt:element name="weather" type="weatherType" maxOccurs="unbounded"/>
</wt:sequence>
</wt:complexType>
</wt:element>
</wt:schema>
|
schema er alltid rot i en schema-fil. Forteller hvor definisjon av schema ligger(hos W3C)
elementFormDefault spesifiserer om lokalt deklarerte elementer må navngis med targetnamespace(her wt) eller ikke
attributeFormDefault spesifiserer om lokalt deklarerte attributter må navngis med targetnamespace(her wt) eller ikke
oppretter en type weatherType som inneholder elementer av forskjellig type(mixed="true")
legger inn elementene som skal ligge i weatherType, og spesifiserer med ref
at definisjonen ligger lengre ned i koden
Definerer de ulike elementene som skal ligger i weatherType en etter en.
navn og type må spesifiseres for alle
oppretter rotelementet weatherdata
sier at weatherdata skal inneholde elementer av typen weatherType, og at de skal hete weather. maxOccurs="unbounded"
betyr at man kan ha hvor mange slike elementer man vil inne i weatherdata
|
Ingen epilog her
| Kode | Forklaring |
|---|---|
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Laget av Elin Andreassen, hiof 2003 -->
<?xml-stylesheet type="text/xsl" href="weather.xsl"?>
|
dette er alltid første linje i en xml-, schema- eller xsl-fil.
Ingen linjeskift, spacer eller andre tegn må komme foran denne linja!
kommentar
importerer et stylesheet
|
| Kode | Forklaring |
|---|---|
<weatherdata xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="weather.xsd">
<weather>
<city>Halden</city>
<time>2003-11-22T10:01:36</time>
<temp>-3.4</temp>
<wspd>0.0</wspd>
<rain>1</rain>
</weather>
<weather>
<city>Sarpsborg</city>
<time>2001-09-01T17:04:15</time>
<temp>7.3</temp>
<wspd>3.0</wspd>
<rain>0</rain>
</weather>
<weather>
<city>Halden</city>
<time>2002-01-15T10:01:36</time>
<temp>-9.4</temp>
<wspd>10.0</wspd>
<rain>5</rain>
</weather>
</weatherdata>
|
Oppretter rotelementet weatherdata. Forteller hvor egen skjema-beskrivelse
og generell definisjon(fra W3C) av schema ligger
oppretter et weather-element, og fyller
dette med data: city, time, temp, wspd og rain
oppretter et weather-element til, og fyller
dette med data: city, time, temp, wspd og rain
oppretter et weather-element til, og fyller
dette med data: city, time, temp, wspd og rain
|
Ingen epilog her
| Kode | Forklaring |
|---|---|
<?xml version="1.0" encoding="iso-8859-1"?>
|
dette er alltid første linje i en xml-, schema- eller xsl-fil.
Ingen linjeskift, spacer eller andre tegn må komme foran denne linja!
|
| Kode | Forklaring |
|---|---|
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head>
<title>Weather-data</title>
</head>
<body>
<xsl:apply-templates select="weatherdata/weather"/>
</body>
</html>
</xsl:template>
<xsl:template match="weatherdata/weather">
<h1>Weather in <xsl:value-of select="city "/>
</h1>
<table border="0" cellpadding="3" cellspacing="0">
<tr>
<th align="left">Time</th>
<td><xsl:value-of select="time"/></td>
</tr>
<tr>
<th align="left">Temperature</th>
<td><xsl:value-of select="temp"/></td>
</tr>
<tr>
<th align="left">Wind speed</th>
<td><xsl:value-of select="wspd"/></td>
</tr>
<tr>
<th align="left">Rain</th>
<td><xsl:value-of select="rain"/></td>
</tr>
</table>
</xsl:template>
</xsl:stylesheet>
|
forteller at dette er et xsl-stylesheet, versjon 1.0 av koden
forteller hvor definisjonen av transformation for xsl ligger
Oppretter en template for rotelementet.
Her ligger html-koden for å vise webside med værdata.
xsl:apply-templates er en prosesseringsinstruksjon som sier at man skal plukke
ut noen noder/elementer fra et rotelement. select brukes her for å begrense/spesifisere
utplukkingen til elementet weather i rotelementet weatherdata.
Oppretter en template for elementet weather i rotelementet weatherdata.
Koden som følger skriver ut dataene med formatering
(her city).
xsl-valueof er en prosesseringsinstruksjon som brukes for å hente ut et felt i et element.
|
Ingen epilog her
Se resultat(krever IE5 eller nyere)