recursive XBL components?

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

recursive XBL components?

Jeremiah Jahn-4
I'm getting a out of memory error whenever I have one of my xbl components self reference or recurse. Is that not allowed? Or is there some trick to getting it to work?


I have some xml that look like:
<widget>
<widget-item/>
<widget-item/>
<widget-item/>
<widget>
<widget-item/>
<widget-item/>
<widget>
<widget-item/>
<widget-item/>
</widget>
</widget>
</widget>


I have an xbl component that for the widget, and one for the widget-item
the widget xbl look kind of like this:

<xforms:repeat nodeset="*">

<xforms:group ref=".[name() = 'widget']">
<dlcn:widget ref="."/>
</xforms:group>
<xforms:group ref=".[name() = 'widget-item']">
<dlcn:widget-item ref="."/>
</xforms:group>
</xforms:repeat>



--
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: recursive XBL components?

Alessandro  Vernet
Administrator
Jeremiah,

I understand that in the implementation of dlcn:widget you have an
xforms:repeat that iterates over <widget> and uses dlcn:widget. If
this is the case, and you get an error, it is most likely because this
has never been tried ;). Could you submit a simple component and test
case that shows this, so we can easily reproduce it?

Alex

On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:

> I'm getting a out of memory error whenever I have one of my xbl components
> self reference or recurse. Is that not allowed? Or is there some trick to
> getting it to work?
>
> I have some xml that look like:
> <widget>
> <widget-item/>
> <widget-item/>
> <widget-item/>
> <widget>
> <widget-item/>
> <widget-item/>
> <widget>
> <widget-item/>
> <widget-item/>
> </widget>
> </widget>
> </widget>
>
> I have an xbl component that for the widget, and one for the widget-item
> the widget xbl look kind of like this:
> <xforms:repeat nodeset="*">
> <xforms:group ref=".[name() = 'widget']">
> <dlcn:widget ref="."/>
> </xforms:group>
> <xforms:group ref=".[name() = 'widget-item']">
> <dlcn:widget-item ref="."/>
> </xforms:group>
> </xforms:repeat>
>
>
> --
> 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
>
>


--
Orbeon Forms - Web forms, open-source, for the Enterprise -
http://www.orbeon.com/
My Twitter: http://twitter.com/avernet


--
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
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: Re: recursive XBL components?

Jeremiah Jahn-4
What format would you like it in? I'm not sure what pieces you'd like since it's XBL.



On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:

> Jeremiah,
>
> I understand that in the implementation of dlcn:widget you have an
> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
> this is the case, and you get an error, it is most likely because this
> has never been tried ;). Could you submit a simple component and test
> case that shows this, so we can easily reproduce it?
>
> Alex
>
> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>> I'm getting a out of memory error whenever I have one of my xbl components
>> self reference or recurse. Is that not allowed? Or is there some trick to
>> getting it to work?
>>
>> I have some xml that look like:
>> <widget>
>> <widget-item/>
>> <widget-item/>
>> <widget-item/>
>> <widget>
>> <widget-item/>
>> <widget-item/>
>> <widget>
>> <widget-item/>
>> <widget-item/>
>> </widget>
>> </widget>
>> </widget>
>>
>> I have an xbl component that for the widget, and one for the widget-item
>> the widget xbl look kind of like this:
>> <xforms:repeat nodeset="*">
>> <xforms:group ref=".[name() = 'widget']">
>> <dlcn:widget ref="."/>
>> </xforms:group>
>> <xforms:group ref=".[name() = 'widget-item']">
>> <dlcn:widget-item ref="."/>
>> </xforms:group>
>> </xforms:repeat>
>>
>>
>> --
>> 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
>>
>>
>
>
>
> --
> Orbeon Forms - Web forms, open-source, for the Enterprise -
> http://www.orbeon.com/
> My Twitter: http://twitter.com/avernet
>
> --
> 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


--
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: Re: recursive XBL components?

Jeremiah Jahn-4
In reply to this post by Alessandro Vernet
Just out of curiosity, is there some other common way to walk an  xml tree of unknown depth? I would have used some xsl for the recursion, but I can't seem to get my hands around the instance data with the xsl within the xbl component. It seems like only xforms can grab the instance data, while xsl is limited to the xforms elements themselves. It'd be great if there was some way to apply an xsl template to an instance.


On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:

> Jeremiah,
>
> I understand that in the implementation of dlcn:widget you have an
> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
> this is the case, and you get an error, it is most likely because this
> has never been tried ;). Could you submit a simple component and test
> case that shows this, so we can easily reproduce it?
>
> Alex
>
> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>> I'm getting a out of memory error whenever I have one of my xbl components
>> self reference or recurse. Is that not allowed? Or is there some trick to
>> getting it to work?
>>
>> I have some xml that look like:
>> <widget>
>> <widget-item/>
>> <widget-item/>
>> <widget-item/>
>> <widget>
>> <widget-item/>
>> <widget-item/>
>> <widget>
>> <widget-item/>
>> <widget-item/>
>> </widget>
>> </widget>
>> </widget>
>>
>> I have an xbl component that for the widget, and one for the widget-item
>> the widget xbl look kind of like this:
>> <xforms:repeat nodeset="*">
>> <xforms:group ref=".[name() = 'widget']">
>> <dlcn:widget ref="."/>
>> </xforms:group>
>> <xforms:group ref=".[name() = 'widget-item']">
>> <dlcn:widget-item ref="."/>
>> </xforms:group>
>> </xforms:repeat>
>>
>>
>> --
>> 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
>>
>>
>
>
>
> --
> Orbeon Forms - Web forms, open-source, for the Enterprise -
> http://www.orbeon.com/
> My Twitter: http://twitter.com/avernet
>
> --
> 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


--
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: Re: recursive XBL components? TEST CASE/REAL EXAMPLE

Jeremiah Jahn-4
In reply to this post by Alessandro Vernet
<?xml version="1.0" encoding="UTF-8"?>
<!--
    !!!! THIS DOES NOT WORK CURRENTLY !!!!

    

    Give this component a single node binding and it will create xhtml:li for all of it's attributes,
    and sub lists for all of it's children recusively.

    

    !!!! THIS DOES NOT WORK CURRENTLY !!!!  

    

    it is just an example of something that SHOULD/WOULD BE NICE

    

    /webapp/WEB-INF/resources/xbl/delcyon/tree-view/tree-view.xbl
-->
<xbl:xbl xmlns:xhtml="http://www.w3.org/1999/xhtml"
    xmlns:xforms="http://www.w3.org/2002/xforms"    
    xmlns:xxforms="http://orbeon.org/oxf/xml/xforms"
    xmlns:xbl="http://www.w3.org/ns/xbl"
    xmlns:dlcn="http://www.delcyon.com/xbl">

    

    <xbl:binding  element="dlcn|tree-view">

        

        <xbl:resources>         
            <xbl:style>
                div.box 
                {
                    border-color: black; 
                    border-width: 1px; 
                    border-style: solid;
                    padding: 5px;
                }                
            </xbl:style>
        </xbl:resources>

        

 

        

        <xbl:template>
            <xhtml:div class="box">
                <xforms:group xbl:attr="ref" xxbl:scope="outer">
                    <!-- Start copying the variables over that we need -->

                   

                    <xxforms:variable name="data" xxbl:scope="inner" >
                        <xxforms:sequence select="." xxbl:scope="outer"/>
                    </xxforms:variable>

                   

                    <!-- end external variable copying -->

                    

                    <!-- START MAIN GROUP-->
                    <xforms:group xxbl:scope="inner">
                        <strong><xforms:output value="$data/local-name()"/></strong>
                        <br/>
                        <xhtml:ul>
                            <!-- This will display all of the attributes in this element -->
                            <xforms:repeat nodeset="$data/@*">
                                <xhtml:li>
                                    <strong><xforms:output value="local-name()"/>: </strong><xforms:output value="."/>
                                </xhtml:li>
                            </xforms:repeat>
                            <!-- Repeat over each child node of the root node -->
                            <xforms:repeat nodeset="$data/*">
                                <xhtml:li>                                        
                                    <!-- if this element has children recurse into it -->                                       
                                    <dlcn:tree-view ref="."/>
                                </xhtml:li>
                            </xforms:repeat>
                        </xhtml:ul>
                    </xforms:group>
                    <!-- END MAIN GROUP -->

                    

                </xforms:group>
            </xhtml:div>
        </xbl:template>

        

    </xbl:binding>
</xbl:xbl>




On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:

Jeremiah,

I understand that in the implementation of dlcn:widget you have an
xforms:repeat that iterates over <widget> and uses dlcn:widget. If
this is the case, and you get an error, it is most likely because this
has never been tried ;). Could you submit a simple component and test
case that shows this, so we can easily reproduce it?

Alex

On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
I'm getting a out of memory error whenever I have one of my xbl components
self reference or recurse. Is that not allowed? Or is there some trick to
getting it to work?

I have some xml that look like:
<widget>
<widget-item/>
<widget-item/>
<widget-item/>
<widget>
<widget-item/>
<widget-item/>
<widget>
<widget-item/>
<widget-item/>
</widget>
</widget>
</widget>

I have an xbl component that for the widget, and one for the widget-item
the widget xbl look kind of like this:
<xforms:repeat nodeset="*">
<xforms:group ref=".[name() = 'widget']">
<dlcn:widget ref="."/>
</xforms:group>
<xforms:group ref=".[name() = 'widget-item']">
<dlcn:widget-item ref="."/>
</xforms:group>
</xforms:repeat>


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





--
Orbeon Forms - Web forms, open-source, for the Enterprise -
http://www.orbeon.com/
My Twitter: http://twitter.com/avernet

--
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



--
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: Re: Re: recursive XBL components? TEST CASE/REAL EXAMPLE

Alessandro  Vernet
Administrator
Jeremiah,

Do you also have a test case for this? I.e. XForms that uses this XBL
and shows the problem?

Alex

On Sat, Mar 27, 2010 at 8:22 AM, Jeremiah Jahn <[hidden email]> wrote:

> <?xml version="1.0" encoding="UTF-8"?>
> <!--
>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>
>
>
>     Give this component a single node binding and it will create xhtml:li
> for all of it's attributes,
>     and sub lists for all of it's children recusively.
>
>
>
>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>
>
>
>     it is just an example of something that SHOULD/WOULD BE NICE
>
>
>
>     /webapp/WEB-INF/resources/xbl/delcyon/tree-view/tree-view.xbl
> -->
> <xbl:xbl xmlns:xhtml="http://www.w3.org/1999/xhtml"
>     xmlns:xforms="http://www.w3.org/2002/xforms"
>     xmlns:xxforms="http://orbeon.org/oxf/xml/xforms"
>     xmlns:xbl="http://www.w3.org/ns/xbl"
>     xmlns:xxbl="http://orbeon.org/oxf/xml/xbl"
>     xmlns:dlcn="http://www.delcyon.com/xbl">
>
>
>
>     <xbl:binding  element="dlcn|tree-view">
>
>
>
>         <xbl:resources>
>             <xbl:style>
>                 div.box
>                 {
>                     border-color: black;
>                     border-width: 1px;
>                     border-style: solid;
>                     padding: 5px;
>                 }
>             </xbl:style>
>         </xbl:resources>
>
>
>
>
>
>
>
>         <xbl:template>
>             <xhtml:div class="box">
>                 <xforms:group xbl:attr="ref" xxbl:scope="outer">
>                     <!-- Start copying the variables over that we need -->
>
>
>
>                     <xxforms:variable name="data" xxbl:scope="inner" >
>                         <xxforms:sequence select="." xxbl:scope="outer"/>
>                     </xxforms:variable>
>
>
>
>                     <!-- end external variable copying -->
>
>
>
>                     <!-- START MAIN GROUP-->
>                     <xforms:group xxbl:scope="inner">
>                         <strong><xforms:output
> value="$data/local-name()"/></strong>
>                         <br/>
>                         <xhtml:ul>
>                             <!-- This will display all of the attributes in
> this element -->
>                             <xforms:repeat nodeset="$data/@*">
>                                 <xhtml:li>
>                                     <strong><xforms:output
> value="local-name()"/>: </strong><xforms:output value="."/>
>                                 </xhtml:li>
>                             </xforms:repeat>
>                             <!-- Repeat over each child node of the root
> node -->
>                             <xforms:repeat nodeset="$data/*">
>                                 <xhtml:li>
>
>                                     <!-- if this element has children
> recurse into it -->
>                                     <dlcn:tree-view ref="."/>
>                                 </xhtml:li>
>                             </xforms:repeat>
>                         </xhtml:ul>
>                     </xforms:group>
>                     <!-- END MAIN GROUP -->
>
>
>
>                 </xforms:group>
>             </xhtml:div>
>         </xbl:template>
>
>
>
>     </xbl:binding>
> </xbl:xbl>
>
>
>
> On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:
>
> Jeremiah,
>
> I understand that in the implementation of dlcn:widget you have an
> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
> this is the case, and you get an error, it is most likely because this
> has never been tried ;). Could you submit a simple component and test
> case that shows this, so we can easily reproduce it?
>
> Alex
>
> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>
> I'm getting a out of memory error whenever I have one of my xbl components
>
> self reference or recurse. Is that not allowed? Or is there some trick to
>
> getting it to work?
>
> I have some xml that look like:
>
> <widget>
>
> <widget-item/>
>
> <widget-item/>
>
> <widget-item/>
>
> <widget>
>
> <widget-item/>
>
> <widget-item/>
>
> <widget>
>
> <widget-item/>
>
> <widget-item/>
>
> </widget>
>
> </widget>
>
> </widget>
>
> I have an xbl component that for the widget, and one for the widget-item
>
> the widget xbl look kind of like this:
>
> <xforms:repeat nodeset="*">
>
> <xforms:group ref=".[name() = 'widget']">
>
> <dlcn:widget ref="."/>
>
> </xforms:group>
>
> <xforms:group ref=".[name() = 'widget-item']">
>
> <dlcn:widget-item ref="."/>
>
> </xforms:group>
>
> </xforms:repeat>
>
>
> --
>
> 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
>
>
>
>
>
> --
> Orbeon Forms - Web forms, open-source, for the Enterprise -
> http://www.orbeon.com/
> My Twitter: http://twitter.com/avernet
>
> --
> 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
>
>
>
> --
> 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
>
>


--
Orbeon Forms - Web forms, open-source, for the Enterprise -
http://www.orbeon.com/
My Twitter: http://twitter.com/avernet


--
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
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: Re: Re: Re: recursive XBL components? TEST CASE/REAL EXAMPLE

Jeremiah Jahn-4
I sure don't I wasn't quite sure how to package all of that up, so I wrote this to take any single node binding. My orbeon environment is a little different from the standard and has lot of other infrastructure built around it that makes it difficult to pull out a single  xhtml file. If you'll point me to an example of something I'll pack it up for you.  


On Mar 30, 2010, at 7:13 PM, Alessandro Vernet wrote:

> Jeremiah,
>
> Do you also have a test case for this? I.e. XForms that uses this XBL
> and shows the problem?
>
> Alex
>
> On Sat, Mar 27, 2010 at 8:22 AM, Jeremiah Jahn <[hidden email]> wrote:
>> <?xml version="1.0" encoding="UTF-8"?>
>> <!--
>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>
>>
>>
>>     Give this component a single node binding and it will create xhtml:li
>> for all of it's attributes,
>>     and sub lists for all of it's children recusively.
>>
>>
>>
>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>
>>
>>
>>     it is just an example of something that SHOULD/WOULD BE NICE
>>
>>
>>
>>     /webapp/WEB-INF/resources/xbl/delcyon/tree-view/tree-view.xbl
>> -->
>> <xbl:xbl xmlns:xhtml="http://www.w3.org/1999/xhtml"
>>     xmlns:xforms="http://www.w3.org/2002/xforms"
>>     xmlns:xxforms="http://orbeon.org/oxf/xml/xforms"
>>     xmlns:xbl="http://www.w3.org/ns/xbl"
>>     xmlns:xxbl="http://orbeon.org/oxf/xml/xbl"
>>     xmlns:dlcn="http://www.delcyon.com/xbl">
>>
>>
>>
>>     <xbl:binding  element="dlcn|tree-view">
>>
>>
>>
>>         <xbl:resources>
>>             <xbl:style>
>>                 div.box
>>                 {
>>                     border-color: black;
>>                     border-width: 1px;
>>                     border-style: solid;
>>                     padding: 5px;
>>                 }
>>             </xbl:style>
>>         </xbl:resources>
>>
>>
>>
>>
>>
>>
>>
>>         <xbl:template>
>>             <xhtml:div class="box">
>>                 <xforms:group xbl:attr="ref" xxbl:scope="outer">
>>                     <!-- Start copying the variables over that we need -->
>>
>>
>>
>>                     <xxforms:variable name="data" xxbl:scope="inner" >
>>                         <xxforms:sequence select="." xxbl:scope="outer"/>
>>                     </xxforms:variable>
>>
>>
>>
>>                     <!-- end external variable copying -->
>>
>>
>>
>>                     <!-- START MAIN GROUP-->
>>                     <xforms:group xxbl:scope="inner">
>>                         <strong><xforms:output
>> value="$data/local-name()"/></strong>
>>                         <br/>
>>                         <xhtml:ul>
>>                             <!-- This will display all of the attributes in
>> this element -->
>>                             <xforms:repeat nodeset="$data/@*">
>>                                 <xhtml:li>
>>                                     <strong><xforms:output
>> value="local-name()"/>: </strong><xforms:output value="."/>
>>                                 </xhtml:li>
>>                             </xforms:repeat>
>>                             <!-- Repeat over each child node of the root
>> node -->
>>                             <xforms:repeat nodeset="$data/*">
>>                                 <xhtml:li>
>>
>>                                     <!-- if this element has children
>> recurse into it -->
>>                                     <dlcn:tree-view ref="."/>
>>                                 </xhtml:li>
>>                             </xforms:repeat>
>>                         </xhtml:ul>
>>                     </xforms:group>
>>                     <!-- END MAIN GROUP -->
>>
>>
>>
>>                 </xforms:group>
>>             </xhtml:div>
>>         </xbl:template>
>>
>>
>>
>>     </xbl:binding>
>> </xbl:xbl>
>>
>>
>>
>> On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:
>>
>> Jeremiah,
>>
>> I understand that in the implementation of dlcn:widget you have an
>> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
>> this is the case, and you get an error, it is most likely because this
>> has never been tried ;). Could you submit a simple component and test
>> case that shows this, so we can easily reproduce it?
>>
>> Alex
>>
>> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>>
>> I'm getting a out of memory error whenever I have one of my xbl components
>>
>> self reference or recurse. Is that not allowed? Or is there some trick to
>>
>> getting it to work?
>>
>> I have some xml that look like:
>>
>> <widget>
>>
>> <widget-item/>
>>
>> <widget-item/>
>>
>> <widget-item/>
>>
>> <widget>
>>
>> <widget-item/>
>>
>> <widget-item/>
>>
>> <widget>
>>
>> <widget-item/>
>>
>> <widget-item/>
>>
>> </widget>
>>
>> </widget>
>>
>> </widget>
>>
>> I have an xbl component that for the widget, and one for the widget-item
>>
>> the widget xbl look kind of like this:
>>
>> <xforms:repeat nodeset="*">
>>
>> <xforms:group ref=".[name() = 'widget']">
>>
>> <dlcn:widget ref="."/>
>>
>> </xforms:group>
>>
>> <xforms:group ref=".[name() = 'widget-item']">
>>
>> <dlcn:widget-item ref="."/>
>>
>> </xforms:group>
>>
>> </xforms:repeat>
>>
>>
>> --
>>
>> 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
>>
>>
>>
>>
>>
>> --
>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>> http://www.orbeon.com/
>> My Twitter: http://twitter.com/avernet
>>
>> --
>> 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
>>
>>
>>
>> --
>> 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
>>
>>
>
>
>
> --
> Orbeon Forms - Web forms, open-source, for the Enterprise -
> http://www.orbeon.com/
> My Twitter: http://twitter.com/avernet
>
> --
> 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


--
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: Re: Re: Re: Re: recursive XBL components? TEST CASE/REAL EXAMPLE

Alessandro  Vernet
Administrator
Jeremiah,

The easiest thing is to create a stand-alone XForms file that we can
run in the XForms sandbox. You can embed the XBL in the XForms file,
so there is just one file.

Alex

On Tue, Mar 30, 2010 at 7:31 PM, Jeremiah Jahn <[hidden email]> wrote:

