我是XSLT世界的新手,請耐心等待。 我有一個Web服務的XML輸出結構如下:這可以在XSLT中完成嗎?
<NotificationListResponse>
<MessageReceiver ID=15>
<Services>
<Service ID=40>
<...Other Tags Per Service ...>
</Service>
<Service ID=38>
<...Other Tags Per Service ...>
</Service>
</Services>
</MessageReceiver>
<MessageReceiver ID=18>
<Services>
<Service ID=40>
<...Other Tags Per Service ...>
</Service>
<Service ID=38>
<...Other Tags Per Service ...>
</Service>
</Services>
</MessageReceiver>
</NotificationListResponse>
而且我想變成這個東西是這樣的:
<NotificationListResponse>
<Services>
<Service ID=40>
<Receivers>
<MessageReceiver ID=15>
<...Other Tags Per Service ...>
</MessageReceiver>
<MessageReceiver ID=18>
<...Other Tags Per Service ...>
</MessageReceiver>
</Receivers>
</Service>
<Service ID=38>
<Receivers>
<MessageReceiver ID=15>
<...Other Tags Per Service ...>
</MessageReceiver>
<MessageReceiver ID=18>
<...Other Tags Per Service ...>
</MessageReceiver>
</Receivers>
</Service>
</Services>
</NotificationListResponse>
我希望這是非常明顯的。我想要做的是按服務進行分段,在Web服務響應中,主要分段由接收方進行。
這甚至可以在XSLT中完成,而不會將XML解壓縮到對象中並在代碼中進行轉換?我們的主要編程語言是C#,以防相關。
答案是肯定的。搜索Muenchian分組,或直接閱讀:http://www.jenitennison.com/xslt/grouping/muenchian.html –