You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Joerg Heinicke <jo...@gmx.de> on 2004/03/01 20:59:40 UTC

Re: Momento and Cocoon

On 26.02.2004 22:04, Alan wrote:

>>I would guess that Momento mainly would be accessed through the document 
>>function in XSLT and XQuery. Saxon use JAXP 1.1 as external API to the 
>>transformerand the URLs in the document functions are resolved by using 
>>an implementation of javax.xml.transform.URIResolver that is provided by 
>>the TraxTransformer.
> 
> 
> The above is somewhat confusing for me. Momento does support the
>     JAXP API. XUpdate is implemented as a SAX filter. It seems like
>     Momento would work nicely in as a source, sink, or filter for
>     SAX events.
>     
>     I've imagined that a pipeline would start with a Momento
>     document and an XSLT trasform or XQuery query.
> 
>     Something along these lines:
>     
>         <map:match pattern="index.html">
>           <map:generate type="momento" src="momento.mx"
>                                        xslt="index-document.xslt"/>
>           <map:transform type="xslt" src="document-to-web.xslt"/>
>           <map:serialize type="html"/>
>         </map:match>
> 
>     (It is easier for me to express myself as a Cocoon user.)

It was already mentioned and I only want to repeat it here: Momento 
should not be implemented as generator, but as source. As Momento 
returns also only XML just the file or xml generator should be needed. 
Example:

<map:generate src="momento:/document"/>

With the mentioned xmldb interface you would write the source just as 
the xindice source and use it like the following ("copied" from xindice 
sample sitemap):

<map:generate src="xmldb:momento://db/document#xpath"/>

The only thing I don't know exactly how to handle is XQuery. If it is 
used like XSLT we should add a XQueryTransformer later, but if the 
comparison to JXTemplate is more appropriate an XQueryGenerator would be 
needed (maybe both is useful).

Joerg

Re: Momento and Cocoon

Posted by Alan <al...@engrm.com>.
* Joerg Heinicke <jo...@gmx.de> [2004-03-01 22:48]:
> On 01.03.2004 23:36, Alan wrote:
> 
> >>>>>I would guess that Momento mainly would be accessed through the 
> >>>>>document function in XSLT and XQuery. Saxon use JAXP 1.1 as external 
> >>>>>API to the transformerand the URLs in the document functions are 
> >>>>>resolved by using an implementation of javax.xml.transform.URIResolver 
> >>>>>that is provided by the TraxTransformer.
> >>>>
> >>>>
> >>>>The above is somewhat confusing for me. Momento does support the
> >>>>  JAXP API. XUpdate is implemented as a SAX filter. It seems like
> >>>>  Momento would work nicely in as a source, sink, or filter for
> >>>>  SAX events.
> >>>>  
> >>>>  I've imagined that a pipeline would start with a Momento
> >>>>  document and an XSLT trasform or XQuery query.
> >>>>
> >>>>  Something along these lines:
> >>>>  
> >>>>      <map:match pattern="index.html">
> >>>>        <map:generate type="momento" src="momento.mx"
> >>>>                                     xslt="index-document.xslt"/>
> >>>>        <map:transform type="xslt" src="document-to-web.xslt"/>
> >>>>        <map:serialize type="html"/>
> >>>>      </map:match>
> >>>>
> >>>>  (It is easier for me to express myself as a Cocoon user.)
> >>
> >>>It was already mentioned and I only want to repeat it here: Momento 
> >>>should not be implemented as generator, but as source. As Momento 
> >>>returns also only XML just the file or xml generator should be needed. 
> >>>Example:
> >>
> >>You miss the point. Saxon (and in time Xalan) operates directly on
> >>   Momento. One uses XSLT or XQuery to build a document from a
> >>   potentially HUGE Momento document. The XSLT and XQuery documents
> >>   mean that Momento will not even touch parts of the document not
> >>   pertiant to the query.
> >>
> >>   I do not want to generate SAX events and have Cocoon build an in
> >>   memory DOM, and then run an XSLT transform. It misses the point.
> >
> >
> >s/You miss the/I've done poor job of explaining this/
> >
> >    Didn't sound the way I wanted it to...

> No problem, I also can live with the original formulation :) The reason 
> therefor is simply that I did not follow this thread very closely as I 
> had to prepare for some exams.

I do appreciate your interest, especially since I'd like to see
    Momento snuggle right up to CForms.


