Subject: RE: [xsl] starts-with(preceding-sibling::line,8) From: "Michael Kay" <mhkay@xxxxxxxxxxxx> Date: Thu, 12 Jul 2001 08:58:35 +0100 |
Since the error message relates to a "batch" tag, and there aren't any <batch> tags in the pieces of XML source and stylesheet that you've shown us, it's reasonable to assume that the error is in a part that you haven't shown us. Are you trying to run this in the browser? If so, that's the worst possible debugging environment. Get your self a processor that you can run from the command line. Mike Kay Software AG > -----Original Message----- > From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx > [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx]On Behalf Of Keith > Sent: 11 July 2001 23:06 > To: Xsl-List (E-mail 2) > Subject: [xsl] starts-with(preceding-sibling::line,8) > > > Good day everyone, > I had to move some logic from a VB component into several 'dedicated' > stylesheets. These files are coming in fixed-with, comma > delemited,quoted-comma etc. > the one in question is fixed-width and the order of the lines MUST be: > starting characters- > 5, then any number of paired 6's and 7's followed by an 8 > example: > > 598e3983423 John Smith12334 PhoenixAZ55866 23423423 > 43545 345345345 > 632434890 other info > 723423 other info > 6...... > 7...... > 8234234324 .............. > then it starts with a 5 and continues > > I already call to an Error template with parameters of the > section of the > file (header,batch,transaction,trailer) and the contents of > the line(node) > itself for lines of length less than is required, using <xsl:message > terminate="yes"> to generate the parseError reason. > all "line" nodes are children of a "Temp" root node > Now I want to call the same Error template IF the current line node > starts-with 5 but the preceding line node does not start with an 8 > > <this is the part of the template select="line" > section, after I test for > the starts-with 5 character and after the test is performed > to assure the > proper line character length> > > <xsl:if test="position()>1 and > not(starts-with(preceding::line,8)">'of > course the first line won't have a closing line behind it > <xsl:call-template name="Error"> > <xsl:with-param name="errType">Header</xsl:with-param> > <xsl:with-param name="errLine"><xsl:value-of > select="."/></xsl:with-param> > </xsl:call-template> > </xsl:if> > > I can't seem to combine the starts-with and the preceding or > preceding-sibling functions to make it work right. I always > get a parserror > reason that the closing batch tag doesn't match the starting > header tag (or > something to that effect). This would be fine if there was > only one batch in > the file, however there can be thousands, so returning the > actual line and > section really helps troubleshooting the error. > > any help would be greatly appreciated. > thanks all > > > Keith Brooks > Software Developer > Global eTelecom > Keith@xxxxxxxxxxxxxxxxxx > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] starts-with(preceding-sibling, Keith | Thread | RE: [xsl] starts-with(preceding-sib, Keith |
[xsl] How can I do the xsl file, laurence_zhang | Date | RE: [xsl] cutting it short!, Michael Kay |
Month |