> I sure don't I wasn't quite sure how to package all of that up, so I wrote this to take any single node binding. My orbeon environment is a little different from the standard and has lot of other infrastructure built around it that makes it difficult to pull out a single  xhtml file. If you'll point me to an example of something I'll pack it up for you.
>
>
> On Mar 30, 2010, at 7:13 PM, Alessandro Vernet wrote:
>
>> Jeremiah,
>>
>> Do you also have a test case for this? I.e. XForms that uses this XBL
>> and shows the problem?
>>
>> Alex
>>
>> On Sat, Mar 27, 2010 at 8:22 AM, Jeremiah Jahn <[hidden email]> wrote:
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <!--
>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>
>>>
>>>
>>>     Give this component a single node binding and it will create xhtml:li
>>> for all of it's attributes,
>>>     and sub lists for all of it's children recusively.
>>>
>>>
>>>
>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>
>>>
>>>
>>>     it is just an example of something that SHOULD/WOULD BE NICE
>>>
>>>
>>>
>>>     /webapp/WEB-INF/resources/xbl/delcyon/tree-view/tree-view.xbl
>>> -->
>>> <xbl:xbl xmlns:xhtml="http://www.w3.org/1999/xhtml"
>>>     xmlns:xforms="http://www.w3.org/2002/xforms"
>>>     xmlns:xxforms="http://orbeon.org/oxf/xml/xforms"
>>>     xmlns:xbl="http://www.w3.org/ns/xbl"
>>>     xmlns:xxbl="http://orbeon.org/oxf/xml/xbl"
>>>     xmlns:dlcn="http://www.delcyon.com/xbl">
>>>
>>>
>>>
>>>     <xbl:binding  element="dlcn|tree-view">
>>>
>>>
>>>
>>>         <xbl:resources>
>>>             <xbl:style>
>>>                 div.box
>>>                 {
>>>                     border-color: black;
>>>                     border-width: 1px;
>>>                     border-style: solid;
>>>                     padding: 5px;
>>>                 }
>>>             </xbl:style>
>>>         </xbl:resources>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>         <xbl:template>
>>>             <xhtml:div class="box">
>>>                 <xforms:group xbl:attr="ref" xxbl:scope="outer">
>>>                     <!-- Start copying the variables over that we need -->
>>>
>>>
>>>
>>>                     <xxforms:variable name="data" xxbl:scope="inner" >
>>>                         <xxforms:sequence select="." xxbl:scope="outer"/>
>>>                     </xxforms:variable>
>>>
>>>
>>>
>>>                     <!-- end external variable copying -->
>>>
>>>
>>>
>>>                     <!-- START MAIN GROUP-->
>>>                     <xforms:group xxbl:scope="inner">
>>>                         <strong><xforms:output
>>> value="$data/local-name()"/></strong>
>>>                         <br/>
>>>                         <xhtml:ul>
>>>                             <!-- This will display all of the attributes in
>>> this element -->
>>>                             <xforms:repeat nodeset="$data/@*">
>>>                                 <xhtml:li>
>>>                                     <strong><xforms:output
>>> value="local-name()"/>: </strong><xforms:output value="."/>
>>>                                 </xhtml:li>
>>>                             </xforms:repeat>
>>>                             <!-- Repeat over each child node of the root
>>> node -->
>>>                             <xforms:repeat nodeset="$data/*">
>>>                                 <xhtml:li>
>>>
>>>                                     <!-- if this element has children
>>> recurse into it -->
>>>                                     <dlcn:tree-view ref="."/>
>>>                                 </xhtml:li>
>>>                             </xforms:repeat>
>>>                         </xhtml:ul>
>>>                     </xforms:group>
>>>                     <!-- END MAIN GROUP -->
>>>
>>>
>>>
>>>                 </xforms:group>
>>>             </xhtml:div>
>>>         </xbl:template>
>>>
>>>
>>>
>>>     </xbl:binding>
>>> </xbl:xbl>
>>>
>>>
>>>
>>> On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:
>>>
>>> Jeremiah,
>>>
>>> I understand that in the implementation of dlcn:widget you have an
>>> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
>>> this is the case, and you get an error, it is most likely because this
>>> has never been tried ;). Could you submit a simple component and test
>>> case that shows this, so we can easily reproduce it?
>>>
>>> Alex
>>>
>>> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>>>
>>> I'm getting a out of memory error whenever I have one of my xbl components
>>>
>>> self reference or recurse. Is that not allowed? Or is there some trick to
>>>
>>> getting it to work?
>>>
>>> I have some xml that look like:
>>>
>>> <widget>
>>>
>>> <widget-item/>
>>>
>>> <widget-item/>
>>>
>>> <widget-item/>
>>>
>>> <widget>
>>>
>>> <widget-item/>
>>>
>>> <widget-item/>
>>>
>>> <widget>
>>>
>>> <widget-item/>
>>>
>>> <widget-item/>
>>>
>>> </widget>
>>>
>>> </widget>
>>>
>>> </widget>
>>>
>>> I have an xbl component that for the widget, and one for the widget-item
>>>
>>> the widget xbl look kind of like this:
>>>
>>> <xforms:repeat nodeset="*">
>>>
>>> <xforms:group ref=".[name() = 'widget']">
>>>
>>> <dlcn:widget ref="."/>
>>>
>>> </xforms:group>
>>>
>>> <xforms:group ref=".[name() = 'widget-item']">
>>>
>>> <dlcn:widget-item ref="."/>
>>>
>>> </xforms:group>
>>>
>>> </xforms:repeat>
>>>
>>>
>>> --
>>>
>>> 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
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>> http://www.orbeon.com/
>>> My Twitter: http://twitter.com/avernet
>>>
>>> --
>>> 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
>>>
>>>
>>>
>>> --
>>> 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
>>>
>>>
>>
>>
>>
>> --
>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>> http://www.orbeon.com/
>> My Twitter: http://twitter.com/avernet
>>
>> --
>> 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
>
>
>
> --
> 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
>
>


--
Orbeon Forms - Web forms, open-source, for the Enterprise -
http://www.orbeon.com/
My Twitter: http://twitter.com/avernet


--
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
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: Re: Re: recursive XBL components?

Alessandro  Vernet
Administrator
In reply to this post by Jeremiah Jahn-4
Jeremiah,

Regarding the format, a single XForms file that contains the XBL is the best.

And regarding dealing with instances having an arbitrary level of
nesting, in general we use xforms:repeat to produce a UI that shows
the nesting but where the generated markup is itself is not nested, as
XForms doesn't allow you to do it, and we don't support it (yet!) the
way you did it with XBL. See:

http://wiki.orbeon.com/forms/how-to/edit-hierarchy

Alex

On Fri, Mar 26, 2010 at 3:43 PM, Jeremiah Jahn <[hidden email]> wrote:

> Just out of curiosity, is there some other common way to walk an  xml tree of unknown depth? I would have used some xsl for the recursion, but I can't seem to get my hands around the instance data with the xsl within the xbl component. It seems like only xforms can grab the instance data, while xsl is limited to the xforms elements themselves. It'd be great if there was some way to apply an xsl template to an instance.
>
>
> On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:
>
>> Jeremiah,
>>
>> I understand that in the implementation of dlcn:widget you have an
>> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
>> this is the case, and you get an error, it is most likely because this
>> has never been tried ;). Could you submit a simple component and test
>> case that shows this, so we can easily reproduce it?
>>
>> Alex
>>
>> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>>> I'm getting a out of memory error whenever I have one of my xbl components
>>> self reference or recurse. Is that not allowed? Or is there some trick to
>>> getting it to work?
>>>
>>> I have some xml that look like:
>>> <widget>
>>> <widget-item/>
>>> <widget-item/>
>>> <widget-item/>
>>> <widget>
>>> <widget-item/>
>>> <widget-item/>
>>> <widget>
>>> <widget-item/>
>>> <widget-item/>
>>> </widget>
>>> </widget>
>>> </widget>
>>>
>>> I have an xbl component that for the widget, and one for the widget-item
>>> the widget xbl look kind of like this:
>>> <xforms:repeat nodeset="*">
>>> <xforms:group ref=".[name() = 'widget']">
>>> <dlcn:widget ref="."/>
>>> </xforms:group>
>>> <xforms:group ref=".[name() = 'widget-item']">
>>> <dlcn:widget-item ref="."/>
>>> </xforms:group>
>>> </xforms:repeat>
>>>
>>>
>>> --
>>> 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
>>>
>>>
>>
>>
>>
>> --
>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>> http://www.orbeon.com/
>> My Twitter: http://twitter.com/avernet
>>
>> --
>> 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
>
>
>
> --
> 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
>
>


--
Orbeon Forms - Web forms, open-source, for the Enterprise -
http://www.orbeon.com/
My Twitter: http://twitter.com/avernet


--
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
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: Re: Re: Re: Re: Re: recursive XBL components? TEST CASE/REAL EXAMPLE

Jeremiah Jahn-4
In reply to this post by Alessandro Vernet






On Mar 31, 2010, at 1:27 PM, Alessandro Vernet wrote:

> Jeremiah,
>
> The easiest thing is to create a stand-alone XForms file that we can
> run in the XForms sandbox. You can embed the XBL in the XForms file,
> so there is just one file.
>
> Alex
>
> On Tue, Mar 30, 2010 at 7:31 PM, Jeremiah Jahn <[hidden email]> wrote:
>> I sure don't I wasn't quite sure how to package all of that up, so I wrote this to take any single node binding. My orbeon environment is a little different from the standard and has lot of other infrastructure built around it that makes it difficult to pull out a single  xhtml file. If you'll point me to an example of something I'll pack it up for you.
>>
>>
>> On Mar 30, 2010, at 7:13 PM, Alessandro Vernet wrote:
>>
>>> Jeremiah,
>>>
>>> Do you also have a test case for this? I.e. XForms that uses this XBL
>>> and shows the problem?
>>>
>>> Alex
>>>
>>> On Sat, Mar 27, 2010 at 8:22 AM, Jeremiah Jahn <[hidden email]> wrote:
>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>> <!--
>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>
>>>>
>>>>
>>>>     Give this component a single node binding and it will create xhtml:li
>>>> for all of it's attributes,
>>>>     and sub lists for all of it's children recusively.
>>>>
>>>>
>>>>
>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>
>>>>
>>>>
>>>>     it is just an example of something that SHOULD/WOULD BE NICE
>>>>
>>>>
>>>>
>>>>     /webapp/WEB-INF/resources/xbl/delcyon/tree-view/tree-view.xbl
>>>> -->
>>>> <xbl:xbl xmlns:xhtml="http://www.w3.org/1999/xhtml"
>>>>     xmlns:xforms="http://www.w3.org/2002/xforms"
>>>>     xmlns:xxforms="http://orbeon.org/oxf/xml/xforms"
>>>>     xmlns:xbl="http://www.w3.org/ns/xbl"
>>>>     xmlns:xxbl="http://orbeon.org/oxf/xml/xbl"
>>>>     xmlns:dlcn="http://www.delcyon.com/xbl">
>>>>
>>>>
>>>>
>>>>     <xbl:binding  element="dlcn|tree-view">
>>>>
>>>>
>>>>
>>>>         <xbl:resources>
>>>>             <xbl:style>
>>>>                 div.box
>>>>                 {
>>>>                     border-color: black;
>>>>                     border-width: 1px;
>>>>                     border-style: solid;
>>>>                     padding: 5px;
>>>>                 }
>>>>             </xbl:style>
>>>>         </xbl:resources>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>         <xbl:template>
>>>>             <xhtml:div class="box">
>>>>                 <xforms:group xbl:attr="ref" xxbl:scope="outer">
>>>>                     <!-- Start copying the variables over that we need -->
>>>>
>>>>
>>>>
>>>>                     <xxforms:variable name="data" xxbl:scope="inner" >
>>>>                         <xxforms:sequence select="." xxbl:scope="outer"/>
>>>>                     </xxforms:variable>
>>>>
>>>>
>>>>
>>>>                     <!-- end external variable copying -->
>>>>
>>>>
>>>>
>>>>                     <!-- START MAIN GROUP-->
>>>>                     <xforms:group xxbl:scope="inner">
>>>>                         <strong><xforms:output
>>>> value="$data/local-name()"/></strong>
>>>>                         <br/>
>>>>                         <xhtml:ul>
>>>>                             <!-- This will display all of the attributes in
>>>> this element -->
>>>>                             <xforms:repeat nodeset="$data/@*">
>>>>                                 <xhtml:li>
>>>>                                     <strong><xforms:output
>>>> value="local-name()"/>: </strong><xforms:output value="."/>
>>>>                                 </xhtml:li>
>>>>                             </xforms:repeat>
>>>>                             <!-- Repeat over each child node of the root
>>>> node -->
>>>>                             <xforms:repeat nodeset="$data/*">
>>>>                                 <xhtml:li>
>>>>
>>>>                                     <!-- if this element has children
>>>> recurse into it -->
>>>>                                     <dlcn:tree-view ref="."/>
>>>>                                 </xhtml:li>
>>>>                             </xforms:repeat>
>>>>                         </xhtml:ul>
>>>>                     </xforms:group>
>>>>                     <!-- END MAIN GROUP -->
>>>>
>>>>
>>>>
>>>>                 </xforms:group>
>>>>             </xhtml:div>
>>>>         </xbl:template>
>>>>
>>>>
>>>>
>>>>     </xbl:binding>
>>>> </xbl:xbl>
>>>>
>>>>
>>>>
>>>> On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:
>>>>
>>>> Jeremiah,
>>>>
>>>> I understand that in the implementation of dlcn:widget you have an
>>>> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
>>>> this is the case, and you get an error, it is most likely because this
>>>> has never been tried ;). Could you submit a simple component and test
>>>> case that shows this, so we can easily reproduce it?
>>>>
>>>> Alex
>>>>
>>>> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>>>>
>>>> I'm getting a out of memory error whenever I have one of my xbl components
>>>>
>>>> self reference or recurse. Is that not allowed? Or is there some trick to
>>>>
>>>> getting it to work?
>>>>
>>>> I have some xml that look like:
>>>>
>>>> <widget>
>>>>
>>>> <widget-item/>
>>>>
>>>> <widget-item/>
>>>>
>>>> <widget-item/>
>>>>
>>>> <widget>
>>>>
>>>> <widget-item/>
>>>>
>>>> <widget-item/>
>>>>
>>>> <widget>
>>>>
>>>> <widget-item/>
>>>>
>>>> <widget-item/>
>>>>
>>>> </widget>
>>>>
>>>> </widget>
>>>>
>>>> </widget>
>>>>
>>>> I have an xbl component that for the widget, and one for the widget-item
>>>>
>>>> the widget xbl look kind of like this:
>>>>
>>>> <xforms:repeat nodeset="*">
>>>>
>>>> <xforms:group ref=".[name() = 'widget']">
>>>>
>>>> <dlcn:widget ref="."/>
>>>>
>>>> </xforms:group>
>>>>
>>>> <xforms:group ref=".[name() = 'widget-item']">
>>>>
>>>> <dlcn:widget-item ref="."/>
>>>>
>>>> </xforms:group>
>>>>
>>>> </xforms:repeat>
>>>>
>>>>
>>>> --
>>>>
>>>> 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
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>> http://www.orbeon.com/
>>>> My Twitter: http://twitter.com/avernet
>>>>
>>>> --
>>>> 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
>>>>
>>>>
>>>>
>>>> --
>>>> 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
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>> http://www.orbeon.com/
>>> My Twitter: http://twitter.com/avernet
>>>
>>> --
>>> 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
>>
>>
>>
>> --
>> 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
>>
>>
>
>
>
> --
> Orbeon Forms - Web forms, open-source, for the Enterprise -
> http://www.orbeon.com/
> My Twitter: http://twitter.com/avernet
>
> --
> 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


--
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

test.xhtml (3K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Re: Re: Re: Re: Re: Re: recursive XBL components? TEST CASE/REAL EXAMPLE

Alessandro  Vernet
Administrator
Jeremiah,

I am not sure if you intended to post a follow-up on this thread or
not, but the last message you send arrived empty (with just a quote of
the previous message).

Alex

On Sat, Apr 10, 2010 at 7:16 AM, Jeremiah Jahn <[hidden email]> wrote:

>
>
>
>
>
>
> On Mar 31, 2010, at 1:27 PM, Alessandro Vernet wrote:
>
>> Jeremiah,
>>
>> The easiest thing is to create a stand-alone XForms file that we can
>> run in the XForms sandbox. You can embed the XBL in the XForms file,
>> so there is just one file.
>>
>> Alex
>>
>> On Tue, Mar 30, 2010 at 7:31 PM, Jeremiah Jahn <[hidden email]> wrote:
>>> I sure don't I wasn't quite sure how to package all of that up, so I wrote this to take any single node binding. My orbeon environment is a little different from the standard and has lot of other infrastructure built around it that makes it difficult to pull out a single  xhtml file. If you'll point me to an example of something I'll pack it up for you.
>>>
>>>
>>> On Mar 30, 2010, at 7:13 PM, Alessandro Vernet wrote:
>>>
>>>> Jeremiah,
>>>>
>>>> Do you also have a test case for this? I.e. XForms that uses this XBL
>>>> and shows the problem?
>>>>
>>>> Alex
>>>>
>>>> On Sat, Mar 27, 2010 at 8:22 AM, Jeremiah Jahn <[hidden email]> wrote:
>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>> <!--
>>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>>
>>>>>
>>>>>
>>>>>     Give this component a single node binding and it will create xhtml:li
>>>>> for all of it's attributes,
>>>>>     and sub lists for all of it's children recusively.
>>>>>
>>>>>
>>>>>
>>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>>
>>>>>
>>>>>
>>>>>     it is just an example of something that SHOULD/WOULD BE NICE
>>>>>
>>>>>
>>>>>
>>>>>     /webapp/WEB-INF/resources/xbl/delcyon/tree-view/tree-view.xbl
>>>>> -->
>>>>> <xbl:xbl xmlns:xhtml="http://www.w3.org/1999/xhtml"
>>>>>     xmlns:xforms="http://www.w3.org/2002/xforms"
>>>>>     xmlns:xxforms="http://orbeon.org/oxf/xml/xforms"
>>>>>     xmlns:xbl="http://www.w3.org/ns/xbl"
>>>>>     xmlns:xxbl="http://orbeon.org/oxf/xml/xbl"
>>>>>     xmlns:dlcn="http://www.delcyon.com/xbl">
>>>>>
>>>>>
>>>>>
>>>>>     <xbl:binding  element="dlcn|tree-view">
>>>>>
>>>>>
>>>>>
>>>>>         <xbl:resources>
>>>>>             <xbl:style>
>>>>>                 div.box
>>>>>                 {
>>>>>                     border-color: black;
>>>>>                     border-width: 1px;
>>>>>                     border-style: solid;
>>>>>                     padding: 5px;
>>>>>                 }
>>>>>             </xbl:style>
>>>>>         </xbl:resources>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>         <xbl:template>
>>>>>             <xhtml:div class="box">
>>>>>                 <xforms:group xbl:attr="ref" xxbl:scope="outer">
>>>>>                     <!-- Start copying the variables over that we need -->
>>>>>
>>>>>
>>>>>
>>>>>                     <xxforms:variable name="data" xxbl:scope="inner" >
>>>>>                         <xxforms:sequence select="." xxbl:scope="outer"/>
>>>>>                     </xxforms:variable>
>>>>>
>>>>>
>>>>>
>>>>>                     <!-- end external variable copying -->
>>>>>
>>>>>
>>>>>
>>>>>                     <!-- START MAIN GROUP-->
>>>>>                     <xforms:group xxbl:scope="inner">
>>>>>                         <strong><xforms:output
>>>>> value="$data/local-name()"/></strong>
>>>>>                         <br/>
>>>>>                         <xhtml:ul>
>>>>>                             <!-- This will display all of the attributes in
>>>>> this element -->
>>>>>                             <xforms:repeat nodeset="$data/@*">
>>>>>                                 <xhtml:li>
>>>>>                                     <strong><xforms:output
>>>>> value="local-name()"/>: </strong><xforms:output value="."/>
>>>>>                                 </xhtml:li>
>>>>>                             </xforms:repeat>
>>>>>                             <!-- Repeat over each child node of the root
>>>>> node -->
>>>>>                             <xforms:repeat nodeset="$data/*">
>>>>>                                 <xhtml:li>
>>>>>
>>>>>                                     <!-- if this element has children
>>>>> recurse into it -->
>>>>>                                     <dlcn:tree-view ref="."/>
>>>>>                                 </xhtml:li>
>>>>>                             </xforms:repeat>
>>>>>                         </xhtml:ul>
>>>>>                     </xforms:group>
>>>>>                     <!-- END MAIN GROUP -->
>>>>>
>>>>>
>>>>>
>>>>>                 </xforms:group>
>>>>>             </xhtml:div>
>>>>>         </xbl:template>
>>>>>
>>>>>
>>>>>
>>>>>     </xbl:binding>
>>>>> </xbl:xbl>
>>>>>
>>>>>
>>>>>
>>>>> On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:
>>>>>
>>>>> Jeremiah,
>>>>>
>>>>> I understand that in the implementation of dlcn:widget you have an
>>>>> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
>>>>> this is the case, and you get an error, it is most likely because this
>>>>> has never been tried ;). Could you submit a simple component and test
>>>>> case that shows this, so we can easily reproduce it?
>>>>>
>>>>> Alex
>>>>>
>>>>> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>
>>>>> I'm getting a out of memory error whenever I have one of my xbl components
>>>>>
>>>>> self reference or recurse. Is that not allowed? Or is there some trick to
>>>>>
>>>>> getting it to work?
>>>>>
>>>>> I have some xml that look like:
>>>>>
>>>>> <widget>
>>>>>
>>>>> <widget-item/>
>>>>>
>>>>> <widget-item/>
>>>>>
>>>>> <widget-item/>
>>>>>
>>>>> <widget>
>>>>>
>>>>> <widget-item/>
>>>>>
>>>>> <widget-item/>
>>>>>
>>>>> <widget>
>>>>>
>>>>> <widget-item/>
>>>>>
>>>>> <widget-item/>
>>>>>
>>>>> </widget>
>>>>>
>>>>> </widget>
>>>>>
>>>>> </widget>
>>>>>
>>>>> I have an xbl component that for the widget, and one for the widget-item
>>>>>
>>>>> the widget xbl look kind of like this:
>>>>>
>>>>> <xforms:repeat nodeset="*">
>>>>>
>>>>> <xforms:group ref=".[name() = 'widget']">
>>>>>
>>>>> <dlcn:widget ref="."/>
>>>>>
>>>>> </xforms:group>
>>>>>
>>>>> <xforms:group ref=".[name() = 'widget-item']">
>>>>>
>>>>> <dlcn:widget-item ref="."/>
>>>>>
>>>>> </xforms:group>
>>>>>
>>>>> </xforms:repeat>
>>>>>
>>>>>
>>>>> --
>>>>>
>>>>> 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
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>>> http://www.orbeon.com/
>>>>> My Twitter: http://twitter.com/avernet
>>>>>
>>>>> --
>>>>> 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
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> 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
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>> http://www.orbeon.com/
>>>> My Twitter: http://twitter.com/avernet
>>>>
>>>> --
>>>> 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
>>>
>>>
>>>
>>> --
>>> 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
>>>
>>>
>>
>>
>>
>> --
>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>> http://www.orbeon.com/
>> My Twitter: http://twitter.com/avernet
>>
>> --
>> 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
>
>
>
> --
> 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
>
>


