[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: Transforming a schema with XSL


transforming schema
I need help transforming a schema (which appears at the top of the XML
document).  I also need to transform the XML data itself.  I am looking to
"convert" the xml data from one type to another... you do this with XSL
correct?

I have a little snippet of the schema which needs to be transformed:

THIS:
<s:AttributeType name="CSHIP" rs:number="3" rs:write="true">
  <s:datatype dt:type="number" rs:dbtype="numeric" dt:maxLength="19"
rs:scale="0" rs:precision="4" rs:fixedlength="true" rs:maybenull="false" />


NEEDS TO BECOME THIS:
<s:AttributeType name="CSHIP" rs:number="3" rs:nullable="true"
rs:maydefer="true" rs:writeunknown="true">
  <s:datatype dt:type="number" rs:dbtype="numeric" dt:maxLength="19"
rs:scale="0" rs:precision="4" rs:fixedlength="true" />

    Is this possible, fairly straight forward, easy to explain?


Yes, it's very straightforward - though unless you explain how the output is
derived from the input, it's difficult to give you the right code. But
something like the following would do it:

<xsl:template match="s:attributeType">
  <xsl:copy>
  <xsl:copy-of select="@name | @rs:number"/>
  <xsl:attribute name="rs:write">true</xsl:attribute>
</xsl:template>

<xsl:template match="s:datatype">
  <xsl:copy>
  <xsl:copy-of select="@dt:type | @rs:dbtype | @dt:maxLength | @rs:scale |
@rs:precision"/>
</xsl:template>

You need to wrap these template rules in an <xsl:stylesheet> element that
also contains an "identity template rule" to copy other elements unchanged -
there's an example of such a rule in the XSLT spec itself.

Michael Kay
Software AG
home: Michael.H.Kay@n...
work: Michael.Kay@s...


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.