Schema Aware XSLT problems

classic Classic list List threaded Threaded
35 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Schema Aware XSLT problems

Ryan Puddephatt

Hi all,

            I’m trying to use a Schema in XSLT. I have managed to get Saxon 8 SA working within OPS and can run any normal XSLT, but when I run one with a schema using ‘instance of’ ‘castable to’ ‘cast as’ or ‘treat as’ is gives the following error

 

XPath syntax exception (XPath syntax error at char 16 on line 0 in {...stance of x:numericColumnLa...}: Unknown atomic type x:numericColumnLabel) for expression: $nu instance of x:numericColumnLabel

 

I can’t see why, if I take the same XSLT, the same two XML inputs and the schema and run it all on the command line, it does it no problems (that’s even using the same JARs that are in the OPS lib directory)

 

Any ideas why this might be? Its definitely using the SA version as I changed the processor to a normal XSLT one and got an error related to it!

 

Thanks

 

Ryan Puddephatt

Software Engineer

TFX Group - IT UK

1 Michaelson Square

Livingston

West Lothian

Scotand

EH54 7DP

 

* [hidden email]

( 01506 407 110

7  01506 407 108

 

 



--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

RE: Schema Aware XSLT problems

Ryan Puddephatt

Hi all,

            I noticed you have now upgraded to Saxon 8.7 now, so I got the last unstable build, but it still doesn’t work. I’ve tried everything, but no joy

 

I have a very basic schema and XSLT like so:

 

<xsl:stylesheet version="2.0"

  xmlns:xs="http://www.w3.org/2001/XMLSchema"

  xmlns:x="http://www.teleflex.com/ns/xlex-description">

    <xsl:import-schema namespace="http://www.teleflex.com/ns/xlex-description">

      <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"

        elementFormDefault="qualified"

        targetNamespace=”http://www.teleflex.com/ns/xlex-description”

        xmlns:x="http://www.teleflex.com/ns/xlex-description">

        <xs:simpleType name="numericColumnLabel">

          <xs:restriction base="xs:integer">

            <xs:minInclusive value="0"/>

            <xs:maxInclusive value="256"/>

          </xs:restriction>

        </xs:simpleType>

      </xs:schema>

    </xsl:import-schema>

   

    <xsl:template match="/">

      <doc>

        <xsl:variable name="n" select="260" as="xs:integer"/>

        <xsl:choose>

          <xsl:when test="$n instance of x:numericColumnLabel">

            <xsl:text>TRUE</xsl:text>

          </xsl:when>

          <xsl:otherwise>

            <xsl:text>FALSE</xsl:text>

          </xsl:otherwise>

        </xsl:choose>

      </doc>

    </xsl:template>

</xsl:stylesheet>

 

This is run through a custom processor called oxf:saxon8sa, which I set up in the custom-processor.xml like so

 

<processor name="oxf:saxon8sa">

  <instantiation name="oxf:generic-xslt-2.0">

    <input name="transformer">

      <config>

        <class>com.saxonica.SchemaAwareTransformerFactory</class>

      </config>

    </input>

  </instantiation>

</processor>

 

I’ve made sure it is running the Schema Aware by changing the processor to oxf:xslt-2.0 which tells me a I need to use schema aware saxon. I have the license file in place, and can see the error when I remove it. This still gives me the error I listed in my previous email and I’ve copied the full stack trace below incase that helps. I have also tested casting the variable $n to x:numberColumnLabel and this surprisingly works. Also as I said before I have used the same Saxon JARs at the command prompt and it works without a problem. I don’t know why this doesn’t work, but it appears to be OPS specific, any ideas?

 

org.orbeon.saxon.trans.StaticError: XPath syntax error at char 28 on line 0 in {...stance of x:numericColumnLa...}:

    Unknown atomic type x:numericColumnLabel

     at org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:125)

     at org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:101)

     at org.orbeon.saxon.expr.ExpressionParser.getAtomicType(ExpressionParser.java:726)

     at org.orbeon.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.java:838)

     at org.orbeon.saxon.expr.ExpressionParser.parseInstanceOfExpression(ExpressionParser.java:570)

     at org.orbeon.saxon.expr.ExpressionParser.parseIntersectExpression(ExpressionParser.java:999)

     at org.orbeon.saxon.expr.ExpressionParser.parseUnionExpression(ExpressionParser.java:981)

     at org.orbeon.saxon.expr.ExpressionParser.parseMultiplicativeExpression(ExpressionParser.java:918)

     at org.orbeon.saxon.expr.ExpressionParser.parseAdditiveExpression(ExpressionParser.java:898)

     at org.orbeon.saxon.expr.ExpressionParser.parseRangeExpression(ExpressionParser.java:814)

     at org.orbeon.saxon.expr.ExpressionParser.parseComparisonExpression(ExpressionParser.java:764)

     at org.orbeon.saxon.expr.ExpressionParser.parseAndExpression(ExpressionParser.java:380)

     at org.orbeon.saxon.expr.ExpressionParser.parseOrExpression(ExpressionParser.java:362)

     at org.orbeon.saxon.expr.ExpressionParser.parseExprSingle(ExpressionParser.java:316)

     at org.orbeon.saxon.expr.ExpressionParser.parseExpression(ExpressionParser.java:280)

     at org.orbeon.saxon.expr.ExpressionParser.parse(ExpressionParser.java:200)

     at org.orbeon.saxon.expr.ExpressionTool.make(ExpressionTool.java:54)

     at org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$StylesheetForwardingContentHandler.startElement(XSLTTransformer.java:579)

     at org.orbeon.oxf.xml.TeeContentHandler.startElement(TeeContentHandler.java:80)

     at org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContentHandler.java:87)

     at org.orbeon.oxf.xml.SAXStore.startElement(SAXStore.java:353)

     at org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContentHandler.java:87)

     at orbeon.apache.xerces.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:485)

     at orbeon.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:320)

     at orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1534)

     at orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:338)

     at orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.java:828)

     at orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.java:758)

     at orbeon.apache.xerces.parsers.XMLParser.parse(XMLParser.java:148)

     at orbeon.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1178)

     at org.orbeon.oxf.xml.XMLUtils.inputSourceToSAX(XMLUtils.java:251)

     at org.orbeon.oxf.xml.XMLUtils.inputStreamToSAX(XMLUtils.java:236)

     at org.orbeon.oxf.resources.ResourceManagerBase.getContentAsSAX(ResourceManagerBase.java:134)

     at org.orbeon.oxf.resources.PriorityResourceManagerImpl$4.run(PriorityResourceManagerImpl.java:106)

     at org.orbeon.oxf.resources.PriorityResourceManagerImpl.delegate(PriorityResourceManagerImpl.java:252)

     at org.orbeon.oxf.resources.PriorityResourceManagerImpl.getContentAsSAX(PriorityResourceManagerImpl.java:104)

     at org.orbeon.oxf.processor.generator.URLGenerator$OXFResourceHandler.readXML(URLGenerator.java:636)

     at org.orbeon.oxf.processor.generator.URLGenerator$1.readImpl(URLGenerator.java:404)

     at org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)

     at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)

     at org.orbeon.oxf.xml.ProcessorOutputXMLReader.parse(ProcessorOutputXMLReader.java:40)

     at net.sf.saxon.event.Sender.sendSAXSource(Sender.java:239)

     at net.sf.saxon.event.Sender.send(Sender.java:106)

     at net.sf.saxon.event.Sender.send(Sender.java:45)

     at net.sf.saxon.PreparedStylesheet.loa

Reply | Threaded
Open this post in threaded view
|

Re: Schema Aware XSLT problems

Erik Bruchez
Administrator
Ryan,

The Saxon upgrade should not affect this, since the Saxon used in OPS is
  under the org.orbeon.saxon package. This means you should be able to
use your own SA version of Saxon without problems. But apparently,
that's not the case ;-)

What I see in the stacktrace is that no com.saxonica class is present,
but org.orbeon.saxon classes are used. This would appear to tell us that
the SA version in fact is *not* used. What if you call your stylesheet
directly from XPL by using oxf:saxon8sa ?

-Erik

Ryan Puddephatt wrote:

