Re: [xsl] [XPath] matching elements which satisfy a specific content model

Subject: Re: [xsl] [XPath] matching elements which satisfy a specific content model
From: Tobias Reif <tobiasreif@xxxxxxxxxxxxx>
Date: Mon, 13 Jan 2003 10:56:14 +0100
Oleg Tkachenko wrote:


How to write

title?, varlistentry+

in XPath?

It's pattern actually


sure :)


What about simple
<t:template match="variablelist[varlistentry]">


But this by far is not an equivalent of what I described. It is insufficient.


Or more strict
<t:template match="variablelist[*[1][self::title] and *[2][self::varlistentry] | variablelist[*[1][self::varlistentry]">


... and this is too complex and too long for my taste.


But it looks too convolute,


Exactly.

patterns are supposed to be simple,


Exactly! :)

why do you need so strict matching?


Why? Well, it's very common in my (and in many others I would think) transformation to say thinks like "All variablelist elements containing nothing but an optional element title followed by one or more varlistentry elements are translated to simple dl(dt,dd)+ lists".

In any case:


I think that very simple things like contains(title?, varlistentry+) should be very simple to express in XPath.
If I'm still not missigng something obvious:
Perhaps something like a content-model() function will be available as extension or in XSLT2?


Tobi

--

Vim users               donate.
http://iccf-holland.org/donate.html

Web developers           check.
http://www.pinkjuice.com/check/


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



Current Thread