2017-11-26 20 views
0

내 입력 XML은 다음과 같다, 내가 노드 <multimap:Message1>제거 부모 노드 태그하지만 아이를 유지하는 것은 그대로, XSLT

<multimap:Messages xmlns:multimap="http://sap.com/xi/XI/SplitAndMerge"> 

을 삭제하고 싶지만 같이 아이를 유지하려는. 특수 문자는

가 있기 때문에 ":"multimpap와 메시지 사이에서 나는 이것이 당신이 XSLT 2 또는 3 프로세서를 사용하는 가정

<?xml version="1.0" encoding="UTF-8"?> 
<multimap:Messages xmlns:multimap="http://sap.com/xi/XI/SplitAndMerge">`This one need to be removed` 
    <multimap:Message1> `This one need to be removed` 
     <EmployeeTime> 
      <EmployeeTime> 
       <externalCode>e82baef39</externalCode> 
       <timeType>UK_MATERNITY</timeType> 
       <userId>101046</userId>> 
       <Holiday> 
        <date>2016-03-25</date> 
        <date>2015-04-06</date> 
        <date>2015-05-25</date> 
       </Holiday> 
      </EmployeeTime> 
     </EmployeeTime> 
    </multimap:Message1>`This one need to be removed` 
</multimap:Messages>`This one need to be removed` 

답변

0

노드를 삭제할 수 아니다 당신은 단순히

<xsl:template match="/"> 
    <xsl:copy-of select="*/*/*" copy-namespaces="no"/> 
</xsl:template> 
을 사용할 수 있습니다

http://xsltransform.net/naZXpYb

XSLT 1 사용하면 namesp을 제거 할 수있는 변환을 통해 EmployeeTime 요소와 그 자손을 실행해야합니다 에이스는 루트 요소의 범위 내에 있습니다.