当前位置: 首页 > 知识库问答 >
问题:

爪哇。将XSL样式表内部嵌入到XML文档中

盖泽宇
2023-03-14

我想使用Java在现有XML文档中嵌入XSL样式表。我找到了这样的答案:将xsl嵌入到XML文件中是可能的

但是我使用这种格式,因为上面的例子对我不起作用。它粘贴在下面作为一个例子。http://www.calebmadrigal.com/embedding-xslt-xml-document/

    <?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xml" href="#stylesheet"?>
<!DOCTYPE catalog [
<!ATTLIST xsl:stylesheet
  id    ID  #REQUIRED>
]>
<catalog>
<xsl:stylesheet id="stylesheet" version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
  <h2>My CD Collection</h2>
    <table border="1">
      <tr bgcolor="#9acd32">
        <th>Title</th>
        <th>Artist</th>
      </tr>
      <xsl:for-each select="catalog/cd">
      <tr>
        <td><xsl:value-of select="title"/></td>
        <td><xsl:value-of select="artist"/></td>
      </tr>
      </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

    <cd>
        <title>Empire Burlesque</title>
        <artist>Bob Dylan</artist>
        <country>USA</country>
        <company>Columbia</company>
        <price>10.90</price>
        <year>1985</year>
    </cd>
    <cd>
        <title>Hide your heart</title>
        <artist>Bonnie Tyler</artist>
        <country>UK</country>
        <company>CBS Records</company>
        <price>9.90</price>
        <year>1988</year>
    </cd>
</catalog>

我尝试过将xsl一行一行地写到xml文档中(类似于将xml文档剪切和粘贴在一起),但在使用DOM解析器时,这似乎会扰乱对文档的读取,而且不太优雅。这可能吗?

共有1个答案

祁高格
2023-03-14

如果使用http://docs.oracle.com/javase/7/docs/api/javax/xml/stream/xmlstreamwriter.html#writedtd(java.lang.string),就可以写出所需的DOCTYPE节点。我认为W3C DOM API不允许您使用嵌入的元素和属性声明创建DOCTYPE节点。

 类似资料:
  • 目前我正在开发一个应用程序,允许用户创建一个模板并将其生成为DOCX文件。应用程序需要能够在用户创建模板时向用户显示模板中的更改。 我尝试的方法是使用DOCX4J库(允许操作DOCX文件)和ICEPDF,后者主要用于通过将DOCX首先转换为PDF文件来将其显示到swing组件中。现在,这种方法的问题是加载速度非常慢,DOCX文件中发生的一些更改没有反映在PDF转换中(例如:虚线下划线、字体更改)。

  • 我想使用XSL编码在XML开始时添加样式表标记 输入XML:

  • 我在java程序中嵌入了fop: 现在我的xsl (main_structure.xsl)需要一个参数来运行 在控制台中,我将使用“-param name value”属性将该参数传递给fop。 那么,在fop的嵌入式版本中,如何将一个参数传递到我的xsl文件中呢?

  • 问题内容: 我读了很多文章,尝试了很多事情,但仍然无法通过xsl在参数中找到值。我从java的sun xalan开始,但是从来没有运行过,所以我改用saxon无济于事。我想将两个xml文档与xls合并为一个。永远不要在文件系统上,这是用于构建xml字符串/ docs的Web应用程序。我尝试将DTMAxisIterator,DomSource,Doc传递给以xsl,字符串设置的Node。在带有xsl

  • 您可以在Perl模块和脚本中嵌入Pod(Plain Old Text)文档。 以下是在Perl代码中使用嵌入式文档的规则 - 使用空行开始您的文档,在开头使用a = head1命令,然后使用= cut结束它 Perl将忽略您在代码中输入的Pod文本。 以下是在Perl代码中使用嵌入式文档的简单示例 - #!/usr/bin/perl print "Hello, World\n"; =head1 H