0
我正在將xml文件導入Access,並使用xslt文件轉換文件以包含每個節的orderNumber。不確定適當的名詞。 在下面的代碼中,我得到的項目添加了字段和orderNumber,並且只爲其他部分,shippingAddress,付款等字段。轉換xslt不轉換所有元素
我不太明白是否需要進行更改才能獲取orderNumber的數據添加到字段中。
任何幫助將不勝感激。
格雷格
這是我給什麼樣的工作。
<?xml version="1.0" encoding="UTF-8"?>
-<orders xmlns:php="http://php.net/xsl">
-<order>
<orderNumber>100000379</orderNumber>
-<billingAddress>
<company>Acme</company>
<name>John Doe</name>
<address1>59 Any St</address1>
<address2/>
<city>New York</city>
<state>NY</state>
<zip>10013-4020</zip>
<country>US</country>
<phone>212-555-1212</phone>
</billingAddress>
-<shippingAddress>
<company>Acme</company>
<name>John Doe</name>
<address1>59 Any St</address1>
<address2/>
<city>New York</city>
<state>NY</state>
<zip>10013-4020</zip>
<country>US</country>
<phone>212-555-1212</phone>
</shippingAddress>
<createdOn>2016-06-22 14:38:06</createdOn>
<shipMethod>ups_GND</shipMethod>
<shipDescription>United Parcel Service - Ground</shipDescription>
-<payment>
<tax>0</tax>
<shipmentCost>26.76</shipmentCost>
<subtotalExclTax>1616</subtotalExclTax>
<subtotalInclTax>1616</subtotalInclTax>
<discount>0</discount>
<grandTotal>1642.76</grandTotal>
<paymentMethod>purchaseorder</paymentMethod>
</payment>
-<items>
-<item>
<itemId>645</itemId>
<productId>171</productId>
<sku>12749</sku>
<qty>1</qty>
<price>858</price>
<tax>0</tax>
<itemTotal>858</itemTotal>
</item>
-<item>
<itemId>646</itemId>
<productId>178</productId>
<sku>127478</sku>
<qty>1</qty>
<price>758</price>
<tax>0</tax>
<itemTotal>758</itemTotal>
</item>
</items>
</order>
</orders>
這是xslt代碼。我發現這是一個例子,但我似乎無法使它工作。
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/">
<dataroot>
<xsl:apply-templates select="@*|node()"/>
</dataroot>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="billingAddress">
<billingAddress>
<orderNumber><xsl:value-of select="../../orderNumber"/></orderNumber>
<xsl:apply-templates select="node()"/>
</billingAddress>
</xsl:template>
<xsl:template match="shippingAddress">
<shippingAddress>
<orderNumber><xsl:value-of select="../../orderNumber"/></orderNumber>
<xsl:apply-templates select="node()"/>
</shippingAddress>
</xsl:template>
<xsl:template match="payment">
<payment>
<orderNumber><xsl:value-of select="../../orderNumber"/></orderNumber>
<xsl:apply-templates select="node()"/>
</payment>
</xsl:template>
<xsl:template match="items">
<xsl:apply-templates select="@*|node()"/>
</xsl:template>
<xsl:template match="item">
<item>
<orderNumber><xsl:value-of select="../../orderNumber"/></orderNumber>
<xsl:apply-templates select="@*|node()"/>
</item>
</xsl:template>
芭菲,非常感謝你。每天學些新東西。 – Greg