> Hi all,
>
>             I noticed you have now upgraded to Saxon 8.7 now, so I got
> the last unstable build, but it still doesn’t work. I’ve tried
> everything, but no joy
>
>  
>
> I have a very basic schema and XSLT like so:
>
>  
>
> <xsl:stylesheet version="2.0"
>
>   xmlns:xs="http://www.w3.org/2001/XMLSchema"
>
>   xmlns:x="http://www.teleflex.com/ns/xlex-description">
>
>     <xsl:import-schema
> namespace="http://www.teleflex.com/ns/xlex-description">
>
>       <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
>
>         elementFormDefault="qualified"
>
>         targetNamespace=”http://www.teleflex.com/ns/xlex-description”
>
>         xmlns:x="http://www.teleflex.com/ns/xlex-description">
>
>         <xs:simpleType name="numericColumnLabel">
>
>           <xs:restriction base="xs:integer">
>
>             <xs:minInclusive value="0"/>
>
>             <xs:maxInclusive value="256"/>
>
>           </xs:restriction>
>
>         </xs:simpleType>
>
>       </xs:schema>
>
>     </xsl:import-schema>
>
>    
>
>     <xsl:template match="/">
>
>       <doc>
>
>         <xsl:variable name="n" select="260" as="xs:integer"/>
>
>         <xsl:choose>
>
>           <xsl:when test="$n instance of x:numericColumnLabel">
>
>             <xsl:text>TRUE</xsl:text>
>
>           </xsl:when>
>
>           <xsl:otherwise>
>
>             <xsl:text>FALSE</xsl:text>
>
>           </xsl:otherwise>
>
>         </xsl:choose>
>
>       </doc>
>
>     </xsl:template>
>
> </xsl:stylesheet>
>
>  
>
> This is run through a custom processor called oxf:saxon8sa, which I set
> up in the custom-processor.xml like so
>
>  
>
> <processor name="oxf:saxon8sa">
>
>   <instantiation name="oxf:generic-xslt-2.0">
>
>     <input name="transformer">
>
>       <config>
>
>         <class>com.saxonica.SchemaAwareTransformerFactory</class>
>
>       </config>
>
>     </input>
>
>   </instantiation>
>
> </processor>
>
>  
>
> I’ve made sure it is running the Schema Aware by changing the processor
> to oxf:xslt-2.0 which tells me a I need to use schema aware saxon. I
> have the license file in place, and can see the error when I remove it.
> This still gives me the error I listed in my previous email and I’ve
> copied the full stack trace below incase that helps. I have also tested
> casting the variable $n to x:numberColumnLabel and this surprisingly
> works. Also as I said before I have used the same Saxon JARs at the
> command prompt and it works without a problem. I don’t know why this
> doesn’t work, but it appears to be OPS specific, any ideas?
>
>  
>
> org.orbeon.saxon.trans.StaticError: XPath syntax error at char 28 on
> line 0 in {...stance of x:numericColumnLa...}:
>
>     Unknown atomic type x:numericColumnLabel
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:125)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:101)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.getAtomicType(ExpressionParser.java:726)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.java:838)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseInstanceOfExpression(ExpressionParser.java:570)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseIntersectExpression(ExpressionParser.java:999)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseUnionExpression(ExpressionParser.java:981)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseMultiplicativeExpression(ExpressionParser.java:918)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseAdditiveExpression(ExpressionParser.java:898)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseRangeExpression(ExpressionParser.java:814)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseComparisonExpression(ExpressionParser.java:764)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseAndExpression(ExpressionParser.java:380)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseOrExpression(ExpressionParser.java:362)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseExprSingle(ExpressionParser.java:316)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parseExpression(ExpressionParser.java:280)
>
>      at
> org.orbeon.saxon.expr.ExpressionParser.parse(ExpressionParser.java:200)
>
>      at org.orbeon.saxon.expr.ExpressionTool.make(ExpressionTool.java:54)
>
>      at
> org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$StylesheetForwardingContentHandler.startElement(XSLTTransformer.java:579)
>
>      at
> org.orbeon.oxf.xml.TeeContentHandler.startElement(TeeContentHandler.java:80)
>
>      at
> org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContentHandler.java:87)
>
>      at org.orbeon.oxf.xml.SAXStore.startElement(SAXStore.java:353)
>
>      at
> org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContentHandler.java:87)
>
>      at
> orbeon.apache.xerces.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:485)
>
>      at
> orbeon.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:320)
>
>      at
> orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1534)
>
>      at
> orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:338)
>
>      at
> orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.java:828)
>
>      at
> orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.java:758)
>
>      at orbeon.apache.xerces.parsers.XMLParser.parse(XMLParser.java:148)
>
>      at
> orbeon.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1178)
>
>      at org.orbeon.oxf.xml.XMLUtils.inputSourceToSAX(XMLUtils.java:251)
>
>      at org.orbeon.oxf.xml.XMLUtils.inputStreamToSAX(XMLUtils.java:236)
>
>      at
> org.orbeon.oxf.resources.ResourceManagerBase.getContentAsSAX(ResourceManagerBase.java:134)
>
>      at
> org.orbeon.oxf.resources.PriorityResourceManagerImpl$4.run(PriorityResourceManagerImpl.java:106)
>
>      at
> org.orbeon.oxf.resources.PriorityResourceManagerImpl.delegate(PriorityResourceManagerImpl.java:252)
>
>      at
> org.orbeon.oxf.resources.PriorityResourceManagerImpl.getContentAsSAX(PriorityResourceManagerImpl.java:104)
>
>      at
> org.orbeon.oxf.processor.generator.URLGenerator$OXFResourceHandler.readXML(URLGenerator.java:636)
>
>      at
> org.orbeon.oxf.processor.generator.URLGenerator$1.readImpl(URLGenerator.java:404)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.xml.ProcessorOutputXMLReader.parse(ProcessorOutputXMLReader.java:40)
>
>      at net.sf.saxon.event.Sender.sendSAXSource(Sender.java:239)
>
>      at net.sf.saxon.event.Sender.send(Sender.java:106)
>
>      at net.sf.saxon.event.Sender.send(Sender.java:45)
>
>      at
> net.sf.saxon.PreparedStylesheet.loadStylesheetModule(PreparedStylesheet.java:177)
>
>      at net.sf.saxon.PreparedStylesheet.prepare(PreparedStylesheet.java:114)
>
>      at
> net.sf.saxon.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:124)
>
>      at
> org.orbeon.oxf.xml.TransformerUtils.getTemplates(TransformerUtils.java:256)
>
>      at
> org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.createTransformer(XSLTTransformer.java:354)
>
>      at
> org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.readImpl(XSLTTransformer.java:124)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcessorFilter$ForwarderProcessorOutput.read(ProcessorImpl.java:941)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:354)
>
>      at
> org.orbeon.oxf.processor.DebugProcessor$1.readImpl(DebugProcessor.java:62)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcessorFilter.read(ProcessorImpl.java:965)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProcessor.java:66)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor.java:96)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:515)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProcessor.java:66)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProcessor.java:94)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:354)
>
>      at
> org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.java:33)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProcessor.java:66)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor.java:96)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:515)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProcessor.java:66)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProcessor.java:94)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImpl(ConcreteChooseProcessor.java:123)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:354)
>
>      at
> org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.java:33)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProcessor.java:66)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor.java:96)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:515)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProcessor.java:66)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProcessor.java:94)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:354)
>
>      at
> org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.java:33)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProcessor.java:66)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor.java:96)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:515)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProcessor.java:66)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProcessor.java:94)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImpl(ConcreteChooseProcessor.java:123)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:354)
>
>      at
> org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.java:33)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProcessor.java:66)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor.java:96)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:515)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProcessor.java:66)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProcessor.java:94)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImpl(ConcreteChooseProcessor.java:123)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.pipeline.TeeProcessor.access$100(TeeProcessor.java:36)
>
>      at
> org.orbeon.oxf.processor.pipeline.TeeProcessor$1.readImpl(TeeProcessor.java:57)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1170)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readInputAsDOM4J(ProcessorImpl.java:404)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl$4.read(ProcessorImpl.java:428)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsObject(ProcessorImpl.java:470)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsDOM4J(ProcessorImpl.java:426)
>
>      at
> org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(ConcreteChooseProcessor.java:186)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor$11.run(PipelineProcessor.java:652)
>
>      at
> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:515)
>
>      at
> org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcessor.java:649)
>
>      at
> org.orbeon.oxf.processor.PageFlowControllerProcessor.start(PageFlowControllerProcessor.java:416)
>
>      at org.orbeon.oxf.pipeline.InitUtils.runProcessor(InitUtils.java:86)
>
>      at
> org.orbeon.oxf.webapp.ProcessorService.service(ProcessorService.java:95)
>
>      at
> org.orbeon.oxf.servlet.OPSServletDelegate.service(OPSServletDelegate.java:144)
>
>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>
>      at org.orbeon.oxf.servlet.OPSServlet.service(OPSServlet.java:74)
>
>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>
>      at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
>
>      at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
>
>      at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
>
>      at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>
>      at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>
>      at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>
>      at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>
>      at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>
>      at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>
>      at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>
>      at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
>
>      at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
>
>      at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>
>      at
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
>
>      at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>
>      at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:163)
>
>      at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
>
>      at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>
>      at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>
>      at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
>
>      at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
>
>      at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>
>      at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>
>      at
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
>
>      at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
>
>      at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700)
>
>      at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
>
>      at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
>
>      at java.lang.Thread.run(Thread.java:595)
>
>  
>
> Thanks
>
>  
>
> *Ryan Puddephatt*
>
> Software Engineer
>
> TFX Group - IT UK
>
> 1 Michaelson Square
>
> Livingston
>
> West Lothian
>
> Scotand
>
> EH54 7DP
>
>  
>
> * [hidden email]
>
> ( 01506 407 110
>
> 7  01506 407 108
>
>  
>
> ------------------------------------------------------------------------
>
> *From:* Ryan Puddephatt [mailto:[hidden email]]
> *Sent:* 13 April 2006 09:53
> *To:* [hidden email]
> *Subject:* [ops-users] Schema Aware XSLT problems
>
>  
>
> Hi all,
>
>             I’m trying to use a Schema in XSLT. I have managed to get
> Saxon 8 SA working within OPS and can run any normal XSLT, but when I
> run one with a schema using ‘instance of’ ‘castable to’ ‘cast as’ or
> ‘treat as’ is gives the following error
>
>  
>
> XPath syntax exception (XPath syntax error at char 16 on line 0 in
> {...stance of x:numericColumnLa...}: Unknown atomic type
> x:numericColumnLabel) for expression: $nu instance of x:numericColumnLabel
>
>  
>
> I can’t see why, if I take the same XSLT, the same two XML inputs and
> the schema and run it all on the command line, it does it no problems
> (that’s even using the same JARs that are in the OPS lib directory)
>
>  
>
> Any ideas why this might be? Its definitely using the SA version as I
> changed the processor to a normal XSLT one and got an error related to it!
>
>  
>
> Thanks
>
>  
>
> *Ryan Puddephatt*
>
> Software Engineer
>
> TFX Group - IT UK
>
> 1 Michaelson Square
>
> Livingston
>
> West Lothian
>
> Scotand
>
> EH54 7DP
>
>  
>
> * [hidden email]
>
> ( 01506 407 110
>
> 7  01506 407 108
>
>  
>
>  
>
>
> ------------------------------------------------------------------------
>
>
> --
> You receive this message as a subscriber of the [hidden email] mailing list.
> To unsubscribe: mailto:[hidden email]
> For general help: mailto:[hidden email]?subject=help
> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws



--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

RE: Schema Aware XSLT problems

Ryan Puddephatt
Erik,
        I tested the processor by casting to a type from the schema
x:numberColumnLabel($n) and it does it fine, but running through a non SA
processor like oxf:xslt I get an error when using xsl:import-schema because
I need a schema aware processor. So this says to me its working, but I agree
you can't see it in the stack trace. Any ideas?

Ryan Puddephatt
Software Engineer
TFX Group - IT UK
1 Michaelson Square
Livingston
West Lothian
Scotand
EH54 7DP
 
* [hidden email]
( 01506 407 110
7  01506 407 108
 

>-----Original Message-----
>From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>Sent: 13 April 2006 20:01
>To: [hidden email]
>Subject: Re: [ops-users] Schema Aware XSLT problems
>
>Ryan,
>
>The Saxon upgrade should not affect this, since the Saxon used in OPS is
>  under the org.orbeon.saxon package. This means you should be able to
>use your own SA version of Saxon without problems. But apparently,
>that's not the case ;-)
>
>What I see in the stacktrace is that no com.saxonica class is present,
>but org.orbeon.saxon classes are used. This would appear to tell us that
>the SA version in fact is *not* used. What if you call your stylesheet
>directly from XPL by using oxf:saxon8sa ?
>
>-Erik
>
>Ryan Puddephatt wrote:
>> Hi all,
>>
>>             I noticed you have now upgraded to Saxon 8.7 now, so I got
>> the last unstable build, but it still doesn't work. I've tried
>> everything, but no joy
>>
>>
>>
>> I have a very basic schema and XSLT like so:
>>
>>
>>
>> <xsl:stylesheet version="2.0"
>>
>>   xmlns:xs="http://www.w3.org/2001/XMLSchema"
>>
>>   xmlns:x="http://www.teleflex.com/ns/xlex-description">
>>
>>     <xsl:import-schema
>> namespace="http://www.teleflex.com/ns/xlex-description">
>>
>>       <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
>>
>>         elementFormDefault="qualified"
>>
>>         targetNamespace="http://www.teleflex.com/ns/xlex-description"
>>
>>         xmlns:x="http://www.teleflex.com/ns/xlex-description">
>>
>>         <xs:simpleType name="numericColumnLabel">
>>
>>           <xs:restriction base="xs:integer">
>>
>>             <xs:minInclusive value="0"/>
>>
>>             <xs:maxInclusive value="256"/>
>>
>>           </xs:restriction>
>>
>>         </xs:simpleType>
>>
>>       </xs:schema>
>>
>>     </xsl:import-schema>
>>
>>
>>
>>     <xsl:template match="/">
>>
>>       <doc>
>>
>>         <xsl:variable name="n" select="260" as="xs:integer"/>
>>
>>         <xsl:choose>
>>
>>           <xsl:when test="$n instance of x:numericColumnLabel">
>>
>>             <xsl:text>TRUE</xsl:text>
>>
>>           </xsl:when>
>>
>>           <xsl:otherwise>
>>
>>             <xsl:text>FALSE</xsl:text>
>>
>>           </xsl:otherwise>
>>
>>         </xsl:choose>
>>
>>       </doc>
>>
>>     </xsl:template>
>>
>> </xsl:stylesheet>
>>
>>
>>
>> This is run through a custom processor called oxf:saxon8sa, which I set
>> up in the custom-processor.xml like so
>>
>>
>>
>> <processor name="oxf:saxon8sa">
>>
>>   <instantiation name="oxf:generic-xslt-2.0">
>>
>>     <input name="transformer">
>>
>>       <config>
>>
>>         <class>com.saxonica.SchemaAwareTransformerFactory</class>
>>
>>       </config>
>>
>>     </input>
>>
>>   </instantiation>
>>
>> </processor>
>>
>>
>>
>> I've made sure it is running the Schema Aware by changing the processor
>> to oxf:xslt-2.0 which tells me a I need to use schema aware saxon. I
>> have the license file in place, and can see the error when I remove it.
>> This still gives me the error I listed in my previous email and I've
>> copied the full stack trace below incase that helps. I have also tested
>> casting the variable $n to x:numberColumnLabel and this surprisingly
>> works. Also as I said before I have used the same Saxon JARs at the
>> command prompt and it works without a problem. I don't know why this
>> doesn't work, but it appears to be OPS specific, any ideas?
>>
>>
>>
>> org.orbeon.saxon.trans.StaticError: XPath syntax error at char 28 on
>> line 0 in {...stance of x:numericColumnLa...}:
>>
>>     Unknown atomic type x:numericColumnLabel
>>
>>      at
>> org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:125)
>>
>>      at
>> org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:101)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.getAtomicType(ExpressionParser.java:
>726)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.j
>ava:838)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseInstanceOfExpression(Expression
>Parser.java:570)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseIntersectExpression(ExpressionP
>arser.java:999)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseUnionExpression(ExpressionParse
>r.java:981)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseMultiplicativeExpression(Expres
>sionParser.java:918)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseAdditiveExpression(ExpressionPa
>rser.java:898)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseRangeExpression(ExpressionParse
>r.java:814)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseComparisonExpression(Expression
>Parser.java:764)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseAndExpression(ExpressionParser.
>java:380)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseOrExpression(ExpressionParser.j
>ava:362)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseExprSingle(ExpressionParser.jav
>a:316)
>>
>>      at
>>
>org.orbeon.saxon.expr.ExpressionParser.parseExpression(ExpressionParser.jav
>a:280)
>>
>>      at
>> org.orbeon.saxon.expr.ExpressionParser.parse(ExpressionParser.java:200)
>>
>>      at org.orbeon.saxon.expr.ExpressionTool.make(ExpressionTool.java:54)
>>
>>      at
>>
>org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$StylesheetForward
>ingContentHandler.startElement(XSLTTransformer.java:579)
>>
>>      at
>>
>org.orbeon.oxf.xml.TeeContentHandler.startElement(TeeContentHandler.java:80
>)
>>
>>      at
>>
>org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContentH
>andler.java:87)
>>
>>      at org.orbeon.oxf.xml.SAXStore.startElement(SAXStore.java:353)
>>
>>      at
>>
>org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContentH
>andler.java:87)
>>
>>      at
>>
>orbeon.apache.xerces.parsers.AbstractSAXParser.startElement(AbstractSAXPars
>er.java:485)
>>
>>      at
>>
>orbeon.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDo
>cumentScannerImpl.java:320)
>>
>>      at
>>
>orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDis
>patcher.dispatch(XMLDocumentFragmentScannerImpl.java:1534)
>>
>>      at
>>
>orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDo
>cumentFragmentScannerImpl.java:338)
>>
>>      at
>>
>orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.ja
>va:828)
>>
>>      at
>>
>orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.ja
>va:758)
>>
>>      at orbeon.apache.xerces.parsers.XMLParser.parse(XMLParser.java:148)
>>
>>      at
>>
>orbeon.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java
>:1178)
>>
>>      at org.orbeon.oxf.xml.XMLUtils.inputSourceToSAX(XMLUtils.java:251)
>>
>>      at org.orbeon.oxf.xml.XMLUtils.inputStreamToSAX(XMLUtils.java:236)
>>
>>      at
>>
>org.orbeon.oxf.resources.ResourceManagerBase.getContentAsSAX(ResourceManage
>rBase.java:134)
>>
>>      at
>>
>org.orbeon.oxf.resources.PriorityResourceManagerImpl$4.run(PriorityResource
>ManagerImpl.java:106)
>>
>>      at
>>
>org.orbeon.oxf.resources.PriorityResourceManagerImpl.delegate(PriorityResou
>rceManagerImpl.java:252)
>>
>>      at
>>
>org.orbeon.oxf.resources.PriorityResourceManagerImpl.getContentAsSAX(Priori
>tyResourceManagerImpl.java:104)
>>
>>      at
>>
>org.orbeon.oxf.processor.generator.URLGenerator$OXFResourceHandler.readXML(
>URLGenerator.java:636)
>>
>>      at
>>
>org.orbeon.oxf.processor.generator.URLGenerator$1.readImpl(URLGenerator.jav
>a:404)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.xml.ProcessorOutputXMLReader.parse(ProcessorOutputXMLReader.
>java:40)
>>
>>      at net.sf.saxon.event.Sender.sendSAXSource(Sender.java:239)
>>
>>      at net.sf.saxon.event.Sender.send(Sender.java:106)
>>
>>      at net.sf.saxon.event.Sender.send(Sender.java:45)
>>
>>      at
>>
>net.sf.saxon.PreparedStylesheet.loadStylesheetModule(PreparedStylesheet.jav
>a:177)
>>
>>      at
>net.sf.saxon.PreparedStylesheet.prepare(PreparedStylesheet.java:114)
>>
>>      at
>>
>net.sf.saxon.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.jav
>a:124)
>>
>>      at
>>
>org.orbeon.oxf.xml.TransformerUtils.getTemplates(TransformerUtils.java:256)
>>
>>      at
>>
>org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.createTransform
>er(XSLTTransformer.java:354)
>>
>>      at
>>
>org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.readImpl(XSLTTr
>ansformer.java:124)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcesso
>rFilter$ForwarderProcessorOutput.read(ProcessorImpl.java:941)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:35
>4)
>>
>>      at
>>
>org.orbeon.oxf.processor.DebugProcessor$1.readImpl(DebugProcessor.java:62)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcesso
>rFilter.read(ProcessorImpl.java:965)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProc
>essor.java:66)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor
>.java:96)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:5
>15)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProc
>essor.java:66)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProc
>essor.java:94)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:35
>4)
>>
>>      at
>>
>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.jav
>a:33)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProc
>essor.java:66)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor
>.java:96)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:5
>15)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProc
>essor.java:66)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProc
>essor.java:94)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImpl
>(ConcreteChooseProcessor.java:123)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:35
>4)
>>
>>      at
>>
>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.jav
>a:33)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProc
>essor.java:66)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor
>.java:96)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:5
>15)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProc
>essor.java:66)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProc
>essor.java:94)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:35
>4)
>>
>>      at
>>
>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.jav
>a:33)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProc
>essor.java:66)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor
>.java:96)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:5
>15)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProc
>essor.java:66)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProc
>essor.java:94)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImpl
>(ConcreteChooseProcessor.java:123)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:35
>4)
>>
>>      at
>>
>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.jav
>a:33)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProc
>essor.java:66)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor
>.java:96)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:5
>15)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProc
>essor.java:66)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProc
>essor.java:94)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImpl
>(ConcreteChooseProcessor.java:123)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.TeeProcessor.access$100(TeeProcessor.java
>:36)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.TeeProcessor$1.readImpl(TeeProcessor.java
>:57)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorIm
>pl.java:1170)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:34
>9)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsDOM4J(ProcessorImpl.java:
>404)
>>
>>      at
>> org.orbeon.oxf.processor.ProcessorImpl$4.read(ProcessorImpl.java:428)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsObject(ProcessorImpl
>.java:470)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsDOM4J(ProcessorImpl.
>java:426)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(Conc
>reteChooseProcessor.java:186)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11.run(PipelineProcesso
>r.java:652)
>>
>>      at
>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:5
>15)
>>
>>      at
>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcessor
>.java:649)
>>
>>      at
>>
>org.orbeon.oxf.processor.PageFlowControllerProcessor.start(PageFlowControll
>erProcessor.java:416)
>>
>>      at org.orbeon.oxf.pipeline.InitUtils.runProcessor(InitUtils.java:86)
>>
>>      at
>> org.orbeon.oxf.webapp.ProcessorService.service(ProcessorService.java:95)
>>
>>      at
>>
>org.orbeon.oxf.servlet.OPSServletDelegate.service(OPSServletDelegate.java:1
>44)
>>
>>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>>
>>      at org.orbeon.oxf.servlet.OPSServlet.service(OPSServlet.java:74)
>>
>>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>>
>>      at
>>
>org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicatio
>nFilterChain.java:247)
>>
>>      at
>>
>org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterC
>hain.java:193)
>>
>>      at
>>
>org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.j
>ava:256)
>>
>>      at
>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invo
>keNext(StandardPipeline.java:643)
>>
>>      at
>>
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>>
>>      at
>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>
>>      at
>>
>org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.j
>ava:191)
>>
>>      at
>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invo
>keNext(StandardPipeline.java:643)
>>
>>      at
>>
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>>
>>      at
>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>
>>      at
>>
>org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
>>
>>      at
>>
>org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:18
>0)
>>
>>      at
>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invo
>keNext(StandardPipeline.java:643)
>>
>>      at
>>
>org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve
>.java:171)
>>
>>      at
>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invo
>keNext(StandardPipeline.java:641)
>>
>>      at
>>
>org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:16
>3)
>>
>>      at
>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invo
>keNext(StandardPipeline.java:641)
>>
>>      at
>>
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>>
>>      at
>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>
>>      at
>>
>org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.jav
>a:174)
>>
>>      at
>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invo
>keNext(StandardPipeline.java:643)
>>
>>      at
>>
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>>
>>      at
>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>
>>      at
>> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
>>
>>      at
>>
>org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
>>
>>      at
>>
>org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConn
>ection(Http11Protocol.java:700)
>>
>>      at
>>
>org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
>>
>>      at
>>
>org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.ja
>va:683)
>>
>>      at java.lang.Thread.run(Thread.java:595)
>>
>>
>>
>> Thanks
>>
>>
>>
>> *Ryan Puddephatt*
>>
>> Software Engineer
>>
>> TFX Group - IT UK
>>
>> 1 Michaelson Square
>>
>> Livingston
>>
>> West Lothian
>>
>> Scotand
>>
>> EH54 7DP
>>
>>
>>
>> * [hidden email]
>>
>> ( 01506 407 110
>>
>> 7  01506 407 108
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>> *From:* Ryan Puddephatt [mailto:[hidden email]]
>> *Sent:* 13 April 2006 09:53
>> *To:* [hidden email]
>> *Subject:* [ops-users] Schema Aware XSLT problems
>>
>>
>>
>> Hi all,
>>
>>             I'm trying to use a Schema in XSLT. I have managed to get
>> Saxon 8 SA working within OPS and can run any normal XSLT, but when I
>> run one with a schema using 'instance of' 'castable to' 'cast as' or
>> 'treat as' is gives the following error
>>
>>
>>
>> XPath syntax exception (XPath syntax error at char 16 on line 0 in
>> {...stance of x:numericColumnLa...}: Unknown atomic type
>> x:numericColumnLabel) for expression: $nu instance of
>x:numericColumnLabel
>>
>>
>>
>> I can't see why, if I take the same XSLT, the same two XML inputs and
>> the schema and run it all on the command line, it does it no problems
>> (that's even using the same JARs that are in the OPS lib directory)
>>
>>
>>
>> Any ideas why this might be? Its definitely using the SA version as I
>> changed the processor to a normal XSLT one and got an error related to
>it!
>>
>>
>>
>> Thanks
>>
>>
>>
>> *Ryan Puddephatt*
>>
>> Software Engineer
>>
>> TFX Group - IT UK
>>
>> 1 Michaelson Square
>>
>> Livingston
>>
>> West Lothian
>>
>> Scotand
>>
>> EH54 7DP
>>
>>
>>
>> * [hidden email]
>>
>> ( 01506 407 110
>>
>> 7  01506 407 108
>>
>>
>>
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>>
>> --
>> You receive this message as a subscriber of the [hidden email]
>mailing list.
>> To unsubscribe: mailto:[hidden email]
>> For general help: mailto:[hidden email]?subject=help
>> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
>




--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

RE: Schema Aware XSLT problems

Ryan Puddephatt
Hi,
        I had a more detailed look at this and downloaded the
XSLTTranformer.java file. I put some loggers in there and the class I
provide starts off as

Com.saxonica.SchemaAwareTransformFactory

Then changes to

org.orbeon.saxon.TransformerFactoryImpl

and finally ends up as

org.orbeon.saxon.Controller

Is this a change I should encounter? Or is it abnormal?
I know Dave has used Schema Aware Saxon before, and I tried this in that
version, which also causes a problem. It appears it may have been around for
a while!

Any ideas on where to start?

Ryan Puddephatt
Software Engineer
TFX Group - IT UK
1 Michaelson Square
Livingston
West Lothian
Scotand
EH54 7DP
 
* [hidden email]
( 01506 407 110
7  01506 407 108
 

>-----Original Message-----
>From: Ryan Puddephatt [mailto:[hidden email]]
>Sent: 14 April 2006 10:27
>To: [hidden email]
>Subject: RE: [ops-users] Schema Aware XSLT problems
>
>Erik,
> I tested the processor by casting to a type from the schema
>x:numberColumnLabel($n) and it does it fine, but running through a non SA
>processor like oxf:xslt I get an error when using xsl:import-schema because
>I need a schema aware processor. So this says to me its working, but I
>agree
>you can't see it in the stack trace. Any ideas?
>
>Ryan Puddephatt
>Software Engineer
>TFX Group - IT UK
>1 Michaelson Square
>Livingston
>West Lothian
>Scotand
>EH54 7DP
>
>* [hidden email]
>( 01506 407 110
>7  01506 407 108
>
>>-----Original Message-----
>>From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>>Sent: 13 April 2006 20:01
>>To: [hidden email]
>>Subject: Re: [ops-users] Schema Aware XSLT problems
>>
>>Ryan,
>>
>>The Saxon upgrade should not affect this, since the Saxon used in OPS is
>>  under the org.orbeon.saxon package. This means you should be able to
>>use your own SA version of Saxon without problems. But apparently,
>>that's not the case ;-)
>>
>>What I see in the stacktrace is that no com.saxonica class is present,
>>but org.orbeon.saxon classes are used. This would appear to tell us that
>>the SA version in fact is *not* used. What if you call your stylesheet
>>directly from XPL by using oxf:saxon8sa ?
>>
>>-Erik
>>
>>Ryan Puddephatt wrote:
>>> Hi all,
>>>
>>>             I noticed you have now upgraded to Saxon 8.7 now, so I got
>>> the last unstable build, but it still doesn't work. I've tried
>>> everything, but no joy
>>>
>>>
>>>
>>> I have a very basic schema and XSLT like so:
>>>
>>>
>>>
>>> <xsl:stylesheet version="2.0"
>>>
>>>   xmlns:xs="http://www.w3.org/2001/XMLSchema"
>>>
>>>   xmlns:x="http://www.teleflex.com/ns/xlex-description">
>>>
>>>     <xsl:import-schema
>>> namespace="http://www.teleflex.com/ns/xlex-description">
>>>
>>>       <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
>>>
>>>         elementFormDefault="qualified"
>>>
>>>         targetNamespace="http://www.teleflex.com/ns/xlex-description"
>>>
>>>         xmlns:x="http://www.teleflex.com/ns/xlex-description">
>>>
>>>         <xs:simpleType name="numericColumnLabel">
>>>
>>>           <xs:restriction base="xs:integer">
>>>
>>>             <xs:minInclusive value="0"/>
>>>
>>>             <xs:maxInclusive value="256"/>
>>>
>>>           </xs:restriction>
>>>
>>>         </xs:simpleType>
>>>
>>>       </xs:schema>
>>>
>>>     </xsl:import-schema>
>>>
>>>
>>>
>>>     <xsl:template match="/">
>>>
>>>       <doc>
>>>
>>>         <xsl:variable name="n" select="260" as="xs:integer"/>
>>>
>>>         <xsl:choose>
>>>
>>>           <xsl:when test="$n instance of x:numericColumnLabel">
>>>
>>>             <xsl:text>TRUE</xsl:text>
>>>
>>>           </xsl:when>
>>>
>>>           <xsl:otherwise>
>>>
>>>             <xsl:text>FALSE</xsl:text>
>>>
>>>           </xsl:otherwise>
>>>
>>>         </xsl:choose>
>>>
>>>       </doc>
>>>
>>>     </xsl:template>
>>>
>>> </xsl:stylesheet>
>>>
>>>
>>>
>>> This is run through a custom processor called oxf:saxon8sa, which I set
>>> up in the custom-processor.xml like so
>>>
>>>
>>>
>>> <processor name="oxf:saxon8sa">
>>>
>>>   <instantiation name="oxf:generic-xslt-2.0">
>>>
>>>     <input name="transformer">
>>>
>>>       <config>
>>>
>>>         <class>com.saxonica.SchemaAwareTransformerFactory</class>
>>>
>>>       </config>
>>>
>>>     </input>
>>>
>>>   </instantiation>
>>>
>>> </processor>
>>>
>>>
>>>
>>> I've made sure it is running the Schema Aware by changing the processor
>>> to oxf:xslt-2.0 which tells me a I need to use schema aware saxon. I
>>> have the license file in place, and can see the error when I remove it.
>>> This still gives me the error I listed in my previous email and I've
>>> copied the full stack trace below incase that helps. I have also tested
>>> casting the variable $n to x:numberColumnLabel and this surprisingly
>>> works. Also as I said before I have used the same Saxon JARs at the
>>> command prompt and it works without a problem. I don't know why this
>>> doesn't work, but it appears to be OPS specific, any ideas?
>>>
>>>
>>>
>>> org.orbeon.saxon.trans.StaticError: XPath syntax error at char 28 on
>>> line 0 in {...stance of x:numericColumnLa...}:
>>>
>>>     Unknown atomic type x:numericColumnLabel
>>>
>>>      at
>>>
>org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:125)
>>>
>>>      at
>>>
>org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:101)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.getAtomicType(ExpressionParser.java
>:
>>726)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.
>j
>>ava:838)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseInstanceOfExpression(Expressio
>n
>>Parser.java:570)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseIntersectExpression(Expression
>P
>>arser.java:999)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseUnionExpression(ExpressionPars
>e
>>r.java:981)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseMultiplicativeExpression(Expre
>s
>>sionParser.java:918)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseAdditiveExpression(ExpressionP
>a
>>rser.java:898)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseRangeExpression(ExpressionPars
>e
>>r.java:814)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseComparisonExpression(Expressio
>n
>>Parser.java:764)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseAndExpression(ExpressionParser
>.
>>java:380)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseOrExpression(ExpressionParser.
>j
>>ava:362)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseExprSingle(ExpressionParser.ja
>v
>>a:316)
>>>
>>>      at
>>>
>>org.orbeon.saxon.expr.ExpressionParser.parseExpression(ExpressionParser.ja
>v
>>a:280)
>>>
>>>      at
>>> org.orbeon.saxon.expr.ExpressionParser.parse(ExpressionParser.java:200)
>>>
>>>      at
>org.orbeon.saxon.expr.ExpressionTool.make(ExpressionTool.java:54)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$StylesheetForwar
>d
>>ingContentHandler.startElement(XSLTTransformer.java:579)
>>>
>>>      at
>>>
>>org.orbeon.oxf.xml.TeeContentHandler.startElement(TeeContentHandler.java:8
>0
>>)
>>>
>>>      at
>>>
>>org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContent
>H
>>andler.java:87)
>>>
>>>      at org.orbeon.oxf.xml.SAXStore.startElement(SAXStore.java:353)
>>>
>>>      at
>>>
>>org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContent
>H
>>andler.java:87)
>>>
>>>      at
>>>
>>orbeon.apache.xerces.parsers.AbstractSAXParser.startElement(AbstractSAXPar
>s
>>er.java:485)
>>>
>>>      at
>>>
>>orbeon.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSD
>o
>>cumentScannerImpl.java:320)
>>>
>>>      at
>>>
>>orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDi
>s
>>patcher.dispatch(XMLDocumentFragmentScannerImpl.java:1534)
>>>
>>>      at
>>>
>>orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLD
>o
>>cumentFragmentScannerImpl.java:338)
>>>
>>>      at
>>>
>>orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.j
>a
>>va:828)
>>>
>>>      at
>>>
>>orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.j
>a
>>va:758)
>>>
>>>      at orbeon.apache.xerces.parsers.XMLParser.parse(XMLParser.java:148)
>>>
>>>      at
>>>
>>orbeon.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.jav
>a
>>:1178)
>>>
>>>      at org.orbeon.oxf.xml.XMLUtils.inputSourceToSAX(XMLUtils.java:251)
>>>
>>>      at org.orbeon.oxf.xml.XMLUtils.inputStreamToSAX(XMLUtils.java:236)
>>>
>>>      at
>>>
>>org.orbeon.oxf.resources.ResourceManagerBase.getContentAsSAX(ResourceManag
>e
>>rBase.java:134)
>>>
>>>      at
>>>
>>org.orbeon.oxf.resources.PriorityResourceManagerImpl$4.run(PriorityResourc
>e
>>ManagerImpl.java:106)
>>>
>>>      at
>>>
>>org.orbeon.oxf.resources.PriorityResourceManagerImpl.delegate(PriorityReso
>u
>>rceManagerImpl.java:252)
>>>
>>>      at
>>>
>>org.orbeon.oxf.resources.PriorityResourceManagerImpl.getContentAsSAX(Prior
>i
>>tyResourceManagerImpl.java:104)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.generator.URLGenerator$OXFResourceHandler.readXML
>(
>>URLGenerator.java:636)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.generator.URLGenerator$1.readImpl(URLGenerator.ja
>v
>>a:404)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.xml.ProcessorOutputXMLReader.parse(ProcessorOutputXMLReader
>.
>>java:40)
>>>
>>>      at net.sf.saxon.event.Sender.sendSAXSource(Sender.java:239)
>>>
>>>      at net.sf.saxon.event.Sender.send(Sender.java:106)
>>>
>>>      at net.sf.saxon.event.Sender.send(Sender.java:45)
>>>
>>>      at
>>>
>>net.sf.saxon.PreparedStylesheet.loadStylesheetModule(PreparedStylesheet.ja
>v
>>a:177)
>>>
>>>      at
>>net.sf.saxon.PreparedStylesheet.prepare(PreparedStylesheet.java:114)
>>>
>>>      at
>>>
>>net.sf.saxon.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.ja
>v
>>a:124)
>>>
>>>      at
>>>
>>org.orbeon.oxf.xml.TransformerUtils.getTemplates(TransformerUtils.java:256
>)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.createTransfor
>m
>>er(XSLTTransformer.java:354)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.readImpl(XSLTT
>r
>>ansformer.java:124)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcess
>o
>>rFilter$ForwarderProcessorOutput.read(ProcessorImpl.java:941)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>5
>>4)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.DebugProcessor$1.readImpl(DebugProcessor.java:62)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcess
>o
>>rFilter.read(ProcessorImpl.java:965)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>c
>>essor.java:66)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>r
>>.java:96)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>5
>>15)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>c
>>essor.java:66)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>c
>>essor.java:94)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>5
>>4)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>v
>>a:33)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>c
>>essor.java:66)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>r
>>.java:96)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>5
>>15)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>c
>>essor.java:66)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>c
>>essor.java:94)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImp
>l
>>(ConcreteChooseProcessor.java:123)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>5
>>4)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>v
>>a:33)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>c
>>essor.java:66)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>r
>>.java:96)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>5
>>15)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>c
>>essor.java:66)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>c
>>essor.java:94)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>5
>>4)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>v
>>a:33)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>c
>>essor.java:66)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>r
>>.java:96)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>5
>>15)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>c
>>essor.java:66)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>c
>>essor.java:94)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImp
>l
>>(ConcreteChooseProcessor.java:123)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>5
>>4)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>v
>>a:33)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>c
>>essor.java:66)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>r
>>.java:96)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>5
>>15)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>c
>>essor.java:66)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>c
>>essor.java:94)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImp
>l
>>(ConcreteChooseProcessor.java:123)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.TeeProcessor.access$100(TeeProcessor.jav
>a
>>:36)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.TeeProcessor$1.readImpl(TeeProcessor.jav
>a
>>:57)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>m
>>pl.java:1170)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>4
>>9)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readInputAsDOM4J(ProcessorImpl.java
>:
>>404)
>>>
>>>      at
>>> org.orbeon.oxf.processor.ProcessorImpl$4.read(ProcessorImpl.java:428)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsObject(ProcessorImp
>l
>>.java:470)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsDOM4J(ProcessorImpl
>.
>>java:426)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(Con
>c
>>reteChooseProcessor.java:186)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11.run(PipelineProcess
>o
>>r.java:652)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>5
>>15)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcesso
>r
>>.java:649)
>>>
>>>      at
>>>
>>org.orbeon.oxf.processor.PageFlowControllerProcessor.start(PageFlowControl
>l
>>erProcessor.java:416)
>>>
>>>      at
>org.orbeon.oxf.pipeline.InitUtils.runProcessor(InitUtils.java:86)
>>>
>>>      at
>>> org.orbeon.oxf.webapp.ProcessorService.service(ProcessorService.java:95)
>>>
>>>      at
>>>
>>org.orbeon.oxf.servlet.OPSServletDelegate.service(OPSServletDelegate.java:
>1
>>44)
>>>
>>>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>>>
>>>      at org.orbeon.oxf.servlet.OPSServlet.service(OPSServlet.java:74)
>>>
>>>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>>>
>>>      at
>>>
>>org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicati
>o
>>nFilterChain.java:247)
>>>
>>>      at
>>>
>>org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilter
>C
>>hain.java:193)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.
>j
>>ava:256)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>o
>>keNext(StandardPipeline.java:643)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>)
>>>
>>>      at
>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.
>j
>>ava:191)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>o
>>keNext(StandardPipeline.java:643)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>)
>>>
>>>      at
>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:1
>8
>>0)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>o
>>keNext(StandardPipeline.java:643)
>>>
>>>      at
>>>
>>org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValv
>e
>>.java:171)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>o
>>keNext(StandardPipeline.java:641)
>>>
>>>      at
>>>
>>org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:1
>6
>>3)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>o
>>keNext(StandardPipeline.java:641)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>)
>>>
>>>      at
>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.ja
>v
>>a:174)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>o
>>keNext(StandardPipeline.java:643)
>>>
>>>      at
>>>
>>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>)
>>>
>>>      at
>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>
>>>      at
>>> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
>>>
>>>      at
>>>
>>org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
>>>
>>>      at
>>>
>>org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processCon
>n
>>ection(Http11Protocol.java:700)
>>>
>>>      at
>>>
>>org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
>>>
>>>      at
>>>
>>org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.j
>a
>>va:683)
>>>
>>>      at java.lang.Thread.run(Thread.java:595)
>>>
>>>
>>>
>>> Thanks
>>>
>>>
>>>
>>> *Ryan Puddephatt*
>>>
>>> Software Engineer
>>>
>>> TFX Group - IT UK
>>>
>>> 1 Michaelson Square
>>>
>>> Livingston
>>>
>>> West Lothian
>>>
>>> Scotand
>>>
>>> EH54 7DP
>>>
>>>
>>>
>>> * [hidden email]
>>>
>>> ( 01506 407 110
>>>
>>> 7  01506 407 108
>>>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> *From:* Ryan Puddephatt [mailto:[hidden email]]
>>> *Sent:* 13 April 2006 09:53
>>> *To:* [hidden email]
>>> *Subject:* [ops-users] Schema Aware XSLT problems
>>>
>>>
>>>
>>> Hi all,
>>>
>>>             I'm trying to use a Schema in XSLT. I have managed to get
>>> Saxon 8 SA working within OPS and can run any normal XSLT, but when I
>>> run one with a schema using 'instance of' 'castable to' 'cast as' or
>>> 'treat as' is gives the following error
>>>
>>>
>>>
>>> XPath syntax exception (XPath syntax error at char 16 on line 0 in
>>> {...stance of x:numericColumnLa...}: Unknown atomic type
>>> x:numericColumnLabel) for expression: $nu instance of
>>x:numericColumnLabel
>>>
>>>
>>>
>>> I can't see why, if I take the same XSLT, the same two XML inputs and
>>> the schema and run it all on the command line, it does it no problems
>>> (that's even using the same JARs that are in the OPS lib directory)
>>>
>>>
>>>
>>> Any ideas why this might be? Its definitely using the SA version as I
>>> changed the processor to a normal XSLT one and got an error related to
>>it!
>>>
>>>
>>>
>>> Thanks
>>>
>>>
>>>
>>> *Ryan Puddephatt*
>>>
>>> Software Engineer
>>>
>>> TFX Group - IT UK
>>>
>>> 1 Michaelson Square
>>>
>>> Livingston
>>>
>>> West Lothian
>>>
>>> Scotand
>>>
>>> EH54 7DP
>>>
>>>
>>>
>>> * [hidden email]
>>>
>>> ( 01506 407 110
>>>
>>> 7  01506 407 108
>>>
>>>
>>>
>>>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>>
>>> --
>>> You receive this message as a subscriber of the [hidden email]
>>mailing list.
>>> To unsubscribe: mailto:[hidden email]
>>> For general help: mailto:[hidden email]?subject=help
>>> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
>>
>
>




--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: Schema Aware XSLT problems

Erik Bruchez
Administrator
Ryan,

Can you try removing from saxon-8_7_orbeon.jar everything under
META-INF/services?

-Erik

Ryan Puddephatt wrote:

> Hi,
> I had a more detailed look at this and downloaded the
> XSLTTranformer.java file. I put some loggers in there and the class I
> provide starts off as
>
> Com.saxonica.SchemaAwareTransformFactory
>
> Then changes to
>
> org.orbeon.saxon.TransformerFactoryImpl
>
> and finally ends up as
>
> org.orbeon.saxon.Controller
>
> Is this a change I should encounter? Or is it abnormal?
> I know Dave has used Schema Aware Saxon before, and I tried this in that
> version, which also causes a problem. It appears it may have been around for
> a while!
>
> Any ideas on where to start?
>
> Ryan Puddephatt
> Software Engineer
> TFX Group - IT UK
> 1 Michaelson Square
> Livingston
> West Lothian
> Scotand
> EH54 7DP
>  
> * [hidden email]
> ( 01506 407 110
> 7  01506 407 108
>  
>
>> -----Original Message-----
>> From: Ryan Puddephatt [mailto:[hidden email]]
>> Sent: 14 April 2006 10:27
>> To: [hidden email]
>> Subject: RE: [ops-users] Schema Aware XSLT problems
>>
>> Erik,
>> I tested the processor by casting to a type from the schema
>> x:numberColumnLabel($n) and it does it fine, but running through a non SA
>> processor like oxf:xslt I get an error when using xsl:import-schema because
>> I need a schema aware processor. So this says to me its working, but I
>> agree
>> you can't see it in the stack trace. Any ideas?
>>
>> Ryan Puddephatt
>> Software Engineer
>> TFX Group - IT UK
>> 1 Michaelson Square
>> Livingston
>> West Lothian
>> Scotand
>> EH54 7DP
>>
>> * [hidden email]
>> ( 01506 407 110
>> 7  01506 407 108
>>
>>> -----Original Message-----
>>> From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>>> Sent: 13 April 2006 20:01
>>> To: [hidden email]
>>> Subject: Re: [ops-users] Schema Aware XSLT problems
>>>
>>> Ryan,
>>>
>>> The Saxon upgrade should not affect this, since the Saxon used in OPS is
>>>  under the org.orbeon.saxon package. This means you should be able to
>>> use your own SA version of Saxon without problems. But apparently,
>>> that's not the case ;-)
>>>
>>> What I see in the stacktrace is that no com.saxonica class is present,
>>> but org.orbeon.saxon classes are used. This would appear to tell us that
>>> the SA version in fact is *not* used. What if you call your stylesheet
>>> directly from XPL by using oxf:saxon8sa ?
>>>
>>> -Erik
>>>
>>> Ryan Puddephatt wrote:
>>>> Hi all,
>>>>
>>>>             I noticed you have now upgraded to Saxon 8.7 now, so I got
>>>> the last unstable build, but it still doesn't work. I've tried
>>>> everything, but no joy
>>>>
>>>>
>>>>
>>>> I have a very basic schema and XSLT like so:
>>>>
>>>>
>>>>
>>>> <xsl:stylesheet version="2.0"
>>>>
>>>>   xmlns:xs="http://www.w3.org/2001/XMLSchema"
>>>>
>>>>   xmlns:x="http://www.teleflex.com/ns/xlex-description">
>>>>
>>>>     <xsl:import-schema
>>>> namespace="http://www.teleflex.com/ns/xlex-description">
>>>>
>>>>       <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
>>>>
>>>>         elementFormDefault="qualified"
>>>>
>>>>         targetNamespace="http://www.teleflex.com/ns/xlex-description"
>>>>
>>>>         xmlns:x="http://www.teleflex.com/ns/xlex-description">
>>>>
>>>>         <xs:simpleType name="numericColumnLabel">
>>>>
>>>>           <xs:restriction base="xs:integer">
>>>>
>>>>             <xs:minInclusive value="0"/>
>>>>
>>>>             <xs:maxInclusive value="256"/>
>>>>
>>>>           </xs:restriction>
>>>>
>>>>         </xs:simpleType>
>>>>
>>>>       </xs:schema>
>>>>
>>>>     </xsl:import-schema>
>>>>
>>>>
>>>>
>>>>     <xsl:template match="/">
>>>>
>>>>       <doc>
>>>>
>>>>         <xsl:variable name="n" select="260" as="xs:integer"/>
>>>>
>>>>         <xsl:choose>
>>>>
>>>>           <xsl:when test="$n instance of x:numericColumnLabel">
>>>>
>>>>             <xsl:text>TRUE</xsl:text>
>>>>
>>>>           </xsl:when>
>>>>
>>>>           <xsl:otherwise>
>>>>
>>>>             <xsl:text>FALSE</xsl:text>
>>>>
>>>>           </xsl:otherwise>
>>>>
>>>>         </xsl:choose>
>>>>
>>>>       </doc>
>>>>
>>>>     </xsl:template>
>>>>
>>>> </xsl:stylesheet>
>>>>
>>>>
>>>>
>>>> This is run through a custom processor called oxf:saxon8sa, which I set
>>>> up in the custom-processor.xml like so
>>>>
>>>>
>>>>
>>>> <processor name="oxf:saxon8sa">
>>>>
>>>>   <instantiation name="oxf:generic-xslt-2.0">
>>>>
>>>>     <input name="transformer">
>>>>
>>>>       <config>
>>>>
>>>>         <class>com.saxonica.SchemaAwareTransformerFactory</class>
>>>>
>>>>       </config>
>>>>
>>>>     </input>
>>>>
>>>>   </instantiation>
>>>>
>>>> </processor>
>>>>
>>>>
>>>>
>>>> I've made sure it is running the Schema Aware by changing the processor
>>>> to oxf:xslt-2.0 which tells me a I need to use schema aware saxon. I
>>>> have the license file in place, and can see the error when I remove it.
>>>> This still gives me the error I listed in my previous email and I've
>>>> copied the full stack trace below incase that helps. I have also tested
>>>> casting the variable $n to x:numberColumnLabel and this surprisingly
>>>> works. Also as I said before I have used the same Saxon JARs at the
>>>> command prompt and it works without a problem. I don't know why this
>>>> doesn't work, but it appears to be OPS specific, any ideas?
>>>>
>>>>
>>>>
>>>> org.orbeon.saxon.trans.StaticError: XPath syntax error at char 28 on
>>>> line 0 in {...stance of x:numericColumnLa...}:
>>>>
>>>>     Unknown atomic type x:numericColumnLabel
>>>>
>>>>      at
>>>>
>> org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:125)
>>>>      at
>>>>
>> org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:101)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.getAtomicType(ExpressionParser.java
>> :
>>> 726)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.
>> j
>>> ava:838)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseInstanceOfExpression(Expressio
>> n
>>> Parser.java:570)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseIntersectExpression(Expression
>> P
>>> arser.java:999)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseUnionExpression(ExpressionPars
>> e
>>> r.java:981)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseMultiplicativeExpression(Expre
>> s
>>> sionParser.java:918)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseAdditiveExpression(ExpressionP
>> a
>>> rser.java:898)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseRangeExpression(ExpressionPars
>> e
>>> r.java:814)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseComparisonExpression(Expressio
>> n
>>> Parser.java:764)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseAndExpression(ExpressionParser
>> .
>>> java:380)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseOrExpression(ExpressionParser.
>> j
>>> ava:362)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseExprSingle(ExpressionParser.ja
>> v
>>> a:316)
>>>>      at
>>>>
>>> org.orbeon.saxon.expr.ExpressionParser.parseExpression(ExpressionParser.ja
>> v
>>> a:280)
>>>>      at
>>>> org.orbeon.saxon.expr.ExpressionParser.parse(ExpressionParser.java:200)
>>>>
>>>>      at
>> org.orbeon.saxon.expr.ExpressionTool.make(ExpressionTool.java:54)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$StylesheetForwar
>> d
>>> ingContentHandler.startElement(XSLTTransformer.java:579)
>>>>      at
>>>>
>>> org.orbeon.oxf.xml.TeeContentHandler.startElement(TeeContentHandler.java:8
>> 0
>>> )
>>>>      at
>>>>
>>> org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContent
>> H
>>> andler.java:87)
>>>>      at org.orbeon.oxf.xml.SAXStore.startElement(SAXStore.java:353)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContent
>> H
>>> andler.java:87)
>>>>      at
>>>>
>>> orbeon.apache.xerces.parsers.AbstractSAXParser.startElement(AbstractSAXPar
>> s
>>> er.java:485)
>>>>      at
>>>>
>>> orbeon.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSD
>> o
>>> cumentScannerImpl.java:320)
>>>>      at
>>>>
>>> orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDi
>> s
>>> patcher.dispatch(XMLDocumentFragmentScannerImpl.java:1534)
>>>>      at
>>>>
>>> orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLD
>> o
>>> cumentFragmentScannerImpl.java:338)
>>>>      at
>>>>
>>> orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.j
>> a
>>> va:828)
>>>>      at
>>>>
>>> orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.j
>> a
>>> va:758)
>>>>      at orbeon.apache.xerces.parsers.XMLParser.parse(XMLParser.java:148)
>>>>
>>>>      at
>>>>
>>> orbeon.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.jav
>> a
>>> :1178)
>>>>      at org.orbeon.oxf.xml.XMLUtils.inputSourceToSAX(XMLUtils.java:251)
>>>>
>>>>      at org.orbeon.oxf.xml.XMLUtils.inputStreamToSAX(XMLUtils.java:236)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.resources.ResourceManagerBase.getContentAsSAX(ResourceManag
>> e
>>> rBase.java:134)
>>>>      at
>>>>
>>> org.orbeon.oxf.resources.PriorityResourceManagerImpl$4.run(PriorityResourc
>> e
>>> ManagerImpl.java:106)
>>>>      at
>>>>
>>> org.orbeon.oxf.resources.PriorityResourceManagerImpl.delegate(PriorityReso
>> u
>>> rceManagerImpl.java:252)
>>>>      at
>>>>
>>> org.orbeon.oxf.resources.PriorityResourceManagerImpl.getContentAsSAX(Prior
>> i
>>> tyResourceManagerImpl.java:104)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.generator.URLGenerator$OXFResourceHandler.readXML
>> (
>>> URLGenerator.java:636)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.generator.URLGenerator$1.readImpl(URLGenerator.ja
>> v
>>> a:404)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.xml.ProcessorOutputXMLReader.parse(ProcessorOutputXMLReader
>> .
>>> java:40)
>>>>      at net.sf.saxon.event.Sender.sendSAXSource(Sender.java:239)
>>>>
>>>>      at net.sf.saxon.event.Sender.send(Sender.java:106)
>>>>
>>>>      at net.sf.saxon.event.Sender.send(Sender.java:45)
>>>>
>>>>      at
>>>>
>>> net.sf.saxon.PreparedStylesheet.loadStylesheetModule(PreparedStylesheet.ja
>> v
>>> a:177)
>>>>      at
>>> net.sf.saxon.PreparedStylesheet.prepare(PreparedStylesheet.java:114)
>>>>      at
>>>>
>>> net.sf.saxon.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.ja
>> v
>>> a:124)
>>>>      at
>>>>
>>> org.orbeon.oxf.xml.TransformerUtils.getTemplates(TransformerUtils.java:256
>> )
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.createTransfor
>> m
>>> er(XSLTTransformer.java:354)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.readImpl(XSLTT
>> r
>>> ansformer.java:124)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcess
>> o
>>> rFilter$ForwarderProcessorOutput.read(ProcessorImpl.java:941)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 5
>>> 4)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.DebugProcessor$1.readImpl(DebugProcessor.java:62)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcess
>> o
>>> rFilter.read(ProcessorImpl.java:965)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>> c
>>> essor.java:66)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>> r
>>> .java:96)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>> 5
>>> 15)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>> c
>>> essor.java:66)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>> c
>>> essor.java:94)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 5
>>> 4)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>> v
>>> a:33)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>> c
>>> essor.java:66)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>> r
>>> .java:96)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>> 5
>>> 15)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>> c
>>> essor.java:66)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>> c
>>> essor.java:94)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImp
>> l
>>> (ConcreteChooseProcessor.java:123)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 5
>>> 4)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>> v
>>> a:33)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>> c
>>> essor.java:66)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>> r
>>> .java:96)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>> 5
>>> 15)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>> c
>>> essor.java:66)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>> c
>>> essor.java:94)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 5
>>> 4)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>> v
>>> a:33)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>> c
>>> essor.java:66)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>> r
>>> .java:96)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>> 5
>>> 15)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>> c
>>> essor.java:66)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>> c
>>> essor.java:94)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImp
>> l
>>> (ConcreteChooseProcessor.java:123)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 5
>>> 4)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>> v
>>> a:33)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>> c
>>> essor.java:66)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>> r
>>> .java:96)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>> 5
>>> 15)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>> c
>>> essor.java:66)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>> c
>>> essor.java:94)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImp
>> l
>>> (ConcreteChooseProcessor.java:123)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.TeeProcessor.access$100(TeeProcessor.jav
>> a
>>> :36)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.TeeProcessor$1.readImpl(TeeProcessor.jav
>> a
>>> :57)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>> m
>>> pl.java:1170)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>> 4
>>> 9)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readInputAsDOM4J(ProcessorImpl.java
>> :
>>> 404)
>>>>      at
>>>> org.orbeon.oxf.processor.ProcessorImpl$4.read(ProcessorImpl.java:428)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsObject(ProcessorImp
>> l
>>> .java:470)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsDOM4J(ProcessorImpl
>> .
>>> java:426)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(Con
>> c
>>> reteChooseProcessor.java:186)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor$11.run(PipelineProcess
>> o
>>> r.java:652)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>> 5
>>> 15)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcesso
>> r
>>> .java:649)
>>>>      at
>>>>
>>> org.orbeon.oxf.processor.PageFlowControllerProcessor.start(PageFlowControl
>> l
>>> erProcessor.java:416)
>>>>      at
>> org.orbeon.oxf.pipeline.InitUtils.runProcessor(InitUtils.java:86)
>>>>      at
>>>> org.orbeon.oxf.webapp.ProcessorService.service(ProcessorService.java:95)
>>>>
>>>>      at
>>>>
>>> org.orbeon.oxf.servlet.OPSServletDelegate.service(OPSServletDelegate.java:
>> 1
>>> 44)
>>>>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>>>>
>>>>      at org.orbeon.oxf.servlet.OPSServlet.service(OPSServlet.java:74)
>>>>
>>>>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>>>>
>>>>      at
>>>>
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicati
>> o
>>> nFilterChain.java:247)
>>>>      at
>>>>
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilter
>> C
>>> hain.java:193)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.
>> j
>>> ava:256)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>> o
>>> keNext(StandardPipeline.java:643)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>> )
>>>>      at
>>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>>
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.
>> j
>>> ava:191)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>> o
>>> keNext(StandardPipeline.java:643)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>> )
>>>>      at
>>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>>
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:1
>> 8
>>> 0)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>> o
>>> keNext(StandardPipeline.java:643)
>>>>      at
>>>>
>>> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValv
>> e
>>> .java:171)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>> o
>>> keNext(StandardPipeline.java:641)
>>>>      at
>>>>
>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:1
>> 6
>>> 3)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>> o
>>> keNext(StandardPipeline.java:641)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>> )
>>>>      at
>>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>>
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.ja
>> v
>>> a:174)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>> o
>>> keNext(StandardPipeline.java:643)
>>>>      at
>>>>
>>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>> )
>>>>      at
>>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>>
>>>>      at
>>>> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
>>>>
>>>>      at
>>>>
>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
>>>>      at
>>>>
>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processCon
>> n
>>> ection(Http11Protocol.java:700)
>>>>      at
>>>>
>>> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
>>>>      at
>>>>
>>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.j
>> a
>>> va:683)
>>>>      at java.lang.Thread.run(Thread.java:595)
>>>>
>>>>
>>>>
>>>> Thanks
>>>>
>>>>
>>>>
>>>> *Ryan Puddephatt*
>>>>
>>>> Software Engineer
>>>>
>>>> TFX Group - IT UK
>>>>
>>>> 1 Michaelson Square
>>>>
>>>> Livingston
>>>>
>>>> West Lothian
>>>>
>>>> Scotand
>>>>
>>>> EH54 7DP
>>>>
>>>>
>>>>
>>>> * [hidden email]
>>>>
>>>> ( 01506 407 110
>>>>
>>>> 7  01506 407 108
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>> *From:* Ryan Puddephatt [mailto:[hidden email]]
>>>> *Sent:* 13 April 2006 09:53
>>>> *To:* [hidden email]
>>>> *Subject:* [ops-users] Schema Aware XSLT problems
>>>>
>>>>
>>>>
>>>> Hi all,
>>>>
>>>>             I'm trying to use a Schema in XSLT. I have managed to get
>>>> Saxon 8 SA working within OPS and can run any normal XSLT, but when I
>>>> run one with a schema using 'instance of' 'castable to' 'cast as' or
>>>> 'treat as' is gives the following error
>>>>
>>>>
>>>>
>>>> XPath syntax exception (XPath syntax error at char 16 on line 0 in
>>>> {...stance of x:numericColumnLa...}: Unknown atomic type
>>>> x:numericColumnLabel) for expression: $nu instance of
>>> x:numericColumnLabel
>>>>
>>>>
>>>> I can't see why, if I take the same XSLT, the same two XML inputs and
>>>> the schema and run it all on the command line, it does it no problems
>>>> (that's even using the same JARs that are in the OPS lib directory)
>>>>
>>>>
>>>>
>>>> Any ideas why this might be? Its definitely using the SA version as I
>>>> changed the processor to a normal XSLT one and got an error related to
>>> it!
>>>>
>>>>
>>>> Thanks
>>>>
>>>>
>>>>
>>>> *Ryan Puddephatt*
>>>>
>>>> Software Engineer
>>>>
>>>> TFX Group - IT UK
>>>>
>>>> 1 Michaelson Square
>>>>
>>>> Livingston
>>>>
>>>> West Lothian
>>>>
>>>> Scotand
>>>>
>>>> EH54 7DP
>>>>
>>>>
>>>>
>>>> * [hidden email]
>>>>
>>>> ( 01506 407 110
>>>>
>>>> 7  01506 407 108
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>>
>>>> --
>>>> You receive this message as a subscriber of the [hidden email]
>>> mailing list.
>>>> To unsubscribe: mailto:[hidden email]
>>>> For general help: mailto:[hidden email]?subject=help
>>>> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
>>
>
>
>
>
> ------------------------------------------------------------------------
>
>
> --
> You receive this message as a subscriber of the [hidden email] mailing list.
> To unsubscribe: mailto:[hidden email]
> For general help: mailto:[hidden email]?subject=help
> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws

--
Orbeon - XForms Everywhere:
http://www.orbeon.com/blog/



--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

RE: Schema Aware XSLT problems

Ryan Puddephatt
Erik,
        I removed it, from saxon-8_7_orbeon.jar, but it didn't change
anything. I also tried it from the saxon 6 jar, again it didn't work.

I have attached the original exception and exception entries from the
logger, perhaps it will mean more to you

Thanks

Ryan Puddephatt
Software Engineer
TFX Group - IT UK
1 Michaelson Square
Livingston
West Lothian
Scotand
EH54 7DP
 
* [hidden email]
( 01506 407 110
7  01506 407 108
 

>-----Original Message-----
>From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>Sent: 20 April 2006 18:43
>To: [hidden email]
>Subject: Re: [ops-users] Schema Aware XSLT problems
>
>Ryan,
>
>Can you try removing from saxon-8_7_orbeon.jar everything under
>META-INF/services?
>
>-Erik
>
>Ryan Puddephatt wrote:
>> Hi,
>> I had a more detailed look at this and downloaded the
>> XSLTTranformer.java file. I put some loggers in there and the class I
>> provide starts off as
>>
>> Com.saxonica.SchemaAwareTransformFactory
>>
>> Then changes to
>>
>> org.orbeon.saxon.TransformerFactoryImpl
>>
>> and finally ends up as
>>
>> org.orbeon.saxon.Controller
>>
>> Is this a change I should encounter? Or is it abnormal?
>> I know Dave has used Schema Aware Saxon before, and I tried this in that
>> version, which also causes a problem. It appears it may have been around
>for
>> a while!
>>
>> Any ideas on where to start?
>>
>> Ryan Puddephatt
>> Software Engineer
>> TFX Group - IT UK
>> 1 Michaelson Square
>> Livingston
>> West Lothian
>> Scotand
>> EH54 7DP
>>
>> * [hidden email]
>> ( 01506 407 110
>> 7  01506 407 108
>>
>>
>>> -----Original Message-----
>>> From: Ryan Puddephatt [mailto:[hidden email]]
>>> Sent: 14 April 2006 10:27
>>> To: [hidden email]
>>> Subject: RE: [ops-users] Schema Aware XSLT problems
>>>
>>> Erik,
>>> I tested the processor by casting to a type from the schema
>>> x:numberColumnLabel($n) and it does it fine, but running through a non
>SA
>>> processor like oxf:xslt I get an error when using xsl:import-schema
>because
>>> I need a schema aware processor. So this says to me its working, but I
>>> agree
>>> you can't see it in the stack trace. Any ideas?
>>>
>>> Ryan Puddephatt
>>> Software Engineer
>>> TFX Group - IT UK
>>> 1 Michaelson Square
>>> Livingston
>>> West Lothian
>>> Scotand
>>> EH54 7DP
>>>
>>> * [hidden email]
>>> ( 01506 407 110
>>> 7  01506 407 108
>>>
>>>> -----Original Message-----
>>>> From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik
>Bruchez
>>>> Sent: 13 April 2006 20:01
>>>> To: [hidden email]
>>>> Subject: Re: [ops-users] Schema Aware XSLT problems
>>>>
>>>> Ryan,
>>>>
>>>> The Saxon upgrade should not affect this, since the Saxon used in OPS
>is
>>>>  under the org.orbeon.saxon package. This means you should be able to
>>>> use your own SA version of Saxon without problems. But apparently,
>>>> that's not the case ;-)
>>>>
>>>> What I see in the stacktrace is that no com.saxonica class is present,
>>>> but org.orbeon.saxon classes are used. This would appear to tell us
>that
>>>> the SA version in fact is *not* used. What if you call your stylesheet
>>>> directly from XPL by using oxf:saxon8sa ?
>>>>
>>>> -Erik
>>>>
>>>> Ryan Puddephatt wrote:
>>>>> Hi all,
>>>>>
>>>>>             I noticed you have now upgraded to Saxon 8.7 now, so I got
>>>>> the last unstable build, but it still doesn't work. I've tried
>>>>> everything, but no joy
>>>>>
>>>>>
>>>>>
>>>>> I have a very basic schema and XSLT like so:
>>>>>
>>>>>
>>>>>
>>>>> <xsl:stylesheet version="2.0"
>>>>>
>>>>>   xmlns:xs="http://www.w3.org/2001/XMLSchema"
>>>>>
>>>>>   xmlns:x="http://www.teleflex.com/ns/xlex-description">
>>>>>
>>>>>     <xsl:import-schema
>>>>> namespace="http://www.teleflex.com/ns/xlex-description">
>>>>>
>>>>>       <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
>>>>>
>>>>>         elementFormDefault="qualified"
>>>>>
>>>>>         targetNamespace="http://www.teleflex.com/ns/xlex-description"
>>>>>
>>>>>         xmlns:x="http://www.teleflex.com/ns/xlex-description">
>>>>>
>>>>>         <xs:simpleType name="numericColumnLabel">
>>>>>
>>>>>           <xs:restriction base="xs:integer">
>>>>>
>>>>>             <xs:minInclusive value="0"/>
>>>>>
>>>>>             <xs:maxInclusive value="256"/>
>>>>>
>>>>>           </xs:restriction>
>>>>>
>>>>>         </xs:simpleType>
>>>>>
>>>>>       </xs:schema>
>>>>>
>>>>>     </xsl:import-schema>
>>>>>
>>>>>
>>>>>
>>>>>     <xsl:template match="/">
>>>>>
>>>>>       <doc>
>>>>>
>>>>>         <xsl:variable name="n" select="260" as="xs:integer"/>
>>>>>
>>>>>         <xsl:choose>
>>>>>
>>>>>           <xsl:when test="$n instance of x:numericColumnLabel">
>>>>>
>>>>>             <xsl:text>TRUE</xsl:text>
>>>>>
>>>>>           </xsl:when>
>>>>>
>>>>>           <xsl:otherwise>
>>>>>
>>>>>             <xsl:text>FALSE</xsl:text>
>>>>>
>>>>>           </xsl:otherwise>
>>>>>
>>>>>         </xsl:choose>
>>>>>
>>>>>       </doc>
>>>>>
>>>>>     </xsl:template>
>>>>>
>>>>> </xsl:stylesheet>
>>>>>
>>>>>
>>>>>
>>>>> This is run through a custom processor called oxf:saxon8sa, which I
>set
>>>>> up in the custom-processor.xml like so
>>>>>
>>>>>
>>>>>
>>>>> <processor name="oxf:saxon8sa">
>>>>>
>>>>>   <instantiation name="oxf:generic-xslt-2.0">
>>>>>
>>>>>     <input name="transformer">
>>>>>
>>>>>       <config>
>>>>>
>>>>>         <class>com.saxonica.SchemaAwareTransformerFactory</class>
>>>>>
>>>>>       </config>
>>>>>
>>>>>     </input>
>>>>>
>>>>>   </instantiation>
>>>>>
>>>>> </processor>
>>>>>
>>>>>
>>>>>
>>>>> I've made sure it is running the Schema Aware by changing the
>processor
>>>>> to oxf:xslt-2.0 which tells me a I need to use schema aware saxon. I
>>>>> have the license file in place, and can see the error when I remove
>it.
>>>>> This still gives me the error I listed in my previous email and I've
>>>>> copied the full stack trace below incase that helps. I have also
>tested
>>>>> casting the variable $n to x:numberColumnLabel and this surprisingly
>>>>> works. Also as I said before I have used the same Saxon JARs at the
>>>>> command prompt and it works without a problem. I don't know why this
>>>>> doesn't work, but it appears to be OPS specific, any ideas?
>>>>>
>>>>>
>>>>>
>>>>> org.orbeon.saxon.trans.StaticError: XPath syntax error at char 28 on
>>>>> line 0 in {...stance of x:numericColumnLa...}:
>>>>>
>>>>>     Unknown atomic type x:numericColumnLabel
>>>>>
>>>>>      at
>>>>>
>>>
>org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:125)
>>>>>      at
>>>>>
>>>
>org.orbeon.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:101)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.getAtomicType(ExpressionParser.java
>>> :
>>>> 726)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.
>>> j
>>>> ava:838)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseInstanceOfExpression(Expressio
>>> n
>>>> Parser.java:570)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseIntersectExpression(Expression
>>> P
>>>> arser.java:999)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseUnionExpression(ExpressionPars
>>> e
>>>> r.java:981)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseMultiplicativeExpression(Expre
>>> s
>>>> sionParser.java:918)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseAdditiveExpression(ExpressionP
>>> a
>>>> rser.java:898)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseRangeExpression(ExpressionPars
>>> e
>>>> r.java:814)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseComparisonExpression(Expressio
>>> n
>>>> Parser.java:764)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseAndExpression(ExpressionParser
>>> .
>>>> java:380)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseOrExpression(ExpressionParser.
>>> j
>>>> ava:362)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseExprSingle(ExpressionParser.ja
>>> v
>>>> a:316)
>>>>>      at
>>>>>
>>>>
>org.orbeon.saxon.expr.ExpressionParser.parseExpression(ExpressionParser.ja
>>> v
>>>> a:280)
>>>>>      at
>>>>>
>org.orbeon.saxon.expr.ExpressionParser.parse(ExpressionParser.java:200)
>>>>>
>>>>>      at
>>> org.orbeon.saxon.expr.ExpressionTool.make(ExpressionTool.java:54)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$StylesheetForwar
>>> d
>>>> ingContentHandler.startElement(XSLTTransformer.java:579)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.xml.TeeContentHandler.startElement(TeeContentHandler.java:8
>>> 0
>>>> )
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContent
>>> H
>>>> andler.java:87)
>>>>>      at org.orbeon.oxf.xml.SAXStore.startElement(SAXStore.java:353)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.xml.ForwardingContentHandler.startElement(ForwardingContent
>>> H
>>>> andler.java:87)
>>>>>      at
>>>>>
>>>>
>orbeon.apache.xerces.parsers.AbstractSAXParser.startElement(AbstractSAXPar
>>> s
>>>> er.java:485)
>>>>>      at
>>>>>
>>>>
>orbeon.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSD
>>> o
>>>> cumentScannerImpl.java:320)
>>>>>      at
>>>>>
>>>>
>orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDi
>>> s
>>>> patcher.dispatch(XMLDocumentFragmentScannerImpl.java:1534)
>>>>>      at
>>>>>
>>>>
>orbeon.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLD
>>> o
>>>> cumentFragmentScannerImpl.java:338)
>>>>>      at
>>>>>
>>>>
>orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.j
>>> a
>>>> va:828)
>>>>>      at
>>>>>
>>>>
>orbeon.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration.j
>>> a
>>>> va:758)
>>>>>      at
>orbeon.apache.xerces.parsers.XMLParser.parse(XMLParser.java:148)
>>>>>
>>>>>      at
>>>>>
>>>>
>orbeon.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.jav
>>> a
>>>> :1178)
>>>>>      at
>org.orbeon.oxf.xml.XMLUtils.inputSourceToSAX(XMLUtils.java:251)
>>>>>
>>>>>      at
>org.orbeon.oxf.xml.XMLUtils.inputStreamToSAX(XMLUtils.java:236)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.resources.ResourceManagerBase.getContentAsSAX(ResourceManag
>>> e
>>>> rBase.java:134)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.resources.PriorityResourceManagerImpl$4.run(PriorityResourc
>>> e
>>>> ManagerImpl.java:106)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.resources.PriorityResourceManagerImpl.delegate(PriorityReso
>>> u
>>>> rceManagerImpl.java:252)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.resources.PriorityResourceManagerImpl.getContentAsSAX(Prior
>>> i
>>>> tyResourceManagerImpl.java:104)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.generator.URLGenerator$OXFResourceHandler.readXML
>>> (
>>>> URLGenerator.java:636)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.generator.URLGenerator$1.readImpl(URLGenerator.ja
>>> v
>>>> a:404)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.xml.ProcessorOutputXMLReader.parse(ProcessorOutputXMLReader
>>> .
>>>> java:40)
>>>>>      at net.sf.saxon.event.Sender.sendSAXSource(Sender.java:239)
>>>>>
>>>>>      at net.sf.saxon.event.Sender.send(Sender.java:106)
>>>>>
>>>>>      at net.sf.saxon.event.Sender.send(Sender.java:45)
>>>>>
>>>>>      at
>>>>>
>>>>
>net.sf.saxon.PreparedStylesheet.loadStylesheetModule(PreparedStylesheet.ja
>>> v
>>>> a:177)
>>>>>      at
>>>> net.sf.saxon.PreparedStylesheet.prepare(PreparedStylesheet.java:114)
>>>>>      at
>>>>>
>>>>
>net.sf.saxon.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.ja
>>> v
>>>> a:124)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.xml.TransformerUtils.getTemplates(TransformerUtils.java:256
>>> )
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.createTransfor
>>> m
>>>> er(XSLTTransformer.java:354)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.readImpl(XSLTT
>>> r
>>>> ansformer.java:124)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcess
>>> o
>>>> rFilter$ForwarderProcessorOutput.read(ProcessorImpl.java:941)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 5
>>>> 4)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.DebugProcessor$1.readImpl(DebugProcessor.java:62)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcess
>>> o
>>>> rFilter.read(ProcessorImpl.java:965)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>>> c
>>>> essor.java:66)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>>> r
>>>> .java:96)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>>> 5
>>>> 15)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>>> c
>>>> essor.java:66)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>>> c
>>>> essor.java:94)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 5
>>>> 4)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>>> v
>>>> a:33)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>>> c
>>>> essor.java:66)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>>> r
>>>> .java:96)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>>> 5
>>>> 15)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>>> c
>>>> essor.java:66)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>>> c
>>>> essor.java:94)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImp
>>> l
>>>> (ConcreteChooseProcessor.java:123)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 5
>>>> 4)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>>> v
>>>> a:33)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>>> c
>>>> essor.java:66)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>>> r
>>>> .java:96)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>>> 5
>>>> 15)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>>> c
>>>> essor.java:66)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>>> c
>>>> essor.java:94)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 5
>>>> 4)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>>> v
>>>> a:33)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>>> c
>>>> essor.java:66)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>>> r
>>>> .java:96)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>>> 5
>>>> 15)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>>> c
>>>> essor.java:66)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>>> c
>>>> essor.java:94)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImp
>>> l
>>>> (ConcreteChooseProcessor.java:123)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 5
>>>> 4)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.ja
>>> v
>>>> a:33)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelinePro
>>> c
>>>> essor.java:66)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcesso
>>> r
>>>> .java:96)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>>> 5
>>>> 15)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelinePro
>>> c
>>>> essor.java:66)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelinePro
>>> c
>>>> essor.java:94)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImp
>>> l
>>>> (ConcreteChooseProcessor.java:123)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.TeeProcessor.access$100(TeeProcessor.jav
>>> a
>>>> :36)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.TeeProcessor$1.readImpl(TeeProcessor.jav
>>> a
>>>> :57)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorI
>>> m
>>>> pl.java:1170)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:3
>>> 4
>>>> 9)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readInputAsDOM4J(ProcessorImpl.java
>>> :
>>>> 404)
>>>>>      at
>>>>> org.orbeon.oxf.processor.ProcessorImpl$4.read(ProcessorImpl.java:428)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsObject(ProcessorImp
>>> l
>>>> .java:470)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsDOM4J(ProcessorImpl
>>> .
>>>> java:426)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(Con
>>> c
>>>> reteChooseProcessor.java:186)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11.run(PipelineProcess
>>> o
>>>> r.java:652)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:
>>> 5
>>>> 15)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcesso
>>> r
>>>> .java:649)
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.processor.PageFlowControllerProcessor.start(PageFlowControl
>>> l
>>>> erProcessor.java:416)
>>>>>      at
>>> org.orbeon.oxf.pipeline.InitUtils.runProcessor(InitUtils.java:86)
>>>>>      at
>>>>>
>org.orbeon.oxf.webapp.ProcessorService.service(ProcessorService.java:95)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.orbeon.oxf.servlet.OPSServletDelegate.service(OPSServletDelegate.java:
>>> 1
>>>> 44)
>>>>>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>>>>>
>>>>>      at org.orbeon.oxf.servlet.OPSServlet.service(OPSServlet.java:74)
>>>>>
>>>>>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicati
>>> o
>>>> nFilterChain.java:247)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilter
>>> C
>>>> hain.java:193)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.
>>> j
>>>> ava:256)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>>> o
>>>> keNext(StandardPipeline.java:643)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>>> )
>>>>>      at
>>>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.
>>> j
>>>> ava:191)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>>> o
>>>> keNext(StandardPipeline.java:643)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>>> )
>>>>>      at
>>>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:1
>>> 8
>>>> 0)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>>> o
>>>> keNext(StandardPipeline.java:643)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValv
>>> e
>>>> .java:171)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>>> o
>>>> keNext(StandardPipeline.java:641)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:1
>>> 6
>>>> 3)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>>> o
>>>> keNext(StandardPipeline.java:641)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>>> )
>>>>>      at
>>>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.ja
>>> v
>>>> a:174)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.inv
>>> o
>>>> keNext(StandardPipeline.java:643)
>>>>>      at
>>>>>
>>>>
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480
>>> )
>>>>>      at
>>>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>>>>>
>>>>>      at
>>>>>
>org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
>>>>>
>>>>>      at
>>>>>
>>>>
>org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
>>>>>      at
>>>>>
>>>>
>org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processCon
>>> n
>>>> ection(Http11Protocol.java:700)
>>>>>      at
>>>>>
>>>>
>org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
>>>>>      at
>>>>>
>>>>
>org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.j
>>> a
>>>> va:683)
>>>>>      at java.lang.Thread.run(Thread.java:595)
>>>>>
>>>>>
>>>>>
>>>>> Thanks
>>>>>
>>>>>
>>>>>
>>>>> *Ryan Puddephatt*
>>>>>
>>>>> Software Engineer
>>>>>
>>>>> TFX Group - IT UK
>>>>>
>>>>> 1 Michaelson Square
>>>>>
>>>>> Livingston
>>>>>
>>>>> West Lothian
>>>>>
>>>>> Scotand
>>>>>
>>>>> EH54 7DP
>>>>>
>>>>>
>>>>>
>>>>> * [hidden email]
>>>>>
>>>>> ( 01506 407 110
>>>>>
>>>>> 7  01506 407 108
>>>>>
>>>>>
>>>>>
>>>>> ----------------------------------------------------------------------
>--
>>>>>
>>>>> *From:* Ryan Puddephatt [mailto:[hidden email]]
>>>>> *Sent:* 13 April 2006 09:53
>>>>> *To:* [hidden email]
>>>>> *Subject:* [ops-users] Schema Aware XSLT problems
>>>>>
>>>>>
>>>>>
>>>>> Hi all,
>>>>>
>>>>>             I'm trying to use a Schema in XSLT. I have managed to get
>>>>> Saxon 8 SA working within OPS and can run any normal XSLT, but when I
>>>>> run one with a schema using 'instance of' 'castable to' 'cast as' or
>>>>> 'treat as' is gives the following error
>>>>>
>>>>>
>>>>>
>>>>> XPath syntax exception (XPath syntax error at char 16 on line 0 in
>>>>> {...stance of x:numericColumnLa...}: Unknown atomic type
>>>>> x:numericColumnLabel) for expression: $nu instance of
>>>> x:numericColumnLabel
>>>>>
>>>>>
>>>>> I can't see why, if I take the same XSLT, the same two XML inputs and
>>>>> the schema and run it all on the command line, it does it no problems
>>>>> (that's even using the same JARs that are in the OPS lib directory)
>>>>>
>>>>>
>>>>>
>>>>> Any ideas why this might be? Its definitely using the SA version as I
>>>>> changed the processor to a normal XSLT one and got an error related to
>>>> it!
>>>>>
>>>>>
>>>>> Thanks
>>>>>
>>>>>
>>>>>
>>>>> *Ryan Puddephatt*
>>>>>
>>>>> Software Engineer
>>>>>
>>>>> TFX Group - IT UK
>>>>>
>>>>> 1 Michaelson Square
>>>>>
>>>>> Livingston
>>>>>
>>>>> West Lothian
>>>>>
>>>>> Scotand
>>>>>
>>>>> EH54 7DP
>>>>>
>>>>>
>>>>>
>>>>> * [hidden email]
>>>>>
>>>>> ( 01506 407 110
>>>>>
>>>>> 7  01506 407 108
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> ----------------------------------------------------------------------
>--
>>>>>
>>>>>
>>>>> --
>>>>> You receive this message as a subscriber of the ops-
>[hidden email]
>>>> mailing list.
>>>>> To unsubscribe: mailto:[hidden email]
>>>>> For general help: mailto:[hidden email]?subject=help
>>>>> ObjectWeb mailing lists service home page:
>http://www.objectweb.org/wws
>>>
>>
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>>
>> --
>> You receive this message as a subscriber of the [hidden email]
>mailing list.
>> To unsubscribe: mailto:[hidden email]
>> For general help: mailto:[hidden email]?subject=help
>> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
>
>
>--
>Orbeon - XForms Everywhere:
>http://www.orbeon.com/blog/


--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws

original.txt (14K) Download Attachment
exception.txt (13K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Schema Aware XSLT problems

Erik Bruchez
Administrator
Ryan,

I think I understand now: the exception occurs when our XSLT
transformer processor parses XPath expressions to find includes,
imports, and uses of the doc() function. We use the Saxon B XPath
engine, so it chokes on SA expressions.

Now for solutions:

1. We could first test for the presence of "doc(" or "document(" in
    the string. This does not require us parsing the expression. We
    will then only choke on SA expressions that contain calls to those
    functions AND use types. This would be a welcome optimization
    anyway.

2. We could have a mechanism to disable XPath expression parsing,
    either explicitly, or implicitly based on the transformer's package
    name.

3. We could fix expression parsing so that it works with Saxon SA. I
    am not sure exactly if just using the SA XPath API, if present,
    would work or not. This is atually a question for Mike Kay.

4. We could ignore parsing errors and not cache, but it is probably
    not a good solution not to tell the user about potential problems.

I have added a bug to track this:

http://forge.objectweb.org/tracker/index.php?func=detail&aid=305062&group_id=168&atid=350207

For now I have implemented 1) above.  This will be in the nightly
builds soon. let me know if this works for you. It should if you don't
use doc() and schema types in the same expressions.

-Erik

Ryan Puddephatt wrote:
 > Erik,
 > I removed it, from saxon-8_7_orbeon.jar, but it didn't change
 > anything. I also tried it from the saxon 6 jar, again it didn't work.
 >
 > I have attached the original exception and exception entries from the
 > logger, perhaps it will mean more to you
 >
 > Thanks
 >
 > Ryan Puddephatt
 > Software Engineer
 > TFX Group - IT UK
 > 1 Michaelson Square
 > Livingston
 > West Lothian
 > Scotand
 > EH54 7DP
 >
 > * [hidden email]
 > ( 01506 407 110
 > 7  01506 407 108

--
Orbeon - XForms Everywhere:
http://www.orbeon.com/blog/



--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

RE: Schema Aware XSLT problems

Ryan Puddephatt
Erik,
        I tried it on a simple schema using 'instance of' and it worked fine
without error. I then used my original stylesheet and it gave me a different
error. Below is the stack trace that I receive. It seems to have something
to do with XDT, I've checked the namespace and its correct, I've even run it
standalone in Saxon SA and it works fine. If you want I can send you the
test case if you have SA setup?

Thanks

; SystemID: oxf:/common-xsl/extract02.xsl; Line#: 223; Column#: -1
net.sf.saxon.trans.StaticError: XPath syntax error at char 0 in
{xdt:anyAtomicType}:
    There is no imported schema for namespace
http://www.w3.org/2005/xpath-datatypes
        at
net.sf.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:106)
        at
net.sf.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:85)
        at
net.sf.saxon.expr.ExpressionParser.getAtomicType(ExpressionParser.java:684)
        at
net.sf.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.java:7
81)
        at
net.sf.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.java:2
24)
        at
