This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: Generating a list of items NOT present in source XML
At 11:17 AM 5/17/2002, you wrote:
>It depends a bit what your missing nodes are, if it's numbers then the
>stylesheet has a chance, if the thing is a list of family birthdays and
>I've forgotten one (not uncommon:-) then the stylesheet probably won't
>have much of a chance of filling in the gaps. (Hmm now there's a
>challenge for Jeni, can she provide a stylesheet that will fill in my
>Mum's birthday...)
:) No, I realize that XSL is not magical (though it is pretty
close). I was talking particular about positive, integral index values.
>Anyway for your example,
>
><xsl:for-each select="//*[position()</root/obj]">
><xsl:if test="not(position() = /root/obj)">
> <obj><childnode><xsl:value-of select="position()"/></childnode></obj>
></xsl:for-each>
>
>probably works, but not if node 10 was missing.
Exposition:
My query originates from a collection of Star Wars toys that I have at
home. Each toy is manufactured with a series index value, and I am missing
some of the individual products. Since I'm a geek and have keyed my
collection into XML, I would like for XSL to generate a listing of all the
missing indices. The upper limit is variable (for different collections),
but is almost guaranteed to be greater than 10. In fact, the indexed node
is figure/details/title/series/number.
I thought a called-template with parameters would be best, since the
indexed node might change for different kinds of collectibles (e.g. a comic
book might be listed as publisher/title/volume/issue) and the starting
value may not even 1.
It would be supremely cool if the type of indexed data could be changed
dynamically to some pre-determinable "growing" type (e.g. a,b,c,d,e,...;
1,2,3,4,5,... ; i,ii,iii,iv,v,vi,...).
Probably, the outputted node tree should only be something like
<missing>
<datum>2</datum>
<datum>6</datum>
<datum>8</datum>
</missing>
instead of the complex tree I imagined in the first post. Hmmmm...
Greg Faron
Integre Technical Publishing Co.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list