Subject: RE: [xsl] regexs, grouping (?) and XSLT2? From: "Michael Kay" <mhk@xxxxxxxxx> Date: Sun, 8 Aug 2004 23:45:14 +0100 |
> With respect to the other issue, below is an example doc; might be > easier to understand. > > So, the para output would be something like: > > <p>Some citations: (Doe, 1999a, 1999b; Doe and Jones, 1999)</p> I think you're trying to solve several problems at the same time here. It fails my 10-minute rule: I never spend more than ten minutes answering a question on this list. Essentially both the para output and the list of citations are grouping problems that can be tackled using xsl:for-each-group, probably using group-adjacent. You may need to write a function that calculates the grouping key. The suffix "a", "b" etc can be obtained using xsl:number. It may be simplest to start by generating a copy of the bibliography in which the list of authors (Doe and Jones) and the year/serial (1999b) appear as additional computed child elements or attributes, and then working with this copy. Michael Kay > And in the bib list: > > Doe (1999a) > ----. (1999b) > Doe and Jones (1999) > > ============ > > <?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"/><biblioref linkend="three"/></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> > <mods ID="three"> > <name type="personal"> > <namePart type="given">John</namePart> > <namePart type="family">Doe</namePart> > <role> > <roleTerm type="text">author</roleTerm> > </role> > </name> > <name type="personal"> > <namePart type="given">Jane</namePart> > <namePart type="family">Jones</namePart> > <role> > <roleTerm type="text">author</roleTerm> > </role> > </name> > <titleInfo> > <title>Some Title</title> > </titleInfo> > <originInfo> > <dateIssued>1999</dateIssued> > </originInfo> > </mods> > </modsCollection> > </bibliography> > </article>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] regexs, grouping (?) and , Bruce D'Arcus | Thread | Re: [xsl] regexs, grouping (?) and , Bruce D'Arcus |
RE: [xsl] Count Words, Michael Kay | Date | Re: [xsl] regexs, grouping (?) and , Bruce D'Arcus |
Month |