> Now, what exactly is Momento? I saw it only as something similar to a 
> XML database with maybe some special features. When having XIndice in 
> mind I don't like the idea of having an XSLT or XQuery processor 
> operating directly on it (separation of concerns).

SoC is important.

    The XSLT is not used to style, but as means to perform joins,
    aggregation, grouping, etc. The XSLT is really a query langauge,
    like XQuery. This is just to get right format of a document to
    get the pipeline going, akin to the aggregator.

    SoC is important. I am *not* out to integrate transform and
    generation. XSLT as a query language.
    
        (That is, XSLT opimized to use persistant indicies,
         optimized to load only those nodes necessary, designed
         operate concurrently with other XSLT, XQuery and W3 DOM
         queries and XUpdate modifications. Not a transform, but a
         nice way to reuse your XSLT skill-set.
         )

    I choose Saxon for it's XQuery support, but now I've come to see
    XSLT as a better query langauge.

    I've the combination of data store + query language is a valid
    reason to create a generator, and not, I don't think, a mixing
    of concerns.

> But maybe here I miss indeed an important point though I see your
> point with huge document and memory DOM. You don't need to explain
> the whole thing again if it was already said, pointing to a link
> or a mail in the archives would be helpful though.

I went and updated the Momento project page:

    http://engrm.com/project/com.agtrz.momento/

    I tried to punch up the opening section. Everyone please take a
    look at tell me how it reads. Ask any questions.

-- 
Alan / alan@engrm.com / http://engrm.com/
    aim/yim: alanengrm - icq: 228631855 - msn: alanengrm@hotmail.com

Re: Momento and Cocoon

Posted by Joerg Heinicke <jo...@gmx.de>.
On 01.03.2004 23:36, Alan wrote:

>>>>>I would guess that Momento mainly would be accessed through the document 
>>>>>function in XSLT and XQuery. Saxon use JAXP 1.1 as external API to the 
>>>>>transformerand the URLs in the document functions are resolved by using 
>>>>>an implementation of javax.xml.transform.URIResolver that is provided by 
>>>>>the TraxTransformer.
>>>>
>>>>
>>>>The above is somewhat confusing for me. Momento does support the
>>>>   JAXP API. XUpdate is implemented as a SAX filter. It seems like
>>>>   Momento would work nicely in as a source, sink, or filter for
>>>>   SAX events.
>>>>   
>>>>   I've imagined that a pipeline would start with a Momento
>>>>   document and an XSLT trasform or XQuery query.
>>>>
>>>>   Something along these lines:
>>>>   
>>>>       <map:match pattern="index.html">
>>>>         <map:generate type="momento" src="momento.mx"
>>>>                                      xslt="index-document.xslt"/>
>>>>         <map:transform type="xslt" src="document-to-web.xslt"/>
>>>>         <map:serialize type="html"/>
>>>>       </map:match>
>>>>
>>>>   (It is easier for me to express myself as a Cocoon user.)
>>
>>>It was already mentioned and I only want to repeat it here: Momento 
>>>should not be implemented as generator, but as source. As Momento 
>>>returns also only XML just the file or xml generator should be needed. 
>>>Example:
>>
>>You miss the point. Saxon (and in time Xalan) operates directly on
>>    Momento. One uses XSLT or XQuery to build a document from a
>>    potentially HUGE Momento document. The XSLT and XQuery documents
>>    mean that Momento will not even touch parts of the document not
>>    pertiant to the query.
>>
>>    I do not want to generate SAX events and have Cocoon build an in
>>    memory DOM, and then run an XSLT transform. It misses the point.
> 
> 
> s/You miss the/I've done poor job of explaining this/
> 
>     Didn't sound the way I wanted it to...

No problem, I also can live with the original formulation :) The reason 
therefor is simply that I did not follow this thread very closely as I 
had to prepare for some exams.

Now, what exactly is Momento? I saw it only as something similar to a 
XML database with maybe some special features. When having XIndice in 
mind I don't like the idea of having an XSLT or XQuery processor 
operating directly on it (separation of concerns). But maybe here I miss 
indeed an important point though I see your point with huge document and 
memory DOM. You don't need to explain the whole thing again if it was 
already said, pointing to a link or a mail in the archives would be 
helpful though.

Thanks,

Joerg

Re: Momento and Cocoon

