XML og XSLT

synes tiden fra indsendelse af spørgsmål og opgaver til svar har været hurtig hvilket var rigtig dejligt.

René Matzen, Revisor Informatik ApS

Excel VBA

Hurtig response på opgaver.

Udfordrende opgaver.

Flemming Pedersen, Semco Maritime

Excel VBA

Det er rart at kunne tage kurset i sit eget tempo, når det lige passer ind, men det giver også en risiko for at det lige bliver langstrækt nok, men så er det godt underviseren kan holde én lidt i ørerne med mails wink

Eva Bonne Alkærsig, EBA InterrimControlling

Excel VBA

Godt med muligheden for sparring med underviser og forslag til andre løsningsmetoder end mine egne - selvom mine også fungerede.

Godt med muligheden for ingen tidsbegræsning for kurset. Havde jeg - pga. arb. situation, brug for.

Anja Hansen, TDC

Excel VBA

Det har været et supergodt kursus, hvor man ikke bare fik resultaterne leveret, der skulle tænkes meget !

Materialet har været rigtig godt, og det er da utroligt så tit der har været hjælp at hente, har set at underviseren var online, også om aftenen og tidlig morgen, rigtig rart, og der kom lynhurtigt respons tilbage på div. spørgsmål og besvarelser.

Helt sikkertet kursus og kursusform, jeg vil anbefale til andre.

Margit Solveig Kristoffersen, Socialpædagogerne Sydjylland

DreamWeaver CS55

En rigtig god undervisningsform hvor man kan arbejde når man er inspireret og opmærksom. Det gælder både ang. planlægning af tid og hvor i øvelserne man har brug for hjælp og svar på spørgsmål. Alt skete i mit tempo, og svar på spørgsmål var tilpasset mit niveau, så jeg kunne forstå det.

Jeg kom igennem alle de vigtige og nødvendige dele af programmet i et på forhånd planlagt forløb.

Samtidig var du ved din klippekortsordning med på mine private hjemmesider, således at jeg, efterhånden som jeg arbejdede med kurset, i praksis kunne bruge hvad jeg havde lært og fik opøvet rutine. Dermed er det for alvor lært og mine forventninger er mere end fuldt ud indfriet.

Alis Christiansen, privat

< >
Se flere referencer

XPath aksenavne

Betragt dette diagram

Og sammen med dette lille xml dokument kan vi på næste diagram se, hvordan de enkelte elementer kan vælges under forudsætning af at "Item" er det aktuelle element.

<?xml version="1.0"?>
<order number="312597">
<date>2000/1/1</date>
<customer id="216A">Customer A</customer>
<item>
<part-number warehouse="Warehouse 11">E16-25A</part-number>
<description>Production-Class Widget</description>
<quantity>16</quantity>
</item>
</order>

 

 

Med det i hånden får man endnu flere muligheder. Prøv f.eks. dette stylesheet på xml dokumentet

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" encoding="ISO-8859-1" />



<xsl:template match="Nummer">
<xsl:for-each select="child::Kunstner">
<xsl:value-of select="."/>
</xsl:for-each>
</xsl:template>
<xsl:template match="text()"><!-- gør ingenting --></xsl:template>
</xsl:stylesheet>

Unikke poster

Vi bruger også akse-navne i forbindelse med udtræk af unikke poster i et XML dokument - det kunne se sådan her ud:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:output encoding="ISO-8859-1"/>
  <xsl:template match="/">
    <xsl:variable name="adresser" select="//Adresse[not(.=preceding::Adresse)]"/>
      <html>
        <head></head>
        <body>
          <xsl:for-each select="$adresser">
            <h1><xsl:value-of select="."/></h1>
          </xsl:for-each>
        </body>
      </html>
  </xsl:template>
</xsl:stylesheet>

Jeg ved godt, at jeg her bruger et par elementer, som vi ikke er kommet til endnu, men jeg håber det går alligevel ;-)

Når du har betalt for kurset får du adgang til øvelser til hver lektion. Og når du har fået godkendt din besvarelse får du desuden adgang til mine løsningsforslag med ekstra tips og trix.