Subject: Re: [xsl] Basic template matching issues - I think? From: Ihe Onwuka <ihe.onwuka@xxxxxxxxx> Date: Tue, 20 Nov 2012 12:34:24 +0000 |
I think you have fallen foul of this. http://www.biglist.com/lists/lists.mulberrytech.com/xsl-list/archives/201211/msg00133.html On Tue, Nov 20, 2012 at 12:28 PM, An OldBloke <neil_owens@xxxxxxxxxxx> wrote: > > I'm getting the following error trying to integrate regex into a transform that previously used concat and string searching as it's much more flexible. > > The error is:- > > C:\>java -jar saxon9he.jar -o Result.xml text.xml regextime.xslt > > Error on line 22 column 5 of regextime.xslt: > SXXP0003: Error reported by XML parser: The value of attribute "select" associated with an > element type "null" must not contain the '<' character. > Failed to compile stylesheet. 1 error detected. > > I just can't see what I've done wrong, so am hoping you kind folks can put me on the (x)path again. > > XML file: > <Log Device="SERVER1"> > <myCommand Command="test" Time="12/11/2012 11:12:04 AM" Port="9999" IP="1.1.1.1"> > <Struct> > <OUTID>SERVER2</OUTID> > <INID>SERVER3</INID> > <test> > <item>2</item> > <GUID>21EC2020-3AEA-1069-A2DD-08002B30309D</GUID> > <status>OK</status> > </test> > </Struct> > </myCommand> > </Log> > > > xsl Transform: > <?xml version="1.0"?> > <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <xsl:output method="xml" indent="yes" name="TextFormat" omit-xml-declaration="yes"/> > > <xsl:template match="Log"> > <xsl:apply-templates select="myCommand"/> > </xsl:template> > > <xsl:template match="myCommand"> > <nomCommand> > <xsl:element name="Command"><xsl:value-of select="@Command"/></xsl:element> > <xsl:template match="Time"> > <xsl:analyze-string select="@Time" regex="(\d{2})\/(\d{2})\/(\d{4}) (\d{1,2}):(\d{2}):(\d{2})"> > <xsl:matching-substring> > <xsl:value-of select="concat(string(number(regex-group(3))), '-', > string(number(regex-group(2))), '-', > string(number(regex-group(1))), 'T', > format-number(regex-group(4), '00'), ':', > regex-group(5), ':', > regex-group(6) /> > </xsl:matching-substring> > </xsl:analyze-string> > </xsl:Template> > <xsl:element name="Port"><xsl:value-of select="@Port"/></xsl:element> > </nomCommand> > </xsl:template> > </xsl:stylesheet>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Basic template matching i, Andrew Welch | Thread | Re: [xsl] Basic template matching i, Ihe Onwuka |
Re: [xsl] Basic template matching i, Andrew Welch | Date | Re: [xsl] Basic template matching i, Ruud Grosmann |
Month |