Posted by Alan <al...@engrm.com>.
* Alan <al...@engrm.com> [2004-03-01 20:36]:
> * Joerg Heinicke <jo...@gmx.de> [2004-03-01 19:59]:
> > On 26.02.2004 22:04, Alan wrote:
> > 
> > >>I would guess that Momento mainly would be accessed through the document 
> > >>function in XSLT and XQuery. Saxon use JAXP 1.1 as external API to the 
> > >>transformerand the URLs in the document functions are resolved by using 
> > >>an implementation of javax.xml.transform.URIResolver that is provided by 
> > >>the TraxTransformer.
> > >
> > >
> > >The above is somewhat confusing for me. Momento does support the
> > >    JAXP API. XUpdate is implemented as a SAX filter. It seems like
> > >    Momento would work nicely in as a source, sink, or filter for
> > >    SAX events.
> > >    
> > >    I've imagined that a pipeline would start with a Momento
> > >    document and an XSLT trasform or XQuery query.
> > >
> > >    Something along these lines:
> > >    
> > >        <map:match pattern="index.html">
> > >          <map:generate type="momento" src="momento.mx"
> > >                                       xslt="index-document.xslt"/>
> > >          <map:transform type="xslt" src="document-to-web.xslt"/>
> > >          <map:serialize type="html"/>
> > >        </map:match>
> > >
> > >    (It is easier for me to express myself as a Cocoon user.)
> 
> > It was already mentioned and I only want to repeat it here: Momento 
> > should not be implemented as generator, but as source. As Momento 
> > returns also only XML just the file or xml generator should be needed. 
> > Example:
> 
> You miss the point. Saxon (and in time Xalan) operates directly on
>     Momento. One uses XSLT or XQuery to build a document from a
>     potentially HUGE Momento document. The XSLT and XQuery documents
>     mean that Momento will not even touch parts of the document not
>     pertiant to the query.
> 
>     I do not want to generate SAX events and have Cocoon build an in
>     memory DOM, and then run an XSLT transform. It misses the point.

s/You miss the/I've done poor job of explaining this/

    Didn't sound the way I wanted it to...

-- 
Alan / alan@engrm.com / http://engrm.com/
    aim/yim: alanengrm - icq: 228631855 - msn: alanengrm@hotmail.com

Re: Momento and Cocoon

Posted by Alan <al...@engrm.com>.
* Joerg Heinicke <jo...@gmx.de> [2004-03-01 19:59]:
> On 26.02.2004 22:04, Alan wrote:
> 
> >>I would guess that Momento mainly would be accessed through the document 
> >>function in XSLT and XQuery. Saxon use JAXP 1.1 as external API to the 
> >>transformerand the URLs in the document functions are resolved by using 
> >>an implementation of javax.xml.transform.URIResolver that is provided by 
> >>the TraxTransformer.
> >
> >
> >The above is somewhat confusing for me. Momento does support the
> >    JAXP API. XUpdate is implemented as a SAX filter. It seems like
> >    Momento would work nicely in as a source, sink, or filter for
> >    SAX events.
> >    
> >    I've imagined that a pipeline would start with a Momento
> >    document and an XSLT trasform or XQuery query.
> >
> >    Something along these lines:
> >    
> >        <map:match pattern="index.html">
> >          <map:generate type="momento" src="momento.mx"
> >                                       xslt="index-document.xslt"/>
> >          <map:transform type="xslt" src="document-to-web.xslt"/>
> >          <map:serialize type="html"/>
> >        </map:match>
> >
> >    (It is easier for me to express myself as a Cocoon user.)

> It was already mentioned and I only want to repeat it here: Momento 
> should not be implemented as generator, but as source. As Momento 
> returns also only XML just the file or xml generator should be needed. 
> Example:

You miss the point. Saxon (and in time Xalan) operates directly on
    Momento. One uses XSLT or XQuery to build a document from a
    potentially HUGE Momento document. The XSLT and XQuery documents
    mean that Momento will not even touch parts of the document not
    pertiant to the query.

    I do not want to generate SAX events and have Cocoon build an in
    memory DOM, and then run an XSLT transform. It misses the point.
    
> <map:generate src="momento:/document"/>

Fine. We can do that.

> With the mentioned xmldb interface you would write the source just as 
> the xindice source and use it like the following ("copied" from xindice 
> sample sitemap):
> 
> <map:generate src="xmldb:momento://db/document#xpath"/>

Fine we can do that too. But this will only yank out a sub document,
    it won't aggregate, join, or filter a document.

> The only thing I don't know exactly how to handle is XQuery. If it is 
> used like XSLT we should add a XQueryTransformer later, but if the 
> comparison to JXTemplate is more appropriate an XQueryGenerator would be 
> needed (maybe both is useful).

