How to transmit Two Instances between pages

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

How to transmit Two Instances between pages

Mackinnon, Mark A.
Hi, all
 
I'm trying to do something similar to the example xforms-wizard-pfc.  In that example, each page uses xi:include as follows: 
 
<xf:instance>
    <xi:include href="input:instance"/>
</xf:instance>
<xf:instance id="nav-instance">
    <nav xmlns="">
        <action/>
  </nav>
</xf:instance>
to bring in initial-instance.xml which looks as follows:
 
<form>
    <action/>
    <user>
        <firstname/>
        <lastname/>
        <age/>
    </user>
</form>
The contents of the <action> tag determine whether to navigate back or forward through the pages, and each page is used to supply values for <firstname>, <lastname>, and <age>.
 
My problem is, I don't want to have the <action> tag be part of the same instance that I'll be submitting when my form is fully filled out.  I tried creating a second instance as follows:
 
<xf:instance>
    <xi:include href="input:instance"/>
</xf:instance>
<xf:instance id="nav-instance">
    <nav xmlns="">
        <action/>
  </nav>
</xf:instance>
(after removing <action> from initial-instance.xml); however, the 2nd instance does not seem to be passed in input:instance or, if it is, I couldn't reference it (I tried instance('nav-instance')/action but that syntax was not recognized in page-flow.xml).  So then I tried moving the <xf:instance> tags for both instances into initial-instance.xml and changed the include statement to look like
 
<xf:model>
    <xi:include href="input:instance"/>
</xf:model>
hoping to get both instances with one input.  This time, I got errors saying prefix xf: not allowed in the xml file.
 
So ... is there a way to do this and I just don't have the correct syntax, or am I fighting a losing battle?
 
Thanks in advance for any help/suggestions.
 
Mark MacKinnon
 


--
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
OW2 mailing lists service home page: http://www.ow2.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: How to transmit Two Instances between pages

Erik Bruchez
Administrator
Mark,

Using an <action> element is kind of a thing of the past with Orbeon
Forms. We used this a lot before version 3.0, when we didn't have that
many XForms capabilities.

Now I would rather use an XForms submission to directly post your
document to the appropriate page. You can for example use two different
submissions with different actions, e.g.:

<xforms:submission id="previous" method="post" action="/previous-page"/>
<xforms:submission id="next" method="post" action="/next-page"/>

-Erik

Mackinnon, Mark A. wrote:

> Hi, all
>  
> I'm trying to do something similar to the example xforms-wizard-pfc.  In
> that example, each page uses xi:include as follows:
>  
> <xf:instance>
>     <xi:include href="input:instance"/>
> </xf:instance>
> <xf:instance id="nav-instance">
>     <nav xmlns="">
>         <action/>
>   </nav>
> </xf:instance>
> to bring in initial-instance.xml which looks as follows:
>  
> <form>
>     <action/>
>     <user>
>         <firstname/>
>         <lastname/>
>         <age/>
>     </user>
> </form>
> The contents of the <action> tag determine whether to navigate back or
> forward through the pages, and each page is used to supply values for
> <firstname>, <lastname>, and <age>.
>  
> My problem is, I don't want to have the <action> tag be part of the same
> instance that I'll be submitting when my form is fully filled out.  I
> tried creating a second instance as follows:
>  
> <xf:instance>
>     <xi:include href="input:instance"/>
> </xf:instance>
> <xf:instance id="nav-instance">
>     <nav xmlns="">
>         <action/>
>   </nav>
> </xf:instance>
> (after removing <action> from initial-instance.xml); however, the 2nd
> instance does not seem to be passed in input:instance or, if it is, I
> couldn't reference it (I tried instance('nav-instance')/action but that
> syntax was not recognized in page-flow.xml).  So then I tried moving the
> <xf:instance> tags for both instances into initial-instance.xml and
> changed the include statement to look like
>  
> <xf:model>
>     <xi:include href="input:instance"/>
> </xf:model>
> hoping to get both instances with one input.  This time, I got errors
> saying prefix xf: not allowed in the xml file.
>  
> So ... is there a way to do this and I just don't have the correct
> syntax, or am I fighting a losing battle?
>  
> Thanks in advance for any help/suggestions.
>  
> Mark MacKinnon
>  
>

--
Orbeon Forms - Web Forms for the Enterprise Done the Right Way
http://www.orbeon.com/


--
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
OW2 mailing lists service home page: http://www.ow2.org/wws