--
Orbeon Forms - Web forms, open-source, for the Enterprise -
http://www.orbeon.com/
My Twitter: http://twitter.com/avernet


--
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
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: Re: Re: Re: Re: Re: Re: Re: recursive XBL components? TEST CASE/REAL EXAMPLE

Jeremiah Jahn-4
it should have had an attachment.  I've sent it again. I've run this in the sandbox, and the result was the same heap space error.






On Apr 12, 2010, at 6:58 PM, Alessandro Vernet wrote:

> Jeremiah,
>
> I am not sure if you intended to post a follow-up on this thread or
> not, but the last message you send arrived empty (with just a quote of
> the previous message).
>
> Alex
>
> On Sat, Apr 10, 2010 at 7:16 AM, Jeremiah Jahn <[hidden email]> wrote:
>>
>>
>>
>>
>>
>>
>> On Mar 31, 2010, at 1:27 PM, Alessandro Vernet wrote:
>>
>>> Jeremiah,
>>>
>>> The easiest thing is to create a stand-alone XForms file that we can
>>> run in the XForms sandbox. You can embed the XBL in the XForms file,
>>> so there is just one file.
>>>
>>> Alex
>>>
>>> On Tue, Mar 30, 2010 at 7:31 PM, Jeremiah Jahn <[hidden email]> wrote:
>>>> I sure don't I wasn't quite sure how to package all of that up, so I wrote this to take any single node binding. My orbeon environment is a little different from the standard and has lot of other infrastructure built around it that makes it difficult to pull out a single  xhtml file. If you'll point me to an example of something I'll pack it up for you.
>>>>
>>>>
>>>> On Mar 30, 2010, at 7:13 PM, Alessandro Vernet wrote:
>>>>
>>>>> Jeremiah,
>>>>>
>>>>> Do you also have a test case for this? I.e. XForms that uses this XBL
>>>>> and shows the problem?
>>>>>
>>>>> Alex
>>>>>
>>>>> On Sat, Mar 27, 2010 at 8:22 AM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>>> <!--
>>>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>>>
>>>>>>
>>>>>>
>>>>>>     Give this component a single node binding and it will create xhtml:li
>>>>>> for all of it's attributes,
>>>>>>     and sub lists for all of it's children recusively.
>>>>>>
>>>>>>
>>>>>>
>>>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>>>
>>>>>>
>>>>>>
>>>>>>     it is just an example of something that SHOULD/WOULD BE NICE
>>>>>>
>>>>>>
>>>>>>
>>>>>>     /webapp/WEB-INF/resources/xbl/delcyon/tree-view/tree-view.xbl
>>>>>> -->
>>>>>> <xbl:xbl xmlns:xhtml="http://www.w3.org/1999/xhtml"
>>>>>>     xmlns:xforms="http://www.w3.org/2002/xforms"
>>>>>>     xmlns:xxforms="http://orbeon.org/oxf/xml/xforms"
>>>>>>     xmlns:xbl="http://www.w3.org/ns/xbl"
>>>>>>     xmlns:xxbl="http://orbeon.org/oxf/xml/xbl"
>>>>>>     xmlns:dlcn="http://www.delcyon.com/xbl">
>>>>>>
>>>>>>
>>>>>>
>>>>>>     <xbl:binding  element="dlcn|tree-view">
>>>>>>
>>>>>>
>>>>>>
>>>>>>         <xbl:resources>
>>>>>>             <xbl:style>
>>>>>>                 div.box
>>>>>>                 {
>>>>>>                     border-color: black;
>>>>>>                     border-width: 1px;
>>>>>>                     border-style: solid;
>>>>>>                     padding: 5px;
>>>>>>                 }
>>>>>>             </xbl:style>
>>>>>>         </xbl:resources>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>         <xbl:template>
>>>>>>             <xhtml:div class="box">
>>>>>>                 <xforms:group xbl:attr="ref" xxbl:scope="outer">
>>>>>>                     <!-- Start copying the variables over that we need -->
>>>>>>
>>>>>>
>>>>>>
>>>>>>                     <xxforms:variable name="data" xxbl:scope="inner" >
>>>>>>                         <xxforms:sequence select="." xxbl:scope="outer"/>
>>>>>>                     </xxforms:variable>
>>>>>>
>>>>>>
>>>>>>
>>>>>>                     <!-- end external variable copying -->
>>>>>>
>>>>>>
>>>>>>
>>>>>>                     <!-- START MAIN GROUP-->
>>>>>>                     <xforms:group xxbl:scope="inner">
>>>>>>                         <strong><xforms:output
>>>>>> value="$data/local-name()"/></strong>
>>>>>>                         <br/>
>>>>>>                         <xhtml:ul>
>>>>>>                             <!-- This will display all of the attributes in
>>>>>> this element -->
>>>>>>                             <xforms:repeat nodeset="$data/@*">
>>>>>>                                 <xhtml:li>
>>>>>>                                     <strong><xforms:output
>>>>>> value="local-name()"/>: </strong><xforms:output value="."/>
>>>>>>                                 </xhtml:li>
>>>>>>                             </xforms:repeat>
>>>>>>                             <!-- Repeat over each child node of the root
>>>>>> node -->
>>>>>>                             <xforms:repeat nodeset="$data/*">
>>>>>>                                 <xhtml:li>
>>>>>>
>>>>>>                                     <!-- if this element has children
>>>>>> recurse into it -->
>>>>>>                                     <dlcn:tree-view ref="."/>
>>>>>>                                 </xhtml:li>
>>>>>>                             </xforms:repeat>
>>>>>>                         </xhtml:ul>
>>>>>>                     </xforms:group>
>>>>>>                     <!-- END MAIN GROUP -->
>>>>>>
>>>>>>
>>>>>>
>>>>>>                 </xforms:group>
>>>>>>             </xhtml:div>
>>>>>>         </xbl:template>
>>>>>>
>>>>>>
>>>>>>
>>>>>>     </xbl:binding>
>>>>>> </xbl:xbl>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:
>>>>>>
>>>>>> Jeremiah,
>>>>>>
>>>>>> I understand that in the implementation of dlcn:widget you have an
>>>>>> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
>>>>>> this is the case, and you get an error, it is most likely because this
>>>>>> has never been tried ;). Could you submit a simple component and test
>>>>>> case that shows this, so we can easily reproduce it?
>>>>>>
>>>>>> Alex
>>>>>>
>>>>>> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>>
>>>>>> I'm getting a out of memory error whenever I have one of my xbl components
>>>>>>
>>>>>> self reference or recurse. Is that not allowed? Or is there some trick to
>>>>>>
>>>>>> getting it to work?
>>>>>>
>>>>>> I have some xml that look like:
>>>>>>
>>>>>> <widget>
>>>>>>
>>>>>> <widget-item/>
>>>>>>
>>>>>> <widget-item/>
>>>>>>
>>>>>> <widget-item/>
>>>>>>
>>>>>> <widget>
>>>>>>
>>>>>> <widget-item/>
>>>>>>
>>>>>> <widget-item/>
>>>>>>
>>>>>> <widget>
>>>>>>
>>>>>> <widget-item/>
>>>>>>
>>>>>> <widget-item/>
>>>>>>
>>>>>> </widget>
>>>>>>
>>>>>> </widget>
>>>>>>
>>>>>> </widget>
>>>>>>
>>>>>> I have an xbl component that for the widget, and one for the widget-item
>>>>>>
>>>>>> the widget xbl look kind of like this:
>>>>>>
>>>>>> <xforms:repeat nodeset="*">
>>>>>>
>>>>>> <xforms:group ref=".[name() = 'widget']">
>>>>>>
>>>>>> <dlcn:widget ref="."/>
>>>>>>
>>>>>> </xforms:group>
>>>>>>
>>>>>> <xforms:group ref=".[name() = 'widget-item']">
>>>>>>
>>>>>> <dlcn:widget-item ref="."/>
>>>>>>
>>>>>> </xforms:group>
>>>>>>
>>>>>> </xforms:repeat>
>>>>>>
>>>>>>
>>>>>> --
>>>>>>
>>>>>> 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
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>>>> http://www.orbeon.com/
>>>>>> My Twitter: http://twitter.com/avernet
>>>>>>
>>>>>> --
>>>>>> 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
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> 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
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>>> http://www.orbeon.com/
>>>>> My Twitter: http://twitter.com/avernet
>>>>>
>>>>> --
>>>>> 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
>>>>
>>>>
>>>>
>>>> --
>>>> 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
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>> http://www.orbeon.com/
>>> My Twitter: http://twitter.com/avernet
>>>
>>> --
>>> 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
>>
>>
>>
>> --
>> 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
>>
>>
>
>
>
> --
> Orbeon Forms - Web forms, open-source, for the Enterprise -
> http://www.orbeon.com/
> My Twitter: http://twitter.com/avernet
>
> --
> 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


