PLEASE REMOVE ME FROM YOUR LIST SERVE.
From: Mike Ferrando <[log in to unmask]>
Reply-To: Encoded Archival Description List <[log in to unmask]>
To: [log in to unmask]
Subject: Re: Table of Contents links to c01 and c02 tags
Date: Mon, 16 Apr 2007 10:56:55 -0700
>Jordon,
>I am sending you the stylesheet I created to test your code.
>
>I have added the new code from Michelle.
>
>You will probably want to work at this a little more given that subseries may occur at a deeper component level.
>
>I have enhanced the stylesheet so you can call some of the big EAD XML documents we have on line. You can change the variables containing the http strings as you desire.
>
>[code below]
>
>Mike Ferrando
>Library Technician
>Library of Congress
>Washington, DC
>(202) 707-4454
>
>XSLT Processor: SAXON 6.5.5
>Output set to XML
>
><?xml version="1.0" encoding="utf-8"?>
><!-- U: 16 april 2007 -->
><!-- jSteele_ead_xsl_sample_01.xsl -->
><!-- run against: jSteele_ead_xsl-sample_01.xml -->
><!-- tests XSLT code sample from J. Steele via EAD LISTSERVE -->
>
><xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> xmlns:saxon="http://icl.com/saxon"
> xmlns:date="java:java.util.Date"
> xmlns:simpleDateFormat="java:java.text.SimpleDateFormat"
> exclude-result-prefixes="date simpleDateFormat"
> >
>
><xsl:output
> version="1.0"
> method="xml"
> indent="yes"
> encoding="utf-8"
> omit-xml-declaration="no"
> standalone="no"
> media-type="text/html"
>/>
>
>http://lcweb2.loc.gov/master/music/eadxmlmusic/
><xsl:variable name="folderName">2002/</xsl:variable>
><xsl:variable name="xmlFileName">mu002006.xml</xsl:variable>
>
><xsl:variable name="url" select="concat($urlPath, $folderName, $xmlFileName)"/>
>
><xsl:strip-space elements="*"/>
>
><xsl:template match="/">
> <xsl:text> </xsl:text>
> <xsl:comment>
> <xsl:text> </xsl:text>
> <xsl:value-of
> select="
> simpleDateFormat:format(
> simpleDateFormat:new('EEE.dd.MMMMM.yyyy.h:mm:ss.a.zz'),
> date:new()
> )
> "
> />
> <xsl:text> </xsl:text>
> </xsl:comment>
> <xsl:text> </xsl:text>
><!-- local document -->
> <xsl:apply-templates select="//*[not(parent::*)]"/>
><!-- Library of Congress EAD 2002 XML document -->
><!-- <xsl:apply-templates select="document($url)//*[not(parent::*)]"/> -->
></xsl:template>
>
><xsl:template match="*[not(parent::*)]">
> <xsl:element name="{local-name()}">
> <xsl:call-template name="make_toc"/>
> </xsl:element>
></xsl:template>
>
>
><!--C01 AND C02 LINKS-->
>
><xsl:template name="make_toc">
> <xsl:element name="{local-name()}">
> <xsl:for-each
> select="
> archdesc/dsc/c01[
> @level='series' or
> @level='subseries' or
> @level='subgrp' or
> @level='subcollection'
> ]
> "
> >
> <p>
> <a>
> <xsl:attribute name="href">
> <xsl:text>#series</xsl:text>
> <xsl:number count="c01" from="dsc"/>
> </xsl:attribute>
> <xsl:choose>
> <xsl:when test="did/unittitle/unitdate">
> <xsl:for-each select="did/unittitle">
> <xsl:value-of select="text()"/>
> <xsl:text> </xsl:text>
> <xsl:apply-templates select="./unitdate"/>
> </xsl:for-each>
> </xsl:when>
> <xsl:otherwise>
> <xsl:apply-templates select="did/unittitle"/>
> <xsl:text> </xsl:text>
> <xsl:apply-templates select="did/unitdate"/>
> </xsl:otherwise>
> </xsl:choose>
> </a>
> </p>
> <xsl:for-each select="c02[@level='subseries']">
> <p style="margin-left:15pt">
> <a>
> <xsl:attribute name="href">
> <xsl:text>#subseries</xsl:text>
> <xsl:number count="c01" from="dsc"/>
> <xsl:text>-</xsl:text>
> <xsl:number count="c02" from="c01"/>
> </xsl:attribute>
> <xsl:choose>
> <xsl:when test="did/unittitle/unitdate">
> <xsl:for-each select="did/unittitle">
> <xsl:value-of select="text()"/>
> <xsl:text> </xsl:text>
> <xsl:apply-templates select="./unitdate"/>
> </xsl:for-each>
> </xsl:when>
> <xsl:otherwise>
> <xsl:apply-templates select="did/unittitle"/>
> <xsl:text> </xsl:text>
> <xsl:apply-templates select="did/unitdate"/>
> </xsl:otherwise>
> </xsl:choose>
> </a>
> </p>
> </xsl:for-each>
> </xsl:for-each>
> </xsl:element>
></xsl:template>
>
></xsl:stylesheet>
>
>
>__________________________________________________
>Do You Yahoo!?
>Tired of spam? Yahoo! Mail has the best spam protection around
>http://mail.yahoo.com