PHP-是否可以使用xslt转换将XML文件转换为XSL文件

用户9293

我正在尝试使用xsl转换基于XML配置文件生成XSL文件。

这是我的意见。

<front>
   <sample1/>
   <sample2/>
   <sample3>
       <item1/>
       <item2/>
       <item3/>
       <item4/>
   </sample3>
   <sample4/>
</front>

我期望得到xsl文件,

<xsl:template match="//div[@class='front']">
    <xsl:apply-templates select=".//*[@class='sample1']"/>
    <xsl:apply-templates select=".//*[@class='sample2']"/>
    <xsl:apply-templates select=".//*[@class='sample3']"/>
    <xsl:apply-templates select=".//*[@class='sample4']"/>
</xsl:template> 
<xsl:template match="//*[@class='sample3']">
    <xsl:apply-templates select=".//*[@class='item1']"/>
    <xsl:apply-templates select=".//*[@class='item2']"/>
    <xsl:apply-templates select=".//*[@class='item3']"/>
    <xsl:apply-templates select=".//*[@class='item4']"/>
</xsl:template> 

这可以使用xsl转换完成吗?主要思想是每当我在配置文件中进行更改时,都无需编写xsl文件。它应该被生成。如果我进行更改,

    <front>
       <sample1/>
       <sample2/>
       <sample4/>
       <sample3>
           <item1/>
           <item2/>
           <item4/>
           <item3/>
       </sample3>
    </front>

xsl应该是

<xsl:template match="//div[@class='front']">
   <xsl:apply-templates select=".//*[@class='sample1']"/>
   <xsl:apply-templates select=".//*[@class='sample2']"/>
   <xsl:apply-templates select=".//*[@class='sample4']"/>
   <xsl:apply-templates select=".//*[@class='sample3']"/>
</xsl:template> 
   <xsl:template match="//*[@class='sample3']">
   <xsl:apply-templates select=".//*[@class='item1']"/>
   <xsl:apply-templates select=".//*[@class='item2']"/>
   <xsl:apply-templates select=".//*[@class='item4']"/>
   <xsl:apply-templates select=".//*[@class='item3']"/>
</xsl:template>

任何帮助将不胜感激。提前致谢!

michael.hor257k

在XSLT规范本身中,有一个使用XSLT生成样式表的示例:https ://www.w3.org/TR/xslt/#element-namespace-alias

尝试类似的东西:

XSLT 1.0

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:axsl="http://www.w3.org/1999/XSL/TransformAlias">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:strip-space elements="*"/>

<xsl:namespace-alias stylesheet-prefix="axsl" result-prefix="xsl"/>

<xsl:template match="/">
    <axsl:stylesheet version="1.0">
        <xsl:apply-templates/>
    </axsl:stylesheet>
</xsl:template>

<xsl:template match="/*">
    <axsl:template match="div[@class='{name()}']">
        <xsl:apply-templates mode="apply"/>
    </axsl:template>
    <xsl:apply-templates select="*[*]"/>
</xsl:template>

<xsl:template match="*">
    <axsl:template match="*[@class='{name()}']">
        <xsl:apply-templates mode="apply"/>
    </axsl:template>
    <xsl:apply-templates select="*[*]"/>
</xsl:template>

<xsl:template match="*" mode="apply">
    <axsl:apply-templates select=".//*[@class='{name()}']"/>
</xsl:template>

</xsl:stylesheet>

注意事项

  1. //比赛模式中的领先优势完全是多余的;

  2. 您确定要.//xsl:apply-templates select表达式中包含它吗?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用php将.xlsx文件转换为.xml文件?

来自分类Dev

使用mPDF将php文件转换为pdf文件

来自分类Dev

使用mPDF将php文件转换为pdf文件

来自分类Dev

如何使用php将kml文件转换为图像?

来自分类Dev

使用PHP将文本文件转换为数组

来自分类Dev

将Python POST文件转换为PHP

来自分类Dev

使用PHP将JSON转换为XML

来自分类Dev

