代码之家  ›  专栏  ›  技术社区  ›  star

Mule ESB:如何使用DataMapper中的规则进行条件检查

  •  2
  • star  · 技术社区  · 10 年前

    请帮助我。我正在使用数据映射器将xml转换为csv。PF我的xml如下。如果ID=1,那么我需要映射schoolRating,并且ID=2,那么需要映射school Rating与csv中的其他字段。虽然这个xml是我创建的模式。

    <root>
      <schoolTypes>
        <ID>1</ID>
         <Record>
           <SchoolRating>4.0</SchoolRating>
           <Tables>67</Tables>
         </Record>
      </schoolTypes>
      <schoolTypes>
       <ID>2</ID>
         <Record>
           <SchoolRating>3.0</SchoolRating>
            <Tables>67</Tables>
         </Record>
       </schoolTypes>
     </root>
    

    我曾试图在DataMapper中创建这样的规则,但它引发了错误。

         Context:  /ns0:root
         Xpath:    /ns0:schoolTypes/@(ns0:ID='1')/ns0:Record/ns0:SchoolRating
    

    也尝试了多种选择,但没有希望。请让我知道这个条件的正确语法或在DataMapper中处理这个问题的任何其他方法。提前感谢。

    1 回复  |  直到 10 年前
        1
  •  2
  •   Jad Kaiden    10 年前

    您应该在DataMapper中创建规则:

    Context:  /ns0:root
    Xpath:    /ns0:schoolTypes[ns0:ID='1']/ns0:Record/ns0:SchoolRating
    

    你可能需要检查 this 了解更多信息。