Otaka-san: xsl:copy-of-Tag übernimmt Eigenschaften von a-Tag nicht

Beitrag lesen

Gut, also hier der XSL-Code:

<?xml version="1.0" encoding="utf-8"?>  
  
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">  
<xsl:output method="xml" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" indent="yes" />  
  
<xsl:key name="_sachgebiet" match="eintrag" use="sachgebiet" />  
  
<xsl:template match="/">  
  
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">  
<head>  
  
<title>Accipiter Media</title>  
<meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8" />  
<meta http-equiv="content-language" content="de-DE" />  
<meta http-equiv="content-style-type" content="text/css" />  
  
<link rel="stylesheet" type="text/css" href="global.css" />  
<link rel="shortcut icon" type="image/x-icon" href="http://www.accipiter-media.de/design/favicon.ico" />  
  
</head>  
  
<body>  
<div class="main">  
<div class="content">  
  
<h2>Literaturverzeichnis</h2>  
  
<p>Alle Angaben sind ohne Gewähr.</p>  
<div class="list_entry"><p class="note">Dies ist ein Blindtext, in den ein externer <a href="http://www.google.de">Link</a> eingebettet ist.</p></div>  
  
<img src="http://www.accipiter-media.de/images/hr.png" alt="&#x00A0;" style="height: 3px; width: 100%;" />  
  
<xsl:apply-templates select="liste" />  
  
</div>  
</div>  
</body>  
</html>  
  
</xsl:template>  
  
<xsl:template match="liste">  
<xsl:for-each select="eintrag[count(. | key('_sachgebiet', sachgebiet)[1]) = 1]"><xsl:sort select="sachgebiet" />  
<h3><a><xsl:attribute name="name"><xsl:value-of select="sachgebiet" /></xsl:attribute></a><xsl:value-of select="sachgebiet" /></h3>  
  
<xsl:apply-templates select="key('_sachgebiet', sachgebiet)">  
<xsl:sort select="a_sort" /><xsl:sort select="autor" /><xsl:sort select="t_sort" /><xsl:sort select="titel" />  
</xsl:apply-templates>  
</xsl:for-each>  
</xsl:template>  
  
<xsl:template match="eintrag">  
  
<img alt="#" class="list_pre" src="icons/book.png" />  
  
<div class="list_entry">  
<p class="list_top"><strong><xsl:value-of select="autor" />:</strong><xsl:text> </xsl:text><cite><xsl:value-of select="titel" /></cite><xsl:choose><xsl:when test="substring(titel,string-length(titel),1)!='!' and substring(titel,string-length(titel),1)!='?'">.</xsl:when></xsl:choose><xsl:text> </xsl:text><xsl:value-of select="verlag" />.</p>  
<p class="list_sub">ISBN: <xsl:value-of select="isbn" /></p>  
  
<p class="tag"><xsl:apply-templates select="tag"><xsl:sort select="." /></xsl:apply-templates></p>  
  
<p class="icon_generic"><img class="list-pre"><xsl:attribute name="src">icons/<xsl:value-of select="sprache/code" />.png</xsl:attribute><xsl:attribute name="alt"><xsl:value-of select="sprache/code" /></xsl:attribute></img>&#x00A0;<xsl:value-of select="sprache/lang" /></p>  
  
<xsl:choose><xsl:when test="boolean(referenz)"><p class="reference"><a target="_blank"><xsl:attribute name="href"><xsl:value-of select="referenz" /></xsl:attribute>Referenz zur Datenbank <xsl:choose><xsl:when test="referenz[@org = 'dnb']">der Deutschen Nationalbibliothek</xsl:when><xsl:when test="referenz[@org = 'loc']">der <span lang="en">Library of Congress</span></xsl:when></xsl:choose></a></p></xsl:when></xsl:choose>  
  
<xsl:choose><xsl:when test="boolean(resumee)"><xsl:apply-templates select="resumee/par" /></xsl:when></xsl:choose>  
</div>  
<div class="clear"></div>  
  
</xsl:template>  
  
<xsl:template match="resumee/par">  
<xsl:choose><xsl:when test="position()=1"><p class="note"><xsl:copy-of select="child::node()" /></p></xsl:when>  
<xsl:otherwise><p class="note_nextline"><xsl:copy-of select="child::node()" /></p></xsl:otherwise></xsl:choose>  
</xsl:template>  
  
