[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

[xsl] complex positioning problem


Subject: [xsl] complex positioning problem
From: Bruce D'Arcus <bdarcus@xxxxxxxxxxxxx>
Date: Mon, 1 Nov 2004 19:45:25 -0500

Here's the second issue I've no clue how to solve (beyond Wendell's suggestion about using temporary trees). I assume I may want to somehow create a virtual element in the temporary tree that indicates the position of the unique linkend value in the document (and between citations), but I'm not really sure.

Anyway, again, the original message (with slightly modified source example).

I've got another design question that I find difficult to label with a neat subject line.

I'm continuing working on my bibliographic/citation stylesheets, and now need to tackle two new classes, with similar issues.

The most difficult one is note (footnote/endnote) style, whereby rendering of citations is determined by their relative position within the text. For example, we have:

1) First/subsequent.

On the first occurrence of a citation reference, we have one rendering. On all subsequent, we have another (shorter).

2) Ibid/Idem, op.cit.

When a parameter is switched on, then if one has the same single citation repeated immediately subsequent, then it gets rendered as "Ibid", if the same group of citations repeat, it's "Idem".

My current code processes bibliography and citations in separate modes, and there's not really any interaction between them (which is actually a problem in some ways because the bib records get rendered regardless of whether or not they're cited in the text). But here that won't work; rendering of both citations and bib list needs to get driven by the citations.

The other class with a related problem is numbered style, whereby citations get numbered based on their occurrence in the text (if repeated, though, there's no new number), and then the bibliography gets sorted by that number. So, you get [1] and [2-4] and [1, 5]
in text.


So how do I approach this problem? Again, using 2.0, where I am using temporary trees.

Bruce
=== input ===

<?xml version="1.0" encoding="utf-8"?>
<article xmlns="http://docbook.org/docbook-ng">
<info>
<title>Test</title>
</info>
<section>
<info>
<title>Introduction</title>
</info>
<para>Some citations: <citation><biblioref linkend="one"/><biblioref
linkend="two"/></citation>.</para>
<para>Some more citations: <citation><biblioref linkend="one"/><biblioref
linkend="two"/></citation>.</para>
</section>
<bibliography>
<modsCollection xmlns="http://www.loc.gov/mods/v3">
<mods ID="one">
<name type="personal">
<namePart type="given">John</namePart>
<namePart type="family">Doe</namePart>
<role>
<roleTerm type="text">author</roleTerm>
</role>
</name>
<titleInfo>
<title>Some Title</title>
</titleInfo>
<originInfo>
<dateIssued>1999</dateIssued>
</originInfo>
</mods>
<mods ID="two">
<name type="personal">
<namePart type="given">John</namePart>
<namePart type="family">Doe</namePart>
<role>
<roleTerm type="text">author</roleTerm>
</role>
</name>
<titleInfo>
<title>Another Title</title>
</titleInfo>
<originInfo>
<dateIssued>1999</dateIssued>
</originInfo>
</mods>
</modsCollection>
</bibliography>
</article>



Current Thread