XQuery uses the same generator as XSLT. You specify the Momento
    docuent and the query to run.

Also keep in mind that Momento can be used throughout the pipeline
    returning the document as it was at the start of the pipeline,
    which means that XPath can be used against Momento in the
    sitemap without worrying about returing inconsistant results.

-- 
Alan / alan@engrm.com / http://engrm.com/
    aim/yim: alanengrm - icq: 228631855 - msn: alanengrm@hotmail.com

Re: Momento and Cocoon

Posted by Alan <al...@engrm.com>.
* Stefano Mazzocchi <st...@apache.org> [2004-03-02 17:34]:
> Alan wrote:
> 
> >* Stefano Mazzocchi <st...@apache.org> [2004-03-02 14:04]:

> I need an xml database with xquery capabilities to place as a
> slide store for when it will implement JCR.

    ???

> Xindice is currently my candidate for that, but I'm always open
> for potential alternatives.


By all means use Xindice. Momento is still underdevelopment. It is
    not yet ready for production use.

    If you want to know more about the design, or the status there
    is more information about Momento at my web site.

Cheers.

-- 
Alan / alan@engrm.com / http://engrm.com/
    aim/yim: alanengrm - icq: 228631855 - msn: alanengrm@hotmail.com

Re: Momento and Cocoon

Posted by Stefano Mazzocchi <st...@apache.org>.
Alan wrote:

> * Stefano Mazzocchi <st...@apache.org> [2004-03-02 14:04]:
> 
>>Alan wrote:
>>
>>
>>>* Stefano Mazzocchi <st...@apache.org> [2004-03-02 06:07]:
>>
>>>>I need a fast and scalable xquery-capable semi-structured content 
>>>>repository.
>>>>
>>>>Can momento provide me that?
>>>
>>>
>>>   It could. If I were to release it open source. That's the point.
>>>   That's why I'm engaging people on this list.
>>>
>>
>>It could seems like a pretty big overestimation without reasonable 
>>technological backup.
> 
> 
>>At least three research groups spent 10 years and millions of dollars 
>>trying to build an equivalent system. One of them died (Lore) [but the 
>>source code disappeared so I suspect some big DBMS vendor bought the 
>>thing], the other went commercial [Xyleme], the other is still 
>>researching [the people at Bell Labs]
> 
> 
> What about Berkeley XML-DB? 

doesn't support xquery, its license is incompatible with the ours, it 
doesn't scale on multiple machines and the java API is pathetic.

> It seems to be a popular open source database. There is also dbXML, which is now GPL. What about
>     Xindice?

doesn't support xquery, hasn't been tested in heavy duty environments,

>     I'm not sure what you are expecting. Momento is XQuery capable
>     and the content is semi-structured. That took a couple months,
>     but nothing like a million dollars.
>     
>     Fast and scalable? Sure. Why not? If there was a design flaw
>     that would prevent concurrent queries or updates, I'm sure it
>     would have surfaced by now.

Hmmm, how much data did you have in there?

>>Don't get me wrong: I know the power of open source and I know that you 
>>need to start somewhere, that's why I'm asking.
> 
> 
> Yes. You need to start somewhere.  

yep.

>     I'm starting out with the organization of the document into
>     clusters based on application requirements.

Like xindice collections?

>     Michael Kay and I are discussing how to add a simple identity
>     key for use with the id attribute and the key element in XSLT.
> 
>     I'm not going to start with benchmark peformance tests.

Good, if you need tons of xml to test the system let me know.

>>What I don't understand is how you can use Saxon as a fast and scalable 
>>database since it wasn't designed to do so.
> 
> 
> I am using Saxon as a query engine. Momento is a document object model.
> 
>     Again, I'm not sure what you are expecting. I'm trying not to
>     get you wrong.

I need an xml database with xquery capabilities to place as a slide 
store for when it will implement JCR.

Xindice is currently my candidate for that, but I'm always open for 
potential alternatives.

-- 
Stefano.


Re: Momento and Cocoon

Posted by Alan <al...@engrm.com>.
* Stefano Mazzocchi <st...@apache.org> [2004-03-02 14:04]:
> Alan wrote:
> 
> >* Stefano Mazzocchi <st...@apache.org> [2004-03-02 06:07]:
> 
> >>I need a fast and scalable xquery-capable semi-structured content 
> >>repository.
> >>
> >>Can momento provide me that?
> >
> >
> >    It could. If I were to release it open source. That's the point.
> >    That's why I'm engaging people on this list.
> >
> 
> It could seems like a pretty big overestimation without reasonable 
> technological backup.