<xsl:template match="tag">  
<xsl:choose><xsl:when test="position()=last()"><xsl:value-of select="." /></xsl:when>  
<xsl:otherwise><xsl:value-of select="." />, </xsl:otherwise></xsl:choose>  
</xsl:template>  
  
</xsl:stylesheet>

Und der betreffende XML-Code:

  
<?xml version="1.0" encoding="UTF-8"?>  
  
<!DOCTYPE liste [  
  
<!ELEMENT liste (eintrag+)>  
<!ELEMENT eintrag (sachgebiet,autor,a_sort?,titel,t_sort?,verlag,isbn,sprache,tag+,referenz?,resumee?)>  
<!ELEMENT autor (#PCDATA)>  
<!ELEMENT a_sort (#PCDATA)>  
<!ELEMENT titel (#PCDATA)>  
<!ELEMENT t_sort (#PCDATA)>  
<!ELEMENT verlag (#PCDATA)>  
<!ELEMENT isbn (#PCDATA)>  
<!ELEMENT sachgebiet (#PCDATA)>  
<!ELEMENT tag (#PCDATA)>  
<!ELEMENT sprache (code,lang)>  
<!ELEMENT code (#PCDATA)>  
<!ELEMENT lang (#PCDATA)>  
<!ELEMENT referenz (#PCDATA)>  
<!ATTLIST referenz org CDATA 'xxx'>  
<!ELEMENT resumee (par+)>  
<!ELEMENT par (#PCDATA|a|abbr|cite|q|strong|span)*>  
<!ELEMENT a (#PCDATA)>  
<!ATTLIST a href CDATA 'http://www.accipiter-media.de'>  
<!ELEMENT abbr (#PCDATA)>  
<!ATTLIST abbr title CDATA 'xxx'>  
<!ELEMENT cite (#PCDATA)>  
<!ELEMENT q (#PCDATA)>  
<!ELEMENT span (#PCDATA|a|abbr|cite|q|strong)*>  
<!ATTLIST span lang CDATA 'de'>  
<!ELEMENT strong (#PCDATA)>  
  
]>  
  
<?xml-stylesheet type="text/xsl" href="listebiblio.xsl" ?>  
  
<liste>  
  
<eintrag>  
<sachgebiet>Belletristik und chinesische Literatur</sachgebiet>  
<autor>Ba Jin</autor>  
<titel>Die Familie</titel>  
<t_sort>Familie, Die</t_sort>  
<verlag>Oberbaum Verlag, Berlin/St. Petersburg 2002</verlag>  
<isbn>3-933314-38-0</isbn>  
<sprache><code>de-de</code><lang>Deutsch (Deutschland)</lang></sprache>  
<tag>Belletristik</tag>  
<referenz org="dnb">http://d-nb.info/964957752</referenz>  
<resumee><par>Ba Jin erzählt die Chronik der Gaos, einer vier Generationen umfassenden feudalen Großfamilie im China der 20er Jahre, welche unter dem despotischen Regiment eines Greises leidet, der alles im alten konfuzianistischen alten Trott hält. Eingebundene Mädchenfüße und geldbringende Zwangshochzeiten inbegriffen! Doch die <a href="http://de.wikipedia.org/wiki/Bewegung_des_vierten_Mai">Studentenrebellion vom 4. Mai 1919</a> leitet einen radikalen Umbruch im Hause Gao ein, an dem letztendlich drei der vier weiblichen Hauptpersonen zugrunde gehen werden …</par></resumee>  
</eintrag>  
  
</liste>

Puh, viel Code, aber so wird es vielleicht klarer ... Also nochmal: Der Tex innerhalb des <a>-Tags wird angezeigt, aber nur als normaler Text mit dem Hoover-Effekt, aber ohne normale Link-Auszeichnung (also in meinem Falle einfach nur schwarz, ohne Unterstreichung, anstatt wie gewünscht, grau mit Unterstreichung. Beim Drüberfahren mit der Maus allerdings ist es korrekt hellgrau mit Unterstreichung), außerdem fehlt schlicht und ergreifend die Verlinkung.

Soweit ...