net.sf.saxon.style.StyleElement.makeSequenceType(StyleElement.java:497)
        at
net.sf.saxon.style.XSLGeneralVariable.prepareAttributes(XSLGeneralVariable.j
ava:218)
        at
net.sf.saxon.style.StyleElement.processAttributes(StyleElement.java:341)
        at
net.sf.saxon.style.StyleElement.processAllAttributes(StyleElement.java:311)
        at
net.sf.saxon.style.StyleElement.processAllAttributes(StyleElement.java:319)
        at
net.sf.saxon.style.XSLStylesheet.processAllAttributes(XSLStylesheet.java:877
)
        at
net.sf.saxon.style.XSLStylesheet.preprocess(XSLStylesheet.java:617)
        at
net.sf.saxon.PreparedStylesheet.setStylesheetDocument(PreparedStylesheet.jav
a:292)
        at
net.sf.saxon.PreparedStylesheet.prepare(PreparedStylesheet.java:115)
        at
net.sf.saxon.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java
:124)
        at
org.orbeon.oxf.xml.TransformerUtils.getTemplates(TransformerUtils.java:256)
        at
org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.createTransforme
r(XSLTTransformer.java:354)
        at
org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.readImpl(XSLTTra
nsformer.java:124)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349
)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProce
ssor.java:66)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor.
java:96)
        at
