Thanks for everyone's response. My issue is now solved. Edward On Tue, Aug 2, 2011 at 8:33 AM, Ethan Gruber <[log in to unmask]> wrote: > +1 for Shawn's example. > > Ethan > > On Mon, Aug 1, 2011 at 9:30 PM, Shawn Averkamp <[log in to unmask]>wrote: > >> You could also combine the best of both solutions with: >> >> <xsl:for-each select="//dc:subject"> >> <tr> >> <td scope="col" class="width1"/> >> <th scope="col" class="width20">Subject</th> >> <xsl:if test="@xsi:type"> >> <xsl:text> (</xsl:text) >> <xsl:value-of select="substring-after(@xsi:type, ':')"/> >> <xsl:text>)</xsl:text> >> </xsl:if> >> <xsl:text>: </xsl:text> >> <td scope="col" class="widthAuto"> >> <xsl:value-of select="."/> >> </td> >> </tr> >> </xsl:for-each> >> >> ...which would allow for the addition of other controlled subject >> vocabularies (or none at all) without having to update your stylesheet. >> >> ----- >> Shawn Averkamp >> Metadata Librarian >> University of Alabama Libraries >> [log in to unmask] >> >> >> >> >> On Mon, Aug 1, 2011 at 6:03 PM, Enrico Silterra <[log in to unmask]> wrote: >> >> > something like >> > <xsl:for-each select="//dc:subject"> >> > > <tr> >> > > <td scope="col" class="width1"/> >> > > >> > <xsl:choose> >> > <xsl:when test="@xsi:type='dcterms:LCSH'"> >> > <th scope="col" class="width20">Subject: LCSH </th> >> > </xsl:when> >> > <xsl:when test="@xsi:type='dcterms:TGM'> >> > <th scope="col" class="width20">Subject: TGM</th> >> > </xsl:when> >> > </xsl:choose> >> > >> > > <td scope="col" class="widthAuto"><xsl:value-of select="." /> >> > > </td> >> > > </tr> >> > " >> > On Mon, Aug 1, 2011 at 5:54 PM, Edward M. Corrado <[log in to unmask]> >> > wrote: >> > > Hi, >> > > >> > > I am trying to do something with an xsl stylesheet (1.0) that seems >> > > like it should be pretty simple, but I can't figure out how to do it >> > > or find any examples on the Web that work-. I have a set of Dublin >> > > Core XML records that have the subjects as either LCSH or TGM. The >> > > type of subject is identified by xsi:type. So for an individual >> > > record, the subjects may look something like this: >> > > >> > > <dc:subject >> xsi:type="dcterms:LCSH">Drum--Kurdistan</dc:subject> >> > > <dc:subject xsi:type="dcterms:TGM">Drums (Musical >> > > instruments)--Kurds</dc:subject> >> > > >> > > I want this to display something like: >> > > >> > > Subject (LCSH): Drum--Kurdistan >> > > Subject (TGM): Drums (Musical instruments)--Kurds >> > > >> > > >> > > The following works fine to print the subjects (as part of an HTML >> > > table) but (obviously) does not take into account the type of subject >> > > heading: >> > > >> > > <xsl:for-each select="//dc:subject"> >> > > <tr> >> > > <td scope="col" class="width1"/> >> > > <th scope="col" class="width20">Subject: </th> >> > > <td scope="col" class="widthAuto"><xsl:value-of select="." /> >> > > </td> >> > > </tr> >> > > </xsl:for-each> >> > > >> > > I need some sort of logic to test what the value of xsi:type is but >> > > I'm lost. I have been trying to find examples on how to do this on th >> > > Web and in a few XSLT books we have in the library with no luck. Any >> > > ideas? >> > > >> > > Edward >> > > >> > >> > >> > >> > -- >> > Enrico Silterra Software Engineer >> > 501 Olin Library Cornell University Ithaca NY 14853 >> > Voice: 607-255-6851 Fax: 607-255-6110 E-mail: [log in to unmask] >> > http://www.library.cornell.edu/dlit >> > "Out of the crooked timber of humanity no straight thing was ever made" >> > CONFIDENTIALITY NOTE >> > The information transmitted, including attachments, is intended only >> > for the person or entity to which it is addressed and may contain >> > confidential and/or privileged material. Any review, retransmission, >> > dissemination or other use of, or taking of any action in reliance >> > upon, this information by persons or entities other than the intended >> > recipient is prohibited. If you received this in error, please contact >> > the sender and destroy any copies of this document. >> > >> >