在php中将XML文档转换为Array时,是否可以将其转换回并保存为属性为元素的XML文件?

来自分类Dev

是否可以使用PHP在文本中将希腊词转换为希腊符号?

来自分类Dev

有没有办法使用 php 或某个包将 XML 文件转换为 OWL 文件?

来自分类Dev

您可以将PHP文件的文件夹转换为netbeans项目吗?

来自分类Dev

是否可以从PHP Web应用程序上载.rtf文件并将其转换为.gdoc?

来自分类Dev

是否可以将 CURL 命令转换为 PHP?

来自分类Dev

使用php脚本将ANSI编码的文件转换为UTF-8编码的文件?

来自分类Dev

PHP / HTML文件转换为html文件

来自分类Dev

PHP将定界文本文件转换为XML

来自分类Dev

php将字符串转换为csv文件,

来自分类Dev

将PHP脚本转换为可执行文件

来自分类Dev

PHP将Excel文件从“ .xlsx”转换为“ .xlsx”

来自分类Dev

将文件内容转换为二维数组PHP

来自分类Dev

将希伯来语json转换为php文件

来自分类Dev

如何将JSON文件转换为PHP文件,而PHP文件包含return []; 对于include()呢?

来自分类Dev

在用户apache下使用LibreOffice将文件转换为PDF(即使用PHP时)

来自分类Dev

使用xslt文件将xml文件转换为svg?

来自分类Dev

使用PHP将XML数据转换为HTML

来自分类Dev

使用标签将xml转换为字符串php

来自分类Dev

PHP - 使用 CDATA 将数组转换为 XML

来自分类Dev

使用php将.doc扩展文件转换为文本格式时显示不同的字符

来自分类Dev

使用VB或PHP将Lotus 123转换为Excel文件以MS Access

Related 相关文章

  1. 1

    如何使用php将.xlsx文件转换为.xml文件?

  2. 2

    使用mPDF将php文件转换为pdf文件

  3. 3

    使用mPDF将php文件转换为pdf文件

  4. 4

    如何使用php将kml文件转换为图像?

  5. 5

    使用PHP将文本文件转换为数组

  6. 6

    将Python POST文件转换为PHP

  7. 7

    使用PHP将JSON转换为XML

  8. 8

    在php中将XML文档转换为Array时,是否可以将其转换回并保存为属性为元素的XML文件?

  9. 9

    是否可以使用PHP在文本中将希腊词转换为希腊符号?

  10. 10

    有没有办法使用 php 或某个包将 XML 文件转换为 OWL 文件?

  11. 11

    您可以将PHP文件的文件夹转换为netbeans项目吗?

  12. 12

    是否可以从PHP Web应用程序上载.rtf文件并将其转换为.gdoc?

  13. 13

    是否可以将 CURL 命令转换为 PHP?

  14. 14

    使用php脚本将ANSI编码的文件转换为UTF-8编码的文件?

  15. 15

    PHP / HTML文件转换为html文件

  16. 16

    PHP将定界文本文件转换为XML

  17. 17

    php将字符串转换为csv文件,

  18. 18

    将PHP脚本转换为可执行文件

  19. 19

    PHP将Excel文件从“ .xlsx”转换为“ .xlsx”

  20. 20

    将文件内容转换为二维数组PHP

  21. 21

    将希伯来语json转换为php文件

  22. 22

    如何将JSON文件转换为PHP文件,而PHP文件包含return []; 对于include()呢?

  23. 23

    在用户apache下使用LibreOffice将文件转换为PDF(即使用PHP时)

  24. 24

    使用xslt文件将xml文件转换为svg?

  25. 25

    使用PHP将XML数据转换为HTML

  26. 26

    使用标签将xml转换为字符串php

  27. 27

    PHP - 使用 CDATA 将数组转换为 XML

  28. 28

    使用php将.doc扩展文件转换为文本格式时显示不同的字符

  29. 29

    使用VB或PHP将Lotus 123转换为Excel文件以MS Access

热门标签

归档