org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:51
5)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProce
ssor.java:66)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProce
ssor.java:94)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349
)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:354
)
        at
org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.java
:33)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349
)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProce
ssor.java:66)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor.
java:96)
        at
org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:51
5)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProce
ssor.java:66)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProce
ssor.java:94)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImpl(
ConcreteChooseProcessor.java:123)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349
)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:354
)
        at
org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.java
:33)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349
)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProce
ssor.java:66)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor.
java:96)
        at
org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:51
5)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProce
ssor.java:66)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProce
ssor.java:94)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349
)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:354
)
        at
org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.java
:33)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349
)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProce
ssor.java:66)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor.
java:96)
        at
org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:51
5)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProce
ssor.java:66)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProce
ssor.java:94)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImpl(
ConcreteChooseProcessor.java:123)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349
)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:354
)
        at
org.orbeon.oxf.processor.IdentityProcessor$1.readImpl(IdentityProcessor.java
:33)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349
)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$000(PipelineProce
ssor.java:66)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$2.run(PipelineProcessor.
java:96)
        at
org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:51
5)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.access$100(PipelineProce
ssor.java:66)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$1.readImpl(PipelineProce
ssor.java:94)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1.readImpl(
ConcreteChooseProcessor.java:123)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349
)
        at
