[SlugBug] a perl/xslt question. potentially inappropriate.
Chris J
cej at nightwolf.org.uk
Sat Apr 16 16:31:20 BST 2005
And Lo! The Great Prophet Mike Dewar uttered these words of wisdom:
> That's great! I was making things harder than they needed to be, and i
> didn't realise you could apply a template that you hadn't created... I
> suppose if you don't specify a template it just gives you the text in
> the tag?
Essentially yes. The actual rule basically says:
- when you apply templates to an element, process its child
elements
- when you apply templates to a text node, give its value
...so in essence, you're just getting the textual information.
>
> Would making it a bit more human-readable be a huge problem? The reason
> I ask is that the wiki should be human-editable once it's up... this
> mucking about with xml should just be to populate the wiki to begin
> with. Everything after this should remain in the wiki. Having readable
> text will make it easier for people who aren't used to editing things
> like this to go ahead and edit the wiki....
It might depend on the XSLT implementation, but some dirt simple poking
about managed to churn out some more useable output:
<?xml version="1.0"?>
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="P"><P><xsl:apply-templates /></P></xsl:template>
<xsl:template match="VERB">'''<xsl:apply-templates />'''</xsl:template>
</xsl:transform>
...notice I've essentially removed the newlines from the P and VERB
templates. With sablotron, this gives:
<P>
For a vector or a matrix '''x''', '''y=sum(x)'''
returns in the scalar '''y''' the sum of all the entries
of '''x'''.</P>
Copying text nodes can often be hit and miss; I've never quite got the
whitespace to appear as I want it. It is possible to insert explicit
newlines with <xsl:text>, but sometimes extra newlines can appear where you
don't want them. More often than not it's a case of restructuring the XSLT
to suppress the newlines, as above.
Usually it's never a problem though as I'm using it to spit out HTML or XML
for further machine processing, and not for human consumption... :-)
Chris...
--
\ Chris Johnson \ NP:
\ cej at nightwolf.org.uk \
\ http://cej.nightwolf.org.uk/ \
\ http://redclaw.org.uk/ ~---------------------------------------
More information about the SlugBug
mailing list