0
我有一個結果集結構,如更改XML節點結構
<ResultSets>
<ResultSet rowCount="100">
<Row>
<InvoiceNr>12345</InvoiceNr>
<InvoiceItem>0</InvoiceItem>
<Year>2014</Year>
<Month>201401</Month>
<Week>201402</Week>
<ItemCategory/>
<BillingType/>
<BPCodeSoldTo>123456</BPCodeSoldTo>
<BPCodeShipTo/>
</Row>
<Row>
<InvoiceNr>123452</InvoiceNr>
<InvoiceItem>1</InvoiceItem>
<Year>2014</Year>
<Month>201401</Month>
<Week>201402</Week>
<ItemCategory/>
<BillingType/>
<BPCodeSoldTo>123452</BPCodeSoldTo>
<BPCodeShipTo/>
<BPCodeBillTo/>
</Row>
</ResultSet>
</ResultSets>
我需要的結構改變爲
<io>
<row>
<col>12345</col>
<col>0</col>
<col>2014</col>
<col>201401</col>
<col>201402</col>
<col/>
<col/>
<col>123456</col>
<col/>
<col/>
</row>
<row>
<col>123452</col>
<col>1</col>
<col>2014</col>
<col>201401</col>
<col>201402</col>
<col/>
<col/>
<col>123452</col>
<col/>
<col/>
</row>
</io>
我有做它現在(這是不實際代碼,但只是一個想法),它的工作原理。但是,有沒有一種方法可以不顯式地標識列標籤名稱,並有一個只是捕獲所有子標籤並將其放入值結構的語句?
<row>
<xsl:foreach../RecordSets/RecordSet/Row>
<col>
<xsl:value of select = "InvoiceNr"/>
</col>
<col>
<xsl:value of select = "InvoiceItem"/>
</col>
<col>
<xsl:value of select = "Year"/>
</col>
<col>
<xsl:value of select = "InvoiceNr"/>
</col>
....
</xsl:foreach>
</row>
***另一個問題。在我原來的結構中。我可能有ResultSets/ResultSet或Just ResulSet(取決於它所運行的查詢的類型)如何忽略它,只是說ResultSets/ResultSet/Row或ResultSet/Row會起作用?
輝煌,是否有任何好書或資源來學習呢?我真的需要快速抓住XSLT和XPATH。 但無論如何。非常感謝! – user3379902
@ user3379902我確定有,但我不是正確的人。 –
哦..還有一件事。無論如何要排除語句中的某個標籤。例如,選擇除了如果tagname = ? –
user3379902