我有这个xml:
<TEI>
<text>
<body>
<div>
<pb facs="01.jpg"/>
<panel facs="#p1" characters="#Matt_Feazell">
<caption facs="#p1c1">My old pal <hi rend="italic">Matt Feazell</hi> called the other
day.</caption>
<balloon facs="#p1b1" who="#Matt_Feazell">So, Scott, what's your next project going to be now that you've
finished <q>Zot</q>?</balloon>
</panel>
</div>
</body>
</text>
</TEI>
和这个xsl
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:output encoding="UTF-8" method="xml" omit-xml-declaration="yes"/>
<xsl:template match="/">
<html>
<body>
<img alt="sorry" src="{/TEI/text/body/div/pb/@facs}" ></img>
<xsl:value-of select="/TEI/text/body/div/panel/balloon"/>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
我尝试了各种解决方案,例如和不同的源,文件位置,链接方法,但无法找到可靠的解决方案。拜托,任何帮助都会很棒,这个问题困在我的脑海里。非常感谢您的帮助和教训。
答案 0 :(得分:0)
您正在创建HTML,因此使用<xsl:output encoding="UTF-8" method="xml" omit-xml-declaration="yes"/>
可能不对,请使用method="html"
。除此之外,您的样式表确实创建了img
结果元素,src
属性设置为01.jpg
,因此,如果浏览器不渲染图像,那么它可能在不同的位置。无论如何,XSLT都不呈现任何内容,它将(XML)输入转换为XML或HTML或纯文本输出。