--
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

test.xhtml (3K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Re: Re: Re: Re: Re: Re: Re: Re: recursive XBL components? TEST CASE/REAL EXAMPLE

Alessandro  Vernet
Administrator
Jeremiah,

I was able to reproduce it with your example, and I created a bug to
track this (link below). Using XBL this way is a smart idea, but we're
most likely not going to implement the support for recursive XBL
component in the short term, unless this gets sponsored by a client.

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

Alex

On Mon, Apr 12, 2010 at 11:24 PM, Jeremiah Jahn <[hidden email]> wrote:

> it should have had an attachment.  I've sent it again. I've run this in the sandbox, and the result was the same heap space error.
>
>
>
>
>
>
> On Apr 12, 2010, at 6:58 PM, Alessandro Vernet wrote:
>
>> Jeremiah,
>>
>> I am not sure if you intended to post a follow-up on this thread or
>> not, but the last message you send arrived empty (with just a quote of
>> the previous message).
>>
>> Alex
>>
>> On Sat, Apr 10, 2010 at 7:16 AM, Jeremiah Jahn <[hidden email]> wrote:
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Mar 31, 2010, at 1:27 PM, Alessandro Vernet wrote:
>>>
>>>> Jeremiah,
>>>>
>>>> The easiest thing is to create a stand-alone XForms file that we can
>>>> run in the XForms sandbox. You can embed the XBL in the XForms file,
>>>> so there is just one file.
>>>>
>>>> Alex
>>>>
>>>> On Tue, Mar 30, 2010 at 7:31 PM, Jeremiah Jahn <[hidden email]> wrote:
>>>>> I sure don't I wasn't quite sure how to package all of that up, so I wrote this to take any single node binding. My orbeon environment is a little different from the standard and has lot of other infrastructure built around it that makes it difficult to pull out a single  xhtml file. If you'll point me to an example of something I'll pack it up for you.
>>>>>
>>>>>
>>>>> On Mar 30, 2010, at 7:13 PM, Alessandro Vernet wrote:
>>>>>
>>>>>> Jeremiah,
>>>>>>
>>>>>> Do you also have a test case for this? I.e. XForms that uses this XBL
>>>>>> and shows the problem?
>>>>>>
>>>>>> Alex
>>>>>>
>>>>>> On Sat, Mar 27, 2010 at 8:22 AM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>>>> <!--
>>>>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>     Give this component a single node binding and it will create xhtml:li
>>>>>>> for all of it's attributes,
>>>>>>>     and sub lists for all of it's children recusively.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>     it is just an example of something that SHOULD/WOULD BE NICE
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>     /webapp/WEB-INF/resources/xbl/delcyon/tree-view/tree-view.xbl
>>>>>>> -->
>>>>>>> <xbl:xbl xmlns:xhtml="http://www.w3.org/1999/xhtml"
>>>>>>>     xmlns:xforms="http://www.w3.org/2002/xforms"
>>>>>>>     xmlns:xxforms="http://orbeon.org/oxf/xml/xforms"
>>>>>>>     xmlns:xbl="http://www.w3.org/ns/xbl"
>>>>>>>     xmlns:xxbl="http://orbeon.org/oxf/xml/xbl"
>>>>>>>     xmlns:dlcn="http://www.delcyon.com/xbl">
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>     <xbl:binding  element="dlcn|tree-view">
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>         <xbl:resources>
>>>>>>>             <xbl:style>
>>>>>>>                 div.box
>>>>>>>                 {
>>>>>>>                     border-color: black;
>>>>>>>                     border-width: 1px;
>>>>>>>                     border-style: solid;
>>>>>>>                     padding: 5px;
>>>>>>>                 }
>>>>>>>             </xbl:style>
>>>>>>>         </xbl:resources>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>         <xbl:template>
>>>>>>>             <xhtml:div class="box">
>>>>>>>                 <xforms:group xbl:attr="ref" xxbl:scope="outer">
>>>>>>>                     <!-- Start copying the variables over that we need -->
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>                     <xxforms:variable name="data" xxbl:scope="inner" >
>>>>>>>                         <xxforms:sequence select="." xxbl:scope="outer"/>
>>>>>>>                     </xxforms:variable>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>                     <!-- end external variable copying -->
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>                     <!-- START MAIN GROUP-->
>>>>>>>                     <xforms:group xxbl:scope="inner">
>>>>>>>                         <strong><xforms:output
>>>>>>> value="$data/local-name()"/></strong>
>>>>>>>                         <br/>
>>>>>>>                         <xhtml:ul>
>>>>>>>                             <!-- This will display all of the attributes in
>>>>>>> this element -->
>>>>>>>                             <xforms:repeat nodeset="$data/@*">
>>>>>>>                                 <xhtml:li>
>>>>>>>                                     <strong><xforms:output
>>>>>>> value="local-name()"/>: </strong><xforms:output value="."/>
>>>>>>>                                 </xhtml:li>
>>>>>>>                             </xforms:repeat>
>>>>>>>                             <!-- Repeat over each child node of the root
>>>>>>> node -->
>>>>>>>                             <xforms:repeat nodeset="$data/*">
>>>>>>>                                 <xhtml:li>
>>>>>>>
>>>>>>>                                     <!-- if this element has children
>>>>>>> recurse into it -->
>>>>>>>                                     <dlcn:tree-view ref="."/>
>>>>>>>                                 </xhtml:li>
>>>>>>>                             </xforms:repeat>
>>>>>>>                         </xhtml:ul>
>>>>>>>                     </xforms:group>
>>>>>>>                     <!-- END MAIN GROUP -->
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>                 </xforms:group>
>>>>>>>             </xhtml:div>
>>>>>>>         </xbl:template>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>     </xbl:binding>
>>>>>>> </xbl:xbl>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:
>>>>>>>
>>>>>>> Jeremiah,
>>>>>>>
>>>>>>> I understand that in the implementation of dlcn:widget you have an
>>>>>>> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
>>>>>>> this is the case, and you get an error, it is most likely because this
>>>>>>> has never been tried ;). Could you submit a simple component and test
>>>>>>> case that shows this, so we can easily reproduce it?
>>>>>>>
>>>>>>> Alex
>>>>>>>
>>>>>>> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>>>
>>>>>>> I'm getting a out of memory error whenever I have one of my xbl components
>>>>>>>
>>>>>>> self reference or recurse. Is that not allowed? Or is there some trick to
>>>>>>>
>>>>>>> getting it to work?
>>>>>>>
>>>>>>> I have some xml that look like:
>>>>>>>
>>>>>>> <widget>
>>>>>>>
>>>>>>> <widget-item/>
>>>>>>>
>>>>>>> <widget-item/>
>>>>>>>
>>>>>>> <widget-item/>
>>>>>>>
>>>>>>> <widget>
>>>>>>>
>>>>>>> <widget-item/>
>>>>>>>
>>>>>>> <widget-item/>
>>>>>>>
>>>>>>> <widget>
>>>>>>>
>>>>>>> <widget-item/>
>>>>>>>
>>>>>>> <widget-item/>
>>>>>>>
>>>>>>> </widget>
>>>>>>>
>>>>>>> </widget>
>>>>>>>
>>>>>>> </widget>
>>>>>>>
>>>>>>> I have an xbl component that for the widget, and one for the widget-item
>>>>>>>
>>>>>>> the widget xbl look kind of like this:
>>>>>>>
>>>>>>> <xforms:repeat nodeset="*">
>>>>>>>
>>>>>>> <xforms:group ref=".[name() = 'widget']">
>>>>>>>
>>>>>>> <dlcn:widget ref="."/>
>>>>>>>
>>>>>>> </xforms:group>
>>>>>>>
>>>>>>> <xforms:group ref=".[name() = 'widget-item']">
>>>>>>>
>>>>>>> <dlcn:widget-item ref="."/>
>>>>>>>
>>>>>>> </xforms:group>
>>>>>>>
>>>>>>> </xforms:repeat>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>>
>>>>>>> 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
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>>>>> http://www.orbeon.com/
>>>>>>> My Twitter: http://twitter.com/avernet
>>>>>>>
>>>>>>> --
>>>>>>> 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
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> 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
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>>>> http://www.orbeon.com/
>>>>>> My Twitter: http://twitter.com/avernet
>>>>>>
>>>>>> --
>>>>>> 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
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> 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
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>> http://www.orbeon.com/
>>>> My Twitter: http://twitter.com/avernet
>>>>
>>>> --
>>>> 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
>>>
>>>
>>>
>>> --
>>> 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
>>>
>>>
>>
>>
>>
>> --
>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>> http://www.orbeon.com/
>> My Twitter: http://twitter.com/avernet
>>
>> --
>> 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
>
>
>
> --
> 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
>
>


--
Orbeon Forms - Web forms, open-source, for the Enterprise -
http://www.orbeon.com/
My Twitter: http://twitter.com/avernet


