xml - 如何解析 XSLT 中 CDATA 元素内的 XML DOM?

标签 xml xslt xpath cdata

假设我有一个像这样的 XML 文件:

<library>
 <books>
  <![CDATA[<genre><name>Sci-fi</name><count>2</count></genre>]]>
  <book>
   <name>
    Some Book
   </name>
   <author>
    Some author
   </author>
  <book>
  <book>
   <name>
    Another Book
   </name>
   <author>
    Another author
   </author>
  <book>
 <books>
</library>

我想读取 xslt 转换器中的 CDATA 元素“名称”,并将其值放在标记值中的某处。我该怎么做呢? AFAIK,我们不能对 CDATA 的内容使用 xpath。是否有一些破解/解决方法?我想在 XSLT 中严格执行此操作。

最佳答案

某些 XSLT 产品具有扩展功能,例如 saxon:parse(),它允许您获取包含词汇 XML 的字符串并将其转换为节点树。

关于xml - 如何解析 XSLT 中 CDATA 元素内的 XML DOM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10323332/

相关文章:

java - 如何修改 XML 文件的元素然后打印整个内容

xslt - 如何在XSL-FO中正确插入空行?

java - xpath可以用来搜索网站的链接吗?

Java XML : using DOM with StAX to construct a document

java - XML/REST Spring Web 服务中未考虑 @XmlElementWrapper

c# - 在 XML 序列化期间忽略属性 XmlNamespaceDeclarations

xml - 为什么//后代也在这个 XSLT 模板中评估 sibling ?

java - 默认的 TransformerFactory 是什么?

xml - 如何在没有命名空间的情况下获取属性值?

java xpath 无效 xpath 错误