63 lines
1.4 KiB
Plaintext
63 lines
1.4 KiB
Plaintext
<require-service <daemon xslt_actor>>
|
|
? <built xslt_actor ?path ?sum> [
|
|
<daemon xslt_actor {
|
|
argv: [$path]
|
|
protocol: application/syndicate
|
|
env: { BUILD_SUM: $sum }
|
|
}>
|
|
]
|
|
|
|
let ?ds = dataspace
|
|
? <service-object <daemon xslt_actor> ?cap> $cap [
|
|
<xslt { dataspace: $ds }>
|
|
]
|
|
|
|
let ?stylesheet = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
|
|
<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" xmlns=\"http://www.w3.org/1999/xhtml\" version=\"1.0\">
|
|
<xsl:output method=\"xml\" indent=\"yes\" encoding=\"UTF-8\"/>
|
|
<xsl:template match=\"/persons\">
|
|
<html>
|
|
<head>
|
|
<title>Testing XML Example</title>
|
|
</head>
|
|
<body>
|
|
<h1>Persons</h1>
|
|
<ul>
|
|
<xsl:apply-templates select=\"person\">
|
|
<xsl:sort select=\"family-name\"/>
|
|
</xsl:apply-templates>
|
|
</ul>
|
|
</body>
|
|
</html>
|
|
</xsl:template>
|
|
<xsl:template match=\"person\">
|
|
<li>
|
|
<xsl:value-of select=\"family-name\"/>
|
|
<xsl:text>, </xsl:text>
|
|
<xsl:value-of select=\"name\"/>
|
|
</li>
|
|
</xsl:template>
|
|
</xsl:stylesheet>
|
|
"
|
|
|
|
let ?input = "<?xml version=\"1.0\"?>
|
|
<persons>
|
|
<person username=\"JS1\">
|
|
<name>John</name>
|
|
<family-name>Smith</family-name>
|
|
</person>
|
|
<person username=\"MI1\">
|
|
<name>Morka</name>
|
|
<family-name>Minicus</family-name>
|
|
</person>
|
|
</persons>
|
|
"
|
|
|
|
$ds [
|
|
|
|
? <xslt-transform $stylesheet $input ?outputs> [
|
|
$log ! <log "-" { xslt-outputs: $outputs }>
|
|
]
|
|
|
|
]
|