xsl-list
[Top] [All Lists]

Re: inheritance

2003-04-11 13:06:48
For a different implementation of inheritance and polymorphism (yes, an
analogue to virtual functions) do have a look at FXSL and this link:

http://fxsl.sourceforge.net/articles/PartialApps/Partial%20Applications.html
#5._Creating_a_new_function_dynamically_-_the_calculator_store_problem.


=====
Cheers,

Dimitre Novatchev.
http://fxsl.sourceforge.net/ -- the home of FXSL



"Jeni Tennison" <jeni(_at_)jenitennison(_dot_)com> wrote in message
news:45177780895(_dot_)20030411102225(_at_)jenitennison(_dot_)com(_dot_)(_dot_)(_dot_)
Hi Florian,

im wondering if its possible to do some kind of inheritance with
xslt.

I think that the easiest way to achieve the kind of thing that you're
after is to have common templates for the common elements, such as:

<xsl:template match="property[(_at_)name = 'name']">
  ...
</xsl:template>

<xsl:template match="property[(_at_)name = 'color']">
  ...
</xsl:template>

And then in the templates for <vehicle> and <car> elements just apply
templates to the children:

<xsl:template match="vehicle | car">
  <xsl:apply-templates />
</xsl:template>

The common templates for the name and color properties will be picked
up for both vehicles and cars. To get the box around the <details>,
you can use a template that matches the <details> element:

<xsl:template match="details">
  <div class="box">
    <xsl:apply-templates />
  </div>
</xsl:template>

This way, you get inheritance from the fact that the same properties
in each are handled by the same templates.

Cheers,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list






 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>