org.orbeon.oxf.processor.pipeline.TeeProcessor.access$100(TeeProcessor.java:
36)
        at
org.orbeon.oxf.processor.pipeline.TeeProcessor$1.readImpl(TeeProcessor.java:
57)
        at
org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:987)
        at
org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImp
l.java:1170)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:349
)
        at
org.orbeon.oxf.processor.ProcessorImpl.readInputAsDOM4J(ProcessorImpl.java:4
04)
        at
org.orbeon.oxf.processor.ProcessorImpl$4.read(ProcessorImpl.java:428)
        at
org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsObject(ProcessorImpl.
java:470)
        at
org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsDOM4J(ProcessorImpl.j
ava:426)
        at
org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(Concr
eteChooseProcessor.java:186)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor$11.run(PipelineProcessor
.java:652)
        at
org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:51
5)
        at
org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcessor.
java:649)
        at
org.orbeon.oxf.processor.PageFlowControllerProcessor.start(PageFlowControlle
rProcessor.java:416)
        at org.orbeon.oxf.pipeline.InitUtils.runProcessor(InitUtils.java:86)
        at
org.orbeon.oxf.webapp.ProcessorService.service(ProcessorService.java:95)
        at
org.orbeon.oxf.servlet.OPSServletDelegate.service(OPSServletDelegate.java:14
4)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at org.orbeon.oxf.servlet.OPSServlet.service(OPSServlet.java:74)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:247)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:193)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:256)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:191)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
        at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
