xsl-list
[Top] [All Lists]

Re: Delete XML Node

2002-10-31 12:10:20
You are yourself putting <Y> element as per your stylesheet.

Ritu

----- Original Message ----- 
From: "Deepak Rao" <deepaksubs(_at_)hotmail(_dot_)com>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Thursday, October 31, 2002 12:13 PM
Subject: [xsl] Delete XML Node


Hi,

I am converting XML to XML using XSL. I am facing a problem as mentioned 
below. Can anyone pl help with writing a correct XSL for solving the 
problem.

Thanks,
Deepak

For e.g.

The Schema
----------
<xsd:schema xmlns:xsd='http://www.w3.org/2001/XMLSchema'>

<xsd:element name='A' type='xsd:string'>
</xsd:element>

<xsd:element name='Z'>
  <xsd:complexType/>
</xsd:element>

<xsd:element name='Y'>
  <xsd:complexType>
   <xsd:sequence>
    <xsd:element ref='Z'/>
   </xsd:sequence>
  </xsd:complexType>
</xsd:element>

<xsd:element name='X'>
  <xsd:complexType>
   <xsd:sequence>
    <xsd:element ref='A'/>
    <xsd:element ref='Y'/>
   </xsd:sequence>
  </xsd:complexType>
</xsd:element>
</xsd:schema>

The input XML
-------------
<X>
    <A>A</A>
    <Y></Y>
</X>

The XSL
-------
<?xml version="1.0" ?>
<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
<xsl:template match="/">
<X>
<xsl:for-each select="X/A">
<A>
<xsl:value-of select="."/>
</A>
</xsl:for-each>
<Y>
<xsl:for-each select="X/Y/Z">
<Z>
<xsl:value-of select="."/>
</Z>
</xsl:for-each>
</Y>
</X>
</xsl:template>
</xsl:stylesheet>

The output is
-------------
<?xml version='1.0' ?>
<X>
<A>A</A>
<Y/>
</X>

But I desire the output
-----------------------
<?xml version='1.0' ?>
<X>
<A>A</A>
</X>

_________________________________________________________________
Get a speedy connection with MSN Broadband. Join now! 
http://resourcecenter.msn.com/access/plans/freeactivation.asp


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>