Print

Print


On Fri, 28 Jan 2005 14:12:18 -0500, Bruce D'Arcus <[log in to unmask]> wrote:
> First, Karen correctly pointed out I was off-track.  Yes, this ought to
> be handled in the translation attribute.  But, on this ...
>
> On Jan 28, 2005, at 1:08 PM, Mike Rylander wrote:
>
> > On Fri, 28 Jan 2005 12:34:22 -0500, Andrew E Switala
> > <[log in to unmask]> wrote:
> >> Language is already separate from the title, thus,
> >>
> >> <mods>
> >>   <titleInfo type="uniform">
> >>     <title>Harry Potter and the prisoner of Azkaban</title>
> >>   </titleInfo>
> >>   <language>
> >>     <languageTerm type="text">Spanish</languageTerm>
> >>   </language>
> >> </mods>
> >
> > Except that 240$l gets embeded in the mods:title with the stock
> > MARC21slim2MODS.xsl.  I suppose I could just remove that locally, but
> > that seems like the WrongThing(tm).  And the <language> looks like it
> > is taken from 041 in any case.
>
> You mean you get this?
>
> <titleInfo type="uniform">
>    <title>Harry Potter and the prisoner of Azkaban. Spanish</title>
> </titleInfo>
>
> If yes, that should be changed in the default stylesheet.  I'd call it
> a bug ;-)

That's exactly what I get.  Here is the offending chunk from the
stylesheet (line 152):

                        <xsl:for-each
select="marc:datafield[@tag=130]|marc:datafield[@tag=240]|marc:datafield[@tag=730][@ind2!=2]">
                                <titleInfo type="uniform">
                                        <title>
                                                <xsl:variable name="str">
                                                        <xsl:for-each
select="marc:subfield">

<xsl:if test="(contains('adfhklmor',@code) and
(not(../marc:subfield[@code='n'
or @code='p']) or (following-sibling::marc:subfield[@code='n' or @code='p'])))">

 <xsl:value-of select="text()"/>

 <xsl:text> </xsl:text>
                                                                </xsl:if>
                                                        </xsl:for-each>
                                                </xsl:variable>
                                                <xsl:value-of
select="substring($str,1,string-length($str)-1)"/>
                                        </title>
                                        <xsl:call-template name="part"/>
                                </titleInfo>
                        </xsl:for-each>


Maybe those tag matches should be split up?

--
Mike Rylander
[log in to unmask]
GPLS -- PINES Development
Database Developer
http://open-ils.org