Hej NG
Jeg har fundet frem til en sortering af et xml dokument på
xml.com, hvor jeg med xsl dokumentet:
<xsl:stylesheet xmlns:xsl="
http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="text"/>
<?startSampleFile ?>
<!-- xq434.xsl: converts xq423.xml into xq435.xml -->
<xsl:template match="employees">
<xsl:apply-templates>
<xsl:sort select="substring(@hireDate,7,4)"/> <!-- year -->
<xsl:sort select="substring(@hireDate,1,2)"/> <!-- month -->
<xsl:sort select="substring(@hireDate,3,2)"/> <!-- day -->
</xsl:apply-templates>
</xsl:template>
<?endSampleFile ?>
<xsl:template match="employee">
Last: <xsl:apply-templates select="last"/>
First: <xsl:apply-templates select="first"/>
Salary: <xsl:apply-templates select="salary"/>
Hire Date: <xsl:apply-templates select="@hireDate"/>
<xsl:text>
</xsl:text>
</xsl:template>
</xsl:stylesheet>
Vil kunne sortere nedenstående xml dokument efter hireDate
<employees>
<employee hireDate="04/23/1999">
<last>Hill</last>
<first>Phil</first>
<salary>100000</salary>
</employee>
<employee hireDate="09/01/1998">
<last>Herbert</last>
<first>Johnny</first>
<salary>95000</salary>
</employee>
<employee hireDate="08/20/2000">
<last>Hill</last>
<first>Graham</first>
<salary>89000</salary>
</employee>
</employees>
Jeg forstår ikke helt hvordan jeg får det til at virke, men har
prøvet at udskrive xls dokumentet med følgende asp:
extURL = "
http://www.barnstormers.dk/xmlleg/xq434.xsl"
set xmlDoc = createObject("Msxml.DOMDocument")
xmlDoc.async = false
xmlDoc.setProperty "ServerHTTPRequest", true
xmlDoc.load(extURL)
If (xmlDoc.parseError.errorCode <> 0) then
Response.Write "XML error: " & xmlDoc.parseError.reason
Else
set customerNodes = xmlDoc.selectNodes("//employee/*")
for each entry in customerNodes
if entry.tagName = "last" then
strLast = strLast & entry.text & "#%#"
elseif entry.tagName = "first" then
strFirst = strFirst & entry.text & "#%#"
elseif entry.tagName = "salary" then
strSalary = strSalary & entry.text & "#%#"
elseif entry.tagName = "hireDate" then
strHireDate = strHireDate & entry.text & "#%#"
end if
next
arrLast = split(strLast,"#%#")
arrFirst = split(strFirst,"#%#")
arrSalary = split(strSalary,"#%#")
arrHireDate = split(strHireDate,"#%#")
for i = 0 to UBound(arrLast) - 1
response.Write arrLast(i)&", "&arrFirst(i)&"<br
/>"&vbcrlf&arrSalary(i)&"<br />"&vbcrlf&arrHireDate(i)&"<br /><br
/>"&vbcrlf
next
end if
Er der nogen af jer der kan fortælle hvad jeg gør forkert, for
jeg får ikke nogen resultater ud.
--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! =>
http://www.html.dk/tutorials