In my haste, I didn't realize that I had made a copy/paste error.
try this: ( $tt/item[$mi/filing-status eq '1'][(income-equal-or-greater-than lt $mi/income) and (income-less-than gt $mi/income)]/tax-single | $tt/item[$mi/filing-status eq '2'][(income-equal-or-greater-than lt $mi/income) and (income-less-than gt $mi/income)]/tax-married-filing-jointly ) Daniel E. Renfer (http://kronkltd.net/) On 2/22/06, Daniel E. Renfer <[hidden email]> wrote: > I just tried to throw something together real quick while on my lunch > break, so I didn't test this or anything, but will something like this > work for you? > > defining (for compactness): > $mi := instance('main-instance')//f1040ez > $tt := instance('taxtable') > > Query: > ( > $tt/item[$mi/filing-status eq '1'][(income-equal-or-greater-than lt > $mi/income) and (income-less-than gt income-less-than)]/tax-single > | > $tt/item[$mi/filing-status eq '2'][(income-equal-or-greater-than lt > $mi/income) and (income-less-than gt > income-less-than)]/tax-married-filing-jointly > ) > > sometimes you just have to back up and look at a query differently. > There are many ways to select the same nodes, sometimes you just have > to try thinking about it a different way to get anything done. I hope > that even if this code doesn't work as is. (it most likely won't) > it'll at least give you a new angle to attack the problem from. > > Daniel E. Renfer (http://kronkltd.net/) -- 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 |
In reply to this post by Daniel E. Renfer
I have tried the Xpath Daniel sent and another one I cam eup with.
Number 1 comiles but exhibits the strange bahvior of either producing an XFOrms Error: 3 (real descriptive), as well as a emtpy nodeset in some cases. Number 2 (contributed by Daniel) doesn't comile, but throws a Error Message 3 with a stacktrace of java.lang.ArrayIndexOutOfBoundsException Message 3. I don't know which array is out of bounds, I don't which one. I tried # 1 on Chiba, and it didn't compile. This is the longest time I have ever taken to write a simple if. I feel like I just picked up my first computer after 10 years of coding. 1. if ( instance('main-instance')//f1040ez/filing-status eq '1') then instance('taxtable')//item[instance('main-instance')/f1040ez/income ge income-equal-or-greater-than][instance('main-instance')/f1040ez/income lt income-less-than]/tax-single else if (instance('main-instance')//f1040ez/filing-status eq '2') then instance('taxtable')//item[instance('main-instance')/f1040ez/income ge income-equal-or-greater-than][instance('main-instance')/f1040ez/income lt income-less-than]/tax-married-filing-jointly else '0' 2. <xforms:bind id="tax" nodeset="/form/f1040ez/tax" calculate=" instance('taxtable')//item[instance('main-instance')//f1040ez/filing-sta tus eq '1'][(income-equal-or-greater-than lt instance('main-instance')//f1040ez/income) and (income-less-than gt instance('main-instance')//f1040ez/income)]/tax-single | instance('taxtable')//item[instance('main-instance')//f1040ez/filing-sta tus eq '2'][(income-equal-or-greater-than lt instance('main-instance')//f1040ez/income) and (income-less-than gt instance('main-instance')//f1040ez/income)]/tax-married-filing-jointly -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Daniel E. Renfer Sent: Wednesday, February 22, 2006 6:40 PM To: [hidden email] Subject: Re: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing I just tried to throw something together real quick while on my lunch break, so I didn't test this or anything, but will something like this work for you? defining (for compactness): $mi := instance('main-instance')//f1040ez $tt := instance('taxtable') Query: ( $tt/item[$mi/filing-status eq '1'][(income-equal-or-greater-than lt $mi/income) and (income-less-than gt income-less-than)]/tax-single | $tt/item[$mi/filing-status eq '2'][(income-equal-or-greater-than lt $mi/income) and (income-less-than gt income-less-than)]/tax-married-filing-jointly ) sometimes you just have to back up and look at a query differently. There are many ways to select the same nodes, sometimes you just have to try thinking about it a different way to get anything done. I hope that even if this code doesn't work as is. (it most likely won't) it'll at least give you a new angle to attack the problem from. Daniel E. Renfer (http://kronkltd.net/) On 2/22/06, Richard Braman <[hidden email]> wrote: > I have changed the Xpath so much, its rediculous. Disregard anything > if have written about bugs in the xPath, its one giant bug. I have > played some more with Xpath and it it is perfectly legal to have if > (expression gt expression2 and expression lt epxression3) then > epression4 But expression2 and expression3 must be one node. > > I understand this. > > But, in my instance expression could match more than expression2 and I > think that is why I am getting the error. A sequence of more than one > item is not allowed as the second operand of 'ge' > > What I can't figure out is the solution. > > I may have to change the structure of my tax table instance, and that > is fine, but I am not sure how to do this. I am used to wrting SQL > queries. In SQL, I did this > > SELECT > [single_tax], > [mfj_tax], > FROM > [taxtables_federal2004] > WHERE @taxable_income >= [taxable_income_at_least] > and @taxable_income < [taxable_income_less_than] > > But this is not SQL, I am not using SQL, and I now this must be > possible with Xpath. > > > -----Original Message----- > From: Richard Braman [mailto:[hidden email]] > Sent: Wednesday, February 22, 2006 12:39 PM > To: [hidden email] > Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element > into two controls for editing > > > I found some other bugs in my Xpath, prases with no error, but no > doing > anything: > if > (instance('main-instance')//f1040ez/income ge > instance('taxtable')//income-equal-or-greater-than) > and > (instance('main-instance')//f1040ez/income lt > instance('taxtable')//income-less-than) > and > (instance('main-instance')//f1040ez/filing-status eq '1') then > > instance('taxtable')//tax-single > else > if > (instance('main-instance')//f1040ez/income ge > instance('taxtable')//income-equal-or-greater-than) > and > (instance('main-instance')/f1040ez/income lt > instance('taxtable')//income-less-than) > and > (instance('main-instance')//f1040ez/filing-status eq '2') then > > instance('taxtable')//tax-married-filing-jointly > > else '0' > > -----Original Message----- > From: Richard Braman [mailto:[hidden email]] > Sent: Wednesday, February 22, 2006 12:23 PM > To: [hidden email] > Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element > into two controls for editing > > > The XPATH > > if (instance('main-instance')//f1040ez/income ge > instance('taxtable')//income-equal-or-greater-than > and > instance('main-instance')//f1040ez/income lt > instance('taxtable')//income-less-than > and > instance('main-instance')//f1040ez/filing-status = '1') then > > instance('taxtable')/item/tax-single > else > if > (instance('main-instance')//f1040ez/income ge > instance('taxtable')//income-equal-or-greater-than > and > instance('main-instance')/f1040ez/income lt > instance('taxtable')//income-less-than > and > instance('main-instance')//f1040ez/filing-status = '2') then > > instance('taxtable')/item/tax-married-filing-jointly > > else '0' > > The error I am getting now: > A sequence of more than one item is not allowed as the second operand > of 'ge' > > I think this has to do with the 'and' clause. > > The whole file is below: > > <!-- > The contents of this file are subject to the Mozilla Public License > Version 1.1 (the "License"); you may not use this file except in > compliance with the License. You may obtain a copy of the License at > http://www.mozilla.org/MPL/ Software distributed under the License is > distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either > express or implied. See the License for the specific language > governing rights and limitations under the License. The Initial > Developer of the Original Code is Tax Code Software Foundation, Inc. > Portions created by Tax Code Software Foundation, Inc are Copyright > (C) 2005-2006. All Rights Reserved. > > Contributor(s): [hidden email]. > > > --> > <html xsl:version="2.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > xmlns:xforms="http://www.w3.org/2002/xforms" > xmlns:xxforms="http://orbeon.org/oxf/xml/xforms" > xmlns:xi="http://www.w3.org/2003/XInclude" > xmlns:f="http://orbeon.org/oxf/xml/formatting" > xmlns:pdf="http://taxcodesoftware.org/xml/pdf-metadata" > xmlns:xhtml="http://www.w3.org/1999/xhtml" > xmlns="http://www.w3.org/1999/xhtml" > xmlns:ev="http://www.w3.org/2001/xml-events"> > <head> > <title>Form 1040 EZ 2005</title> > <xforms:model> > <xforms:instance id="main-instance"> > <form xmlns=""> > <f1040ez> > <SEQ0010>123456789</SEQ0010> > > <income>0</income> > <tax/> > <credit/> > </f1040ez> > </form> > </xforms:instance> > <xforms:instance id="taxtable"> > <form xmlns=""> > <taxtable> > <item> > > <income-equal-or-greater-than>0</income-equal-or-greater-than> > > <income-less-than>5</income-less-than> > > <tax-single>0</tax-single> > > <tax-married-filing-jointly>0</tax-married-filing-jointly> > </item> > <item> > > <income-equal-or-greater-than>5</income-equal-or-greater-than> > > <income-less-than>10</income-less-than> > > <tax-single>1</tax-single> > > <tax-married-filing-jointly>0</tax-married-filing-jointly> > </item> > </taxtable> > </form> > </xforms:instance> > <xforms:instance id="sub-instance" > > <form xmlns=""> > <SSN> > <part1/> > <part2/> > <part3/> > </SSN> > </form> > </xforms:instance> > > <xforms:bind > nodeset="instance('main-instance')"> > <!--<xforms:bind id="tax" > nodeset="/form/f1040ez/tax" calculate="/form/f1040ez/income * > .10"></xforms:bind>--> > > <xforms:bind id="tax" > nodeset="/form/f1040ez/tax" > calculate=" > if > (instance('main-instance')//f1040ez/income ge > instance('taxtable')//income-equal-or-greater-than > and > instance('main-instance')//f1040ez/income lt > instance('taxtable')//income-less-than > and > instance('main-instance')//f1040ez/filing-status = '1') then > > instance('taxtable')/item/tax-single > else > if > (instance('main-instance')//f1040ez/income ge > instance('taxtable')//income-equal-or-greater-than > and > instance('main-instance')/f1040ez/income lt > instance('taxtable')//income-less-than > and > instance('main-instance')//f1040ez/filing-status = '2') then > > instance('taxtable')/item/tax-married-filing-jointly > > else '0' > "/> > > <xforms:bind id="filing-status" > nodeset="/form/f1040ez/filing-status"/> > <xforms:bind id="income" > nodeset="/form/f1040ez/income"/> > <xforms:bind id="SSN" > nodeset="/form/f1040ez/SEQ0010"/> > </xforms:bind> > <!-- I am not sure where this should go > --> > <xforms:action ev:event="xforms-ready"> > <xforms:setvalue > ref="instance('sub-instance')//SSN/part1" > value="substring(instance('main-instance')//f1040ez/SEQ0010,1,3)"/> > <xforms:setvalue > ref="instance('sub-instance')//SSN/part2" > value="substring(instance('main-instance')//f1040ez/SEQ0010,4,2)"/> > <xforms:setvalue > ref="instance('sub-instance')//SSN/part3" > value="substring(instance('main-instance')//f1040ez/SEQ0010,6,4)"/> > </xforms:action> > > > <xforms:bind id="f1-8" > nodeset="instance('sub-instance')//SSN/part1"/> > <xforms:bind id="f1-9" > nodeset="instance('sub-instance')//SSN/part2"/> > <xforms:bind id="f1-10" > nodeset="instance('sub-instance')//SSN/part3"/> > <xforms:action ev:event="xforms-submit"> > <xforms:setvalue > ref="instance('main-instance')/form/f1040ez/SEQ0010" > value="concat(instance('sub-instance')/SSN/part1,concat(instance('sub- > in > stance')/SSN/part2, concat(instance('sub-instance')/SSN/part3"/> > </xforms:action> > --> > </xforms:model> > </head> > <body> > <xforms:input > bind="SSN"><xforms:label>SSN</xforms:label></xforms:input><br/> > <xforms:input > bind="f1-8"><xforms:label>SSN1</xforms:label></xforms:input><br/> > <xforms:input > bind="f1-9"><xforms:label>SSN2</xforms:label></xforms:input><br/> > <xforms:input > bind="f1-10"><xforms:label>SSN3</xforms:label></xforms:input><br/> > > <xforms:input > bind="filing-status"><xforms:label>Filing > Status (1 for Single, 2 for > <xforms:input > bind="income"><xforms:label>Income</xforms:label></xforms:input><br/> > <xforms:output > bind="tax"><xforms:label>Tax</xforms:label></xforms:output> > </body> > </html> > > > > -----Original Message----- > From: Ryan Puddephatt [mailto:[hidden email]] > Sent: Wednesday, February 22, 2006 12:24 PM > To: [hidden email] > Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element > into two controls for editing > > > Richard, > Post one of your XPath expressions there may well be a simple > problem that is easily overlooked! > > 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: Richard Braman [mailto:[hidden email]] > >Sent: 22 February 2006 16:58 > >To: [hidden email] > >Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element > >into > > >two controls for editing > > > >I was stuck in the default namespace trap. Now my file is parsing > >and all the instances are in one place (so its portable). But > >nothing is working. > > > >Here are the issues: > >1. My node splitting is not working. It seems that the setvalue is > >not firing on the xforms ready event. 2. My Xpath expression to > >caulcate the tax is not working. > > > > > >-----Original Message----- > >From: Ryan Puddephatt [mailto:[hidden email]] > >Sent: Wednesday, February 22, 2006 11:37 AM > >To: [hidden email] > >Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element > >into > > >two controls for editing > > > > > >Richard, > > You can define it in the file with > > > ><xforms:instance id="some-id"> > > <instance> > > <some/> > > <elements/> > > </instance> > ></xforms:instance> > > > >It must contain a root element though > > > ><xforms:instance id="some-id"> > > <instance/> > ></xforms:instance> > > > >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: Richard Braman [mailto:[hidden email]] > >>Sent: 22 February 2006 16:18 > >>To: [hidden email] > >>Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element > >>into > > > >>two controls for editing > >> > >>I figured out the error. It seems like you cannot define the > >>instance > > >>in your view. You have to use the src="oxf://path-to-instance" Is > >>this > > > >>right? > >> > >>-----Original Message----- > >>From: Richard Braman [mailto:[hidden email]] > >>Sent: Wednesday, February 22, 2006 11:13 AM > >>To: [hidden email] > >>Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element > >>into > > > >>two controls for editing > >> > >> > >>No, i changed it because I was playing with my tax table prototype > >>on the same page (see other post) so I commented out the piece with > >>the error. Its back now. I put it down below. > >> > >>Orbeon PresentationServer (OPS) - Error Page > >>Error Message > >>The following error has occurred: > >> > >>Error Message > >>[No error message provided.] > >> > >>OPS Call Stack > >>The OPS Call Stack helps you determine what sequence of OPS > >>operations > > >>have caused the error. > >> > >>Resource URL Line Column Description XML Element > >>oxf:/ops/pfc/xforms-epilogue.xpl 81 67 > >>oxf:/ops/pfc/xforms-epilogue.xpl > > > >>101 71 reading processor output > >>(name='document', ref='xformed-data') <p:output name="document" > >>ref="xformed-data"/> > >>oxf:/config/epilogue.xpl 36 58 reading processor output > >>(name='xformed-data', id='xformed-data') <p:output > >name="xformed-data" > >>id="xformed-data"/> > >>oxf:/config/epilogue-servlet.xpl 30 48 reading processor output > >>(name='xformed-data') <p:param type="input" name="xformed-data"/> > >>oxf:/config/epilogue.xpl 54 46 executing processor > >>(name='{http://www.orbeon.com/oxf/processors}pipeline') > >>name="oxf:pipeline">...</p:processor> > >>oxf:/examples/1040ez/page-flow.xml 42 44 executing processor > >>(name='{http://www.orbeon.com/oxf/processors}pipeline') > >>oxf:/examples/1040ez/page-flow.xpl 17 39 executing processor > >>(name='{http://www.orbeon.com/oxf/processors}page-flow') > <p:processor > >>name="oxf:page-flow">...</p:processor> > >>oxf:/page-flow.xml 35 80 reading page model data output (page > >>id='1040ez', model='/examples/1040ez/page-flow.xpl') <page > >id="1040ez" > >>path-info="/1040ez*" model="/examples/1040ez/page-flow.xpl"/> > >> > >>Java Exceptions (4 total) > >>Java Exceptions are the native mechanism by which OPS reports > >>errors. More than one exception may be provided below but usually > >>the first exception along with the OPS Stack Trace above provide > >>enough information to track down an issue. > >> > >> java.lang.NullPointerException > >>Exception Class java.lang.NullPointerException > >>Message > >>Servlet Stack Trace > >>(158 method calls) Class Name Method Name File Name Line Number > >>org.orbeon.oxf.xforms.action.XFormsActionInterpreter runAction > >>XFormsActionInterpreter.java 86 > >>org.orbeon.oxf.xforms.action.XFormsActionInterpreter runAction > >>XFormsActionInterpreter.java 136 > >>org.orbeon.oxf.xforms.XFormsContainingDocument runAction > >>XFormsContainingDocument.java 636 > >>org.orbeon.oxf.xforms.event.XFormsEventHandlerImpl handleEvent > >>XFormsEventHandlerImpl.java 85 > >>org.orbeon.oxf.xforms.XFormsContainingDocument dispatchEvent > >>XFormsContainingDocument.java 597 > >>org.orbeon.oxf.xforms.XFormsContainingDocument dispatchExternalEvent > >>XFormsContainingDocument.java 456 > >>org.orbeon.oxf.xforms.processor.XFormsServer > >>createXFormsContainingDocument XFormsServer.java 1046 > >>org.orbeon.oxf.xforms.processor.XFormsToXHTML doIt > >>XFormsToXHTML.java 79 > >> > >>org.orbeon.oxf.xforms.processor.XFormsToXHTML access$000 > >>XFormsToXHTML.java 41 > >>org.orbeon.oxf.xforms.processor.XFormsToXHTML$1 > >>readImpl XFormsToXHTML.java 61 > >> More... > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run > >>PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl > >>PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>readImpl ConcreteChooseProcessor.java 122 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run > >>PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl > >>PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>readImpl ConcreteChooseProcessor.java 122 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run > >>PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl > >>PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run > >>PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl > >>executeParents > >ProcessorImpl.java > >>533 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu > >>t > >>readImpl PipelineProcessor.java 568 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run > >>PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl > >>executeParents > >ProcessorImpl.java > >>533 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu > >>t > >>readImpl PipelineProcessor.java 568 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.TeeProcessor access$100 > >>TeeProcessor.java 36 > >>org.orbeon.oxf.processor.pipeline.TeeProcessor$1 > >>readImpl TeeProcessor.java 57 > > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.ProcessorImpl readInputAsDOM4J > >>ProcessorImpl.java 404 org.orbeon.oxf.processor.ProcessorImpl$4 read > >>ProcessorImpl.java 428 org.orbeon.oxf.processor.ProcessorImpl > >>readCacheInputAsObject ProcessorImpl.java 470 > >>org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J > >>ProcessorImpl.java 426 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor > >>start > > >>ConcreteChooseProcessor.java 185 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor > >>ConcreteChooseProcessor.java 232 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor > >>ConcreteChooseProcessor.java 232 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.PageFlowControllerProcessor start > >>PageFlowControllerProcessor.java 416 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput > >>PipelineProcessor.java 140 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl > >>PipelineProcessor.java 89 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>readImpl ConcreteChooseProcessor.java 122 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 > >>org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX > >ProcessorImpl.java > >>354 > >>org.orbeon.oxf.processor.IdentityProcessor$1 readImpl > >>IdentityProcessor.java 33 org.orbeon.oxf.processor.ProcessorImpl$6 > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run > >>PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl > >>PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX > >ProcessorImpl.java > >>354 > >>org.orbeon.oxf.processor.NullSerializer start NullSerializer.java 31 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput > >>PipelineProcessor.java 140 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl > >>PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 > >>getKey ProcessorImpl.java 991 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>getKeyImpl ConcreteChooseProcessor.java 132 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>991 > > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl > >>getInputKey ProcessorImpl.java 1191 > >>org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl > >>IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 > >>getKey ProcessorImpl.java 991 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl > >>getInputKey ProcessorImpl.java 1191 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run > >>PipelineProcessor.java 113 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl > >>PipelineProcessor.java 111 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>getKeyImpl ConcreteChooseProcessor.java 132 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl > >>TeeProcessor.java 79 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java > >>1191 > >>org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity > >>ProcessorImpl.java 1222 > >>org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject > >>ProcessorImpl.java 456 > >>org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J > >>ProcessorImpl.java 426 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start > >>ConcreteChooseProcessor.java 185 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.PageFlowControllerProcessor start > >>PageFlowControllerProcessor.java 416 > >>org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 > >>org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java > 95 > >>org.orbeon.oxf.servlet.OPSServletDelegate service > >>OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service > >>HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service > >>OPSServlet.java 74 > >> > >>Servlet Stack Trace > >>(15 method calls) Class Name Method Name File Name Line Number > >>javax.servlet.http.HttpServlet service HttpServlet.java 802 > >>org.apache.catalina.core.ApplicationFilterChain internalDoFilter > >>ApplicationFilterChain.java 252 > >>org.apache.catalina.core.ApplicationFilterChain doFilter > >>ApplicationFilterChain.java 173 > >>org.apache.catalina.core.StandardWrapperValve invoke > >>StandardWrapperValve.java 213 > >>org.apache.catalina.core.StandardContextValve invoke > >>StandardContextValve.java 178 > >>org.apache.catalina.core.StandardHostValve invoke > >>StandardHostValve.java 126 > >>org.apache.catalina.valves.ErrorReportValve > >>invoke ErrorReportValve.java 105 > >>org.apache.catalina.core.StandardEngineValve invoke > >>StandardEngineValve.java 107 > >>org.apache.catalina.connector.CoyoteAdapter service > > >>148 org.apache.coyote.http11.Http11Processor process > >>Http11Processor.java 856 More... > >>org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler > >>processConnection Http11Protocol.java 744 > >>org.apache.tomcat.util.net.PoolTcpEndpoint processSocket > >>PoolTcpEndpoint.java 527 > >>org.apache.tomcat.util.net.LeaderFollowerWorkerThread runIt > >>LeaderFollowerWorkerThread.java 80 > >>org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run > >>ThreadPool.java 684 java.lang.Thread run N/A > >> > >> org.orbeon.oxf.common.ValidationException > >>Exception Class org.orbeon.oxf.common.ValidationException > >>Message > >>Resource URL oxf:/ops/pfc/xforms-epilogue.xpl > >>Line 81 > >>Column 67 > >>Servlet Stack Trace > >>(155 method calls) Class Name Method Name File Name Line Number > >>org.orbeon.oxf.common.ValidationException wrapException > >>ValidationException.java 119 > >>org.orbeon.oxf.xforms.XFormsContainingDocument dispatchEvent > >>XFormsContainingDocument.java 617 > >>org.orbeon.oxf.xforms.XFormsContainingDocument dispatchExternalEvent > >>XFormsContainingDocument.java 456 > >>org.orbeon.oxf.xforms.processor.XFormsServer > >>createXFormsContainingDocument XFormsServer.java 1046 > >>org.orbeon.oxf.xforms.processor.XFormsToXHTML doIt > >>XFormsToXHTML.java 79 > >> > >>org.orbeon.oxf.xforms.processor.XFormsToXHTML access$000 > >>XFormsToXHTML.java 41 > >>org.orbeon.oxf.xforms.processor.XFormsToXHTML$1 > >>readImpl XFormsToXHTML.java 61 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >> More... org.orbeon.oxf.processor.pipeline.PipelineProcessor > >>access$000 PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run > >>PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl > >>PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>readImpl ConcreteChooseProcessor.java 122 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run > >>PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl > >>PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>readImpl ConcreteChooseProcessor.java 122 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run > >>PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl > >>PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run > >>PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl > >>executeParents > >ProcessorImpl.java > >>533 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu > >>t > >>readImpl PipelineProcessor.java 568 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run > >>PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl > >>executeParents > >ProcessorImpl.java > >>533 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu > >>t > >>readImpl PipelineProcessor.java 568 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.TeeProcessor access$100 > >>TeeProcessor.java 36 > >>org.orbeon.oxf.processor.pipeline.TeeProcessor$1 > >>readImpl TeeProcessor.java 57 > > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.ProcessorImpl readInputAsDOM4J > >>ProcessorImpl.java 404 org.orbeon.oxf.processor.ProcessorImpl$4 read > >>ProcessorImpl.java 428 org.orbeon.oxf.processor.ProcessorImpl > >>readCacheInputAsObject ProcessorImpl.java 470 > >>org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J > >>ProcessorImpl.java 426 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor > >>start > > >>ConcreteChooseProcessor.java 185 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor > >>ConcreteChooseProcessor.java 232 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor > >>ConcreteChooseProcessor.java 232 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.PageFlowControllerProcessor start > >>PageFlowControllerProcessor.java 416 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput > >>PipelineProcessor.java 140 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl > >>PipelineProcessor.java 89 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>readImpl ConcreteChooseProcessor.java 122 > >>org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 > >>org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX > >ProcessorImpl.java > >>354 > >>org.orbeon.oxf.processor.IdentityProcessor$1 readImpl > >>IdentityProcessor.java 33 org.orbeon.oxf.processor.ProcessorImpl$6 > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run > >>PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl > >>PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 > >>read ProcessorImpl.java 987 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read > >>ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl > >>readInputAsSAX > >ProcessorImpl.java > >>349 > >>org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX > >ProcessorImpl.java > >>354 > >>org.orbeon.oxf.processor.NullSerializer start NullSerializer.java 31 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput > >>PipelineProcessor.java 140 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl > >>PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 > >>getKey ProcessorImpl.java 991 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>getKeyImpl ConcreteChooseProcessor.java 132 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>991 > > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl > >>getInputKey ProcessorImpl.java 1191 > >>org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl > >>IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 > >>getKey ProcessorImpl.java 991 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl > >>getInputKey ProcessorImpl.java 1191 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run > >>PipelineProcessor.java 113 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl > >>PipelineProcessor.java 111 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>getKeyImpl ConcreteChooseProcessor.java 132 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl > >>TeeProcessor.java 79 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java > >>1191 > >>org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity > >>ProcessorImpl.java 1222 > >>org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject > >>ProcessorImpl.java 456 > >>org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J > >>ProcessorImpl.java 426 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start > >>ConcreteChooseProcessor.java 185 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.PageFlowControllerProcessor start > >>PageFlowControllerProcessor.java 416 > >>org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 > >>org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java > 95 > >>org.orbeon.oxf.servlet.OPSServletDelegate service > >>OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service > >>HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service > >>OPSServlet.java 74 > >> > >>Servlet Stack Trace > >>(15 method calls) Class Name Method Name File Name Line Number > >>javax.servlet.http.HttpServlet service HttpServlet.java 802 > >>org.apache.catalina.core.ApplicationFilterChain internalDoFilter > >>ApplicationFilterChain.java 252 > >>org.apache.catalina.core.ApplicationFilterChain doFilter > >>ApplicationFilterChain.java 173 > >>org.apache.catalina.core.StandardWrapperValve invoke > >>StandardWrapperValve.java 213 > >>org.apache.catalina.core.StandardContextValve invoke > >>StandardContextValve.java 178 > >>org.apache.catalina.core.StandardHostValve invoke > >>StandardHostValve.java 126 > >>org.apache.catalina.valves.ErrorReportValve > >>invoke ErrorReportValve.java 105 > >>org.apache.catalina.core.StandardEngineValve invoke > >>StandardEngineValve.java 107 > >>org.apache.catalina.connector.CoyoteAdapter service > > >>148 org.apache.coyote.http11.Http11Processor process > >>Http11Processor.java 856 More... > >>org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler > >>processConnection Http11Protocol.java 744 > >>org.apache.tomcat.util.net.PoolTcpEndpoint processSocket > >>PoolTcpEndpoint.java 527 > >>org.apache.tomcat.util.net.LeaderFollowerWorkerThread runIt > >>LeaderFollowerWorkerThread.java 80 > >>org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run > >>ThreadPool.java 684 java.lang.Thread run N/A > >> > >> org.orbeon.oxf.common.OXFException > >>Exception Class org.orbeon.oxf.common.OXFException > >>Message oxf:/ops/pfc/xforms-epilogue.xpl, line 81, column 67: null > >>null > >> > >>Resource URL oxf:/ops/pfc/xforms-epilogue.xpl > >>Line 81 > >>Column 67 > >>Servlet Stack Trace > >>(43 method calls) Class Name Method Name File Name Line Number > >>org.orbeon.oxf.processor.NullSerializer start NullSerializer.java 33 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput > >>PipelineProcessor.java 140 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl > >>PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 > >>getKey ProcessorImpl.java 991 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>getKeyImpl ConcreteChooseProcessor.java 132 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>991 > > >>More... org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl > >>getKey ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.ProcessorImpl > >>getInputKey ProcessorImpl.java 1191 > >>org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl > >>IdentityProcessor.java 37 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.ProcessorImpl getInputKey > >>1191 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run > >>PipelineProcessor.java 113 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl > >>PipelineProcessor.java 111 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>getKeyImpl ConcreteChooseProcessor.java 132 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl > >>TeeProcessor.java 79 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java > >>1191 > >>org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity > >>ProcessorImpl.java 1222 > >>org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject > >>ProcessorImpl.java 456 > >>org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J > >>ProcessorImpl.java 426 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start > >>ConcreteChooseProcessor.java 185 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.PageFlowControllerProcessor start > >>PageFlowControllerProcessor.java 416 > >>org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 > >>org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java > 95 > >>org.orbeon.oxf.servlet.OPSServletDelegate service > >>OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service > >>HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service > >>OPSServlet.java 74 > >> > >>Servlet Stack Trace > >>(15 method calls) Class Name Method Name File Name Line Number > >>javax.servlet.http.HttpServlet service HttpServlet.java 802 > >>org.apache.catalina.core.ApplicationFilterChain internalDoFilter > >>ApplicationFilterChain.java 252 > >>org.apache.catalina.core.ApplicationFilterChain doFilter > >>ApplicationFilterChain.java 173 > >>org.apache.catalina.core.StandardWrapperValve invoke > >>StandardWrapperValve.java 213 > >>org.apache.catalina.core.StandardContextValve invoke > >>StandardContextValve.java 178 > >>org.apache.catalina.core.StandardHostValve invoke > >>StandardHostValve.java 126 > >>org.apache.catalina.valves.ErrorReportValve > >>invoke ErrorReportValve.java 105 > >>org.apache.catalina.core.StandardEngineValve invoke > >>StandardEngineValve.java 107 > >>org.apache.catalina.connector.CoyoteAdapter service > > >>148 org.apache.coyote.http11.Http11Processor process > >>Http11Processor.java 856 More... > >>org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler > >>processConnection Http11Protocol.java 744 > >>org.apache.tomcat.util.net.PoolTcpEndpoint processSocket > >>PoolTcpEndpoint.java 527 > >>org.apache.tomcat.util.net.LeaderFollowerWorkerThread runIt > >>LeaderFollowerWorkerThread.java 80 > >>org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run > >>ThreadPool.java 684 java.lang.Thread run N/A > >> > >> org.orbeon.oxf.common.ValidationException > >>Exception Class org.orbeon.oxf.common.ValidationException > >>Message oxf:/ops/pfc/xforms-epilogue.xpl, line 81, column 67: null > >>null > >> > >>Resource URL oxf:/ops/pfc/xforms-epilogue.xpl > >>Line 81 > >>Column 67 > >>Servlet Stack Trace > >>(43 method calls) Class Name Method Name File Name Line Number > >>org.orbeon.oxf.common.ValidationException wrapException > >>ValidationException.java 119 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 654 org.orbeon.oxf.processor.ProcessorImpl > >>executeChildren ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput > >>PipelineProcessor.java 140 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl > >>PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 > >>getKey ProcessorImpl.java 991 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>getKeyImpl ConcreteChooseProcessor.java 132 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>991 > > >>More... org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl > >>getKey ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.ProcessorImpl > >>getInputKey ProcessorImpl.java 1191 > >>org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl > >>IdentityProcessor.java 37 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.ProcessorImpl getInputKey > >>1191 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run > >>PipelineProcessor.java 113 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 > >>PipelineProcessor.java 66 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl > >>PipelineProcessor.java 111 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 > >>getKeyImpl ConcreteChooseProcessor.java 132 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl > >>TeeProcessor.java 79 > >>org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 > >>org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey > >>ProcessorImpl.java 1181 > >>org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java > >>1191 > >>org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity > >>ProcessorImpl.java 1222 > >>org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject > >>ProcessorImpl.java 456 > >>org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J > >>ProcessorImpl.java 426 > >>org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start > >>ConcreteChooseProcessor.java 185 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run > >>PipelineProcessor.java 652 > >>org.orbeon.oxf.processor.ProcessorImpl executeChildren > >>ProcessorImpl.java 515 > >>org.orbeon.oxf.processor.pipeline.PipelineProcessor start > >>PipelineProcessor.java 649 > >>org.orbeon.oxf.processor.PageFlowControllerProcessor start > >>PageFlowControllerProcessor.java 416 > >>org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 > >>org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java > 95 > >>org.orbeon.oxf.servlet.OPSServletDelegate service > >>OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service > >>HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service > >>OPSServlet.java 74 > >> > >>Servlet Stack Trace > >>(15 method calls) Class Name Method Name File Name Line Number > >>javax.servlet.http.HttpServlet service HttpServlet.java 802 > >>org.apache.catalina.core.ApplicationFilterChain internalDoFilter > >>ApplicationFilterChain.java 252 > >>org.apache.catalina.core.ApplicationFilterChain doFilter > >>ApplicationFilterChain.java 173 > >>org.apache.catal |
Your XPaths are pretty complicated.
How about building up slowly from a smaller, simpler path which you know works? Otherwise it's too hard to work out where the problem is. Richard Braman wrote: I have tried the Xpath Daniel sent and another one I cam eup with. Number 1 comiles but exhibits the strange bahvior of either producing an XFOrms Error: 3 (real descriptive), as well as a emtpy nodeset in some cases. Number 2 (contributed by Daniel) doesn't comile, but throws a Error Message 3 with a stacktrace of java.lang.ArrayIndexOutOfBoundsException Message 3. I don't know which array is out of bounds, I don't which one. I tried # 1 on Chiba, and it didn't compile. This is the longest time I have ever taken to write a simple if. I feel like I just picked up my first computer after 10 years of coding. 1. if ( instance('main-instance')//f1040ez/filing-status eq '1') then instance('taxtable')//item[instance('main-instance')/f1040ez/income ge income-equal-or-greater-than][instance('main-instance')/f1040ez/income lt income-less-than]/tax-single else if (instance('main-instance')//f1040ez/filing-status eq '2') then instance('taxtable')//item[instance('main-instance')/f1040ez/income ge income-equal-or-greater-than][instance('main-instance')/f1040ez/income lt income-less-than]/tax-married-filing-jointly else '0' 2. <xforms:bind id="tax" nodeset="/form/f1040ez/tax" calculate=" instance('taxtable')//item[instance('main-instance')//f1040ez/filing-sta tus eq '1'][(income-equal-or-greater-than lt instance('main-instance')//f1040ez/income) and (income-less-than gt instance('main-instance')//f1040ez/income)]/tax-single | instance('taxtable')//item[instance('main-instance')//f1040ez/filing-sta tus eq '2'][(income-equal-or-greater-than lt instance('main-instance')//f1040ez/income) and (income-less-than gt instance('main-instance')//f1040ez/income)]/tax-married-filing-jointly -----Original Message----- From: [hidden email] [[hidden email]] On Behalf Of Daniel E. Renfer Sent: Wednesday, February 22, 2006 6:40 PM To: [hidden email] Subject: Re: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing I just tried to throw something together real quick while on my lunch break, so I didn't test this or anything, but will something like this work for you? defining (for compactness): $mi := instance('main-instance')//f1040ez $tt := instance('taxtable') Query: ( $tt/item[$mi/filing-status eq '1'][(income-equal-or-greater-than lt $mi/income) and (income-less-than gt income-less-than)]/tax-single | $tt/item[$mi/filing-status eq '2'][(income-equal-or-greater-than lt $mi/income) and (income-less-than gt income-less-than)]/tax-married-filing-jointly ) sometimes you just have to back up and look at a query differently. There are many ways to select the same nodes, sometimes you just have to try thinking about it a different way to get anything done. I hope that even if this code doesn't work as is. (it most likely won't) it'll at least give you a new angle to attack the problem from. Daniel E. Renfer (http://kronkltd.net/) On 2/22/06, Richard Braman [hidden email] wrote:I have changed the Xpath so much, its rediculous. Disregard anything if have written about bugs in the xPath, its one giant bug. I have played some more with Xpath and it it is perfectly legal to have if (expression gt expression2 and expression lt epxression3) then epression4 But expression2 and expression3 must be one node. I understand this. But, in my instance expression could match more than expression2 and Ithink that is why I am getting the error. A sequence of more than one item is not allowed as the second operand of 'ge' What I can't figure out is the solution. I may have to change the structure of my tax table instance, and that is fine, but I am not sure how to do this. I am used to wrting SQL queries. In SQL, I did this SELECT [single_tax], [mfj_tax], FROM [taxtables_federal2004] WHERE @taxable_income >= [taxable_income_at_least] and @taxable_income < [taxable_income_less_than] But this is not SQL, I am not using SQL, and I now this must be possible with Xpath. -----Original Message----- From: Richard Braman [[hidden email]] Sent: Wednesday, February 22, 2006 12:39 PM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing I found some other bugs in my Xpath, prases with no error, but no doing anything: if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than) and (instance('main-instance')//f1040ez/income lt instance('taxtable')//income-less-than) and (instance('main-instance')//f1040ez/filing-status eq '1') then instance('taxtable')//tax-single else if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than) and (instance('main-instance')/f1040ez/income lt instance('taxtable')//income-less-than) and (instance('main-instance')//f1040ez/filing-status eq '2') then instance('taxtable')//tax-married-filing-jointly else '0' -----Original Message----- From: Richard Braman [[hidden email]] Sent: Wednesday, February 22, 2006 12:23 PM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing The XPATH if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')//f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '1') then instance('taxtable')/item/tax-single else if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')/f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '2') then instance('taxtable')/item/tax-married-filing-jointly else '0' The error I am getting now: A sequence of more than one item is not allowed as the second operand of 'ge' I think this has to do with the 'and' clause. The whole file is below: <!-- The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. The Initial Developer of the Original Code is Tax Code Software Foundation, Inc. Portions created by Tax Code Software Foundation, Inc are Copyright (C) 2005-2006. All Rights Reserved. Contributor(s): [hidden email]. --> <html xsl:version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xxforms="http://orbeon.org/oxf/xml/xforms" xmlns:xi="http://www.w3.org/2003/XInclude" xmlns:f="http://orbeon.org/oxf/xml/formatting" xmlns:pdf="http://taxcodesoftware.org/xml/pdf-metadata" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns="http://www.w3.org/1999/xhtml" xmlns:ev="http://www.w3.org/2001/xml-events"> <head> <title>Form 1040 EZ 2005</title> <xforms:model> <xforms:instance id="main-instance"> <form xmlns=""> <f1040ez> <SEQ0010>123456789</SEQ0010><filing-status>1</filing-status><income>0</income> <tax/> <credit/> </f1040ez> </form> </xforms:instance> <xforms:instance id="taxtable"> <form xmlns=""> <taxtable> <item> <income-equal-or-greater-than>0</income-equal-or-greater-than> <income-less-than>5</income-less-than> <tax-single>0</tax-single> <tax-married-filing-jointly>0</tax-married-filing-jointly> </item> <item> <income-equal-or-greater-than>5</income-equal-or-greater-than> <income-less-than>10</income-less-than> <tax-single>1</tax-single> <tax-married-filing-jointly>0</tax-married-filing-jointly> </item> </taxtable> </form> </xforms:instance> <xforms:instance id="sub-instance" > <form xmlns=""> <SSN> <part1/> <part2/> <part3/> </SSN> </form> </xforms:instance> <xforms:bind nodeset="instance('main-instance')"> <!--<xforms:bind id="tax" nodeset="/form/f1040ez/tax" calculate="/form/f1040ez/income * .10"></xforms:bind>--> <xforms:bind id="tax" nodeset="/form/f1040ez/tax" calculate=" if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')//f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '1') then instance('taxtable')/item/tax-single else if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')/f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '2') then instance('taxtable')/item/tax-married-filing-jointly else '0' "/> <xforms:bind id="filing-status" nodeset="/form/f1040ez/filing-status"/> <xforms:bind id="income" nodeset="/form/f1040ez/income"/> <xforms:bind id="SSN" nodeset="/form/f1040ez/SEQ0010"/> </xforms:bind> <!-- I am not sure where this should go --> <xforms:action ev:event="xforms-ready"> <xforms:setvalue ref="instance('sub-instance')//SSN/part1" value="substring(instance('main-instance')//f1040ez/SEQ0010,1,3)"/> <xforms:setvalue ref="instance('sub-instance')//SSN/part2" value="substring(instance('main-instance')//f1040ez/SEQ0010,4,2)"/> <xforms:setvalue ref="instance('sub-instance')//SSN/part3" value="substring(instance('main-instance')//f1040ez/SEQ0010,6,4)"/> </xforms:action> <xforms:bind id="f1-8" nodeset="instance('sub-instance')//SSN/part1"/> <xforms:bind id="f1-9" nodeset="instance('sub-instance')//SSN/part2"/> <xforms:bind id="f1-10" nodeset="instance('sub-instance')//SSN/part3"/> <xforms:action ev:event="xforms-submit"> <xforms:setvalue ref="instance('main-instance')/form/f1040ez/SEQ0010" value="concat(instance('sub-instance')/SSN/part1,concat(instance('sub- in stance')/SSN/part2, concat(instance('sub-instance')/SSN/part3"/> </xforms:action> --> </xforms:model> </head> <body> <xforms:input bind="SSN"><xforms:label>SSN</xforms:label></xforms:input><br/> <xforms:input bind="f1-8"><xforms:label>SSN1</xforms:label></xforms:input><br/> <xforms:input bind="f1-9"><xforms:label>SSN2</xforms:label></xforms:input><br/> <xforms:input bind="f1-10"><xforms:label>SSN3</xforms:label></xforms:input><br/> <xforms:input bind="filing-status"><xforms:label>Filing Status (1 for Single, 2 forMarried)</xforms:label></xforms:input><br/><xforms:input bind="income"><xforms:label>Income</xforms:label></xforms:input><br/> <xforms:output bind="tax"><xforms:label>Tax</xforms:label></xforms:output> </body> </html> -----Original Message----- From: Ryan Puddephatt [[hidden email]] Sent: Wednesday, February 22, 2006 12:24 PM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing Richard, Post one of your XPath expressions there may well be a simple problem that is easily overlooked! 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: Richard Braman [[hidden email]] Sent: 22 February 2006 16:58 To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element intotwo controls for editing I was stuck in the default namespace trap. Now my file is parsing and all the instances are in one place (so its portable). But nothing is working. Here are the issues: 1. My node splitting is not working. It seems that the setvalue is not firing on the xforms ready event. 2. My Xpath expression to caulcate the tax is not working. -----Original Message----- From: Ryan Puddephatt [[hidden email]] Sent: Wednesday, February 22, 2006 11:37 AM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element intotwo controls for editing Richard, You can define it in the file with <xforms:instance id="some-id"> <instance> <some/> <elements/> </instance> </xforms:instance> It must contain a root element though <xforms:instance id="some-id"> <instance/> </xforms:instance> 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: Richard Braman [[hidden email]] Sent: 22 February 2006 16:18 To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element intotwo controls for editing I figured out the error. It seems like you cannot define the instancein your view. You have to use the src="oxf://path-to-instance" Is thisright? -----Original Message----- From: Richard Braman [[hidden email]] Sent: Wednesday, February 22, 2006 11:13 AM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element intotwo controls for editing No, i changed it because I was playing with my tax table prototype on the same page (see other post) so I commented out the piece with the error. Its back now. I put it down below. Orbeon PresentationServer (OPS) - Error Page Error Message The following error has occurred: Error Message [No error message provided.] OPS Call Stack The OPS Call Stack helps you determine what sequence of OPS operationshave caused the error. Resource URL Line Column Description XML Element oxf:/ops/pfc/xforms-epilogue.xpl 81 67 oxf:/ops/pfc/xforms-epilogue.xpl101 71 reading processor output (name='document', ref='xformed-data') <p:output name="document" ref="xformed-data"/> oxf:/config/epilogue.xpl 36 58 reading processor output (name='xformed-data', id='xformed-data') <p:outputname="xformed-data"id="xformed-data"/> oxf:/config/epilogue-servlet.xpl 30 48 reading processor output (name='xformed-data') <p:param type="input" name="xformed-data"/> oxf:/config/epilogue.xpl 54 46 executing processor (name='{http://www.orbeon.com/oxf/processors}pipeline')<p:processorname="oxf:pipeline">...</p:processor> oxf:/examples/1040ez/page-flow.xml 42 44 executing processor (name='{http://www.orbeon.com/oxf/processors}pipeline') oxf:/examples/1040ez/page-flow.xpl 17 39 executing processor (name='{http://www.orbeon.com/oxf/processors}page-flow')<p:processorname="oxf:page-flow">...</p:processor> oxf:/page-flow.xml 35 80 reading page model data output (page id='1040ez', model='/examples/1040ez/page-flow.xpl') <pageid="1040ez"path-info="/1040ez*" model="/examples/1040ez/page-flow.xpl"/> Java Exceptions (4 total) Java Exceptions are the native mechanism by which OPS reports errors. More than one exception may be provided below but usually the first exception along with the OPS Stack Trace above provide enough information to track down an issue. java.lang.NullPointerException Exception Class java.lang.NullPointerException Message Servlet Stack Trace (158 method calls) Class Name Method Name File Name Line Number org.orbeon.oxf.xforms.action.XFormsActionInterpreter runAction XFormsActionInterpreter.java 86 org.orbeon.oxf.xforms.action.XFormsActionInterpreter runAction XFormsActionInterpreter.java 136 org.orbeon.oxf.xforms.XFormsContainingDocument runAction XFormsContainingDocument.java 636 org.orbeon.oxf.xforms.event.XFormsEventHandlerImpl handleEvent XFormsEventHandlerImpl.java 85 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchEvent XFormsContainingDocument.java 597 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchExternalEventXFormsContainingDocument.java 456 org.orbeon.oxf.xforms.processor.XFormsServer createXFormsContainingDocument XFormsServer.java 1046 org.orbeon.oxf.xforms.processor.XFormsToXHTML doIt XFormsToXHTML.java 79 org.orbeon.oxf.xforms.processor.XFormsToXHTML access$000 XFormsToXHTML.java 41 org.orbeon.oxf.xforms.processor.XFormsToXHTML$1 readImpl XFormsToXHTML.java 61 More... org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParentsProcessorImpl.java533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParentsProcessorImpl.java533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.TeeProcessor access$100 TeeProcessor.java 36 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 readImpl TeeProcessor.java 57org.orbeon.oxf.processor.ProcessorImpl$6read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.ProcessorImpl readInputAsDOM4J ProcessorImpl.java 404 org.orbeon.oxf.processor.ProcessorImpl$4 readProcessorImpl.java 428 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 470 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor startConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessorstartConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessorstartConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 89 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java354 org.orbeon.oxf.processor.IdentityProcessor$1 readImpl IdentityProcessor.java 33 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java354 org.orbeon.oxf.processor.NullSerializer start NullSerializer.java 31org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run PipelineProcessor.java 113 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 111 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java991org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java991org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl TeeProcessor.java 79 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java991org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKeyProcessorImpl.java1191 org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity ProcessorImpl.java 1222 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 456 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessorstartConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java95org.orbeon.oxf.servlet.OPSServletDelegate service OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service OPSServlet.java 74 Servlet Stack Trace (15 method calls) Class Name Method Name File Name Line Number javax.servlet.http.HttpServlet service HttpServlet.java 802 org.apache.catalina.core.ApplicationFilterChain internalDoFilter ApplicationFilterChain.java 252 org.apache.catalina.core.ApplicationFilterChain doFilter ApplicationFilterChain.java 173 org.apache.catalina.core.StandardWrapperValve invoke StandardWrapperValve.java 213 org.apache.catalina.core.StandardContextValve invoke StandardContextValve.java 178 org.apache.catalina.core.StandardHostValve invoke StandardHostValve.java 126 org.apache.catalina.valves.ErrorReportValve invoke ErrorReportValve.java 105 org.apache.catalina.core.StandardEngineValve invoke StandardEngineValve.java 107 org.apache.catalina.connector.CoyoteAdapter serviceCoyoteAdapter.java148 org.apache.coyote.http11.Http11Processor process Http11Processor.java 856 More... org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler processConnection Http11Protocol.java 744 org.apache.tomcat.util.net.PoolTcpEndpoint processSocket PoolTcpEndpoint.java 527 org.apache.tomcat.util.net.LeaderFollowerWorkerThread runIt LeaderFollowerWorkerThread.java 80 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run ThreadPool.java 684 java.lang.Thread run N/A org.orbeon.oxf.common.ValidationException Exception Class org.orbeon.oxf.common.ValidationException Message Resource URL oxf:/ops/pfc/xforms-epilogue.xpl Line 81 Column 67 Servlet Stack Trace (155 method calls) Class Name Method Name File Name Line Number org.orbeon.oxf.common.ValidationException wrapException ValidationException.java 119 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchEvent XFormsContainingDocument.java 617 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchExternalEventXFormsContainingDocument.java 456 org.orbeon.oxf.xforms.processor.XFormsServer createXFormsContainingDocument XFormsServer.java 1046 org.orbeon.oxf.xforms.processor.XFormsToXHTML doIt XFormsToXHTML.java 79 org.orbeon.oxf.xforms.processor.XFormsToXHTML access$000 XFormsToXHTML.java 41 org.orbeon.oxf.xforms.processor.XFormsToXHTML$1 readImpl XFormsToXHTML.java 61 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 More... org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParentsProcessorImpl.java533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParentsProcessorImpl.java533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.TeeProcessor access$100 TeeProcessor.java 36 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 readImpl TeeProcessor.java 57org.orbeon.oxf.processor.ProcessorImpl$6read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.ProcessorImpl readInputAsDOM4J ProcessorImpl.java 404 org.orbeon.oxf.processor.ProcessorImpl$4 readProcessorImpl.java 428 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 470 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor startConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessorstartConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessorstartConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 89 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java354 org.orbeon.oxf.processor.IdentityProcessor$1 readImpl IdentityProcessor.java 33 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAXProcessorImpl.java354 org.orbeon.oxf.processor.NullSerializer start NullSerializer.java 31org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run PipelineProcessor.java 113 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 111 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java991org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java991org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl TeeProcessor.java 79 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java991org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKeyProcessorImpl.java1191 org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity ProcessorImpl.java 1222 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 456 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessorstartConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java95org.orbeon.oxf.servlet.OPSServletDelegate service OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service OPSServlet.java 74 Servlet Stack Trace (15 method calls) Class Name Method Name File Name Line Number javax.servlet.http.HttpServlet service HttpServlet.java 802 org.apache.catalina.core.ApplicationFilterChain internalDoFilter Application |
I have tried that. How do you think I got where I am?
-----Original Message----- From: Adrian Baker [mailto:[hidden email]] Sent: Thursday, February 23, 2006 12:45 AM To: [hidden email] Subject: Re: [ops-users] Xpath Your XPaths are pretty complicated. How about building up slowly from a smaller, simpler path which you know works? Otherwise it's too hard to work out where the problem is. Richard Braman wrote: I have tried the Xpath Daniel sent and another one I cam eup with. Number 1 comiles but exhibits the strange bahvior of either producing an XFOrms Error: 3 (real descriptive), as well as a emtpy nodeset in some cases. Number 2 (contributed by Daniel) doesn't comile, but throws a Error Message 3 with a stacktrace of java.lang.ArrayIndexOutOfBoundsException Message 3. I don't know which array is out of bounds, I don't which one. I tried # 1 on Chiba, and it didn't compile. This is the longest time I have ever taken to write a simple if. I feel like I just picked up my first computer after 10 years of coding. 1. if ( instance('main-instance')//f1040ez/filing-status eq '1') then instance('taxtable')//item[instance('main-instance')/f1040ez/income ge income-equal-or-greater-than][instance('main-instance')/f1040ez/income lt income-less-than]/tax-single else if (instance('main-instance')//f1040ez/filing-status eq '2') then instance('taxtable')//item[instance('main-instance')/f1040ez/income ge income-equal-or-greater-than][instance('main-instance')/f1040ez/income lt income-less-than]/tax-married-filing-jointly else '0' 2. <xforms:bind id="tax" nodeset="/form/f1040ez/tax" calculate=" instance('taxtable')//item[instance('main-instance')//f1040ez/filing-sta tus eq '1'][(income-equal-or-greater-than lt instance('main-instance')//f1040ez/income) and (income-less-than gt instance('main-instance')//f1040ez/income)]/tax-single | instance('taxtable')//item[instance('main-instance')//f1040ez/filing-sta tus eq '2'][(income-equal-or-greater-than lt instance('main-instance')//f1040ez/income) and (income-less-than gt instance('main-instance')//f1040ez/income)]/tax-married-filing-jointly -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Daniel E. Renfer Sent: Wednesday, February 22, 2006 6:40 PM To: [hidden email] Subject: Re: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing I just tried to throw something together real quick while on my lunch break, so I didn't test this or anything, but will something like this work for you? defining (for compactness): $mi := instance('main-instance')//f1040ez $tt := instance('taxtable') Query: ( $tt/item[$mi/filing-status eq '1'][(income-equal-or-greater-than lt $mi/income) and (income-less-than gt income-less-than)]/tax-single | $tt/item[$mi/filing-status eq '2'][(income-equal-or-greater-than lt $mi/income) and (income-less-than gt income-less-than)]/tax-married-filing-jointly ) sometimes you just have to back up and look at a query differently. There are many ways to select the same nodes, sometimes you just have to try thinking about it a different way to get anything done. I hope that even if this code doesn't work as is. (it most likely won't) it'll at least give you a new angle to attack the problem from. Daniel E. Renfer (http://kronkltd.net/) On 2/22/06, Richard Braman <mailto:[hidden email]> <[hidden email]> wrote: I have changed the Xpath so much, its rediculous. Disregard anything if have written about bugs in the xPath, its one giant bug. I have played some more with Xpath and it it is perfectly legal to have if (expression gt expression2 and expression lt epxression3) then epression4 But expression2 and expression3 must be one node. I understand this. But, in my instance expression could match more than expression2 and I think that is why I am getting the error. A sequence of more than one item is not allowed as the second operand of 'ge' What I can't figure out is the solution. I may have to change the structure of my tax table instance, and that is fine, but I am not sure how to do this. I am used to wrting SQL queries. In SQL, I did this SELECT [single_tax], [mfj_tax], FROM [taxtables_federal2004] WHERE @taxable_income >= [taxable_income_at_least] and @taxable_income < [taxable_income_less_than] But this is not SQL, I am not using SQL, and I now this must be possible with Xpath. -----Original Message----- From: Richard Braman [mailto:[hidden email]] Sent: Wednesday, February 22, 2006 12:39 PM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing I found some other bugs in my Xpath, prases with no error, but no doing anything: if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than) and (instance('main-instance')//f1040ez/income lt instance('taxtable')//income-less-than) and (instance('main-instance')//f1040ez/filing-status eq '1') then instance('taxtable')//tax-single else if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than) and (instance('main-instance')/f1040ez/income lt instance('taxtable')//income-less-than) and (instance('main-instance')//f1040ez/filing-status eq '2') then instance('taxtable')//tax-married-filing-jointly else '0' -----Original Message----- From: Richard Braman [mailto:[hidden email]] Sent: Wednesday, February 22, 2006 12:23 PM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing The XPATH if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')//f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '1') then instance('taxtable')/item/tax-single else if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')/f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '2') then instance('taxtable')/item/tax-married-filing-jointly else '0' The error I am getting now: A sequence of more than one item is not allowed as the second operand of 'ge' I think this has to do with the 'and' clause. The whole file is below: <!-- The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. The Initial Developer of the Original Code is Tax Code Software Foundation, Inc. Portions created by Tax Code Software Foundation, Inc are Copyright (C) 2005-2006. All Rights Reserved. Contributor(s): [hidden email]. --> <html xsl:version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" <http://www.w3.org/1999/XSL/Transform> xmlns:xforms="http://www.w3.org/2002/xforms" <http://www.w3.org/2002/xforms> xmlns:xxforms="http://orbeon.org/oxf/xml/xforms" <http://orbeon.org/oxf/xml/xforms> xmlns:xi="http://www.w3.org/2003/XInclude" <http://www.w3.org/2003/XInclude> xmlns:f="http://orbeon.org/oxf/xml/formatting" <http://orbeon.org/oxf/xml/formatting> xmlns:pdf="http://taxcodesoftware.org/xml/pdf-metadata" <http://taxcodesoftware.org/xml/pdf-metadata> xmlns:xhtml="http://www.w3.org/1999/xhtml" <http://www.w3.org/1999/xhtml> xmlns="http://www.w3.org/1999/xhtml" <http://www.w3.org/1999/xhtml> xmlns:ev="http://www.w3.org/2001/xml-events" <http://www.w3.org/2001/xml-events> > <head> <title>Form 1040 EZ 2005</title> <xforms:model> <xforms:instance id="main-instance"> <form xmlns=""> <f1040ez> <SEQ0010>123456789</SEQ0010> <filing-status>1</filing-status> <income>0</income> <tax/> <credit/> </f1040ez> </form> </xforms:instance> <xforms:instance id="taxtable"> <form xmlns=""> <taxtable> <item> <income-equal-or-greater-than>0</income-equal-or-greater-than> <income-less-than>5</income-less-than> <tax-single>0</tax-single> <tax-married-filing-jointly>0</tax-married-filing-jointly> </item> <item> <income-equal-or-greater-than>5</income-equal-or-greater-than> <income-less-than>10</income-less-than> <tax-single>1</tax-single> <tax-married-filing-jointly>0</tax-married-filing-jointly> </item> </taxtable> </form> </xforms:instance> <xforms:instance id="sub-instance" > <form xmlns=""> <SSN> <part1/> <part2/> <part3/> </SSN> </form> </xforms:instance> <xforms:bind nodeset="instance('main-instance')"> <!--<xforms:bind id="tax" nodeset="/form/f1040ez/tax" calculate="/form/f1040ez/income * .10"></xforms:bind>--> <xforms:bind id="tax" nodeset="/form/f1040ez/tax" calculate=" if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')//f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '1') then instance('taxtable')/item/tax-single else if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')/f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '2') then instance('taxtable')/item/tax-married-filing-jointly else '0' "/> <xforms:bind id="filing-status" nodeset="/form/f1040ez/filing-status"/> <xforms:bind id="income" nodeset="/form/f1040ez/income"/> <xforms:bind id="SSN" nodeset="/form/f1040ez/SEQ0010"/> </xforms:bind> <!-- I am not sure where this should go --> <xforms:action ev:event="xforms-ready"> <xforms:setvalue ref="instance('sub-instance')//SSN/part1" value="substring(instance('main-instance')//f1040ez/SEQ0010,1,3)"/> <xforms:setvalue ref="instance('sub-instance')//SSN/part2" value="substring(instance('main-instance')//f1040ez/SEQ0010,4,2)"/> <xforms:setvalue ref="instance('sub-instance')//SSN/part3" value="substring(instance('main-instance')//f1040ez/SEQ0010,6,4)"/> </xforms:action> <xforms:bind id="f1-8" nodeset="instance('sub-instance')//SSN/part1"/> <xforms:bind id="f1-9" nodeset="instance('sub-instance')//SSN/part2"/> <xforms:bind id="f1-10" nodeset="instance('sub-instance')//SSN/part3"/> <xforms:action ev:event="xforms-submit"> <xforms:setvalue ref="instance('main-instance')/form/f1040ez/SEQ0010" value="concat(instance('sub-instance')/SSN/part1,concat(instance('sub- in stance')/SSN/part2, concat(instance('sub-instance')/SSN/part3"/> </xforms:action> --> </xforms:model> </head> <body> <xforms:input bind="SSN"><xforms:label>SSN</xforms:label></xforms:input><br/> <xforms:input bind="f1-8"><xforms:label>SSN1</xforms:label></xforms:input><br/> <xforms:input bind="f1-9"><xforms:label>SSN2</xforms:label></xforms:input><br/> <xforms:input bind="f1-10"><xforms:label>SSN3</xforms:label></xforms:input><br/> <xforms:input bind="filing-status"><xforms:label>Filing Status (1 for Single, 2 for Married)</xforms:label></xforms:input><br/> <xforms:input bind="income"><xforms:label>Income</xforms:label></xforms:input><br/> <xforms:output bind="tax"><xforms:label>Tax</xforms:label></xforms:output> </body> </html> -----Original Message----- From: Ryan Puddephatt [mailto:[hidden email]] Sent: Wednesday, February 22, 2006 12:24 PM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing Richard, Post one of your XPath expressions there may well be a simple problem that is easily overlooked! 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: Richard Braman [mailto:[hidden email]] Sent: 22 February 2006 16:58 To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing I was stuck in the default namespace trap. Now my file is parsing and all the instances are in one place (so its portable). But nothing is working. Here are the issues: 1. My node splitting is not working. It seems that the setvalue is not firing on the xforms ready event. 2. My Xpath expression to caulcate the tax is not working. -----Original Message----- From: Ryan Puddephatt [mailto:[hidden email]] Sent: Wednesday, February 22, 2006 11:37 AM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing Richard, You can define it in the file with <xforms:instance id="some-id"> <instance> <some/> <elements/> </instance> </xforms:instance> It must contain a root element though <xforms:instance id="some-id"> <instance/> </xforms:instance> 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: Richard Braman [mailto:[hidden email]] Sent: 22 February 2006 16:18 To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing I figured out the error. It seems like you cannot define the instance in your view. You have to use the src="oxf://path-to-instance" Is this right? -----Original Message----- From: Richard Braman [mailto:[hidden email]] Sent: Wednesday, February 22, 2006 11:13 AM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing No, i changed it because I was playing with my tax table prototype on the same page (see other post) so I commented out the piece with the error. Its back now. I put it down below. Orbeon PresentationServer (OPS) - Error Page Error Message The following error has occurred: Error Message [No error message provided.] OPS Call Stack The OPS Call Stack helps you determine what sequence of OPS operations have caused the error. Resource URL Line Column Description XML Element oxf:/ops/pfc/xforms-epilogue.xpl 81 67 oxf:/ops/pfc/xforms-epilogue.xpl 101 71 reading processor output (name='document', ref='xformed-data') <p:output name="document" ref="xformed-data"/> oxf:/config/epilogue.xpl 36 58 reading processor output (name='xformed-data', id='xformed-data') <p:output name="xformed-data" id="xformed-data"/> oxf:/config/epilogue-servlet.xpl 30 48 reading processor output (name='xformed-data') <p:param type="input" name="xformed-data"/> oxf:/config/epilogue.xpl 54 46 executing processor (name='{http://www.orbeon.com/oxf/processors}pipeline') <p:processor name="oxf:pipeline">...</p:processor> oxf:/examples/1040ez/page-flow.xml 42 44 executing processor (name='{http://www.orbeon.com/oxf/processors}pipeline') oxf:/examples/1040ez/page-flow.xpl 17 39 executing processor (name='{http://www.orbeon.com/oxf/processors}page-flow') <p:processor name="oxf:page-flow">...</p:processor> oxf:/page-flow.xml 35 80 reading page model data output (page id='1040ez', model='/examples/1040ez/page-flow.xpl') <page id="1040ez" path-info="/1040ez*" model="/examples/1040ez/page-flow.xpl"/> Java Exceptions (4 total) Java Exceptions are the native mechanism by which OPS reports errors. More than one exception may be provided below but usually the first exception along with the OPS Stack Trace above provide enough information to track down an issue. java.lang.NullPointerException Exception Class java.lang.NullPointerException Message Servlet Stack Trace (158 method calls) Class Name Method Name File Name Line Number org.orbeon.oxf.xforms.action.XFormsActionInterpreter runAction XFormsActionInterpreter.java 86 org.orbeon.oxf.xforms.action.XFormsActionInterpreter runAction XFormsActionInterpreter.java 136 org.orbeon.oxf.xforms.XFormsContainingDocument runAction XFormsContainingDocument.java 636 org.orbeon.oxf.xforms.event.XFormsEventHandlerImpl handleEvent XFormsEventHandlerImpl.java 85 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchEvent XFormsContainingDocument.java 597 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchExternalEvent XFormsContainingDocument.java 456 org.orbeon.oxf.xforms.processor.XFormsServer createXFormsContainingDocument XFormsServer.java 1046 org.orbeon.oxf.xforms.processor.XFormsToXHTML doIt XFormsToXHTML.java 79 org.orbeon.oxf.xforms.processor.XFormsToXHTML access$000 XFormsToXHTML.java 41 org.orbeon.oxf.xforms.processor.XFormsToXHTML$1 readImpl XFormsToXHTML.java 61 More... org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParents ProcessorImpl.java 533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParents ProcessorImpl.java 533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.TeeProcessor access$100 TeeProcessor.java 36 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 readImpl TeeProcessor.java 57 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsDOM4J ProcessorImpl.java 404 org.orbeon.oxf.processor.ProcessorImpl$4 read ProcessorImpl.java 428 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 470 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 89 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 354 org.orbeon.oxf.processor.IdentityProcessor$1 readImpl IdentityProcessor.java 33 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 354 org.orbeon.oxf.processor.NullSerializer start NullSerializer.java 31 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run PipelineProcessor.java 113 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 111 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl TeeProcessor.java 79 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity ProcessorImpl.java 1222 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 456 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java 95 org.orbeon.oxf.servlet.OPSServletDelegate service OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service OPSServlet.java 74 Servlet Stack Trace (15 method calls) Class Name Method Name File Name Line Number javax.servlet.http.HttpServlet service HttpServlet.java 802 org.apache.catalina.core.ApplicationFilterChain internalDoFilter ApplicationFilterChain.java 252 org.apache.catalina.core.ApplicationFilterChain doFilter ApplicationFilterChain.java 173 org.apache.catalina.core.StandardWrapperValve invoke StandardWrapperValve.java 213 org.apache.catalina.core.StandardContextValve invoke StandardContextValve.java 178 org.apache.catalina.core.StandardHostValve invoke StandardHostValve.java 126 org.apache.catalina.valves.ErrorReportValve invoke ErrorReportValve.java 105 org.apache.catalina.core.StandardEngineValve invoke StandardEngineValve.java 107 org.apache.catalina.connector.CoyoteAdapter service CoyoteAdapter.java 148 org.apache.coyote.http11.Http11Processor process Http11Processor.java 856 More... org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler processConnection Http11Protocol.java 744 org.apache.tomcat.util.net.PoolTcpEndpoint processSocket PoolTcpEndpoint.java 527 org.apache.tomcat.util.net.LeaderFollowerWorkerThread runIt LeaderFollowerWorkerThread.java 80 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run ThreadPool.java 684 java.lang.Thread run N/A org.orbeon.oxf.common.ValidationException Exception Class org.orbeon.oxf.common.ValidationException Message Resource URL oxf:/ops/pfc/xforms-epilogue.xpl Line 81 Column 67 Servlet Stack Trace (155 method calls) Class Name Method Name File Name Line Number org.orbeon.oxf.common.ValidationException wrapException ValidationException.java 119 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchEvent XFormsContainingDocument.java 617 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchExternalEvent XFormsContainingDocument.java 456 org.orbeon.oxf.xforms.processor.XFormsServer createXFormsContainingDocument XFormsServer.java 1046 org.orbeon.oxf.xforms.processor.XFormsToXHTML doIt XFormsToXHTML.java 79 org.orbeon.oxf.xforms.processor.XFormsToXHTML access$000 XFormsToXHTML.java 41 org.orbeon.oxf.xforms.processor.XFormsToXHTML$1 readImpl XFormsToXHTML.java 61 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 More... org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParents ProcessorImpl.java 533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParents ProcessorImpl.java 533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.TeeProcessor access$100 TeeProcessor.java 36 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 readImpl TeeProcessor.java 57 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsDOM4J ProcessorImpl.java 404 org.orbeon.oxf.processor.ProcessorImpl$4 read ProcessorImpl.java 428 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 470 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 89 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 354 org.orbeon.oxf.processor.IdentityProcessor$1 readImpl IdentityProcessor.java 33 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 354 org.orbeon.oxf.processor.NullSerializer start NullSerializer.java 31 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run PipelineProcessor.java 113 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 111 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl TeeProcessor.java 79 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity ProcessorImpl.java 1222 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 456 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java 95 org.orbeon.oxf.servlet.OPSServletDelegate service OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service OPSServlet.java 74 Servlet Stack Trace (15 method calls) Class Name Method Name File Name Line Number javax.servlet.http.HttpServlet service HttpServlet.java 802 org.apache.catalina.core.ApplicationFilterChain internalDoFilter ApplicationFilterChain.java 252 org.apache.catalina.core.ApplicationFilterChain doFilter ApplicationFilterChain.java 173 org.apache.catalina.core.StandardWrapperValve invoke StandardWrapperValve.java 213 org.apache.catalina.core.StandardContextValve invoke StandardContextValve.java 178 org.apache.catalina.core.StandardHostValve invoke StandardHostValve.java 126 org.apache.catalina.valves.ErrorReportValve invoke ErrorReportValve.java 105 org.apache.catalina.core.StandardEngineValve invoke StandardEngineValve.java 107 org.apache.catalina.connector.CoyoteAdapter service CoyoteAdapter.java 148 org.apache.coyote.http11.Http11Processor process Http11Processor.java 856 More... org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler processConnection Http11Protocol.java 744 org.apache.tomcat.util.net.PoolTcpEndpoint processSocket PoolTcpEndpoint.java 527 org.apache.tomcat.util.net.LeaderFollowerWorkerThread runIt LeaderFollowerWorkerThread.java 80 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run ThreadPool.java 684 java.lang.Thread run N/A org.orbeon.oxf.common.OXFException Exception Class org.orbeon.oxf.common.OXFException Message oxf:/ops/pfc/xforms-epilogue.xpl, line 81, column 67: null null Resource URL oxf:/ops/pfc/xforms-epilogue.xpl Line 81 Column 67 Servlet Stack Trace (43 method calls) Class Name Method Name File Name Line Number org.orbeon.oxf.processor.NullSerializer start NullSerializer.java 33 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 More... org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run PipelineProcessor.java 113 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 111 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl TeeProcessor.java 79 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity ProcessorImpl.java 1222 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 456 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java 95 org.orbeon.oxf.servlet.OPSServletDelegate service OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service OPSServlet.java 74 Servlet Stack Trace (15 method calls) Class Name Method Name File Name Line Number javax.servlet.http.HttpServlet service HttpServlet.java 802 org.apache.catalina.core.ApplicationFilterChain internalDoFilter ApplicationFilterChain.java 252 org.apache.catalina.core.ApplicationFilterChain doFilter ApplicationFilterChain.java 173 org.apache.catalina.core.StandardWrapperValve invoke StandardWrapperValve.java 213 org.apache.catalina.core.StandardContextValve invoke StandardContextValve.java 178 org.apache.catalina.core.StandardHostValve invoke StandardHostValve.java 126 org.apache.catalina.valves.ErrorReportValve invoke ErrorReportValve.java 105 org.apache.catalina.core.StandardEngineValve invoke StandardEngineValve.java 107 org.apache.catalina.connector.CoyoteAdapter service CoyoteAdapter.java 148 org.apache.coyote.http11.Http11Processor process Http11Processor.java 856 More... org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler processConnection Http11Protocol.java 744 org.apache.tomcat.util.net.PoolTcpEndpoint processSocket PoolTcpEndpoint.java 527 org.apache.tomcat.util.net.LeaderFollowerWorkerThread runIt LeaderFollowerWorkerThread.java 80 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run ThreadPool.java 684 java.lang.Thread run N/A org.orbeon.oxf.common.ValidationException Exception Class org.orbeon.oxf.common.ValidationException Message oxf:/ops/pfc/xforms-epilogue.xpl, line 81, column 67: null null Resource URL oxf:/ops/pfc/xforms-epilogue.xpl Line 81 Column 67 Servlet Stack Trace (43 method calls) Class Name Method Name File Name Line Number org.orbeon.oxf.common.ValidationException wrapException ValidationException.java 119 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 654 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 More... org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run PipelineProcessor.java 113 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 111 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl TeeProcessor.java 79 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity ProcessorImpl.java 1222 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 456 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 185 org.orbeon. |
Then just back off your most recent change which broke the expression,
and try and determine what's wrong with the change.
Richard Braman wrote:
|
I dont think that the logic is comlicated at all
And it is starting to work (at least 1 case)! See it here http://24.75.221.234:8080/taxcode/1040ez/test The problem with dividing it up is that both operands of the ge and lt expressions have to return just one node for to work, so it makes building the expression incrementally slighty hard. Does anyone know if the 'and' syntax works in the context of a xpath like: /node[childnode1 ge 0 and childnode2 lt 5]/childnode3 ? It seems to. Anyway, this XPath work on the case where filing_status is 1 and income is $1-4, but if you change income to over 5 it bombs (returns '') and if you change filing status = 2, it bombs with XPath Error: 3, whatever that means. Could this be a type issue? I dont understand why 1 case works and the others dont. Here is my semi working XPath spaced out for better readability: if (instance('main-instance')/f1040ez/filing-status eq '1') then instance('taxtable') //item [ instance('main-instance')/f1040ez/income ge income-equal-or-greater-than and instance('main-instance')/f1040ez/income lt income-less-than ] /tax-single else if (instance('main-instance')/f1040ez/filing-status eq '2') then instance('taxtable') //item [ instance('main-instance')/f1040ez/income ge income-equal-or-greater-than and instance('main-instance')/f1040ez/income lt income-less-than ] /tax-married-filing-jointly else '0' "/> -----Original Message----- From: Adrian Baker [mailto:[hidden email]] Sent: Thursday, February 23, 2006 1:13 AM To: [hidden email] Subject: Re: [ops-users] Xpath Then just back off your most recent change which broke the expression, and try and determine what's wrong with the change. Richard Braman wrote: I have tried that. How do you think I got where I am? -----Original Message----- From: Adrian Baker [mailto:[hidden email]] Sent: Thursday, February 23, 2006 12:45 AM To: [hidden email] Subject: Re: [ops-users] Xpath Your XPaths are pretty complicated. How about building up slowly from a smaller, simpler path which you know works? Otherwise it's too hard to work out where the problem is. Richard Braman wrote: I have tried the Xpath Daniel sent and another one I cam eup with. Number 1 comiles but exhibits the strange bahvior of either producing an XFOrms Error: 3 (real descriptive), as well as a emtpy nodeset in some cases. Number 2 (contributed by Daniel) doesn't comile, but throws a Error Message 3 with a stacktrace of java.lang.ArrayIndexOutOfBoundsException Message 3. I don't know which array is out of bounds, I don't which one. I tried # 1 on Chiba, and it didn't compile. This is the longest time I have ever taken to write a simple if. I feel like I just picked up my first computer after 10 years of coding. 1. if ( instance('main-instance')//f1040ez/filing-status eq '1') then instance('taxtable')//item[instance('main-instance')/f1040ez/income ge income-equal-or-greater-than][instance('main-instance')/f1040ez/income lt income-less-than]/tax-single else if (instance('main-instance')//f1040ez/filing-status eq '2') then instance('taxtable')//item[instance('main-instance')/f1040ez/income ge income-equal-or-greater-than][instance('main-instance')/f1040ez/income lt income-less-than]/tax-married-filing-jointly else '0' 2. <xforms:bind id="tax" nodeset="/form/f1040ez/tax" calculate=" instance('taxtable')//item[instance('main-instance')//f1040ez/filing-sta tus eq '1'][(income-equal-or-greater-than lt instance('main-instance')//f1040ez/income) and (income-less-than gt instance('main-instance')//f1040ez/income)]/tax-single | instance('taxtable')//item[instance('main-instance')//f1040ez/filing-sta tus eq '2'][(income-equal-or-greater-than lt instance('main-instance')//f1040ez/income) and (income-less-than gt instance('main-instance')//f1040ez/income)]/tax-married-filing-jointly -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Daniel E. Renfer Sent: Wednesday, February 22, 2006 6:40 PM To: [hidden email] Subject: Re: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing I just tried to throw something together real quick while on my lunch break, so I didn't test this or anything, but will something like this work for you? defining (for compactness): $mi := instance('main-instance')//f1040ez $tt := instance('taxtable') Query: ( $tt/item[$mi/filing-status eq '1'][(income-equal-or-greater-than lt $mi/income) and (income-less-than gt income-less-than)]/tax-single | $tt/item[$mi/filing-status eq '2'][(income-equal-or-greater-than lt $mi/income) and (income-less-than gt income-less-than)]/tax-married-filing-jointly ) sometimes you just have to back up and look at a query differently. There are many ways to select the same nodes, sometimes you just have to try thinking about it a different way to get anything done. I hope that even if this code doesn't work as is. (it most likely won't) it'll at least give you a new angle to attack the problem from. Daniel E. Renfer (http://kronkltd.net/) On 2/22/06, Richard Braman <mailto:[hidden email]> <[hidden email]> wrote: I have changed the Xpath so much, its rediculous. Disregard anything if have written about bugs in the xPath, its one giant bug. I have played some more with Xpath and it it is perfectly legal to have if (expression gt expression2 and expression lt epxression3) then epression4 But expression2 and expression3 must be one node. I understand this. But, in my instance expression could match more than expression2 and I think that is why I am getting the error. A sequence of more than one item is not allowed as the second operand of 'ge' What I can't figure out is the solution. I may have to change the structure of my tax table instance, and that is fine, but I am not sure how to do this. I am used to wrting SQL queries. In SQL, I did this SELECT [single_tax], [mfj_tax], FROM [taxtables_federal2004] WHERE @taxable_income >= [taxable_income_at_least] and @taxable_income < [taxable_income_less_than] But this is not SQL, I am not using SQL, and I now this must be possible with Xpath. -----Original Message----- From: Richard Braman [mailto:[hidden email]] Sent: Wednesday, February 22, 2006 12:39 PM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing I found some other bugs in my Xpath, prases with no error, but no doing anything: if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than) and (instance('main-instance')//f1040ez/income lt instance('taxtable')//income-less-than) and (instance('main-instance')//f1040ez/filing-status eq '1') then instance('taxtable')//tax-single else if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than) and (instance('main-instance')/f1040ez/income lt instance('taxtable')//income-less-than) and (instance('main-instance')//f1040ez/filing-status eq '2') then instance('taxtable')//tax-married-filing-jointly else '0' -----Original Message----- From: Richard Braman [mailto:[hidden email]] Sent: Wednesday, February 22, 2006 12:23 PM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing The XPATH if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')//f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '1') then instance('taxtable')/item/tax-single else if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')/f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '2') then instance('taxtable')/item/tax-married-filing-jointly else '0' The error I am getting now: A sequence of more than one item is not allowed as the second operand of 'ge' I think this has to do with the 'and' clause. The whole file is below: <!-- The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. The Initial Developer of the Original Code is Tax Code Software Foundation, Inc. Portions created by Tax Code Software Foundation, Inc are Copyright (C) 2005-2006. All Rights Reserved. Contributor(s): [hidden email]. --> <html xsl:version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" <http://www.w3.org/1999/XSL/Transform> xmlns:xforms="http://www.w3.org/2002/xforms" <http://www.w3.org/2002/xforms> xmlns:xxforms="http://orbeon.org/oxf/xml/xforms" <http://orbeon.org/oxf/xml/xforms> xmlns:xi="http://www.w3.org/2003/XInclude" <http://www.w3.org/2003/XInclude> xmlns:f="http://orbeon.org/oxf/xml/formatting" <http://orbeon.org/oxf/xml/formatting> xmlns:pdf="http://taxcodesoftware.org/xml/pdf-metadata" <http://taxcodesoftware.org/xml/pdf-metadata> xmlns:xhtml="http://www.w3.org/1999/xhtml" <http://www.w3.org/1999/xhtml> xmlns="http://www.w3.org/1999/xhtml" <http://www.w3.org/1999/xhtml> xmlns:ev="http://www.w3.org/2001/xml-events" <http://www.w3.org/2001/xml-events> > <head> <title>Form 1040 EZ 2005</title> <xforms:model> <xforms:instance id="main-instance"> <form xmlns=""> <f1040ez> <SEQ0010>123456789</SEQ0010> <filing-status>1</filing-status> <income>0</income> <tax/> <credit/> </f1040ez> </form> </xforms:instance> <xforms:instance id="taxtable"> <form xmlns=""> <taxtable> <item> <income-equal-or-greater-than>0</income-equal-or-greater-than> <income-less-than>5</income-less-than> <tax-single>0</tax-single> <tax-married-filing-jointly>0</tax-married-filing-jointly> </item> <item> <income-equal-or-greater-than>5</income-equal-or-greater-than> <income-less-than>10</income-less-than> <tax-single>1</tax-single> <tax-married-filing-jointly>0</tax-married-filing-jointly> </item> </taxtable> </form> </xforms:instance> <xforms:instance id="sub-instance" > <form xmlns=""> <SSN> <part1/> <part2/> <part3/> </SSN> </form> </xforms:instance> <xforms:bind nodeset="instance('main-instance')"> <!--<xforms:bind id="tax" nodeset="/form/f1040ez/tax" calculate="/form/f1040ez/income * .10"></xforms:bind>--> <xforms:bind id="tax" nodeset="/form/f1040ez/tax" calculate=" if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')//f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '1') then instance('taxtable')/item/tax-single else if (instance('main-instance')//f1040ez/income ge instance('taxtable')//income-equal-or-greater-than and instance('main-instance')/f1040ez/income lt instance('taxtable')//income-less-than and instance('main-instance')//f1040ez/filing-status = '2') then instance('taxtable')/item/tax-married-filing-jointly else '0' "/> <xforms:bind id="filing-status" nodeset="/form/f1040ez/filing-status"/> <xforms:bind id="income" nodeset="/form/f1040ez/income"/> <xforms:bind id="SSN" nodeset="/form/f1040ez/SEQ0010"/> </xforms:bind> <!-- I am not sure where this should go --> <xforms:action ev:event="xforms-ready"> <xforms:setvalue ref="instance('sub-instance')//SSN/part1" value="substring(instance('main-instance')//f1040ez/SEQ0010,1,3)"/> <xforms:setvalue ref="instance('sub-instance')//SSN/part2" value="substring(instance('main-instance')//f1040ez/SEQ0010,4,2)"/> <xforms:setvalue ref="instance('sub-instance')//SSN/part3" value="substring(instance('main-instance')//f1040ez/SEQ0010,6,4)"/> </xforms:action> <xforms:bind id="f1-8" nodeset="instance('sub-instance')//SSN/part1"/> <xforms:bind id="f1-9" nodeset="instance('sub-instance')//SSN/part2"/> <xforms:bind id="f1-10" nodeset="instance('sub-instance')//SSN/part3"/> <xforms:action ev:event="xforms-submit"> <xforms:setvalue ref="instance('main-instance')/form/f1040ez/SEQ0010" value="concat(instance('sub-instance')/SSN/part1,concat(instance('sub- in stance')/SSN/part2, concat(instance('sub-instance')/SSN/part3"/> </xforms:action> --> </xforms:model> </head> <body> <xforms:input bind="SSN"><xforms:label>SSN</xforms:label></xforms:input><br/> <xforms:input bind="f1-8"><xforms:label>SSN1</xforms:label></xforms:input><br/> <xforms:input bind="f1-9"><xforms:label>SSN2</xforms:label></xforms:input><br/> <xforms:input bind="f1-10"><xforms:label>SSN3</xforms:label></xforms:input><br/> <xforms:input bind="filing-status"><xforms:label>Filing Status (1 for Single, 2 for Married)</xforms:label></xforms:input><br/> <xforms:input bind="income"><xforms:label>Income</xforms:label></xforms:input><br/> <xforms:output bind="tax"><xforms:label>Tax</xforms:label></xforms:output> </body> </html> -----Original Message----- From: Ryan Puddephatt [mailto:[hidden email]] Sent: Wednesday, February 22, 2006 12:24 PM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing Richard, Post one of your XPath expressions there may well be a simple problem that is easily overlooked! 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: Richard Braman [mailto:[hidden email]] Sent: 22 February 2006 16:58 To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing I was stuck in the default namespace trap. Now my file is parsing and all the instances are in one place (so its portable). But nothing is working. Here are the issues: 1. My node splitting is not working. It seems that the setvalue is not firing on the xforms ready event. 2. My Xpath expression to caulcate the tax is not working. -----Original Message----- From: Ryan Puddephatt [mailto:[hidden email]] Sent: Wednesday, February 22, 2006 11:37 AM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing Richard, You can define it in the file with <xforms:instance id="some-id"> <instance> <some/> <elements/> </instance> </xforms:instance> It must contain a root element though <xforms:instance id="some-id"> <instance/> </xforms:instance> 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: Richard Braman [mailto:[hidden email]] Sent: 22 February 2006 16:18 To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing I figured out the error. It seems like you cannot define the instance in your view. You have to use the src="oxf://path-to-instance" Is this right? -----Original Message----- From: Richard Braman [mailto:[hidden email]] Sent: Wednesday, February 22, 2006 11:13 AM To: [hidden email] Subject: RE: FW: [ops-users] XFOrms/XPath Parsing one data element into two controls for editing No, i changed it because I was playing with my tax table prototype on the same page (see other post) so I commented out the piece with the error. Its back now. I put it down below. Orbeon PresentationServer (OPS) - Error Page Error Message The following error has occurred: Error Message [No error message provided.] OPS Call Stack The OPS Call Stack helps you determine what sequence of OPS operations have caused the error. Resource URL Line Column Description XML Element oxf:/ops/pfc/xforms-epilogue.xpl 81 67 oxf:/ops/pfc/xforms-epilogue.xpl 101 71 reading processor output (name='document', ref='xformed-data') <p:output name="document" ref="xformed-data"/> oxf:/config/epilogue.xpl 36 58 reading processor output (name='xformed-data', id='xformed-data') <p:output name="xformed-data" id="xformed-data"/> oxf:/config/epilogue-servlet.xpl 30 48 reading processor output (name='xformed-data') <p:param type="input" name="xformed-data"/> oxf:/config/epilogue.xpl 54 46 executing processor (name='{http://www.orbeon.com/oxf/processors}pipeline') <p:processor name="oxf:pipeline">...</p:processor> oxf:/examples/1040ez/page-flow.xml 42 44 executing processor (name='{http://www.orbeon.com/oxf/processors}pipeline') oxf:/examples/1040ez/page-flow.xpl 17 39 executing processor (name='{http://www.orbeon.com/oxf/processors}page-flow') <p:processor name="oxf:page-flow">...</p:processor> oxf:/page-flow.xml 35 80 reading page model data output (page id='1040ez', model='/examples/1040ez/page-flow.xpl') <page id="1040ez" path-info="/1040ez*" model="/examples/1040ez/page-flow.xpl"/> Java Exceptions (4 total) Java Exceptions are the native mechanism by which OPS reports errors. More than one exception may be provided below but usually the first exception along with the OPS Stack Trace above provide enough information to track down an issue. java.lang.NullPointerException Exception Class java.lang.NullPointerException Message Servlet Stack Trace (158 method calls) Class Name Method Name File Name Line Number org.orbeon.oxf.xforms.action.XFormsActionInterpreter runAction XFormsActionInterpreter.java 86 org.orbeon.oxf.xforms.action.XFormsActionInterpreter runAction XFormsActionInterpreter.java 136 org.orbeon.oxf.xforms.XFormsContainingDocument runAction XFormsContainingDocument.java 636 org.orbeon.oxf.xforms.event.XFormsEventHandlerImpl handleEvent XFormsEventHandlerImpl.java 85 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchEvent XFormsContainingDocument.java 597 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchExternalEvent XFormsContainingDocument.java 456 org.orbeon.oxf.xforms.processor.XFormsServer createXFormsContainingDocument XFormsServer.java 1046 org.orbeon.oxf.xforms.processor.XFormsToXHTML doIt XFormsToXHTML.java 79 org.orbeon.oxf.xforms.processor.XFormsToXHTML access$000 XFormsToXHTML.java 41 org.orbeon.oxf.xforms.processor.XFormsToXHTML$1 readImpl XFormsToXHTML.java 61 More... org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParents ProcessorImpl.java 533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParents ProcessorImpl.java 533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.TeeProcessor access$100 TeeProcessor.java 36 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 readImpl TeeProcessor.java 57 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsDOM4J ProcessorImpl.java 404 org.orbeon.oxf.processor.ProcessorImpl$4 read ProcessorImpl.java 428 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 470 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 89 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 354 org.orbeon.oxf.processor.IdentityProcessor$1 readImpl IdentityProcessor.java 33 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 354 org.orbeon.oxf.processor.NullSerializer start NullSerializer.java 31 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run PipelineProcessor.java 113 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 111 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl TeeProcessor.java 79 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity ProcessorImpl.java 1222 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 456 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java 95 org.orbeon.oxf.servlet.OPSServletDelegate service OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service OPSServlet.java 74 Servlet Stack Trace (15 method calls) Class Name Method Name File Name Line Number javax.servlet.http.HttpServlet service HttpServlet.java 802 org.apache.catalina.core.ApplicationFilterChain internalDoFilter ApplicationFilterChain.java 252 org.apache.catalina.core.ApplicationFilterChain doFilter ApplicationFilterChain.java 173 org.apache.catalina.core.StandardWrapperValve invoke StandardWrapperValve.java 213 org.apache.catalina.core.StandardContextValve invoke StandardContextValve.java 178 org.apache.catalina.core.StandardHostValve invoke StandardHostValve.java 126 org.apache.catalina.valves.ErrorReportValve invoke ErrorReportValve.java 105 org.apache.catalina.core.StandardEngineValve invoke StandardEngineValve.java 107 org.apache.catalina.connector.CoyoteAdapter service CoyoteAdapter.java 148 org.apache.coyote.http11.Http11Processor process Http11Processor.java 856 More... org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler processConnection Http11Protocol.java 744 org.apache.tomcat.util.net.PoolTcpEndpoint processSocket PoolTcpEndpoint.java 527 org.apache.tomcat.util.net.LeaderFollowerWorkerThread runIt LeaderFollowerWorkerThread.java 80 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run ThreadPool.java 684 java.lang.Thread run N/A org.orbeon.oxf.common.ValidationException Exception Class org.orbeon.oxf.common.ValidationException Message Resource URL oxf:/ops/pfc/xforms-epilogue.xpl Line 81 Column 67 Servlet Stack Trace (155 method calls) Class Name Method Name File Name Line Number org.orbeon.oxf.common.ValidationException wrapException ValidationException.java 119 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchEvent XFormsContainingDocument.java 617 org.orbeon.oxf.xforms.XFormsContainingDocument dispatchExternalEvent XFormsContainingDocument.java 456 org.orbeon.oxf.xforms.processor.XFormsServer createXFormsContainingDocument XFormsServer.java 1046 org.orbeon.oxf.xforms.processor.XFormsToXHTML doIt XFormsToXHTML.java 79 org.orbeon.oxf.xforms.processor.XFormsToXHTML access$000 XFormsToXHTML.java 41 org.orbeon.oxf.xforms.processor.XFormsToXHTML$1 readImpl XFormsToXHTML.java 61 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 More... org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParents ProcessorImpl.java 533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$6 run PipelineProcessor.java 572 org.orbeon.oxf.processor.ProcessorImpl executeParents ProcessorImpl.java 533 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$1600 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$InternalTopOutpu t readImpl PipelineProcessor.java 568 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.TeeProcessor access$100 TeeProcessor.java 36 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 readImpl TeeProcessor.java 57 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsDOM4J ProcessorImpl.java 404 org.orbeon.oxf.processor.ProcessorImpl$4 read ProcessorImpl.java 428 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 470 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 232 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 89 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 readImpl ConcreteChooseProcessor.java 122 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 354 org.orbeon.oxf.processor.IdentityProcessor$1 readImpl IdentityProcessor.java 33 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$000 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$2 run PipelineProcessor.java 96 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$100 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 readImpl PipelineProcessor.java 94 org.orbeon.oxf.processor.ProcessorImpl$6 read ProcessorImpl.java 987 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl read ProcessorImpl.java 1170 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 349 org.orbeon.oxf.processor.ProcessorImpl readInputAsSAX ProcessorImpl.java 354 org.orbeon.oxf.processor.NullSerializer start NullSerializer.java 31 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run PipelineProcessor.java 113 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 111 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl TeeProcessor.java 79 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity ProcessorImpl.java 1222 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 456 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java 95 org.orbeon.oxf.servlet.OPSServletDelegate service OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service OPSServlet.java 74 Servlet Stack Trace (15 method calls) Class Name Method Name File Name Line Number javax.servlet.http.HttpServlet service HttpServlet.java 802 org.apache.catalina.core.ApplicationFilterChain internalDoFilter ApplicationFilterChain.java 252 org.apache.catalina.core.ApplicationFilterChain doFilter ApplicationFilterChain.java 173 org.apache.catalina.core.StandardWrapperValve invoke StandardWrapperValve.java 213 org.apache.catalina.core.StandardContextValve invoke StandardContextValve.java 178 org.apache.catalina.core.StandardHostValve invoke StandardHostValve.java 126 org.apache.catalina.valves.ErrorReportValve invoke ErrorReportValve.java 105 org.apache.catalina.core.StandardEngineValve invoke StandardEngineValve.java 107 org.apache.catalina.connector.CoyoteAdapter service CoyoteAdapter.java 148 org.apache.coyote.http11.Http11Processor process Http11Processor.java 856 More... org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler processConnection Http11Protocol.java 744 org.apache.tomcat.util.net.PoolTcpEndpoint processSocket PoolTcpEndpoint.java 527 org.apache.tomcat.util.net.LeaderFollowerWorkerThread runIt LeaderFollowerWorkerThread.java 80 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run ThreadPool.java 684 java.lang.Thread run N/A org.orbeon.oxf.common.OXFException Exception Class org.orbeon.oxf.common.OXFException Message oxf:/ops/pfc/xforms-epilogue.xpl, line 81, column 67: null null Resource URL oxf:/ops/pfc/xforms-epilogue.xpl Line 81 Column 67 Servlet Stack Trace (43 method calls) Class Name Method Name File Name Line Number org.orbeon.oxf.processor.NullSerializer start NullSerializer.java 33 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 More... org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$400 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$3 run PipelineProcessor.java 113 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor access$500 PipelineProcessor.java 66 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 111 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.TeeProcessor$1 getKeyImpl TeeProcessor.java 79 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.ProcessorImpl getInputKeyValidity ProcessorImpl.java 1222 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsObject ProcessorImpl.java 456 org.orbeon.oxf.processor.ProcessorImpl readCacheInputAsDOM4J ProcessorImpl.java 426 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor start ConcreteChooseProcessor.java 185 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 652 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.PageFlowControllerProcessor start PageFlowControllerProcessor.java 416 org.orbeon.oxf.pipeline.InitUtils runProcessor InitUtils.java 86 org.orbeon.oxf.webapp.ProcessorService service ProcessorService.java 95 org.orbeon.oxf.servlet.OPSServletDelegate service OPSServletDelegate.java 144 javax.servlet.http.HttpServlet service HttpServlet.java 802 org.orbeon.oxf.servlet.OPSServlet service OPSServlet.java 74 Servlet Stack Trace (15 method calls) Class Name Method Name File Name Line Number javax.servlet.http.HttpServlet service HttpServlet.java 802 org.apache.catalina.core.ApplicationFilterChain internalDoFilter ApplicationFilterChain.java 252 org.apache.catalina.core.ApplicationFilterChain doFilter ApplicationFilterChain.java 173 org.apache.catalina.core.StandardWrapperValve invoke StandardWrapperValve.java 213 org.apache.catalina.core.StandardContextValve invoke StandardContextValve.java 178 org.apache.catalina.core.StandardHostValve invoke StandardHostValve.java 126 org.apache.catalina.valves.ErrorReportValve invoke ErrorReportValve.java 105 org.apache.catalina.core.StandardEngineValve invoke StandardEngineValve.java 107 org.apache.catalina.connector.CoyoteAdapter service CoyoteAdapter.java 148 org.apache.coyote.http11.Http11Processor process Http11Processor.java 856 More... org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler processConnection Http11Protocol.java 744 org.apache.tomcat.util.net.PoolTcpEndpoint processSocket PoolTcpEndpoint.java 527 org.apache.tomcat.util.net.LeaderFollowerWorkerThread runIt LeaderFollowerWorkerThread.java 80 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run ThreadPool.java 684 java.lang.Thread run N/A org.orbeon.oxf.common.ValidationException Exception Class org.orbeon.oxf.common.ValidationException Message oxf:/ops/pfc/xforms-epilogue.xpl, line 81, column 67: null null Resource URL oxf:/ops/pfc/xforms-epilogue.xpl Line 81 Column 67 Servlet Stack Trace (43 method calls) Class Name Method Name File Name Line Number org.orbeon.oxf.common.ValidationException wrapException ValidationException.java 119 org.orbeon.oxf.processor.pipeline.PipelineProcessor$11 run PipelineProcessor.java 654 org.orbeon.oxf.processor.ProcessorImpl executeChildren ProcessorImpl.java 515 org.orbeon.oxf.processor.pipeline.PipelineProcessor start PipelineProcessor.java 649 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getInput PipelineProcessor.java 140 org.orbeon.oxf.processor.pipeline.PipelineProcessor$1 getKeyImpl PipelineProcessor.java 109 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor$1 getKeyImpl ConcreteChooseProcessor.java 132 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 More... org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl getKey ProcessorImpl.java 1181 org.orbeon.oxf.processor.ProcessorImpl getInputKey ProcessorImpl.java 1191 org.orbeon.oxf.processor.IdentityProcessor$1 getKeyImpl IdentityProcessor.java 37 org.orbeon.oxf.processor.ProcessorImpl$6 getKey ProcessorImpl.java 991 org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutput |
Have you thought about storing in the instance only the xml related to
the current tax bracket? When the income field is changed to a value outside of the range, a seperate instance does a submit replace instance to get the information for just the new tax bracket. It might be easier to write these queries when you have the full power of XQuery at your disposal. How are you storing your data? Are you using eXist? Even if you're not, you might want to check out eXist's XQuery sandbox. It was really well written, and makes it easy to hammer out those tricky XPath nightmares. Daniel E. Renfer (http://kronkltd.net/) On 2/23/06, Richard Braman <[hidden email]> wrote: > > I dont think that the logic is comlicated at all > And it is starting to work (at least 1 case)! > See it here http://24.75.221.234:8080/taxcode/1040ez/test > The problem with dividing it up is that both operands of the ge and lt > expressions have to return just one node for to work, so it makes building > the expression incrementally slighty hard. > > Does anyone know if the 'and' syntax works in the context of a xpath like: > /node[childnode1 ge 0 and childnode2 lt 5]/childnode3 ? It seems to. > > Anyway, this XPath work on the case where filing_status is 1 and income is > $1-4, > but if you change income to over 5 it bombs (returns '') > and if you change filing status = 2, it bombs with XPath Error: 3, whatever > that means. > > Could this be a type issue? I dont understand why 1 case works and the > others dont. > Here is my semi working XPath spaced out for better readability: > > if (instance('main-instance')/f1040ez/filing-status eq > '1') > then > instance('taxtable') > //item > [ > instance('main-instance')/f1040ez/income ge > income-equal-or-greater-than > and > instance('main-instance')/f1040ez/income lt > income-less-than > ] > /tax-single > > else if (instance('main-instance')/f1040ez/filing-status > eq '2') > then > instance('taxtable') > //item > [ > instance('main-instance')/f1040ez/income ge > income-equal-or-greater-than > and > instance('main-instance')/f1040ez/income lt > income-less-than > ] > /tax-married-filing-jointly > > else '0' > "/> -- 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, I am not using eXists for the moment. I will look at the Xquery
sandbox again. I just need this to work how it stands :0 -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Daniel E. Renfer Sent: Thursday, February 23, 2006 2:46 AM To: [hidden email] Subject: Re: [ops-users] Xpath Have you thought about storing in the instance only the xml related to the current tax bracket? When the income field is changed to a value outside of the range, a seperate instance does a submit replace instance to get the information for just the new tax bracket. It might be easier to write these queries when you have the full power of XQuery at your disposal. How are you storing your data? Are you using eXist? Even if you're not, you might want to check out eXist's XQuery sandbox. It was really well written, and makes it easy to hammer out those tricky XPath nightmares. Daniel E. Renfer (http://kronkltd.net/) On 2/23/06, Richard Braman <[hidden email]> wrote: > > I dont think that the logic is comlicated at all > And it is starting to work (at least 1 case)! > See it here http://24.75.221.234:8080/taxcode/1040ez/test > The problem with dividing it up is that both operands of the ge and lt > expressions have to return just one node for to work, so it makes > building the expression incrementally slighty hard. > > Does anyone know if the 'and' syntax works in the context of a xpath > like: /node[childnode1 ge 0 and childnode2 lt 5]/childnode3 ? It > seems to. > > Anyway, this XPath work on the case where filing_status is 1 and > income is $1-4, but if you change income to over 5 it bombs (returns > '') and if you change filing status = 2, it bombs with XPath Error: 3, > whatever that means. > > Could this be a type issue? I dont understand why 1 case works and > the others dont. Here is my semi working XPath spaced out for better > readability: > > if (instance('main-instance')/f1040ez/filing-status eq > '1') > then > instance('taxtable') > //item > [ > instance('main-instance')/f1040ez/income ge > income-equal-or-greater-than > and > instance('main-instance')/f1040ez/income lt income-less-than > ] > /tax-single > > else if (instance('main-instance')/f1040ez/filing-status > eq '2') > then > instance('taxtable') > //item > [ > instance('main-instance')/f1040ez/income ge > income-equal-or-greater-than > and > instance('main-instance')/f1040ez/income lt income-less-than > ] > /tax-married-filing-jointly > > else '0' > "/> -- 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 |
I think this must be a type issue.
The reason that I say this is because when using the xPath sandox I can create XForms error: Cannot compare xs:string to xs:integer Errors when trying The expression /f1040ez/taxtable/item[income-less-than eq 5]/tax-single On this document <f1040ez> <SEQ0010>123456789</SEQ0010> <SEQ0100>X</SEQ0100> <SEQ0110/> <filing-status/> <income>5</income> <tax/> <credit/> <titles> <sec2f>Section 2</sec2f> <sec1b>Section 1</sec1b> </titles> <taxtable> <item> <income-equal-or-greater-than>0</income-equal-or-greater-than> <income-less-than>5</income-less-than> <tax-single>2</tax-single> <tax-married-filing-jointly>4</tax-married-filing-jointly> </item> <item> <income-equal-or-greater-than>5</income-equal-or-greater-than> <income-less-than>10</income-less-than> <tax-single>4</tax-single> <tax-married-filing-jointly>6</tax-married-filing-jointly> </item> </taxtable> </f1040ez> -----Original Message----- From: Richard Braman [mailto:[hidden email]] Sent: Thursday, February 23, 2006 2:44 AM To: [hidden email] Subject: RE: [ops-users] Xpath No, I am not using eXists for the moment. I will look at the Xquery sandbox again. I just need this to work how it stands :0 -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Daniel E. Renfer Sent: Thursday, February 23, 2006 2:46 AM To: [hidden email] Subject: Re: [ops-users] Xpath Have you thought about storing in the instance only the xml related to the current tax bracket? When the income field is changed to a value outside of the range, a seperate instance does a submit replace instance to get the information for just the new tax bracket. It might be easier to write these queries when you have the full power of XQuery at your disposal. How are you storing your data? Are you using eXist? Even if you're not, you might want to check out eXist's XQuery sandbox. It was really well written, and makes it easy to hammer out those tricky XPath nightmares. Daniel E. Renfer (http://kronkltd.net/) On 2/23/06, Richard Braman <[hidden email]> wrote: > > I dont think that the logic is comlicated at all > And it is starting to work (at least 1 case)! > See it here http://24.75.221.234:8080/taxcode/1040ez/test > The problem with dividing it up is that both operands of the ge and lt > expressions have to return just one node for to work, so it makes > building the expression incrementally slighty hard. > > Does anyone know if the 'and' syntax works in the context of a xpath > like: /node[childnode1 ge 0 and childnode2 lt 5]/childnode3 ? It > seems to. > > Anyway, this XPath work on the case where filing_status is 1 and > income is $1-4, but if you change income to over 5 it bombs (returns > '') and if you change filing status = 2, it bombs with XPath Error: 3, > whatever that means. > > Could this be a type issue? I dont understand why 1 case works and > the others dont. Here is my semi working XPath spaced out for better > readability: > > if (instance('main-instance')/f1040ez/filing-status eq > '1') > then > instance('taxtable') > //item > [ > instance('main-instance')/f1040ez/income ge > income-equal-or-greater-than > and > instance('main-instance')/f1040ez/income lt income-less-than > ] > /tax-single > > else if (instance('main-instance')/f1040ez/filing-status > eq '2') > then > instance('taxtable') > //item > [ > instance('main-instance')/f1040ez/income ge > income-equal-or-greater-than > and > instance('main-instance')/f1040ez/income lt income-less-than > ] > /tax-married-filing-jointly > > else '0' > "/> -- 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 |
Administrator
|
In reply to this post by Daniel E. Renfer
On 2/22/06, Daniel E. Renfer <[hidden email]> wrote:
> How are you storing your data? Are you using eXist? Even if you're > not, you might want to check out eXist's XQuery sandbox. It was really > well written, and makes it easy to hammer out those tricky XPath > nightmares. Daniel, I was going to suggest something very similar: trying to use the XQuery sandbox (http://www.orbeon.com/ops/goto-example/xquery). Richard, this means you will have to modify your XPath expression as the instance() function is not available in XQuery. Typically put both the "main-instance" and "taxable" documents under a <root> element, use that document as the "input" document, and change appropriately the calls to instance() in the XPath expression. Then put your XPath in XQuery: <result> { your XPath } </result>. This way at least you will be able to see the result almost instantly as you type, and if you have a problem with an XPath expression, it will be easy to post in the list your input document and XQuery so people can quickly reproduce your issue. Alex -- Blog (XML, Web apps, Open Source): 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
--
Follow Orbeon on Twitter: @orbeon Follow me on Twitter: @avernet |
OK, I reprduced my problem in the sandbox
put this in the input <f1040ez> <SEQ0010>123456789</SEQ0010> <SEQ0100>X</SEQ0100> <SEQ0110/> <filing-status/> <income>6</income> <tax/> <credit/> <titles> <sec2f>Section 2</sec2f> <sec1b>Section 1</sec1b> </titles> <taxtable> <item> <income-equal-or-greater-than>0</income-equal-or-greater-than> <income-less-than>5</income-less-than> <tax-single>2</tax-single> <tax-married-filing-jointly>4</tax-married-filing-jointly> </item> <item> <income-equal-or-greater-than>5</income-equal-or-greater-than> <income-less-than>10</income-less-than> <tax-single>4</tax-single> <tax-married-filing-jointly>6</tax-married-filing-jointly> </item> </taxtable> </f1040ez> ********************** And this as the xquery <result> { /f1040ez/taxtable//item[/f1040ez/income ge income-equal-or-greater-than and /f1040ez/income lt income-less-than]/tax-single } </result> Change the income node of the input to 1- 4 it works, 5 and above return nothing. -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Alessandro Vernet Sent: Thursday, February 23, 2006 12:48 PM To: [hidden email] Subject: Re: [ops-users] Xpath On 2/22/06, Daniel E. Renfer <[hidden email]> wrote: > How are you storing your data? Are you using eXist? Even if you're > not, you might want to check out eXist's XQuery sandbox. It was really > well written, and makes it easy to hammer out those tricky XPath > nightmares. Daniel, I was going to suggest something very similar: trying to use the XQuery sandbox (http://www.orbeon.com/ops/goto-example/xquery). Richard, this means you will have to modify your XPath expression as the instance() function is not available in XQuery. Typically put both the "main-instance" and "taxable" documents under a <root> element, use that document as the "input" document, and change appropriately the calls to instance() in the XPath expression. Then put your XPath in XQuery: <result> { your XPath } </result>. This way at least you will be able to see the result almost instantly as you type, and if you have a problem with an XPath expression, it will be easy to post in the list your input document and XQuery so people can quickly reproduce your issue. Alex -- Blog (XML, Web apps, Open Source): 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 |
Administrator
|
You want to make sure your data is handled as numbers, in fact as
decimals, otherwise your operations will work on strings. So try: <result> { /f1040ez/taxtable//item[xs:decimal(/f1040ez/income) ge xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) lt xs:decimal(income-less-than)]/tax-single } </result> -Erik Richard Braman wrote: > OK, I reprduced my problem in the sandbox > put this in the input > > <f1040ez> > <SEQ0010>123456789</SEQ0010> > <SEQ0100>X</SEQ0100> > <SEQ0110/> > <filing-status/> > <income>6</income> > <tax/> > <credit/> > <titles> > <sec2f>Section 2</sec2f> > <sec1b>Section 1</sec1b> > </titles> > <taxtable> > <item> > > <income-equal-or-greater-than>0</income-equal-or-greater-than> > <income-less-than>5</income-less-than> > <tax-single>2</tax-single> > > <tax-married-filing-jointly>4</tax-married-filing-jointly> > </item> > <item> > > <income-equal-or-greater-than>5</income-equal-or-greater-than> > <income-less-than>10</income-less-than> > <tax-single>4</tax-single> > > <tax-married-filing-jointly>6</tax-married-filing-jointly> > </item> > </taxtable> > </f1040ez> > ********************** > And this as the xquery > > <result> > { > /f1040ez/taxtable//item[/f1040ez/income ge > income-equal-or-greater-than and /f1040ez/income lt > income-less-than]/tax-single > } > </result> > > Change the income node of the input to 1- 4 it works, 5 and above return > nothing. > > -----Original Message----- > From: [hidden email] [mailto:[hidden email]] On Behalf Of > Alessandro Vernet > Sent: Thursday, February 23, 2006 12:48 PM > To: [hidden email] > Subject: Re: [ops-users] Xpath > > > On 2/22/06, Daniel E. Renfer <[hidden email]> wrote: >> How are you storing your data? Are you using eXist? Even if you're >> not, you might want to check out eXist's XQuery sandbox. It was really > >> well written, and makes it easy to hammer out those tricky XPath >> nightmares. > > Daniel, I was going to suggest something very similar: trying to use the > XQuery sandbox (http://www.orbeon.com/ops/goto-example/xquery). > > Richard, this means you will have to modify your XPath expression as the > instance() function is not available in XQuery. Typically put both the > "main-instance" and "taxable" documents under a <root> element, use that > document as the "input" document, and change appropriately the calls to > instance() in the XPath expression. Then put your XPath in XQuery: > <result> { your XPath } </result>. > > This way at least you will be able to see the result almost instantly as > you type, and if you have a problem with an XPath expression, it will be > easy to post in the list your input document and XQuery so people can > quickly reproduce your issue. > > Alex > -- > Blog (XML, Web apps, Open Source): > 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 -- 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 |
I knew it had to be a type issue (see previous post). I further
modified the Xpath and it works in the sandbox as needed. Its actually quite close to Daniels code from last night. But, I put the code in calculate and it bombs with the same error java.lang.ArrayIndexOutOfBoundsException Exception Class java.lang.ArrayIndexOutOfBoundsException Message 3 Servlet Stack Trace (177 method calls) Class Name Method Name File Name Line Number org.orbeon.saxon.expr.XPathContextMajor setLocalVariable XPathContextMajor.java 213 Calculate= instance('taxtable') //taxtable/item [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 1] [ xs:decimal(instance('main-instance')//f1040ez/income) ge xs:decimal(income-equal-or-greater-than) ] [ xs:decimal(instance('main-instance')//f1040ez/income) lt xs:decimal(income-less-than) ] /tax-single | instance('taxtable') //taxtable/item [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 2] [ xs:decimal(instance('main-instance')//f1040ez/income) gt xs:decimal(income-equal-or-greater-than) ] [ xs:decimal(instance('main-instance')//f1040ez/income) lt xs:decimal(income-less-than) ] /tax-married-filing-jointly *********************************************** Xquery: <result> { /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq 1][xs:decimal(/f1040ez/income) ge xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) lt xs:decimal(income-less-than)]/tax-single | /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq 2][xs:decimal(/f1040ez/income) ge xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) lt xs:decimal(income-less-than)]/tax-married-filing-jointly } </result> ************************************************** Input: <f1040ez> <SEQ0010>123456789</SEQ0010> <SEQ0100>X</SEQ0100> <SEQ0110/> <filing-status>1</filing-status> <income>5</income> <tax/> <credit/> <titles> <sec2f>Section 2</sec2f> <sec1b>Section 1</sec1b> </titles> <taxtable> <item> <income-equal-or-greater-than>0</income-equal-or-greater-than> <income-less-than>5</income-less-than> <tax-single>2</tax-single> <tax-married-filing-jointly>4</tax-married-filing-jointly> </item> <item> <income-equal-or-greater-than>5</income-equal-or-greater-than> <income-less-than>10</income-less-than> <tax-single>4</tax-single> <tax-married-filing-jointly>6</tax-married-filing-jointly> </item> </taxtable> </f1040ez> -- 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 evidently cant have
xpath | xpath , specifically the | is causing the ArrayIndexOutofBounds in a xforms:bind calculate. This is legal Xpath syntax. It works in the sandbox Each of the statements works inside the calculate, but when you have "|" the array is out of bounds. -----Original Message----- From: Richard Braman [mailto:[hidden email]] Sent: Thursday, February 23, 2006 2:20 PM To: [hidden email] Subject: RE: [ops-users] Xpath I knew it had to be a type issue (see previous post). I further modified the Xpath and it works in the sandbox as needed. Its actually quite close to Daniels code from last night. But, I put the code in calculate and it bombs with the same error java.lang.ArrayIndexOutOfBoundsException Exception Class java.lang.ArrayIndexOutOfBoundsException Message 3 Servlet Stack Trace (177 method calls) Class Name Method Name File Name Line Number org.orbeon.saxon.expr.XPathContextMajor setLocalVariable XPathContextMajor.java 213 Calculate= instance('taxtable') //taxtable/item [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 1] [ xs:decimal(instance('main-instance')//f1040ez/income) ge xs:decimal(income-equal-or-greater-than) ] [ xs:decimal(instance('main-instance')//f1040ez/income) lt xs:decimal(income-less-than) ] /tax-single | instance('taxtable') //taxtable/item [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 2] [ xs:decimal(instance('main-instance')//f1040ez/income) gt xs:decimal(income-equal-or-greater-than) ] [ xs:decimal(instance('main-instance')//f1040ez/income) lt xs:decimal(income-less-than) ] /tax-married-filing-jointly *********************************************** Xquery: <result> { /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq 1][xs:decimal(/f1040ez/income) ge xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) lt xs:decimal(income-less-than)]/tax-single | /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq 2][xs:decimal(/f1040ez/income) ge xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) lt xs:decimal(income-less-than)]/tax-married-filing-jointly } </result> ************************************************** Input: <f1040ez> <SEQ0010>123456789</SEQ0010> <SEQ0100>X</SEQ0100> <SEQ0110/> <filing-status>1</filing-status> <income>5</income> <tax/> <credit/> <titles> <sec2f>Section 2</sec2f> <sec1b>Section 1</sec1b> </titles> <taxtable> <item> <income-equal-or-greater-than>0</income-equal-or-greater-than> <income-less-than>5</income-less-than> <tax-single>2</tax-single> <tax-married-filing-jointly>4</tax-married-filing-jointly> </item> <item> <income-equal-or-greater-than>5</income-equal-or-greater-than> <income-less-than>10</income-less-than> <tax-single>4</tax-single> <tax-married-filing-jointly>6</tax-married-filing-jointly> </item> </taxtable> </f1040ez> -- 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 |
In reply to this post by Erik Bruchez
Would you have to put the xs:decimal notation there if it was already
defined as such type by a schema bound to the instance? -----Original Message----- From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez Sent: Thursday, February 23, 2006 1:35 PM To: [hidden email] Subject: Re: [ops-users] Xpath You want to make sure your data is handled as numbers, in fact as decimals, otherwise your operations will work on strings. So try: <result> { /f1040ez/taxtable//item[xs:decimal(/f1040ez/income) ge xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) lt xs:decimal(income-less-than)]/tax-single } </result> -Erik Richard Braman wrote: > OK, I reprduced my problem in the sandbox > put this in the input > > <f1040ez> > <SEQ0010>123456789</SEQ0010> > <SEQ0100>X</SEQ0100> > <SEQ0110/> > <filing-status/> > <income>6</income> > <tax/> > <credit/> > <titles> > <sec2f>Section 2</sec2f> > <sec1b>Section 1</sec1b> > </titles> > <taxtable> > <item> > > <income-equal-or-greater-than>0</income-equal-or-greater-than> > <income-less-than>5</income-less-than> > <tax-single>2</tax-single> > > <tax-married-filing-jointly>4</tax-married-filing-jointly> > </item> > <item> > > <income-equal-or-greater-than>5</income-equal-or-greater-than> > <income-less-than>10</income-less-than> > <tax-single>4</tax-single> > > <tax-married-filing-jointly>6</tax-married-filing-jointly> > </item> > </taxtable> > </f1040ez> > ********************** > And this as the xquery > > <result> > { > /f1040ez/taxtable//item[/f1040ez/income ge > income-equal-or-greater-than and /f1040ez/income lt > income-less-than]/tax-single > } > </result> > > Change the income node of the input to 1- 4 it works, 5 and above > return nothing. > > -----Original Message----- > From: [hidden email] [mailto:[hidden email]] On Behalf Of > Alessandro Vernet > Sent: Thursday, February 23, 2006 12:48 PM > To: [hidden email] > Subject: Re: [ops-users] Xpath > > > On 2/22/06, Daniel E. Renfer <[hidden email]> wrote: >> How are you storing your data? Are you using eXist? Even if you're >> not, you might want to check out eXist's XQuery sandbox. It was > >> well written, and makes it easy to hammer out those tricky XPath >> nightmares. > > Daniel, I was going to suggest something very similar: trying to use > the XQuery sandbox (http://www.orbeon.com/ops/goto-example/xquery). > > Richard, this means you will have to modify your XPath expression as > the > instance() function is not available in XQuery. Typically put both the > "main-instance" and "taxable" documents under a <root> element, use > document as the "input" document, and change appropriately the calls > instance() in the XPath expression. Then put your XPath in XQuery: > <result> { your XPath } </result>. > > This way at least you will be able to see the result almost instantly > as you type, and if you have a problem with an XPath expression, it > will be easy to post in the list your input document and XQuery so > people can quickly reproduce your issue. > > Alex > -- > Blog (XML, Web apps, Open Source): 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: -- 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 |
Administrator
|
In reply to this post by Richard Braman
This exception is likely a bug in Saxon. You may be able to work around
it by using a sequence instead of "|", i.e. instead of: a | b write: (a, b) -Erik Richard Braman wrote: > I knew it had to be a type issue (see previous post). I further > modified the Xpath and it works in the sandbox as needed. Its actually > quite close to Daniels code from last night. But, I put the code in > calculate and it bombs with the same error > > java.lang.ArrayIndexOutOfBoundsException > Exception Class java.lang.ArrayIndexOutOfBoundsException > Message 3 > Servlet Stack Trace > (177 method calls) Class Name Method Name File Name Line Number > org.orbeon.saxon.expr.XPathContextMajor setLocalVariable > XPathContextMajor.java 213 > > > Calculate= > > instance('taxtable') > //taxtable/item > > [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 1] > [ > > xs:decimal(instance('main-instance')//f1040ez/income) ge > xs:decimal(income-equal-or-greater-than) > ] > [ > > xs:decimal(instance('main-instance')//f1040ez/income) lt > xs:decimal(income-less-than) > ] > /tax-single > > | > > instance('taxtable') > //taxtable/item > > [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 2] > [ > > xs:decimal(instance('main-instance')//f1040ez/income) gt > xs:decimal(income-equal-or-greater-than) > ] > [ > > xs:decimal(instance('main-instance')//f1040ez/income) lt > xs:decimal(income-less-than) > ] > /tax-married-filing-jointly > > > > *********************************************** > > Xquery: > > <result> > { > /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq > 1][xs:decimal(/f1040ez/income) ge > xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) > > lt xs:decimal(income-less-than)]/tax-single | > /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq > 2][xs:decimal(/f1040ez/income) ge > xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) > > lt xs:decimal(income-less-than)]/tax-married-filing-jointly > } > </result> > > ************************************************** > > Input: > > <f1040ez> > <SEQ0010>123456789</SEQ0010> > <SEQ0100>X</SEQ0100> > <SEQ0110/> > <filing-status>1</filing-status> > <income>5</income> > <tax/> > <credit/> > <titles> > <sec2f>Section 2</sec2f> > <sec1b>Section 1</sec1b> > </titles> > <taxtable> > <item> > > <income-equal-or-greater-than>0</income-equal-or-greater-than> > <income-less-than>5</income-less-than> > <tax-single>2</tax-single> > > <tax-married-filing-jointly>4</tax-married-filing-jointly> > </item> > <item> > > <income-equal-or-greater-than>5</income-equal-or-greater-than> > <income-less-than>10</income-less-than> > <tax-single>4</tax-single> > > <tax-married-filing-jointly>6</tax-married-filing-jointly> > </item> > </taxtable> > </f1040ez> > > > > > > ------------------------------------------------------------------------ > > > -- > 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 |
In reply to this post by Richard Braman
I think the fact that | doesn't work in XFOrms Calculate is also a real
good question, or a real bad bug, one of the 2. -----Original Message----- From: Richard Braman [mailto:[hidden email]] Sent: Thursday, February 23, 2006 2:20 PM To: [hidden email] Subject: RE: [ops-users] Xpath I knew it had to be a type issue (see previous post). I further modified the Xpath and it works in the sandbox as needed. Its actually quite close to Daniels code from last night. But, I put the code in calculate and it bombs with the same error java.lang.ArrayIndexOutOfBoundsException Exception Class java.lang.ArrayIndexOutOfBoundsException Message 3 Servlet Stack Trace (177 method calls) Class Name Method Name File Name Line Number org.orbeon.saxon.expr.XPathContextMajor setLocalVariable XPathContextMajor.java 213 Calculate= instance('taxtable') //taxtable/item [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 1] [ xs:decimal(instance('main-instance')//f1040ez/income) ge xs:decimal(income-equal-or-greater-than) ] [ xs:decimal(instance('main-instance')//f1040ez/income) lt xs:decimal(income-less-than) ] /tax-single | instance('taxtable') //taxtable/item [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 2] [ xs:decimal(instance('main-instance')//f1040ez/income) gt xs:decimal(income-equal-or-greater-than) ] [ xs:decimal(instance('main-instance')//f1040ez/income) lt xs:decimal(income-less-than) ] /tax-married-filing-jointly *********************************************** Xquery: <result> { /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq 1][xs:decimal(/f1040ez/income) ge xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) lt xs:decimal(income-less-than)]/tax-single | /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq 2][xs:decimal(/f1040ez/income) ge xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) lt xs:decimal(income-less-than)]/tax-married-filing-jointly } </result> ************************************************** Input: <f1040ez> <SEQ0010>123456789</SEQ0010> <SEQ0100>X</SEQ0100> <SEQ0110/> <filing-status>1</filing-status> <income>5</income> <tax/> <credit/> <titles> <sec2f>Section 2</sec2f> <sec1b>Section 1</sec1b> </titles> <taxtable> <item> <income-equal-or-greater-than>0</income-equal-or-greater-than> <income-less-than>5</income-less-than> <tax-single>2</tax-single> <tax-married-filing-jointly>4</tax-married-filing-jointly> </item> <item> <income-equal-or-greater-than>5</income-equal-or-greater-than> <income-less-than>10</income-less-than> <tax-single>4</tax-single> <tax-married-filing-jointly>6</tax-married-filing-jointly> </item> </taxtable> </f1040ez> -- 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 |
Administrator
|
In reply to this post by Richard Braman
This is in fact a pretty good question.
I think that with XPath 2.0, this would be desirable, and identical in functionality to the "as" attribute of XSLT 2.0. However XForms 1.0 does not talk about XPath 2.0, and in XPath 1.0 there is no concept of XML Schema dataypes. You only have boolean, number, and string types. In XForms 1.0, schema datatypes are used only for validation (and a couple of other things like for the xforms:range control), not to actually set the dataype of the node to which a bind is bound for later use in XPath expressions. This would in fact be possible in some cases (i.e. XPath 2.0 xs:double -> XPath 1.0 number), but xs:integer doesn't map to any XPath 1.0 type, where every number is a floating-point number. So the answer is that it is probably a good idea if the XForms engine uses XPath 2.0 like OPS, but no spec is mandating that for now. -Erik Richard Braman wrote: > Would you have to put the xs:decimal notation there if it was already > defined as such type by a schema bound to the instance? > > -----Original Message----- > From: Erik Bruchez [mailto:[hidden email]] On Behalf Of Erik Bruchez > Sent: Thursday, February 23, 2006 1:35 PM > To: [hidden email] > Subject: Re: [ops-users] Xpath > > > You want to make sure your data is handled as numbers, in fact as > decimals, otherwise your operations will work on strings. So try: > > <result> > { > /f1040ez/taxtable//item[xs:decimal(/f1040ez/income) ge > xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) > > lt xs:decimal(income-less-than)]/tax-single > } > </result> > > -Erik -- 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 |
In reply to this post by Erik Bruchez
What about doing it something like:
/f1040ez/taxtable//item[xs:decimal(/f1040ez/income) ge xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) lt xs:decimal(income-less-than)]/*[((name() eq 'tax-single') and (instance('main-instance')//f1040ez/filing-status eq '1')) or ((name() eq 'tax-married-filing-jointly') and (instance('main-instance')//f1040ez/filing-status eq '2'))] The only question then becomes is doing it all as one query with the *[name() = 'foo'] syntax any faster than using 2 loops and using /foo? Thank you Erik for finding the xs:decimal problem, I was pulling my hair out trying to figure out in what kind of sick world was 6 greater than 10. Daniel E. Renfer (http://kronkltd.net/) On 2/23/06, Erik Bruchez <[hidden email]> wrote: > This exception is likely a bug in Saxon. You may be able to work around > it by using a sequence instead of "|", i.e. instead of: > > a | b > > write: > > (a, b) > > -Erik > > Richard Braman wrote: > > I knew it had to be a type issue (see previous post). I further > > modified the Xpath and it works in the sandbox as needed. Its actually > > quite close to Daniels code from last night. But, I put the code in > > calculate and it bombs with the same error > > > > java.lang.ArrayIndexOutOfBoundsException > > Exception Class java.lang.ArrayIndexOutOfBoundsException > > Message 3 > > Servlet Stack Trace > > (177 method calls) Class Name Method Name File Name Line Number > > org.orbeon.saxon.expr.XPathContextMajor setLocalVariable > > XPathContextMajor.java 213 > > > > > > Calculate= > > > > instance('taxtable') > > //taxtable/item > > > > [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 1] > > [ > > > > xs:decimal(instance('main-instance')//f1040ez/income) ge > > xs:decimal(income-equal-or-greater-than) > > ] > > [ > > > > xs:decimal(instance('main-instance')//f1040ez/income) lt > > xs:decimal(income-less-than) > > ] > > /tax-single > > > > | > > > > instance('taxtable') > > //taxtable/item > > > > [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 2] > > [ > > > > xs:decimal(instance('main-instance')//f1040ez/income) gt > > xs:decimal(income-equal-or-greater-than) > > ] > > [ > > > > xs:decimal(instance('main-instance')//f1040ez/income) lt > > xs:decimal(income-less-than) > > ] > > /tax-married-filing-jointly > > > > > > > > *********************************************** > > > > Xquery: > > > > <result> > > { > > /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq > > 1][xs:decimal(/f1040ez/income) ge > > xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) > > > > lt xs:decimal(income-less-than)]/tax-single | > > /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq > > 2][xs:decimal(/f1040ez/income) ge > > xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) > > > > lt xs:decimal(income-less-than)]/tax-married-filing-jointly > > } > > </result> > > > > ************************************************** > > > > Input: > > > > <f1040ez> > > <SEQ0010>123456789</SEQ0010> > > <SEQ0100>X</SEQ0100> > > <SEQ0110/> > > <filing-status>1</filing-status> > > <income>5</income> > > <tax/> > > <credit/> > > <titles> > > <sec2f>Section 2</sec2f> > > <sec1b>Section 1</sec1b> > > </titles> > > <taxtable> > > <item> > > > > <income-equal-or-greater-than>0</income-equal-or-greater-than> > > <income-less-than>5</income-less-than> > > <tax-single>2</tax-single> > > > > <tax-married-filing-jointly>4</tax-married-filing-jointly> > > </item> > > <item> > > > > <income-equal-or-greater-than>5</income-equal-or-greater-than> > > <income-less-than>10</income-less-than> > > <tax-single>4</tax-single> > > > > <tax-married-filing-jointly>6</tax-married-filing-jointly> > > </item> > > </taxtable> > > </f1040ez> > > > > > > > > > > > > ------------------------------------------------------------------------ > > > > > > -- > > 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 > > > -- 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 |
(a,b) doesn't work,
it compiles but returns XFOrms Error 3, when you change the value of filing status to 2, which is likely the same bug -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Daniel E. Renfer Sent: Thursday, February 23, 2006 4:12 PM To: [hidden email] Subject: Re: [ops-users] Xpath What about doing it something like: /f1040ez/taxtable//item[xs:decimal(/f1040ez/income) ge xs:decimal(income-equal-or-greater-than) and xs:decimal(/f1040ez/income) lt xs:decimal(income-less-than)]/*[((name() eq 'tax-single') and (instance('main-instance')//f1040ez/filing-status eq '1')) or ((name() eq 'tax-married-filing-jointly') and (instance('main-instance')//f1040ez/filing-status eq '2'))] The only question then becomes is doing it all as one query with the *[name() = 'foo'] syntax any faster than using 2 loops and using /foo? Thank you Erik for finding the xs:decimal problem, I was pulling my hair out trying to figure out in what kind of sick world was 6 greater than 10. Daniel E. Renfer (http://kronkltd.net/) On 2/23/06, Erik Bruchez <[hidden email]> wrote: > This exception is likely a bug in Saxon. You may be able to work > around it by using a sequence instead of "|", i.e. instead of: > > a | b > > write: > > (a, b) > > -Erik > > Richard Braman wrote: > > I knew it had to be a type issue (see previous post). I further > > modified the Xpath and it works in the sandbox as needed. Its > > actually quite close to Daniels code from last night. But, I put > > the code in calculate and it bombs with the same error > > > > java.lang.ArrayIndexOutOfBoundsException > > Exception Class java.lang.ArrayIndexOutOfBoundsException > > Message 3 > > Servlet Stack Trace > > (177 method calls) Class Name Method Name File Name Line Number > > org.orbeon.saxon.expr.XPathContextMajor setLocalVariable > > XPathContextMajor.java 213 > > > > > > Calculate= > > > > instance('taxtable') > > //taxtable/item > > > > [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 1] > > [ > > > > xs:decimal(instance('main-instance')//f1040ez/income) ge > > xs:decimal(income-equal-or-greater-than) > > ] > > [ > > > > xs:decimal(instance('main-instance')//f1040ez/income) lt > > xs:decimal(income-less-than) > > ] > > /tax-single > > > > | > > > > instance('taxtable') > > //taxtable/item > > > > [xs:integer(instance('main-instance')//f1040ez/filing-status) eq 2] > > [ > > > > xs:decimal(instance('main-instance')//f1040ez/income) gt > > xs:decimal(income-equal-or-greater-than) > > ] > > [ > > > > xs:decimal(instance('main-instance')//f1040ez/income) lt > > xs:decimal(income-less-than) > > ] > > /tax-married-filing-jointly > > > > > > > > *********************************************** > > > > Xquery: > > > > <result> > > { > > /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq > > 1][xs:decimal(/f1040ez/income) ge > > xs:decimal(income-equal-or-greater-than) and > > xs:decimal(/f1040ez/income) > > > > lt xs:decimal(income-less-than)]/tax-single | > > /f1040ez/taxtable//item[xs:integer(/f1040ez/filing-status) eq > > 2][xs:decimal(/f1040ez/income) ge > > xs:decimal(income-equal-or-greater-than) and > > xs:decimal(/f1040ez/income) > > > > lt xs:decimal(income-less-than)]/tax-married-filing-jointly > > } > > </result> > > > > ************************************************** > > > > Input: > > > > <f1040ez> > > <SEQ0010>123456789</SEQ0010> > > <SEQ0100>X</SEQ0100> > > <SEQ0110/> > > <filing-status>1</filing-status> > > <income>5</income> > > <tax/> > > <credit/> > > <titles> > > <sec2f>Section 2</sec2f> > > <sec1b>Section 1</sec1b> > > </titles> > > <taxtable> > > <item> > > > > <income-equal-or-greater-than>0</income-equal-or-greater-than> > > <income-less-than>5</income-less-than> > > <tax-single>2</tax-single> > > > > <tax-married-filing-jointly>4</tax-married-filing-jointly> > > </item> > > <item> > > > > <income-equal-or-greater-than>5</income-equal-or-greater-than> > > <income-less-than>10</income-less-than> > > <tax-single>4</tax-single> > > > > <tax-married-filing-jointly>6</tax-married-filing-jointly> > > </item> > > </taxtable> > > </f1040ez> > > > > > > > > > > > > -------------------------------------------------------------------- > > ---- > > > > > > -- > > 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: > > > > > > -- > 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: > > > -- 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 |
Free forum by Nabble | Edit this page |