Jörn Nettingsmeier schrieb:
> hi everyone!
> 
> 
> as mentioned in some other mails, i'm currently working on an
> aggregation doctype that will allow merging data from multiple other
> documents and display it.
> 
> that means i will have to call resource type sitemaps to spit out
> rendered pages *other that the current*, i.e. all the {page-envelope:*}
> information is not available.
> 
> iiuc, the contract of resource types with the rest of the world is
> currently to provide
>   format-xhtml
>   format-luceneIndex
>   format-webdavGET
> 
> first, a question:
> why do we use {resource-type:format-xhtml}?
> couldn't we just as well use cocoon://modules/xhtml/foo.xml?

At the moment not, because resource types are orthogonal to modules.
We could establish a contract:

"A resource type has to be provided by a module with the same name."

This might cause problems with the full/short module name syntax.
Maybe we could handle a resource type as a type of module?
The resource type name would be the fully qualified module name.


> that is only marginally more verbose, but cuts out an intransparent
> mechanism that is hard-coded at build time.
> what is the reason for the extra layer of indirection between the
> format-FOO call and the resource-type.xconf that maps it to a sitemap call?
> 
> now my proposals:
> 
> 1. if there is no compelling reason for the resource-type input module
> and the format-FOO syntax, let's get rid of it.

See above, this would require an explicit contract.

> 2. make a direct-addressing match mandatory for resource type modules,
> and add a context-based match that redirects to the absolute, like so:
> 
>  <!-- parametrized doctype matcher -->
>  <!-- pattern="{rendertype}" -->
>  <map:match pattern="*.xml">
> -<map:generate
> src="lenyadoc:/{page-envelope:document-language}/{page-envelope:document-id}"/>
> 
> +<map:generate
> src="cocoon:/xhtml/{page-envelope:publication-id}/{page-envelope:area}/{page-envelope:document-language}/{page-envelope:document-id}"/>
> 
> +<map:serialize type="xml"/>
> +</map:match>
> +<map:match pattern="xhtml/*/*/*/*">
> +<map:generate src="lenyadoc://{1}/{2}/{3}/{4}"/>
> 
> 
> another question: why do we traditionally match "*.xml"? iiuc the only
> way this is ever called is by format-FOO, which means we can get rid of
> the wildcard.

No idea, could make sense.

BTW, it is now possible to request a particular formatted document,
though this is not yet supported by all resource types:

http://lenya.zones.apache.org/docu/docs/1_4/reference/resource-types.html
(section "Formats")

> since this is not a real URI, only a marker, i'd also prefer calling it
> something like "renderToXHTML" - this makes very clear that it's an
> internal marker match that will never get to see arbitrary *.xml requests.
> if my assumptions are true, make that proposal no.3.

Hmm, is this really necessary?

-- Andreas

> 
> 
> i'd welcome your comments and corrections.
> 
> 
> 
> regards,
> 
> jörn
> 
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to