--
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
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: Re: recursive XBL components? TEST CASE/REAL EXAMPLE

Jeremiah Jahn-4
I understand. Would you mind giving me a pointer to place in the code where this is most likely occurring. Not saying I've got the time to do anything about it, but I'm curious to see whats going on.  
On Apr 16, 2010, at 8:12 PM, Alessandro Vernet wrote:

> Jeremiah,
>
> I was able to reproduce it with your example, and I created a bug to
> track this (link below). Using XBL this way is a smart idea, but we're
> most likely not going to implement the support for recursive XBL
> component in the short term, unless this gets sponsored by a client.
>
> http://forge.ow2.org/tracker/index.php?func=detail&aid=314931&group_id=168&atid=350207
>
> Alex
>
> On Mon, Apr 12, 2010 at 11:24 PM, Jeremiah Jahn <[hidden email]> wrote:
>> it should have had an attachment.  I've sent it again. I've run this in the sandbox, and the result was the same heap space error.
>>
>>
>>
>>
>>
>>
>> On Apr 12, 2010, at 6:58 PM, Alessandro Vernet wrote:
>>
>>> Jeremiah,
>>>
>>> I am not sure if you intended to post a follow-up on this thread or
>>> not, but the last message you send arrived empty (with just a quote of
>>> the previous message).
>>>
>>> Alex
>>>
>>> On Sat, Apr 10, 2010 at 7:16 AM, Jeremiah Jahn <[hidden email]> wrote:
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Mar 31, 2010, at 1:27 PM, Alessandro Vernet wrote:
>>>>
>>>>> Jeremiah,
>>>>>
>>>>> The easiest thing is to create a stand-alone XForms file that we can
>>>>> run in the XForms sandbox. You can embed the XBL in the XForms file,
>>>>> so there is just one file.
>>>>>
>>>>> Alex
>>>>>
>>>>> On Tue, Mar 30, 2010 at 7:31 PM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>> I sure don't I wasn't quite sure how to package all of that up, so I wrote this to take any single node binding. My orbeon environment is a little different from the standard and has lot of other infrastructure built around it that makes it difficult to pull out a single  xhtml file. If you'll point me to an example of something I'll pack it up for you.
>>>>>>
>>>>>>
>>>>>> On Mar 30, 2010, at 7:13 PM, Alessandro Vernet wrote:
>>>>>>
>>>>>>> Jeremiah,
>>>>>>>
>>>>>>> Do you also have a test case for this? I.e. XForms that uses this XBL
>>>>>>> and shows the problem?
>>>>>>>
>>>>>>> Alex
>>>>>>>
>>>>>>> On Sat, Mar 27, 2010 at 8:22 AM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>>>>> <!--
>>>>>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>     Give this component a single node binding and it will create xhtml:li
>>>>>>>> for all of it's attributes,
>>>>>>>>     and sub lists for all of it's children recusively.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>     it is just an example of something that SHOULD/WOULD BE NICE
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>     /webapp/WEB-INF/resources/xbl/delcyon/tree-view/tree-view.xbl
>>>>>>>> -->
>>>>>>>> <xbl:xbl xmlns:xhtml="http://www.w3.org/1999/xhtml"
>>>>>>>>     xmlns:xforms="http://www.w3.org/2002/xforms"
>>>>>>>>     xmlns:xxforms="http://orbeon.org/oxf/xml/xforms"
>>>>>>>>     xmlns:xbl="http://www.w3.org/ns/xbl"
>>>>>>>>     xmlns:xxbl="http://orbeon.org/oxf/xml/xbl"
>>>>>>>>     xmlns:dlcn="http://www.delcyon.com/xbl">
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>     <xbl:binding  element="dlcn|tree-view">
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>         <xbl:resources>
>>>>>>>>             <xbl:style>
>>>>>>>>                 div.box
>>>>>>>>                 {
>>>>>>>>                     border-color: black;
>>>>>>>>                     border-width: 1px;
>>>>>>>>                     border-style: solid;
>>>>>>>>                     padding: 5px;
>>>>>>>>                 }
>>>>>>>>             </xbl:style>
>>>>>>>>         </xbl:resources>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>         <xbl:template>
>>>>>>>>             <xhtml:div class="box">
>>>>>>>>                 <xforms:group xbl:attr="ref" xxbl:scope="outer">
>>>>>>>>                     <!-- Start copying the variables over that we need -->
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>                     <xxforms:variable name="data" xxbl:scope="inner" >
>>>>>>>>                         <xxforms:sequence select="." xxbl:scope="outer"/>
>>>>>>>>                     </xxforms:variable>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>                     <!-- end external variable copying -->
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>                     <!-- START MAIN GROUP-->
>>>>>>>>                     <xforms:group xxbl:scope="inner">
>>>>>>>>                         <strong><xforms:output
>>>>>>>> value="$data/local-name()"/></strong>
>>>>>>>>                         <br/>
>>>>>>>>                         <xhtml:ul>
>>>>>>>>                             <!-- This will display all of the attributes in
>>>>>>>> this element -->
>>>>>>>>                             <xforms:repeat nodeset="$data/@*">
>>>>>>>>                                 <xhtml:li>
>>>>>>>>                                     <strong><xforms:output
>>>>>>>> value="local-name()"/>: </strong><xforms:output value="."/>
>>>>>>>>                                 </xhtml:li>
>>>>>>>>                             </xforms:repeat>
>>>>>>>>                             <!-- Repeat over each child node of the root
>>>>>>>> node -->
>>>>>>>>                             <xforms:repeat nodeset="$data/*">
>>>>>>>>                                 <xhtml:li>
>>>>>>>>
>>>>>>>>                                     <!-- if this element has children
>>>>>>>> recurse into it -->
>>>>>>>>                                     <dlcn:tree-view ref="."/>
>>>>>>>>                                 </xhtml:li>
>>>>>>>>                             </xforms:repeat>
>>>>>>>>                         </xhtml:ul>
>>>>>>>>                     </xforms:group>
>>>>>>>>                     <!-- END MAIN GROUP -->
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>                 </xforms:group>
>>>>>>>>             </xhtml:div>
>>>>>>>>         </xbl:template>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>     </xbl:binding>
>>>>>>>> </xbl:xbl>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:
>>>>>>>>
>>>>>>>> Jeremiah,
>>>>>>>>
>>>>>>>> I understand that in the implementation of dlcn:widget you have an
>>>>>>>> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
>>>>>>>> this is the case, and you get an error, it is most likely because this
>>>>>>>> has never been tried ;). Could you submit a simple component and test
>>>>>>>> case that shows this, so we can easily reproduce it?
>>>>>>>>
>>>>>>>> Alex
>>>>>>>>
>>>>>>>> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>>>>
>>>>>>>> I'm getting a out of memory error whenever I have one of my xbl components
>>>>>>>>
>>>>>>>> self reference or recurse. Is that not allowed? Or is there some trick to
>>>>>>>>
>>>>>>>> getting it to work?
>>>>>>>>
>>>>>>>> I have some xml that look like:
>>>>>>>>
>>>>>>>> <widget>
>>>>>>>>
>>>>>>>> <widget-item/>
>>>>>>>>
>>>>>>>> <widget-item/>
>>>>>>>>
>>>>>>>> <widget-item/>
>>>>>>>>
>>>>>>>> <widget>
>>>>>>>>
>>>>>>>> <widget-item/>
>>>>>>>>
>>>>>>>> <widget-item/>
>>>>>>>>
>>>>>>>> <widget>
>>>>>>>>
>>>>>>>> <widget-item/>
>>>>>>>>
>>>>>>>> <widget-item/>
>>>>>>>>
>>>>>>>> </widget>
>>>>>>>>
>>>>>>>> </widget>
>>>>>>>>
>>>>>>>> </widget>
>>>>>>>>
>>>>>>>> I have an xbl component that for the widget, and one for the widget-item
>>>>>>>>
>>>>>>>> the widget xbl look kind of like this:
>>>>>>>>
>>>>>>>> <xforms:repeat nodeset="*">
>>>>>>>>
>>>>>>>> <xforms:group ref=".[name() = 'widget']">
>>>>>>>>
>>>>>>>> <dlcn:widget ref="."/>
>>>>>>>>
>>>>>>>> </xforms:group>
>>>>>>>>
>>>>>>>> <xforms:group ref=".[name() = 'widget-item']">
>>>>>>>>
>>>>>>>> <dlcn:widget-item ref="."/>
>>>>>>>>
>>>>>>>> </xforms:group>
>>>>>>>>
>>>>>>>> </xforms:repeat>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>>
>>>>>>>> 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
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>>>>>> http://www.orbeon.com/
>>>>>>>> My Twitter: http://twitter.com/avernet
>>>>>>>>
>>>>>>>> --
>>>>>>>> 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
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> 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
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>>>>> http://www.orbeon.com/
>>>>>>> My Twitter: http://twitter.com/avernet
>>>>>>>
>>>>>>> --
>>>>>>> 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
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> 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
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>>> http://www.orbeon.com/
>>>>> My Twitter: http://twitter.com/avernet
>>>>>
>>>>> --
>>>>> 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
>>>>
>>>>
>>>>
>>>> --
>>>> 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
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>> http://www.orbeon.com/
>>> My Twitter: http://twitter.com/avernet
>>>
>>> --
>>> 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
>>
>>
>>
>> --
>> 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
>>
>>
>
>
>
> --
> Orbeon Forms - Web forms, open-source, for the Enterprise -
> http://www.orbeon.com/
> My Twitter: http://twitter.com/avernet
>
> --
> 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


--
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: Re: Re: recursive XBL components? TEST CASE/REAL EXAMPLE

Erik Bruchez-3
Jermiah,

The issue (or the feature ;) is that XBL templates are applied
statically, before XForms processing proper even starts.

Processing starts with the initial XHTML+XForms document:

* any element with XBL binding (say <foo:bar>) is then processed
** a shadow document is created from xbl:template (applying
xxbl:transform, xbl:content, xbl:attr, etc.)
** processing of the resulting shadow document starts recursively

So if your XBL template for <foo:bar> keeps recursively producing
<foo:bar> elements, recursion never ends.

To stop recursion, possibilities include:

* having a condition in the template to stop recursion
** this means stop producing <foo:bar>
** this will work only if the recursive structure can be statically
determined before XForms processing starts
* support dynamic alterations to the XHTML+XForms DOM, i.e. you could
dynamically insert <foo:bar> elements during XForms processing
** this is harder to implement

