On Mon, 2005-07-25 at 13:13 +0200, Thorsten Scherler wrote:
> On Mon, 2005-07-25 at 13:06 +0200, Cyriaque Dupoirieux wrote:
> > Hi,
> >
> > It seems to be impossible to call twice the same contact with
> > different properties (arguments).
> > I tried to call twice a search-input contract of my own - which
> > accepts input field size argument - with two different size. Only the
> > first size is taken into account.
> >
>
> Yes that is right. I am still thinking how to overcome this problem that
> is based on the architecture.
To explain that:
We are creating a "dynamic build" stylesheet (former site2xhtml.xsl). We
are doing this with the
<map:match pattern="getStylesheet.*.**">
in the internal.xmap of views.
The "resources/stylesheets/prepare.xhtml.xsl" is creating alias elements
that will be switched to the xsl namespace by
<xsl:namespace-alias result-prefix="xsl" stylesheet-prefix="alias"/>
Now what I did before was matching a node of the *.page aggregation. I
just fixed it to the current location.
- <alias:with-param name="[EMAIL PROTECTED]"
select=".//forrest:[EMAIL PROTECTED]'{$name}']/forrest:[EMAIL PROTECTED]'[EMAIL
PROTECTED]']"/>
+ <alias:with-param name="[EMAIL PROTECTED]" select="'{.}'"/>
Can you try this. I hope it will solve the use case.
BTW
There is another problem I have to fix ASAP which is related.
One can not only use *-body and *-head templates in a contract e.g.
content-ls-contracts.ft. That causes that there are multiple templates
with the same name because everything within <xsl:stylesheet/> will be
copied.
We have to make sure that each and all contract xsl:templates just get
included once in the stylesheet aggregation even if the contract get
called twice.
Besides we need to specify better how to write a contract. The mentioned
content-ls-contracts.ft should use
<xsl:template match="document" mode="content-ls-contracts/> instead of
<xsl:template match="document">. That makes it unique what every
contract has to/better be all times.
salu2
thorsten
> If you have an idea please let me know. I
> will have a look on that ASAP. ATM I am busy to work off the holiday
> stack. ;-)
>
> salu2
>
> >
> > ------------------------------------------------------------------------
> > <forrest:contract name="search-input">
> > <forrest:properties contract="search-input">
> > <forrest:property name="input-size">*25*</forrest:property>
> > </forrest:properties>
> > </forrest:contract>
> > . . .
> > <forrest:hook name="menu">
> > <forrest:contract name="pelt-nav-section"/>
> > <forrest:contract name="search-input">
> > <forrest:properties contract="search-input">
> > <forrest:property name="input-size">*18*</forrest:property>
> > </forrest:properties>
> > </forrest:contract>
> >
> > ------------------------------------------------------------------------
> > The size of the search form Input field is 25 in both cases.
> >
--
thorsten
"Together we stand, divided we fall!"
Hey you (Pink Floyd)