java:171)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:163
)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:174)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
        at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
ction(Http11Protocol.java:700)
        at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:683)
        at java.lang.Thread.run(Thread.java:595)

Ryan Puddephatt
Software Engineer
TFX Group - IT UK
1 Michaelson Square
Livingston
West Lothian
Scotand
EH54 7DP
 
* [hidden email]
( 01506 407 110
7  01506 407 108
 

>-----Original Message-----
>From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>Sent: 25 April 2006 23:09
>To: [hidden email]
>Subject: Re: [ops-users] Schema Aware XSLT problems
>
>Ryan,
>
>I think I understand now: the exception occurs when our XSLT
>transformer processor parses XPath expressions to find includes,
>imports, and uses of the doc() function. We use the Saxon B XPath
>engine, so it chokes on SA expressions.
>
>Now for solutions:
>
>1. We could first test for the presence of "doc(" or "document(" in
>    the string. This does not require us parsing the expression. We
>    will then only choke on SA expressions that contain calls to those
>    functions AND use types. This would be a welcome optimization
>    anyway.
>
>2. We could have a mechanism to disable XPath expression parsing,
>    either explicitly, or implicitly based on the transformer's package
>    name.
>
>3. We could fix expression parsing so that it works with Saxon SA. I
>    am not sure exactly if just using the SA XPath API, if present,
>    would work or not. This is atually a question for Mike Kay.
>
>4. We could ignore parsing errors and not cache, but it is probably
>    not a good solution not to tell the user about potential problems.
>
>I have added a bug to track this:
>
>http://forge.objectweb.org/tracker/index.php?func=detail&aid=305062&group_i
>d=168&atid=350207
>
>For now I have implemented 1) above.  This will be in the nightly
>builds soon. let me know if this works for you. It should if you don't
>use doc() and schema types in the same expressions.
>
>-Erik
>
>Ryan Puddephatt wrote:
> > Erik,
> > I removed it, from saxon-8_7_orbeon.jar, but it didn't change
> > anything. I also tried it from the saxon 6 jar, again it didn't work.
> >
> > I have attached the original exception and exception entries from the
> > logger, perhaps it will mean more to you
> >
> > Thanks
> >
> > Ryan Puddephatt
> > Software Engineer
> > TFX Group - IT UK
> > 1 Michaelson Square
> > Livingston
> > West Lothian
> > Scotand
> > EH54 7DP
> >
> > * [hidden email]
> > ( 01506 407 110
> > 7  01506 407 108
>
>--
>Orbeon - XForms Everywhere:
>http://www.orbeon.com/blog/


ati1.xml (45K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Schema Aware XSLT problems

Erik Bruchez
Administrator
Ryan,

I don't have SA setup at the moment. But this time the exception really
comes from Saxon SA, which is good news! I sent an email to saxon-help
to see if Mike Kay has an idea of what this could be.

-Erik

Ryan Puddephatt wrote:

> Erik,
> I tried it on a simple schema using 'instance of' and it worked fine
> without error. I then used my original stylesheet and it gave me a different
> error. Below is the stack trace that I receive. It seems to have something
> to do with XDT, I've checked the namespace and its correct, I've even run it
> standalone in Saxon SA and it works fine. If you want I can send you the
> test case if you have SA setup?
>
> Thanks
>
> ; SystemID: oxf:/common-xsl/extract02.xsl; Line#: 223; Column#: -1
> net.sf.saxon.trans.StaticError: XPath syntax error at char 0 in
> {xdt:anyAtomicType}:
>     There is no imported schema for namespace
> http://www.w3.org/2005/xpath-datatypes
> at
> net.sf.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:106)
> at
> net.sf.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:85)
> at
> net.sf.saxon.expr.ExpressionParser.getAtomicType(ExpressionParser.java:684)
> at
> net.sf.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.java:7
> 81)
> at
> net.sf.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.java:2
> 24)
> at
> net.sf.saxon.style.StyleElement.makeSequenceType(StyleElement.java:497)
> at
> net.sf.saxon.style.XSLGeneralVariable.prepareAttributes(XSLGeneralVariable.j
> ava:218)
> at
> net.sf.saxon.style.StyleElement.processAttributes(StyleElement.java:341)
> at
> net.sf.saxon.style.StyleElement.processAllAttributes(StyleElement.java:311)
> at


