早上好!我只有一個小問題。我有一個XML結構,這裏有一個例子XSL - 組合以下兄弟在每個循環中
<?xml version="1.0" encoding="UTF-8"?>
<div type="letter">
<head>
<persName type="creator">
<forename>Theo</forename>
<surname>Barnes</surname>
</persName>
<persName type="addressee">
<forename>Alex</forename>
<surname>Rollett</surname>
</persName>
</head>
<opener>
<dateline>
<date when="2015-01">2015-01</date>
<placeName key="Graz">Graz</placeName>
</dateline>
<salute>Hello everybody</salute>
</opener>
</div>
這裏是我的XSL樣式表:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
exclude-result-prefixes="xs"
version="2.0">
<xsl:template match="/">
<div>
<head>
<xsl:for-each select="//persName[@type='creator']">
<xsl:text> From </xsl:text>
<xsl:value-of select="forename"/>
<xsl:text> to </xsl:text>
<xsl:value-of select="following-sibling::persName[1]/forename"/>
<xsl:if test="position() != last()">
</xsl:if>
<xsl:text> at </xsl:text>
<!-- her is the error, i think but why-->
<xsl:value-of select="dateline[1]/date"/>
</xsl:for-each>
</head>
</div>
</xsl:template>
</xsl:stylesheet>
我有問題,那我不能夠添加日期變更線或價值placeName並不重要。 Id也應該在一個循環中工作,因爲這只是文檔的簡短剪輯。所以我的問題是我的錯誤在哪裏。我已經提出了代碼中的問題點。 目前的輸出是:
From Theo to Alex at
我想到還是更好,我正在尋找以下的輸出:
From Theo to Alex at 2015-01 location Graz
所有最好的,從你讀很快。 歡呼聲
謝謝你的ax表達,這也是工作。它始終是導航到XML表達式的方式或?祝你有個愉快的時光 – Mchoeti