2013-04-16 56 views
0

我tryng來製作複雜的映射(複雜我)與後續的情景:騾子DataMapper的字符串列表

在:

<root> 
    <bigrow> 
     <row>1</row> 
     <row>second</row> 
     <row>third</row> 
    </bigrow> 
    <bigrow> 
     <row>4</row> 
     <row>rowvalue</row> 
     <row>anotherrowvalue</row> 
    </bigrow> 
</root> 

日期:

<entities> 
    <entity> 
     <atributeA>1</atributeA> 
     <atributeB>some</atributeB> 
     <atributeC>value</atributeC> 
    </entity> 
    <entity> 
     <atributeA>2</atributeA> 
     <atributeB>another</atributeB> 
     <atributeC>valuee</atributeC> 
    </entity> 
    <entity> 
     <atributeA>3</atributeA> 
     <atributeB>ooother</atributeB> 
     <atributeC>valueee</atributeC> 
    </entity> 
</entities> 

我要地圖行元素從入口順序,所以期望的結果需要是這樣的:

<entities> 
    <entity> 
     <atributeA>1</atributeA> 
     <atributeB>second</atributeB> 
     <atributeC>third</atributeC> 
    </entity> 
    <entity> 
     <atributeA>4</atributeA> 
     <atributeB>rowvalue</atributeB> 
     <atributeC>anotherrowvalue</atributeC> 
    </entity> 
</entities> 

我創建的地圖製作的條目,並輸出爲XML,並從該兩個XML和DataMapper的窗口生成模式看起來像這樣:

http://i.stack.imgur.com/6CYrR.png

我不能找到如何使這項工作...如果有人可以幫助我,這可以讓我快樂=)

回答

0

Mule帶有XSL-T變壓器,所以,如果你有興趣,這裏是轉換,實現你的目標,而不使用重DataMapper的炮兵。

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <xsl:output method="xml" indent="yes"/> 
    <xsl:template match="/"> 
    <entities> 
     <xsl:apply-templates /> 
    </entities> 
    </xsl:template> 

    <xsl:template match="bigrow"> 
    <entity> 
     <atributeA> 
     <xsl:value-of select="child::row[position()=1]/text()" /> 
     </atributeA> 
     <atributeB> 
     <xsl:value-of select="child::row[position()=2]/text()" /> 
     </atributeB> 
     <atributeC> 
     <xsl:value-of select="child::row[position()=3]/text()" /> 
     </atributeC> 
    </entity> 
    </xsl:template> 
</xsl:stylesheet> 
+0

感謝您的快速回答,非常有用您的XSLT解決方案!但是我想使用DataMapper,因爲我想知道該工具的所有功能,以便與其他產品進行一些比較,而這是我想知道的問題之一,如果我可以使用DataMapper解決並避免使用其他技術XSLT – Nicolas

+0

好點。毫無疑問,這對於DM來說是可能的。也許切換到腳本視圖並使用MEL編寫映射規則?希望DM用戶會發出一個明確的答案。 –

相關問題