--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

RE: Schema Aware XSLT problems

Ryan Puddephatt
Thanks Erik, let me know when you get a response

Ryan

Ryan Puddephatt
Software Engineer
TFX Group - IT UK
1 Michaelson Square
Livingston
West Lothian
Scotand
EH54 7DP
 
* [hidden email]
( 01506 407 110
7  01506 407 108
 

>-----Original Message-----
>From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>Sent: 29 April 2006 20:08
>To: [hidden email]
>Subject: Re: [ops-users] Schema Aware XSLT problems
>
>Ryan,
>
>I don't have SA setup at the moment. But this time the exception really
>comes from Saxon SA, which is good news! I sent an email to saxon-help
>to see if Mike Kay has an idea of what this could be.
>
>-Erik
>
>Ryan Puddephatt wrote:
>> Erik,
>> I tried it on a simple schema using 'instance of' and it worked fine
>> without error. I then used my original stylesheet and it gave me a
>different
>> error. Below is the stack trace that I receive. It seems to have
>something
>> to do with XDT, I've checked the namespace and its correct, I've even run
>it
>> standalone in Saxon SA and it works fine. If you want I can send you the
>> test case if you have SA setup?
>>
>> Thanks
>>
>> ; SystemID: oxf:/common-xsl/extract02.xsl; Line#: 223; Column#: -1
>> net.sf.saxon.trans.StaticError: XPath syntax error at char 0 in
>> {xdt:anyAtomicType}:
>>     There is no imported schema for namespace
>> http://www.w3.org/2005/xpath-datatypes
>> at
>> net.sf.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:106)
>> at
>> net.sf.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:85)
>> at
>>
>net.sf.saxon.expr.ExpressionParser.getAtomicType(ExpressionParser.java:684)
>> at
>>
>net.sf.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.java:
>7
>> 81)
>> at
>>
>net.sf.saxon.expr.ExpressionParser.parseSequenceType(ExpressionParser.java:
>2
>> 24)
>> at
>> net.sf.saxon.style.StyleElement.makeSequenceType(StyleElement.java:497)
>> at
>>
>net.sf.saxon.style.XSLGeneralVariable.prepareAttributes(XSLGeneralVariable.
>j
>> ava:218)
>> at
>> net.sf.saxon.style.StyleElement.processAttributes(StyleElement.java:341)
>> at
>>
>net.sf.saxon.style.StyleElement.processAllAttributes(StyleElement.java:311)
>> at




--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: Schema Aware XSLT problems

Erik Bruchez
Administrator
See the answer attached.

Can you try getting the namespace from the implementation, and then see
if changing it fixes your issue?

-Erik

Ryan Puddephatt wrote:

> Thanks Erik, let me know when you get a response
>
> Ryan
>
> Ryan Puddephatt
> Software Engineer
> TFX Group - IT UK
> 1 Michaelson Square
> Livingston
> West Lothian
> Scotand
> EH54 7DP
>  
> * [hidden email]
> ( 01506 407 110
> 7  01506 407 108

Sounds like a version problem. This namespace changed in successive drafts
of the specs, and in consequence it changed in successive versions of Saxon.
For any given version of Saxon, you can find out the actual namespace URI
used with the following query:

java net.sf.saxon.Query "{<a
xmlns:nc='java:net.sf.saxon.om.NamespaceConstant'>{nc:XDT()}</a>}"

Typically Saxon also recognizes older versions of the namespace, but not of
course newer versions.

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

> -----Original Message-----
> From: [hidden email]
> [mailto:[hidden email]] On Behalf Of
> Erik Bruchez
> Sent: 29 April 2006 20:08
> To: [hidden email]
> Subject: [saxon] There is no imported schema for namespace
> http://www.w3.org/2005/xpath-datatypes
>
> We are getting this error with a stylesheet running on Saxon
> SA. I am not sure whether this is due to the stylesheet,
> Saxon, or OPS. Does the exception below indicate anything useful?
>
> Thanks,
>
> -Erik
>
> ; SystemID: oxf:/common-xsl/extract02.xsl; Line#: 223; Column#: -1
> net.sf.saxon.trans.StaticError: XPath syntax error at char 0 in
> {xdt:anyAtomicType}:
>      There is no imported schema for namespace
> http://www.w3.org/2005/xpath-datatypes
> at
> net.sf.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:106)
> at
> net.sf.saxon.expr.ExpressionParser.grumble(ExpressionParser.java:85)
> at
> net.sf.saxon.expr.ExpressionParser.getAtomicType(ExpressionPar
> ser.java:684)
> at
> net.sf.saxon.expr.ExpressionParser.parseSequenceType(Expressio
> nParser.java:7
> 81)
> at
> net.sf.saxon.expr.ExpressionParser.parseSequenceType(Expressio
> nParser.java:2
> 24)
> at
> net.sf.saxon.style.StyleElement.makeSequenceType(StyleElement.
> java:497)
> at
> net.sf.saxon.style.XSLGeneralVariable.prepareAttributes(XSLGen
> eralVariable.j
> ava:218)
> at
> net.sf.saxon.style.StyleElement.processAttributes(StyleElement
> .java:341)
> at
> net.sf.saxon.style.StyleElement.processAllAttributes(StyleElem
> ent.java:311)
> at
> net.sf.saxon.style.StyleElement.processAllAttributes(StyleElem
> ent.java:319)
> at
> net.sf.saxon.style.XSLStylesheet.processAllAttributes(XSLStyle
> sheet.java:877
> )
> at
> net.sf.saxon.style.XSLStylesheet.preprocess(XSLStylesheet.java:617)
> at
> net.sf.saxon.PreparedStylesheet.setStylesheetDocument(Prepared
> Stylesheet.jav
> a:292)
> at
> net.sf.saxon.PreparedStylesheet.prepare(PreparedStylesheet.java:115)
> at
> net.sf.saxon.TransformerFactoryImpl.newTemplates(TransformerFa
> ctoryImpl.java
> :124)
> at
> org.orbeon.oxf.xml.TransformerUtils.getTemplates(TransformerUt
> ils.java:256)
> at
> org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.cr
> eateTransforme
> r(XSLTTransformer.java:354)
> at
> org.orbeon.oxf.processor.transformer.xslt.XSLTTransformer$1.re
> adImpl(XSLTTra
> nsformer.java:124)
>
>
> -------------------------------------------------------
> Using Tomcat but need to do more? Need to support web
> services, security?
> Get stuff done quickly with pre-integrated technology to make
> your job easier Download IBM WebSphere Application Server
> v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&
> dat=121642
> _______________________________________________
> saxon-help mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/saxon-help


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
saxon-help mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help


--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

xforms:insert at a variant position

christophe.burdinat
Hello,

I'd like to add a specific element in a nodeset using the xforms:insert
action. This element should be inserted just after an other element, which
position is not constant.

Would have any idea to do this ?

Thanks


----- Original Message -----
From: "Erik Bruchez" <[hidden email]>
To: <[hidden email]>
Sent: Monday, May 01, 2006 5:19 AM
Subject: Re: [ops-users] Schema Aware XSLT problems


