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">
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--