[Home] [By Thread] [By Date] [Recent Entries]
When applying styles to the <date> element within in a TEI
<biblStruct> ancestor, such as the following
<biblStruct xml:id="Chen-1964"><monogr><author>Chben, Kenneth</author><title level="m">Buddhism in China: A Historical Survey</title><imprint><pubPlace>Princeton</pubPlace><publisher>Princeton University Press</publisher><date>1964</date></imprint></monogr></biblStruct> I have, for several years, been using the following simple XSLT, <xsl:template match="date"> <xsl:if test="(parent::p)"> <xsl:apply-templates/> </xsl:if> <xsl:apply-templates/>. </xsl:template> Thus, in the case of the above, the output would simply be the date, followed by a period. In the present manuscript that I am working on, the publisher asks that journal dates be placed in parentheses. Thus, for example, in the following entry <biblStruct xml:id="Chien-1988"><analytic><author>Chbien, Edward T.</author><title level="a">The Neo-Confucian Confrontation with Buddhism: A Structural and Historical Analysis</title></analytic><monogr><title level="j">Journal of Chinese Philosophy</title><imprint><biblScope type="vol">15</biblScope><date>1988</date><biblScope type="pp">347b348</biblScope></imprint> </monogr></biblStruct> ...since we have <title level="j"> (indicating a journal), I would like the output to be (1988). I know how to test for attribute values in the case of a preceding node, or a sibling, or parent, or ancestor. But in this case, the <title level="j"> element is none of these, although it has the same ancestor. I attempted to deal with this by testing for the existence of a <title level="j"> under the same ancestor of <monogr> <xsl:template match="date"> <xsl:choose> <xsl:when test="(parent::p)"> <xsl:apply-templates/> </xsl:when> <xsl:when test="//monogr/title[level='j']"> (<xsl:apply-templates/>) </xsl:when> <xsl:otherwise> <xsl:apply-templates/>. </xsl:otherwise> </xsl:choose> </xsl:template> But so far no luck. I was going to try the route of creating a variable when level="j" exists, but I thought that I should ask here to see if there is a way of doing it with standard axes methods. Chuck ------------------- A. Charles Muller University of Tokyo Graduate School of Humanities and Sociology, Faculty of Letters Center for Evolving Humanities 7-3-1 HongE , BunkyE -ku Tokyo 113-0033, Japan Web Site: Resources for East Asian Language and Thought http://www.acmuller.net <acmuller[at]jj.em-net.ne.jp> Mobile Phone: 090-9310-1787
|

Cart



