Subject: [xsl] How to generate <schema> element From: Michael.Giroux@xxxxxxxx Date: Fri, 13 May 2005 07:29:40 -0700 |
I have a tool that parses a non-java program source and emits an XML document containing a description of the public data types. The XML is then used with XSL to generate program documentation, Java data mappers to the non-java program data types, etc. I'm attempting to generate WSDL <types> and <message> elements for use in web service descriptions. My template is nearly complete but I have one final problem. I'm not able to get the schema generated with the proper namespace. XSL snippet follows: <?xml version="1.0"?> <xsl:stylesheet version = '1.0' xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xsl='http://www.w3.org/1999/XSL/Transform' xmlns:tns="urn:bpel:jiap" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xalan="http://xml.apache.org/xslt" > <xsl:output method="xml" indent="yes" xalan:indent-amount="2"/> <xsl:template match="component"> <definitions targetNamespace="urn:bpel:jiap"> <xsl:element name="types"> <xsl:element name="schema" namespace=" http://www.w3.org/2001/XMLSchema"> <xsl:attribute name="targetNamespace">urn:bpel:jiap </xsl:attribute> <xsl:apply-templates select="cobolrecord"/> </xsl:element> <!-- </schema> --> </xsl:element> <!-- </types> --> <!-- code removed --> </definitions> </xsl:template> ... The generated code does not have the correct namespace for the generated schema element and as a result, none of the types are found when WSDL2JAVA processes the outer WSDL which includes these type declarations. The namespace for the <schema> element is coming from the containing <definitions> element, and not from the namespace attribute of the <element> instruction. Can someone tell me the correct way to define the xsl so that I get the desired generation? Thanks Michael Giroux Example of generated code follows: <?xml version="1.0" encoding="UTF-8"?> <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="urn:bpel:jiap" targetNamespace="urn:bpel:jiap" > <types> <schema xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace= "urn:bpel:jiap">
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] How to take care & in, David Carlisle | Thread | RE: [xsl] How to generate <schema> , Michael Kay |
Re: [xsl] Using <xsl:for-each> and , JBryant | Date | [xsl] XSLT variables and for-each l, Oleg Konovalov |
Month |