RE: [xsl] upgrading to XSLT 2 was: string token removal

Subject: RE: [xsl] upgrading to XSLT 2 was: string token removal
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Thu, 10 Aug 2006 18:04:14 +0100
You've probably got an extension-element-prefixes attribute in your
stylesheet, bound to the old Saxon namespace. The chances are this attribute
is quite unnecessary - people often put it in thinking that it's needed when
calling extension functions.

You can ignore the warning about running a 1.0 stylesheet with a 2.0
processor; but I would advise changing the version attribute to 2.0 to get
the benefits of XSLT 2.0 type checking. It's possible this might throw up
one or two errors, however - for example 

start-with(-12.3, "-")

is allowed under version="1.0" but is a type error under version="2.0".

Michael Kay
http://www.saxonica.com/ 

> -----Original Message-----
> From: Webmaster [mailto:Webmaster@xxxxxxxxxxx] 
> Sent: 09 August 2006 22:32
> To: 'xsl-list@xxxxxxxxxxxxxxxxxxxxxx'
> Subject: RE: [xsl] upgrading to XSLT 2 was: string token removal
> 
> Thank you for your quick response! Got a little further:  
> Now, I'm getting a warning that I'm running a 1.0 stylesheet 
> with a 2.0 processor, which I would think would be ok, but it 
> then errors out on:
> 
> Exception in thread "main" java.lang.NoClassDefFoundError:
> /com/icl/saxon/style/ExtensionElementFactory
> 
> Any thoughts on this?
> 
> 
> > -----Original Message-----
> > From: Michael Kay [mailto:mike@xxxxxxxxxxxx]
> > Sent: Wednesday, August 09, 2006 3:35 PM
> > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > Subject: RE: [xsl] upgrading to XSLT 2 was: string token removal
> > 
> > 
> > The entry point for Saxon8 changed from com.icl.saxon.StyleSheet to 
> > net.sf.saxon.Transform.
> > 
> > Michael Kay
> > http://www.saxonica.com/
> > 
> > > -----Original Message-----
> > > From: Webmaster [mailto:Webmaster@xxxxxxxxxxx]
> > > Sent: 09 August 2006 21:04
> > > To: 'xsl-list@xxxxxxxxxxxxxxxxxxxxxx'
> > > Subject: RE: [xsl] upgrading to XSLT 2 was: string token removal
> > > 
> > > Hi. I was using saxon 6.5.3, which I undstand to be XSLT 
> 1.0, so I 
> > > installed saxon8, and updated my classpath to the new saxon8.jar..
> > > 
> > > I'm getting the error:
> > > Exception in thread "main" java.lang.NoClassDefFoundError:
> > > com/icl/saxon/StyleSheet
> > > 
> > > Is there anyone out there that could help me on this? I tried 
> > > looking on the web without much success.
> > > 
> > > Is there a specific version of Java I need? I have 1.4.0_8
> > > 
> > > Thanks for your quick response and  help David!
> > > 
> > > LN
> > > 
> > > > -----Original Message-----
> > > > From: David Carlisle [mailto:davidc@xxxxxxxxx]
> > > > Sent: Wednesday, August 09, 2006 10:55 AM
> > > > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > > > Subject: Re: [xsl] string token removal
> > > > 
> > > > 
> > > > 
> > > > Assuming that "year" is any string of space, four digits,
> > comma and
> > > > you want to replace them by a comma then in xslt2 you can go 
> > > > <xsl:value-of select="replace(.,'
> > [0-9][0-9][0-9][0-9],',',')"/> in
> > > > xslt1 you'd have to try a lot harder unless you have 
> acces sto an 
> > > > extension function with regular expression support, which
> > some xslt
> > > > systems do have.
> > > > 
> > > > David

Current Thread