Not sure how much that helps!

-Erik

On Sat, Apr 17, 2010 at 7:09 AM, Jeremiah Jahn <[hidden email]> wrote:

> I understand. Would you mind giving me a pointer to place in the code where this is most likely occurring. Not saying I've got the time to do anything about it, but I'm curious to see whats going on.
> On Apr 16, 2010, at 8:12 PM, Alessandro Vernet wrote:
>
>> Jeremiah,
>>
>> I was able to reproduce it with your example, and I created a bug to
>> track this (link below). Using XBL this way is a smart idea, but we're
>> most likely not going to implement the support for recursive XBL
>> component in the short term, unless this gets sponsored by a client.
>>
>> http://forge.ow2.org/tracker/index.php?func=detail&aid=314931&group_id=168&atid=350207
>>
>> Alex
>>
>> On Mon, Apr 12, 2010 at 11:24 PM, Jeremiah Jahn <[hidden email]> wrote:
>>> it should have had an attachment.  I've sent it again. I've run this in the sandbox, and the result was the same heap space error.
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Apr 12, 2010, at 6:58 PM, Alessandro Vernet wrote:
>>>
>>>> Jeremiah,
>>>>
>>>> I am not sure if you intended to post a follow-up on this thread or
>>>> not, but the last message you send arrived empty (with just a quote of
>>>> the previous message).
>>>>
>>>> Alex
>>>>
>>>> On Sat, Apr 10, 2010 at 7:16 AM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Mar 31, 2010, at 1:27 PM, Alessandro Vernet wrote:
>>>>>
>>>>>> Jeremiah,
>>>>>>
>>>>>> The easiest thing is to create a stand-alone XForms file that we can
>>>>>> run in the XForms sandbox. You can embed the XBL in the XForms file,
>>>>>> so there is just one file.
>>>>>>
>>>>>> Alex
>>>>>>
>>>>>> On Tue, Mar 30, 2010 at 7:31 PM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>>> I sure don't I wasn't quite sure how to package all of that up, so I wrote this to take any single node binding. My orbeon environment is a little different from the standard and has lot of other infrastructure built around it that makes it difficult to pull out a single  xhtml file. If you'll point me to an example of something I'll pack it up for you.
>>>>>>>
>>>>>>>
>>>>>>> On Mar 30, 2010, at 7:13 PM, Alessandro Vernet wrote:
>>>>>>>
>>>>>>>> Jeremiah,
>>>>>>>>
>>>>>>>> Do you also have a test case for this? I.e. XForms that uses this XBL
>>>>>>>> and shows the problem?
>>>>>>>>
>>>>>>>> Alex
>>>>>>>>
>>>>>>>> On Sat, Mar 27, 2010 at 8:22 AM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>>>>>> <!--
>>>>>>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     Give this component a single node binding and it will create xhtml:li
>>>>>>>>> for all of it's attributes,
>>>>>>>>>     and sub lists for all of it's children recusively.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     !!!! THIS DOES NOT WORK CURRENTLY !!!!
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     it is just an example of something that SHOULD/WOULD BE NICE
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     /webapp/WEB-INF/resources/xbl/delcyon/tree-view/tree-view.xbl
>>>>>>>>> -->
>>>>>>>>> <xbl:xbl xmlns:xhtml="http://www.w3.org/1999/xhtml"
>>>>>>>>>     xmlns:xforms="http://www.w3.org/2002/xforms"
>>>>>>>>>     xmlns:xxforms="http://orbeon.org/oxf/xml/xforms"
>>>>>>>>>     xmlns:xbl="http://www.w3.org/ns/xbl"
>>>>>>>>>     xmlns:xxbl="http://orbeon.org/oxf/xml/xbl"
>>>>>>>>>     xmlns:dlcn="http://www.delcyon.com/xbl">
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     <xbl:binding  element="dlcn|tree-view">
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>         <xbl:resources>
>>>>>>>>>             <xbl:style>
>>>>>>>>>                 div.box
>>>>>>>>>                 {
>>>>>>>>>                     border-color: black;
>>>>>>>>>                     border-width: 1px;
>>>>>>>>>                     border-style: solid;
>>>>>>>>>                     padding: 5px;
>>>>>>>>>                 }
>>>>>>>>>             </xbl:style>
>>>>>>>>>         </xbl:resources>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>         <xbl:template>
>>>>>>>>>             <xhtml:div class="box">
>>>>>>>>>                 <xforms:group xbl:attr="ref" xxbl:scope="outer">
>>>>>>>>>                     <!-- Start copying the variables over that we need -->
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>                     <xxforms:variable name="data" xxbl:scope="inner" >
>>>>>>>>>                         <xxforms:sequence select="." xxbl:scope="outer"/>
>>>>>>>>>                     </xxforms:variable>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>                     <!-- end external variable copying -->
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>                     <!-- START MAIN GROUP-->
>>>>>>>>>                     <xforms:group xxbl:scope="inner">
>>>>>>>>>                         <strong><xforms:output
>>>>>>>>> value="$data/local-name()"/></strong>
>>>>>>>>>                         <br/>
>>>>>>>>>                         <xhtml:ul>
>>>>>>>>>                             <!-- This will display all of the attributes in
>>>>>>>>> this element -->
>>>>>>>>>                             <xforms:repeat nodeset="$data/@*">
>>>>>>>>>                                 <xhtml:li>
>>>>>>>>>                                     <strong><xforms:output
>>>>>>>>> value="local-name()"/>: </strong><xforms:output value="."/>
>>>>>>>>>                                 </xhtml:li>
>>>>>>>>>                             </xforms:repeat>
>>>>>>>>>                             <!-- Repeat over each child node of the root
>>>>>>>>> node -->
>>>>>>>>>                             <xforms:repeat nodeset="$data/*">
>>>>>>>>>                                 <xhtml:li>
>>>>>>>>>
>>>>>>>>>                                     <!-- if this element has children
>>>>>>>>> recurse into it -->
>>>>>>>>>                                     <dlcn:tree-view ref="."/>
>>>>>>>>>                                 </xhtml:li>
>>>>>>>>>                             </xforms:repeat>
>>>>>>>>>                         </xhtml:ul>
>>>>>>>>>                     </xforms:group>
>>>>>>>>>                     <!-- END MAIN GROUP -->
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>                 </xforms:group>
>>>>>>>>>             </xhtml:div>
>>>>>>>>>         </xbl:template>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>     </xbl:binding>
>>>>>>>>> </xbl:xbl>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Mar 26, 2010, at 2:04 PM, Alessandro Vernet wrote:
>>>>>>>>>
>>>>>>>>> Jeremiah,
>>>>>>>>>
>>>>>>>>> I understand that in the implementation of dlcn:widget you have an
>>>>>>>>> xforms:repeat that iterates over <widget> and uses dlcn:widget. If
>>>>>>>>> this is the case, and you get an error, it is most likely because this
>>>>>>>>> has never been tried ;). Could you submit a simple component and test
>>>>>>>>> case that shows this, so we can easily reproduce it?
>>>>>>>>>
>>>>>>>>> Alex
>>>>>>>>>
>>>>>>>>> On Thu, Mar 25, 2010 at 4:30 PM, Jeremiah Jahn <[hidden email]> wrote:
>>>>>>>>>
>>>>>>>>> I'm getting a out of memory error whenever I have one of my xbl components
>>>>>>>>>
>>>>>>>>> self reference or recurse. Is that not allowed? Or is there some trick to
>>>>>>>>>
>>>>>>>>> getting it to work?
>>>>>>>>>
>>>>>>>>> I have some xml that look like:
>>>>>>>>>
>>>>>>>>> <widget>
>>>>>>>>>
>>>>>>>>> <widget-item/>
>>>>>>>>>
>>>>>>>>> <widget-item/>
>>>>>>>>>
>>>>>>>>> <widget-item/>
>>>>>>>>>
>>>>>>>>> <widget>
>>>>>>>>>
>>>>>>>>> <widget-item/>
>>>>>>>>>
>>>>>>>>> <widget-item/>
>>>>>>>>>
>>>>>>>>> <widget>
>>>>>>>>>
>>>>>>>>> <widget-item/>
>>>>>>>>>
>>>>>>>>> <widget-item/>
>>>>>>>>>
>>>>>>>>> </widget>
>>>>>>>>>
>>>>>>>>> </widget>
>>>>>>>>>
>>>>>>>>> </widget>
>>>>>>>>>
>>>>>>>>> I have an xbl component that for the widget, and one for the widget-item
>>>>>>>>>
>>>>>>>>> the widget xbl look kind of like this:
>>>>>>>>>
>>>>>>>>> <xforms:repeat nodeset="*">
>>>>>>>>>
>>>>>>>>> <xforms:group ref=".[name() = 'widget']">
>>>>>>>>>
>>>>>>>>> <dlcn:widget ref="."/>
>>>>>>>>>
>>>>>>>>> </xforms:group>
>>>>>>>>>
>>>>>>>>> <xforms:group ref=".[name() = 'widget-item']">
>>>>>>>>>
>>>>>>>>> <dlcn:widget-item ref="."/>
>>>>>>>>>
>>>>>>>>> </xforms:group>
>>>>>>>>>
>>>>>>>>> </xforms:repeat>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>>
>>>>>>>>> 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
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>>>>>>> http://www.orbeon.com/
>>>>>>>>> My Twitter: http://twitter.com/avernet
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> 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
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> 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
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>>>>>> http://www.orbeon.com/
>>>>>>>> My Twitter: http://twitter.com/avernet
>>>>>>>>
>>>>>>>> --
>>>>>>>> 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
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> 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
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>>>> http://www.orbeon.com/
>>>>>> My Twitter: http://twitter.com/avernet
>>>>>>
>>>>>> --
>>>>>> 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
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> 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
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>>>> http://www.orbeon.com/
>>>> My Twitter: http://twitter.com/avernet
>>>>
>>>> --
>>>> 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
>>>
>>>
>>>
>>> --
>>> 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
>>>
>>>
>>
>>
>>
>> --
>> Orbeon Forms - Web forms, open-source, for the Enterprise -
>> http://www.orbeon.com/
>> My Twitter: http://twitter.com/avernet
>>
>> --
>> 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
>
>
>
> --
> 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
>
>


--
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