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

Det har været godt at selv kunne bestemme farten, samt bruge al den tid man nu selv synes for at lave opgaverne.

Det har været et hårdt kursus, men jeg har virkelig lært meget og er mere rustet til at lave nye makroer, hvor jeg så selv kan gå i i VBA og lave rettelser, fordi jeg kan forstå programmet.

Margit Gravgaard Larsen, Novo Nordisk A/S

ASP.NET 4.0

Jeg er imponeret over den måde kurset er sat op. Trin-for-trin og dejligt afvekslende med Try-It-Out og spørgsmål sidst i hver lektion. Indimellem virker det som om materialet var lavet lige netop til en type som jeg.

En anden ting var de mange unoder man efterhånden har raget til sig - de blev rettet på en lærerig måde.

Kan varmt anbefale kurset

Lennart Hansen, Dancar Autosikring ApS

Access videregående

1) Den detaljerede Trin-for-trin vejledningen i undervisningsmaterialet er måske lidt kedelig at gennemføre, men det bliver rigeligt opvejet af effektiviteten i indlæringen af de nødvendige rutiner.
2) Underviseren er superhurtig til at svare.
3) Underviseren svarer relevant og koncist på mine spørgsmål.

Lars Mårtensson, IHI BUPA

DreamWeaver CS4

Det bedste af det hele - din ubegrænsede tålmodighed. Jeg vidste intet om hjemmesider, havde aldrig været på IT kurser, plus dansk er ikke min modersmål - jeg misforstod tit, hvad du skrev. Det har sikkert været meget irriterende for dig, men du fortsætte at forklare uden at blive sur. Det er meget vigtigt for en begynder ikke at være "skræmt væk", fordi så tænker man: "mon ikke klarer jeg det alligevel".
Jeg synes, emnerne for kurser var godt valgte.
Det var godt, at man kunne arbejde med kurser, når man havde tid - der var ingen tidsfrister til hvert emne.
Det var godt, at du svarede hurtigt på spørgsmålene.

Tak for kursus! Det var en god oplevelse, det var en stor udfordring for mig, men det var meget interessant at "fægte" igennem det!

Antra Kahr, kahrius.dk

Frontpage

Tak for et godt kursus.

Jeg syntes følgende har været godt:

  1. Beskrivelsen af de forskellige opgaver > svar fra underviser, med tips og forslag til andre måder at se tingene på
  2. At underviser ikke bare pr. automatic har godkendt lektionerne
  3. Måden underviser har besvaret spørgsmål > meget forstålige
  4. At underviser køber et program "kun" fordi jeg har en dansk version
  5. At man efterfølgende kan bruge kurset ved at loge på
  6. Ja jeg kunne blive ved, men det kommer vel i bund og grund an på hvad man havde som forventninger og til det kan jeg kun sige at mine forventninger er blevet opfyldt.
  7. Det vil nok altid være ting man kunne i forvejen, men for mit vedkomne, syntes jeg det var rart at blive bekræftiget i at det man gør er rigtig.

Endnu engang tak for et godt kursus, jeg vil anbefale andre til dig.

Med venlig hilsen

Peder Pedersen 

Peder Pedersen, DGI, Vejle Amt

< >
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.