How to ignore namespace when selecting XML nodes with XPath

后端 未结 2 1431
一向
一向 2020-11-29 04:37

I have to parse an XML document that looks like this:

  
 

        
2条回答
  •  慢半拍i
    慢半拍i (楼主)
    2020-11-29 05:09

    Use:

    /*/*/*/*/*
            [local-name()='REPORT_DATA' 
           or 
             local-name()='REPORT_HEADER'
            ]
    

    Anyone care for more complete syntax?

    String xPathExpression = "/*[local-name()='OASISReport]
                              /*[local-name()='MessagePayload]
                              /*[local-name()='RTO]
                              /*[local-name()='REPORT_ITEM]
                              /*[local-name()='REPORT_DATA"];
    

    Btw, if the XPath also requires the element index position:

    String xPathExpression = "/*[local-name()='OASISReport][1]
    

提交回复
热议问题