Transforming file compliant with Xml Schema A into a file compliant with XML schema B using XSLT?

Firstly, there are a number of tools on the market that attempt to generate transformations based on a source and target schema, and graphical tools to define the relationship between them. Personally, I've had very little joy with these tools, but some people seem to like them, so give them a try. Examples can be found in popular XML tools such as XML Spy and Stylus Studio Secondly, it seems very odd to be trying to use xsl:call-template for this.It's clearly a case for rule-based transformation using template rules and xsl:apply-templates.

The mechanism for dispatching based on an element's type is clearly apply-templates rather than call-template. In XSLT 2.0 you can do what you're asking for directly with a schema-aware stylesheet that has rules of the form xsl:template match="element(*, type-name) where type-name is the name of a type in the schema.

Firstly, there are a number of tools on the market that attempt to generate transformations based on a source and target schema, and graphical tools to define the relationship between them. Personally, I've had very little joy with these tools, but some people seem to like them, so give them a try. Examples can be found in popular XML tools such as XML Spy and Stylus Studio.

Secondly, it seems very odd to be trying to use xsl:call-template for this. It's clearly a case for rule-based transformation using template rules and xsl:apply-templates. The mechanism for dispatching based on an element's type is clearly apply-templates rather than call-template.In XSLT 2.0 you can do what you're asking for directly with a schema-aware stylesheet that has rules of the form where type-name is the name of a type in the schema.

Thanks for your input. For some reason the applicability of matched templates to types had escaped me - and I'm still not entirely sure of the syntax. Am I to assume that apply-templates select=".

/@type" will suffice? I'm not sure why I didn't get this. FYI, I'm in .

Net, which does not support XSLT 2.0. Furthermore, I don't think the employer I'm exploring this for will tolerate the idea of paying for tools just to work with open standards like XSL. – Tom W Feb 18 at 16:57 Unfortunately, the fact that it's hard to find free schema-aware XSLT processors (or indeed XSLT 2.0 processors generally) is rather directly related to the fact that many companies nowadays expect software to be free.It's a shame, but I won't try to turn this into a sales pitch.

– Michael Kay Feb 22 at 22:58.

I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.

Related Questions