> See the answer attached.
>
> Can you try getting the namespace from the implementation, and then see
> if changing it fixes your issue?
>
> -Erik
>
> Ryan Puddephatt wrote:
>> Thanks Erik, let me know when you get a response
>>
>> Ryan
>>
>> Ryan Puddephatt
>> Software Engineer
>> TFX Group - IT UK
>> 1 Michaelson Square
>> Livingston
>> West Lothian
>> Scotand
>> EH54 7DP
>>
>> * [hidden email]
>> ( 01506 407 110
>> 7  01506 407 108
>
>

--------------------------------------------------------------------------------


>
> --
> You receive this message as a subscriber of the [hidden email]
> mailing list.
> To unsubscribe: mailto:[hidden email]
> For general help: mailto:[hidden email]?subject=help
> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
>


--------------------------------------------------------------------------------


No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.385 / Virus Database: 268.5.1/327 - Release Date: 28/04/2006




--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: xforms:insert at a variant position

Erik Bruchez
Administrator
Christophe,

The xforms:insert/@at attribute contains an XPath expression that allows
you to specify the insertion position. So it's just a matter or writing
the correct XPath expression. Very often, it just depends on the current
repeat index, such as "index('my-repeat')", but it can be anything you want.

-Erik

Christophe Burdinat wrote:
> Hello,
>
> I'd like to add a specific element in a nodeset using the xforms:insert
> action. This element should be inserted just after an other element,
> which position is not constant.
>
> Would have any idea to do this ?
>
> Thanks

--
Orbeon - XForms Everywhere:
http://www.orbeon.com/blog/



--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

RE: Schema Aware XSLT problems

Ryan Puddephatt
In reply to this post by Erik Bruchez
Erik,
        Where would this solution go? Is it somewhere in the stylesheet? Or
java?

Thanks

Ryan

Ryan Puddephatt
Software Engineer
TFX Group - IT UK
1 Michaelson Square
Livingston
West Lothian
Scotand
EH54 7DP
 
* [hidden email]
( 01506 407 110
7  01506 407 108
 

>-----Original Message-----
>From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>Sent: 01 May 2006 04:20
>To: [hidden email]
>Subject: Re: [ops-users] Schema Aware XSLT problems
>
>See the answer attached.
>
>Can you try getting the namespace from the implementation, and then see
>if changing it fixes your issue?
>
>-Erik
>
>Ryan Puddephatt wrote:
>> Thanks Erik, let me know when you get a response
>>
>> Ryan
>>
>> Ryan Puddephatt
>> Software Engineer
>> TFX Group - IT UK
>> 1 Michaelson Square
>> Livingston
>> West Lothian
>> Scotand
>> EH54 7DP
>>
>> * [hidden email]
>> ( 01506 407 110
>> 7  01506 407 108




--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

RE: Schema Aware XSLT problems

Ryan Puddephatt
Erik,
        I tried it and it now gets to a step further. I don't get an
exception anymore just the following message in the screenshot. I have a
message on all the elements parsed like so:

<xsl:template match="*" priority="-10">
  <xsl:message>Processing <xsl:value-of select="name()"/> at line
<xsl:value-of select="saxon:line-number(.)"/></xsl:message>
  <xsl:next-match/>
</xsl:template>

The saxon:line-number value is always -1, which I don't understand, but at
least it is passing it now

Any ideas why I would get this?

Ryan

Ryan Puddephatt
Software Engineer
TFX Group - IT UK
1 Michaelson Square
Livingston
West Lothian
Scotand
EH54 7DP
 
* [hidden email]
( 01506 407 110
7  01506 407 108
 

>-----Original Message-----
>From: Ryan Puddephatt [mailto:[hidden email]]
>Sent: 01 May 2006 20:14
>To: [hidden email]
>Subject: RE: [ops-users] Schema Aware XSLT problems
>
>Erik,
> Where would this solution go? Is it somewhere in the stylesheet? Or
>java?
>
>Thanks
>
>Ryan
>
>Ryan Puddephatt
>Software Engineer
>TFX Group - IT UK
>1 Michaelson Square
>Livingston
>West Lothian
>Scotand
>EH54 7DP
>
>* [hidden email]
>( 01506 407 110
>7  01506 407 108
>
>>-----Original Message-----
>>From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>>Sent: 01 May 2006 04:20
>>To: [hidden email]
>>Subject: Re: [ops-users] Schema Aware XSLT problems
>>
>>See the answer attached.
>>
>>Can you try getting the namespace from the implementation, and then see
>>if changing it fixes your issue?
>>
>>-Erik
>>
>>Ryan Puddephatt wrote:
>>> Thanks Erik, let me know when you get a response
>>>
>>> Ryan
>>>
>>> Ryan Puddephatt
>>> Software Engineer
>>> TFX Group - IT UK
>>> 1 Michaelson Square
>>> Livingston
>>> West Lothian
>>> Scotand
>>> EH54 7DP
>>>
>>> * [hidden email]
>>> ( 01506 407 110
>>> 7  01506 407 108
>
>


ScreenShot012.jpg (59K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Schema Aware XSLT problems

Erik Bruchez
Administrator
Ryan,

The line number is in the XML output sent to the browser, not in the
XSLT. Do a View Source on that document, and see what could be wrong in
the generated XML.

-Erik

Ryan Puddephatt wrote:

> Erik,
> I tried it and it now gets to a step further. I don't get an
> exception anymore just the following message in the screenshot. I have a
> message on all the elements parsed like so:
>
> <xsl:template match="*" priority="-10">
>   <xsl:message>Processing <xsl:value-of select="name()"/> at line
> <xsl:value-of select="saxon:line-number(.)"/></xsl:message>
>   <xsl:next-match/>
> </xsl:template>
>
> The saxon:line-number value is always -1, which I don't understand, but at
> least it is passing it now
>
> Any ideas why I would get this?
>
> Ryan
>
> Ryan Puddephatt
> Software Engineer
> TFX Group - IT UK
> 1 Michaelson Square
> Livingston
> West Lothian
> Scotand
> EH54 7DP
>  
> * [hidden email]
> ( 01506 407 110
> 7  01506 407 108
>  
>
>> -----Original Message-----
>> From: Ryan Puddephatt [mailto:[hidden email]]
>> Sent: 01 May 2006 20:14
>> To: [hidden email]
>> Subject: RE: [ops-users] Schema Aware XSLT problems
>>
>> Erik,
>> Where would this solution go? Is it somewhere in the stylesheet? Or
>> java?
>>
>> Thanks
>>
>> Ryan
>>
>> Ryan Puddephatt
>> Software Engineer
>> TFX Group - IT UK
>> 1 Michaelson Square
>> Livingston
>> West Lothian
>> Scotand
>> EH54 7DP
>>
>> * [hidden email]
>> ( 01506 407 110
>> 7  01506 407 108
>>
>>> -----Original Message-----
>>> From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>>> Sent: 01 May 2006 04:20
>>> To: [hidden email]
>>> Subject: Re: [ops-users] Schema Aware XSLT problems
>>>
>>> See the answer attached.
>>>
>>> Can you try getting the namespace from the implementation, and then see
>>> if changing it fixes your issue?
>>>
>>> -Erik
>>>
>>> Ryan Puddephatt wrote:
>>>> Thanks Erik, let me know when you get a response
>>>>
>>>> Ryan
>>>>
>>>> Ryan Puddephatt
>>>> Software Engineer
>>>> TFX Group - IT UK
>>>> 1 Michaelson Square
>>>> Livingston
>>>> West Lothian
>>>> Scotand
>>>> EH54 7DP
>>>>
>>>> * [hidden email]
>>>> ( 01506 407 110
>>>> 7  01506 407 108
>>
>
>
> ------------------------------------------------------------------------
>
>
> ------------------------------------------------------------------------
>
>
> --
> You receive this message as a subscriber of the [hidden email] mailing list.
> To unsubscribe: mailto:[hidden email]
> For general help: mailto:[hidden email]?subject=help
> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws

--
Orbeon - XForms Everywhere:
http://www.orbeon.com/blog/



--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: Schema Aware XSLT problems

Erik Bruchez
Administrator
In reply to this post by Ryan Puddephatt
The line:

java net.sf.saxon.Query "{<a
xmlns:nc='java:net.sf.saxon.om.NamespaceConstant'>{nc:XDT()}</a>}"

is to be run from the command-line, using your Saxon SA JAR.

This way you should obtain the actual namespace URI for the xdt prefix
that is used by this particular version of Saxon. This is the URI you
should use in your stylesheet when you do xmlns:xdt="...". So did you
change that namespace declaration, or did you have trouble figuring out
what is that namespace URI?

-Erik

Ryan Puddephatt wrote:

> Erik,
> Where would this solution go? Is it somewhere in the stylesheet? Or
> java?
>
> Thanks
>
> Ryan
>
> Ryan Puddephatt
> Software Engineer
> TFX Group - IT UK
> 1 Michaelson Square
> Livingston
> West Lothian
> Scotand
> EH54 7DP
>  
> * [hidden email]
> ( 01506 407 110
> 7  01506 407 108
>  
>> -----Original Message-----
>> From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>> Sent: 01 May 2006 04:20
>> To: [hidden email]
>> Subject: Re: [ops-users] Schema Aware XSLT problems
>>
>> See the answer attached.
>>
>> Can you try getting the namespace from the implementation, and then see
>> if changing it fixes your issue?
>>
>> -Erik
>>
>> Ryan Puddephatt wrote:
>>> Thanks Erik, let me know when you get a response
>>>
>>> Ryan
>>>
>>> Ryan Puddephatt
>>> Software Engineer
>>> TFX Group - IT UK
>>> 1 Michaelson Square
>>> Livingston
>>> West Lothian
>>> Scotand
>>> EH54 7DP
>>>
>>> * [hidden email]
>>> ( 01506 407 110
>>> 7  01506 407 108
>
>
>
>
> ------------------------------------------------------------------------
>
>
> --
> You receive this message as a subscriber of the [hidden email] mailing list.
> To unsubscribe: mailto:[hidden email]
> For general help: mailto:[hidden email]?subject=help
> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws

--
Orbeon - XForms Everywhere:
http://www.orbeon.com/blog/



--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

RE: Schema Aware XSLT problems

Ryan Puddephatt
Erik,
        Thanks for the reply, I've found out why this isn't working, it's
not matching on any of my templates because it isn't recognizing the
schema-element function. I have the following example which shows the
problem:

    <p:processor  name="oxf:saxon8sa">
        <p:input name="data">
            <root xmlns="http://www.teleflex.com/ns/xlex-description">
                <element>
                    <text>This is a test</text>
                </element>
            </root>
        </p:input>
        <p:input name="config">
            <xsl:stylesheet version="2.0"
                xmlns:xs="http://www.w3.org/2001/XMLSchema"
                xmlns:x="http://www.teleflex.com/ns/xlex-description">
                    <xsl:import-schema
namespace="http://www.teleflex.com/ns/xlex-description">
                        <xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
targetNamespace="http://www.teleflex.com/ns/xlex-description">
                            <xs:element name="root">
                              <xs:complexType>
                                <xs:sequence>
                                  <xs:element ref="x:element"/>
                                </xs:sequence>
                              </xs:complexType>
                            </xs:element>
                            <xs:element name="element">
                              <xs:complexType>
                                <xs:choice maxOccurs="unbounded">
                                  <xs:element name="text" type="xs:string"/>
                                </xs:choice>
                              </xs:complexType>
                            </xs:element>
                        </xs:schema>
                    </xsl:import-schema>
                    <xsl:template match="schema-element(x:element)">
                        <result><xsl:value-of select="."/></result>
                    </xsl:template>
            </xsl:stylesheet>
        </p:input>
        <p:output name="data" ref="data"/>
    </p:processor>

Replacing the function with element() makes it work for this example, but
doesn't give an true match against the schema, obviously! OPS doesn't give
me any exception or stack trace it just serves up, I've tried it with Log4J
on debug, but nothing unusual

Any ideas?

Ryan Puddephatt
Software Engineer
TFX Group - IT UK
1 Michaelson Square
Livingston
West Lothian
Scotand
EH54 7DP
 
* [hidden email]
( 01506 407 110
7  01506 407 108
 

>-----Original Message-----
>From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>Sent: 02 May 2006 00:16
>To: [hidden email]
>Subject: Re: [ops-users] Schema Aware XSLT problems
>
>The line:
>
>java net.sf.saxon.Query "{<a
>xmlns:nc='java:net.sf.saxon.om.NamespaceConstant'>{nc:XDT()}</a>}"
>
>is to be run from the command-line, using your Saxon SA JAR.
>
>This way you should obtain the actual namespace URI for the xdt prefix
>that is used by this particular version of Saxon. This is the URI you
>should use in your stylesheet when you do xmlns:xdt="...". So did you
>change that namespace declaration, or did you have trouble figuring out
>what is that namespace URI?
>
>-Erik
>
>Ryan Puddephatt wrote:
>> Erik,
>> Where would this solution go? Is it somewhere in the stylesheet? Or
>> java?
>>
>> Thanks
>>
>> Ryan
>>
>> Ryan Puddephatt
>> Software Engineer
>> TFX Group - IT UK
>> 1 Michaelson Square
>> Livingston
>> West Lothian
>> Scotand
>> EH54 7DP
>>
>> * [hidden email]
>> ( 01506 407 110
>> 7  01506 407 108
>>
>>> -----Original Message-----
>>> From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>>> Sent: 01 May 2006 04:20
>>> To: [hidden email]
>>> Subject: Re: [ops-users] Schema Aware XSLT problems
>>>
>>> See the answer attached.
>>>
>>> Can you try getting the namespace from the implementation, and then see
>>> if changing it fixes your issue?
>>>
>>> -Erik
>>>
>>> Ryan Puddephatt wrote:
>>>> Thanks Erik, let me know when you get a response
>>>>
>>>> Ryan
>>>>
>>>> Ryan Puddephatt
>>>> Software Engineer
>>>> TFX Group - IT UK
>>>> 1 Michaelson Square
>>>> Livingston
>>>> West Lothian
>>>> Scotand
>>>> EH54 7DP
>>>>
>>>> * [hidden email]
>>>> ( 01506 407 110
>>>> 7  01506 407 108
>>
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>>
>> --
>> You receive this message as a subscriber of the [hidden email]
>mailing list.
>> To unsubscribe: mailto:[hidden email]
>> For general help: mailto:[hidden email]?subject=help
>> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
>
>
>--
>Orbeon - XForms Everywhere:
>http://www.orbeon.com/blog/




--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: Schema Aware XSLT problems

Erik Bruchez
Administrator
Ryan,

I thought I answered this but apparently not ;-)

Does this work correctly from the command-line, with the same SA JAR?

 From the point OPS runs the transformation, assuming you are actually
running Saxon SA, OPS doesn't do anything particular: it's all Saxon code!

-Erik

Ryan Puddephatt wrote:

> Erik,
> Thanks for the reply, I've found out why this isn't working, it's
> not matching on any of my templates because it isn't recognizing the
> schema-element function. I have the following example which shows the
> problem:
>
>     <p:processor  name="oxf:saxon8sa">
>         <p:input name="data">
>             <root xmlns="http://www.teleflex.com/ns/xlex-description">
>                 <element>
>                     <text>This is a test</text>
>                 </element>
>             </root>
>         </p:input>
>         <p:input name="config">
>             <xsl:stylesheet version="2.0"
>                 xmlns:xs="http://www.w3.org/2001/XMLSchema"
>                 xmlns:x="http://www.teleflex.com/ns/xlex-description">
>                     <xsl:import-schema
> namespace="http://www.teleflex.com/ns/xlex-description">
>                         <xs:schema
> xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
> targetNamespace="http://www.teleflex.com/ns/xlex-description">
>                             <xs:element name="root">
>                               <xs:complexType>
>                                 <xs:sequence>
>                                   <xs:element ref="x:element"/>
>                                 </xs:sequence>
>                               </xs:complexType>
>                             </xs:element>
>                             <xs:element name="element">
>                               <xs:complexType>
>                                 <xs:choice maxOccurs="unbounded">
>                                   <xs:element name="text" type="xs:string"/>
>                                 </xs:choice>
>                               </xs:complexType>
>                             </xs:element>
>                         </xs:schema>
>                     </xsl:import-schema>
>                     <xsl:template match="schema-element(x:element)">
>                         <result><xsl:value-of select="."/></result>
>                     </xsl:template>
>             </xsl:stylesheet>
>         </p:input>
>         <p:output name="data" ref="data"/>
>     </p:processor>
>
> Replacing the function with element() makes it work for this example, but
> doesn't give an true match against the schema, obviously! OPS doesn't give
> me any exception or stack trace it just serves up, I've tried it with Log4J
> on debug, but nothing unusual
>
> Any ideas?
>
> Ryan Puddephatt
> Software Engineer
> TFX Group - IT UK
> 1 Michaelson Square
> Livingston
> West Lothian
> Scotand
> EH54 7DP
>  
> * [hidden email]
> ( 01506 407 110
> 7  01506 407 108
>  
>> -----Original Message-----
>> From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>> Sent: 02 May 2006 00:16
>> To: [hidden email]
>> Subject: Re: [ops-users] Schema Aware XSLT problems
>>
>> The line:
>>
>> java net.sf.saxon.Query "{<a
>> xmlns:nc='java:net.sf.saxon.om.NamespaceConstant'>{nc:XDT()}</a>}"
>>
>> is to be run from the command-line, using your Saxon SA JAR.
>>
>> This way you should obtain the actual namespace URI for the xdt prefix
>> that is used by this particular version of Saxon. This is the URI you
>> should use in your stylesheet when you do xmlns:xdt="...". So did you
>> change that namespace declaration, or did you have trouble figuring out
>> what is that namespace URI?
>>
>> -Erik
>>
>> Ryan Puddephatt wrote:
>>> Erik,
>>> Where would this solution go? Is it somewhere in the stylesheet? Or
>>> java?
>>>
>>> Thanks
>>>
>>> Ryan
>>>
>>> Ryan Puddephatt
>>> Software Engineer
>>> TFX Group - IT UK
>>> 1 Michaelson Square
>>> Livingston
>>> West Lothian
>>> Scotand
>>> EH54 7DP
>>>
>>> * [hidden email]
>>> ( 01506 407 110
>>> 7  01506 407 108
>>>
>>>> -----Original Message-----
>>>> From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez
>>>> Sent: 01 May 2006 04:20
>>>> To: [hidden email]
>>>> Subject: Re: [ops-users] Schema Aware XSLT problems
>>>>
>>>> See the answer attached.
>>>>
>>>> Can you try getting the namespace from the implementation, and then see
>>>> if changing it fixes your issue?
>>>>
>>>> -Erik
>>>>
>>>> Ryan Puddephatt wrote:
>>>>> Thanks Erik, let me know when you get a response
>>>>>
>>>>> Ryan
>>>>>
>>>>> Ryan Puddephatt
>>>>> Software Engineer
>>>>> TFX Group - IT UK
>>>>> 1 Michaelson Square
>>>>> Livingston
>>>>> West Lothian
>>>>> Scotand
>>>>> EH54 7DP
>>>>>
>>>>> * [hidden email]
>>>>> ( 01506 407 110
>>>>> 7  01506 407 108
>>>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>>
>>> --
>>> You receive this message as a subscriber of the [hidden email]
>> mailing list.
>>> To unsubscribe: mailto:[hidden email]
>>> For general help: mailto:[hidden email]?subject=help
>>> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
>>
>> --
>> Orbeon - XForms Everywhere:
>> http://www.orbeon.com/blog/
>
>
>
>
> ------------------------------------------------------------------------
>
>
> --
> You receive this message as a subscriber of the [hidden email] mailing list.
> To unsubscribe: mailto:[hidden email]
> For general help: mailto:[hidden email]?subject=help
> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws

--
Orbeon - XForms Everywhere:
http://www.orbeon.com/blog/



--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
12