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 videregående

Det har været rigtig godt at kunne arbejde med kurset når man selv synes at man havde tid til det.

Overskueligt materiale og overkommelige opgaver.

Hurtige svar på opgaveløsninger.

Et rigtig godt kursus :o)

Susanne Jensen, KoncernØkonomi

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

Hurtig response på opgaver.

Udfordrende opgaver.

Flemming Pedersen, Semco Maritime

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

Access VBA

Min indgangsvinkel til VBA var, at jeg overhovedet ikke har arbejdet "hands on" med kode, siden de første par år af ingeniørstudiet, hvorfor min overordnede målsætning var "blot at komme komme i gang" dvs få en overordnet forståelse for hvordan strukturen i det hele var. Det har jeg fået og mere til.

Der er lagt vægt på øvelse, så man selv skal "bøvle" med koden, uden at få alt for meget forærende. Det er godt. Øvelserne har jeg oplevet, som værende bygget op, så man får en "værktøjskasse" med komponenter, som i et vist omfang kan genindgå i nogle af de efterfølgende øvelser. Også det er fint. Det stimulerer en til at tænke kreativt.

Alt i alt er mine forventninger indfriet.   ..

Lars Aaboe Kristensen, Ribe Amt, Teknik og Miljø

< >
Se flere referencer

xsl:applytemplates

bruges til at kalde en anden template inde fra en template. Syntaksen er:

<xsl:apply-templates select="xpath udtryk" mode="mode navn">

Vi kommer tilbage til brugen af mode atributten senere.

Hvis vi kigger på dette lille eksempel

<xsl:template match="Nummer">
<Track>
<xsl:apply-templates>
</Track>
</xsl:template>

Når XSL processoren behandler denne template vil alle elementer der hedder "Nummer" blive fundet og for hver nummer vil der blive indsat et element der hedder "Track" i resultatet - men som følge af xsl:apply-templates vil processoren løbe xml dokumentet igennem for at se om der er templates der matcher - nu med udgangspunkt i "Nummer" elementet.

Det giver først for alvor mening, hvis der er en flere templates i xsl dokumentet.

Her er et lille eksempel:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="ISO-8859-1" />
<xsl:template match="/">
<html>
<head><title>Et eksempel</title></head>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>


<xsl:template match="Kunstner">
<p>Kunstner</p>
</xsl:template>


</xsl:stylesheet>

Denne lille leg går galt som vi tidligere har set - på grund af standard templates. Det er der to løsninger på - enten kan vi bruge

<xsl:template match="text() | @*"></xsl:template>

Eller også kan vi specificere hvad vi vil matche med i apply-templates

<xsl:apply-templates select="RytmiskMusik/Nummer/Kunstner"/>

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.