【发布时间】:2013-04-17 08:48:02
【问题描述】:
我有一个转换,我试图记录一组扁平化交易详细信息,并在文件末尾提供按投标类型和登记号分组的总数的总和。
记录一组单独的交易细节是很容易的部分,我工作得很好,但我在总结部分苦苦挣扎。
问题是我不知道有什么或多少个不同的寄存器号,或者有什么或有多少投标类型(因此在 xslt 中明确列出带有静态过滤器字符串的摘要是不行的) ,所以某种分组似乎是有序的。
再来一个扳手——我被 XSLT 1.0 卡住了……
我尝试弄乱 muenchian 分组,但在复合键要求(注册生活在与付款方式不同的级别)和我对 muenchian 方法和键如何工作的有限理解之间我不能似乎让它工作了,但我认为它仍然可能是需要的技巧......
有什么建议可以让我用 muenchia 神奇地让它工作吗?
这是一个示例源文档:
<s0:SalesCollection xmlns:s0="http://mySourceSchema">
<s0:Sale transactionnumber="1" register="1">
<s0:Tender amount="1.11" paymentmethod="visa" />
<s0:Tender amount="2.22" paymentmethod="mastercard" />
</s0:Sale>
<s0:Sale transactionnumber="2" register="1">
<s0:Tender amount="5.55" paymentmethod="discover" />
<s0:Tender amount="4.44" paymentmethod="visa" />
</s0:Sale>
<s0:Sale transactionnumber="1" register="2">
<s0:Tender amount="9.99" paymentmethod="amex" />
<s0:Tender amount="8.88" paymentmethod="visa" />
</s0:Sale>
</s0:SalesCollection>
这就是我想要的(同样,我的记录 [@type='detail'] 记录已经在工作):
<ns0:root xmlns:ns0="http://myDestinationSchema">
<ns0:record type="detail" transactionnumber="1" register="1" amount="1.11" paymentmethod="visa" />
<ns0:record type="detail" transactionnumber="1" register="1" amount="2.22" paymentmethod="mastercard" />
<ns0:record type="detail" transactionnumber="2" register="1" amount="5.55" paymentmethod="discover" />
<ns0:record type="detail" transactionnumber="2" register="1" amount="4.44" paymentmethod="visa" />
<ns0:record type="detail" transactionnumber="1" register="2" amount="9.99" paymentmethod="amex" />
<ns0:record type="detail" transactionnumber="1" register="2" amount="8.88" paymentmethod="visa" />
<ns0:record type="summary" register="1" amount="5.55" paymentmethod="visa" />
<ns0:record type="summary" register="1" amount="2.22" paymentmethod="mastercard" />
<ns0:record type="summary" register="1" amount="5.55" paymentmethod="discover" />
<ns0:record type="summary" register="2" amount="9.99" paymentmethod="amex" />
<ns0:record type="summary" register="2" amount="8.88" paymentmethod="visa" />
</ns0:root>
那么如何使用 xslt 1.0 创建按注册和付款方式分组的摘要记录?
【问题讨论】:
标签: xml xslt muenchian-grouping