> At least three research groups spent 10 years and millions of dollars 
> trying to build an equivalent system. One of them died (Lore) [but the 
> source code disappeared so I suspect some big DBMS vendor bought the 
> thing], the other went commercial [Xyleme], the other is still 
> researching [the people at Bell Labs]

What about Berkeley XML-DB? It seems to be a popular open source
    database. There is also dbXML, which is now GPL. What about
    Xindice?

    I'm not sure what you are expecting. Momento is XQuery capable
    and the content is semi-structured. That took a couple months,
    but nothing like a million dollars.
    
    Fast and scalable? Sure. Why not? If there was a design flaw
    that would prevent concurrent queries or updates, I'm sure it
    would have surfaced by now.
    

> Don't get me wrong: I know the power of open source and I know that you 
> need to start somewhere, that's why I'm asking.

Yes. You need to start somewhere. 

    I'm starting out with the organization of the document into
    clusters based on application requirements.

    Michael Kay and I are discussing how to add a simple identity
    key for use with the id attribute and the key element in XSLT.

    I'm not going to start with benchmark peformance tests.


> What I don't understand is how you can use Saxon as a fast and scalable 
> database since it wasn't designed to do so.

I am using Saxon as a query engine. Momento is a document object model.

    Again, I'm not sure what you are expecting. I'm trying not to
    get you wrong.


-- 
Alan / alan@engrm.com / http://engrm.com/
    aim/yim: alanengrm - icq: 228631855 - msn: alanengrm@hotmail.com

Re: Momento and Cocoon

Posted by Stefano Mazzocchi <st...@apache.org>.
Alan wrote:

> * Stefano Mazzocchi <st...@apache.org> [2004-03-02 06:07]:

>>I need a fast and scalable xquery-capable semi-structured content 
>>repository.
>>
>>Can momento provide me that?
> 
> 
>     It could. If I were to release it open source. That's the point.
>     That's why I'm engaging people on this list.
> 

It could seems like a pretty big overestimation without reasonable 
technological backup.

At least three research groups spent 10 years and millions of dollars 
trying to build an equivalent system. One of them died (Lore) [but the 
source code disappeared so I suspect some big DBMS vendor bought the 
thing], the other went commercial [Xyleme], the other is still 
researching [the people at Bell Labs]

Don't get me wrong: I know the power of open source and I know that you 
need to start somewhere, that's why I'm asking.

What I don't understand is how you can use Saxon as a fast and scalable 
database since it wasn't designed to do so.

-- 
Stefano.


Re: Momento and Cocoon

Posted by Alan <al...@engrm.com>.
* Stefano Mazzocchi <st...@apache.org> [2004-03-02 06:07]:

> Please stop replying to me directly, I far prefer if you reply to the 
> list, thanks.

Sorry.

> Alan wrote:
> 
> >Yes. I choose Saxon to implement XQuery. I'm finding that XSLT is
> >    just as good a query language, that's why I keep using XSLT in
> >    my generator examples. Not mixing concerns, it is data store +
> >    query, which strikes me as resonable parameters to a generator.

> You can use xslt as a template language for generators but it feels akward.

    It makes a lot of sense to me now. XQuery support is there, and
    it works, but XSLT does the same thing, and saves the trouble of
    learning a new language.

> >>I don't know if momento is good enough for what we need, but if we were 
> >>to have an xquery processor, a generator is the way to go, not a source.
> >
> >
> >What do you need from Momento?
> 
> I need a fast and scalable xquery-capable semi-structured content 
> repository.
> 
> Can momento provide me that?

    It could. If I were to release it open source. That's the point.
    That's why I'm engaging people on this list.

-- 
Alan / alan@engrm.com / http://engrm.com/
    aim/yim: alanengrm - icq: 228631855 - msn: alanengrm@hotmail.com

Re: Momento and Cocoon

Posted by Stefano Mazzocchi <st...@apache.org>.
Please stop replying to me directly, I far prefer if you reply to the 
list, thanks.

Alan wrote:

> Yes. I choose Saxon to implement XQuery. I'm finding that XSLT is
>     just as good a query language, that's why I keep using XSLT in
>     my generator examples. Not mixing concerns, it is data store +
>     query, which strikes me as resonable parameters to a generator.

You can use xslt as a template language for generators but it feels akward.

