2012-05-11 3 views
0

나는 xmlns = ""및 태그를 확인하고 싶습니다. 복사하고 싶습니다. 내가 원하는대로 만들려고합니다. 총 계산이 처리되었습니다.이 문제 만 유효합니다. 여전히 클라이언트입니다. 예상되는 형식이 그렇게되고 싶어요. 어떤 도움이 크게 감사합니다.그대로 XSLT 복사

source.xml

 <Employees> 
     <employee> 
     <dept>1</dept> 
     <sec></sec> 
     <employee> 
      <employee> 
      <dept>2</dept> 
       <sec></sec> 
      <employee> 
      </Employees> 

Expectedresult.xml

    <Employees xmnls="1.2" xmlns:xsi="3" xsi:schemalocation="4"> 
        <totalemp>2</totalemp> 
        <employee> 
        <dept>1</dept> 
         <sec></sec> 
        <employee> 
         <employee> 
          <dept>2</dept> 
            <sec></sec> 
         <employee> 
         </Employees> 

실제 결과

,691 당신의 xsl:outputmethod="html"를 추가하려고 <sec></sec> 같은 출력 <sec/>을 얻기 위하여
      <Employees> 
           <totalemp>2</totalemp> 
           <employee xmlns=""> 
           <dept>1</dept> 
            <sec/> 
           </employee> 
           <employee> 
            <dept>2</dept> 
             <sec/> 
            <employee> 
            </Employees> 
+3

XSLT가 보이지 않는 경우,이 문제의 원인을 알 수 없습니다. 또한, 어떤 XSLT 엔진? – lavinio

+2

클라이언트에게 실제 XML 파서를 가져 오도록하십시오. – ykaganovich

+0

입력 내용이 XML 형식이 아니므로 결과가 전혀 나오지 않습니다. –

답변

1

(있는 경우?).

예 (잘 형성됨)

XML 입력 :

<Employees> 
    <employee> 
    <dept>1</dept> 
    <sec/> 
    </employee> 
    <employee> 
    <dept>2</dept> 
    <sec/> 
    </employee> 
</Employees> 

XSLT 1.0

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <xsl:output indent="yes" method="html"/> 
    <xsl:strip-space elements="*"/> 

    <xsl:template match="node()|@*"> 
    <xsl:copy> 
     <xsl:apply-templates select="node()|@*"/> 
    </xsl:copy> 
    </xsl:template> 

    <xsl:template match="Employees"> 
    <xsl:copy> 
     <xsl:apply-templates select="@*"/> 
     <totalemp><xsl:value-of select="count(employee)"/></totalemp> 
     <xsl:apply-templates/> 
    </xsl:copy> 
    </xsl:template> 

</xsl:stylesheet> 

의 Xalan 및 색슨 6.5 테스트 XML 출력 (. 5)

<Employees> 
    <totalemp>2</totalemp> 
    <employee> 
     <dept>1</dept> 
     <sec></sec> 
    </employee> 
    <employee> 
     <dept>2</dept> 
     <sec></sec> 
    </employee> 
</Employees> 
+0

다른 옵션을 선택하십시오. 내 결과 파일은 xml이어야합니다. iam은 파이프 라인에서 biztalk를 사용합니다. 나는 송신 포트에서이 xslt 파일을 호출합니다. –

+0

Iam getting Xmlns = "", 나는 그것을 제거하고 싶습니다. –