子提取XML保留命名空间

时间:2014-01-22 15:24:37

标签: java xml validation xsd

IN JAVA 1.5

我有一个带有名称空间的XML文件,该文件以CBISEDACReqPhyMsg开头,我需要创建一个以xml开头的名称,保留以CBIBdySEDACReq开头的名称空间。

非侵入性和记忆效率的最佳解决方案是什么。

我无法手动提取名称空间并复制字符串,因为它们是可变的,或者可以在XML文件中分发。

XML文件的示例。

 <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> 
- <ns1:CBISEDACReqPhyMsg xmlns="urn:CBI:xsd:CBISEDACReqPhyMsg.00.01.04"  
                         xmlns:ns1="urn:CBI:xsd:CBISEDACReqPhyMsg.00.01.04" 
                         xmlns:HE2E="urn:CBI:xsd:CBIHdrSrv.001.07" 
                         xmlns:CXL="urn:CBI:xsd:MndtCxlReq" 
                         xmlns:BODY="urn:CBI:xsd:CBIBdySEDACReq.00.01.04" 
                         xmlns:SGNT="urn:CBI:xsd:CBISgnInf.001.04" 
                         xmlns:PMRQ="urn:CBI:xsd:CBISEDACReqLogMsg.00.01.04" 
                         xmlns:INITN="urn:CBI:xsd:MndtInitnReq" 
                         xmlns:HTRT="urn:CBI:xsd:CBIHdrTrt.001.07" 
                         xmlns:ACCPT="urn:CBI:xsd:MndtAccptncRpt" 
                         xmlns:AMDMNT="urn:CBI:xsd:MndtAmdmntReq">

- <ns1:CBIHdrTrt>
   <HTRT:IdCBISndrf>00000000</HTRT:IdCBISndrf> 
   <HTRT:IdCBIRcvrf>0000000</HTRT:IdCBIRcvrf> 
   <HTRT:SrvNm>INC-SEDAC</HTRT:SrvNm>
   <HTRT:IdMsgTrt>0000000000000000000000000000000</HTRT:IdMsgTrt> 
   <HTRT:XMLCrtDt>2013-09-23T18:51:14.475+02:00</HTRT:XMLCrtDt> 
   <HTRT:RtrnAddrl>000000000000000</HTRT:RtrnAddrl> 
  </ns1:CBIHdrTrt>
- <ns1:CBIHdrSrv>
-  <HE2E:SrvInfo>
   <HE2E:SrvNm>INC-SEDAC</HE2E:SrvNm> 
   <HE2E:IdE2EMsg>0000000000000000000000000000000000000000000000000</HE2E:IdE2EMsg> 
   <HE2E:XMLCrtDt>2013-09-17T10:33:12.980+02:00</HE2E:XMLCrtDt> 
   </HE2E:SrvInfo>
-  <HE2E:Sender>
    <HE2E:IdCBISend>00000000</HE2E:IdCBISend> 
    <HE2E:SendTyp>GPA</HE2E:SendTyp> 
    <HE2E:CBIRefrSend>00000000</HE2E:CBIRefrSend> 
   </HE2E:Sender>
-  <HE2E:Receiver>
    <HE2E:IdCBIRecv>00000000</HE2E:IdCBIRecv> 
    <HE2E:RecvTyp>GPA</HE2E:RecvTyp> 
    <HE2E:CBIRefrRecv>00000000</HE2E:CBIRefrRecv> 
   </HE2E:Receiver>
-  <HE2E:DiagInfo>
    <HE2E:DiagVers>1.0</HE2E:DiagVers> 
    <HE2E:ChkSbj>00000000</HE2E:ChkSbj> 
    <HE2E:ChkDt>2004-03-21T10:09:38.650+01:00</HE2E:ChkDt> 
   </HE2E:DiagInfo>
-  <HE2E:CongrInfo>
    <HE2E:SrvBdyNb>1</HE2E:SrvBdyNb> 
   </HE2E:CongrInfo>
  </ns1:CBIHdrSrv>
- <ns1:CBIBdySEDACReq>
-  <ns2:PhyMsgInf xmlns:ns2="urn:CBI:xsd:CBIBdySEDACReq.00.01.04">
   <ns2:PhyMsgTpCd>INC-SEDAC-01</ns2:PhyMsgTpCd> 
   <ns2:NbOfLogMsg>1</ns2:NbOfLogMsg> 
   </ns2:PhyMsgInf>
-  <ns3:CBIEnvelCBISEDACReq xmlns:ns3="urn:CBI:xsd:CBIBdySEDACReq.00.01.04">
-  <ns3:CBISEDACReqLogMsg>
-   <ns4:GrpHdr xmlns:ns4="urn:CBI:xsd:CBISEDACReqLogMsg.00.01.04">
     <ns4:MsgId>880958Y40405034</ns4:MsgId> 
     <ns4:CreDtTm>2013-11-19T00:00:00</ns4:CreDtTm> 

   </ns3:CBISEDACReqLogMsg>
  </ns3:CBIEnvelCBISEDACReq>
 </ns1:CBIBdySEDACReq>

0 个答案:

没有答案
相关问题