我是XSL和XML的新手。我试图创建一个包含可以生成html文件的Name和ID的表,但是当我尝试运行它时没有输出。
这是我的xml代码:
<Column Description="POS Name"/>
<Column Description="POS ID"/>
</Columns>
<Row>
<POS Name>Mall 1</POS Name>
<POS ID>00001</POS ID>
</Row>
<Row>
<POS Name>Mall 2</POS Name>
<POS ID>00002</POS ID>
</Row>
<Row>
<POS Name>Mall 3</POS Name>
<POS ID>00003</POS ID>
</Row>
这是我的xsl代码:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://homecredit.net/homerselect/ws/incomingPayments/dto" version="1.0">
<xsl:output method="html" indent="yes" standalone="yes" />
<xsl:template match="/">
<xsl:element name="POS">
<xsl:attribute name="lang">en</xsl:attribute>
<xsl:element name="head">
<xsl:element name="title">POS</xsl:element>
</xsl:element>
<xsl:element name="table">
<xsl:attribute name="border">1</xsl:attribute>
<xsl:element name="tr">
<xsl:element name="th">POS NAME</xsl:element>
<xsl:element name="th">POS ID</xsl:element>
</xsl:element>
<xsl:element name="tr">
<xsl:element name="td">Mall</xsl:element>
<xsl:element name="td">00001</xsl:element>
</xsl:element>
<xsl:element name="tr">
<xsl:element name="td">Mall 2</xsl:element>
<xsl:element name="td">00002</xsl:element>
</xsl:element>
<xsl:element name="tr">
<xsl:element name="td">Mall 3</xsl:element>
<xsl:element name="td">00003</xsl:element>
</xsl:element>
</xsl:element>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
我需要的最终输出就像这样
POS Name POS ID Mall 00001 Mall 2 00002 Mall 3 00003
答案 0 :(得分:2)
请参阅http://zvon.org/xxl/XSLTutorial/Output/
XSLT用于将一个XML文档转换为另一个XML文档。为此,它匹配输入的部分并将所选部分发送到输出,如果需要,对它们进行操作。
如果您没有输入,请使用包含<dummy/>
的虚拟文件和以下xslt作为初学者: -
<?xml version="1.0" encoding="utf-8" standalone="no" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<head>
<title>POS</title>
</head>
<table>
</table>
</xsl:template>
</xsl:stylesheet>
在我的基于unix的系统上,这给出了: -
% xsltproc test.xslt in.xml
<?xml version="1.0"?>
<head><title>POS</title></head><table/>