>>I don't know if momento is good enough for what we need, but if we were 
>>to have an xquery processor, a generator is the way to go, not a source.
> 
> 
> What do you need from Momento?

I need a fast and scalable xquery-capable semi-structured content 
repository.

Can momento provide me that?

-- 
Stefano.


Re: Momento and Cocoon

Posted by Alan <al...@engrm.com>.
* Stefano Mazzocchi <st...@apache.org> [2004-03-02 03:01]:
> Joerg Heinicke wrote:
> 
> >On 26.02.2004 22:04, Alan wrote:
> >
> >>>I would guess that Momento mainly would be accessed through the 
> >>>document function in XSLT and XQuery. Saxon use JAXP 1.1 as external 
> >>>API to the transformerand the URLs in the document functions are 
> >>>resolved by using an implementation of 
> >>>javax.xml.transform.URIResolver that is provided by the TraxTransformer.
> >>
> >>
> >>
> >>The above is somewhat confusing for me. Momento does support the
> >>    JAXP API. XUpdate is implemented as a SAX filter. It seems like
> >>    Momento would work nicely in as a source, sink, or filter for
> >>    SAX events.
> >>        I've imagined that a pipeline would start with a Momento
> >>    document and an XSLT trasform or XQuery query.
> >>
> >>    Something along these lines:
> >>            <map:match pattern="index.html">
> >>          <map:generate type="momento" src="momento.mx"
> >>                                       xslt="index-document.xslt"/>
> >>          <map:transform type="xslt" src="document-to-web.xslt"/>
> >>          <map:serialize type="html"/>
> >>        </map:match>
> >>
> >>    (It is easier for me to express myself as a Cocoon user.)
> >
> >
> >It was already mentioned and I only want to repeat it here: Momento 
> >should not be implemented as generator, but as source. 
> 
> I strongly disagree.
> 
> XQuery is simply too complex to be passed as one URL. You should have 
> something like
> 
>  <generate type="xquery" src="mystuff.xquery"/>

Yes. I choose Saxon to implement XQuery. I'm finding that XSLT is
    just as good a query language, that's why I keep using XSLT in
    my generator examples. Not mixing concerns, it is data store +
    query, which strikes me as resonable parameters to a generator.


> I don't know if momento is good enough for what we need, but if we were 
> to have an xquery processor, a generator is the way to go, not a source.

What do you need from Momento?


-- 
Alan / alan@engrm.com / http://engrm.com/
    aim/yim: alanengrm - icq: 228631855 - msn: alanengrm@hotmail.com

Re: Momento and Cocoon

Posted by Stefano Mazzocchi <st...@apache.org>.
Joerg Heinicke wrote:

> On 26.02.2004 22:04, Alan wrote:
> 
>>> I would guess that Momento mainly would be accessed through the 
>>> document function in XSLT and XQuery. Saxon use JAXP 1.1 as external 
>>> API to the transformerand the URLs in the document functions are 
>>> resolved by using an implementation of 
>>> javax.xml.transform.URIResolver that is provided by the TraxTransformer.
>>
>>
>>
>> The above is somewhat confusing for me. Momento does support the
>>     JAXP API. XUpdate is implemented as a SAX filter. It seems like
>>     Momento would work nicely in as a source, sink, or filter for
>>     SAX events.
>>         I've imagined that a pipeline would start with a Momento
>>     document and an XSLT trasform or XQuery query.
>>
>>     Something along these lines:
>>             <map:match pattern="index.html">
>>           <map:generate type="momento" src="momento.mx"
>>                                        xslt="index-document.xslt"/>
>>           <map:transform type="xslt" src="document-to-web.xslt"/>
>>           <map:serialize type="html"/>
>>         </map:match>
>>
>>     (It is easier for me to express myself as a Cocoon user.)
> 
> 
> It was already mentioned and I only want to repeat it here: Momento 
> should not be implemented as generator, but as source. 

I strongly disagree.

XQuery is simply too complex to be passed as one URL. You should have 
something like

  <generate type="xquery" src="mystuff.xquery"/>

and remember that that xquery is not XML (xqueryx is but that's just 
another syntax and it's also verbose and ugly).

xquery is, in fact, not a query language but a very powerful template 
language (even if somewhat bloated, if you ask me), it would replace 
jxtemplate or garbage.

I don't know if momento is good enough for what we need, but if we were 
to have an xquery processor, a generator is the way to go, not a source.

-- 
Stefano.