This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Adding additional namespaces to an wsdl describtion
- From: Daae-Qvale Christoffer <Christoffer dot Daae-Qvale at sintef dot no>
- To: "XSL (E-mail)" <XSL-List at lists dot mulberrytech dot com>
- Date: Thu, 25 Jul 2002 12:15:40 +0200
- Subject: [xsl] Adding additional namespaces to an wsdl describtion
- Reply-to: xsl-list at lists dot mulberrytech dot com
I'm developing a WSDL file which should be able to get additional namespaces
that I retrive through an xml in addtion to the ones that I've allready
hardcoded in the xsl file. The purpose of this is because I'm developing a
stylesheet that should be able to take different xml files with different
content and transform them into WSDL files so the webservices they describe
can be described as a wsdl i an reg/rep database. Some off the applications
that the xml files describe has to refer to some internal namspace
definitions that varies from application to application, and therefor cannot
be hardcoded into the xsl file. I manage to retrive the particular
namespaces but I cannot get the inside the definition tag, they appares just
benieft it.
Does anyone have any good suggestions off what I should do to get them
inside the tag?
Here are samples from both WSDL and XSL files
XSL:
<xsl:template match="model">
<definitions
xsi:schemaLocation="http://schemas.xmlsoap.org/wsdl/
http://schemas.xmlsoap.org/wsdl/">
<xsl:attribute name="name">
<xsl:value-of select="'MyWebService'"/>
</xsl:attribute>
<xsl:attribute name="targetNamespace">
<xsl:text>http://www.myWebService.com/MyWebService.wsdl</xsl:text>
</xsl:attribute>
<!-- Get subpackage spec namespaces -->
<xsl:for-each
select="package/child::package/class/attribute">
<xsl:if test="@type='namespace'">
<xsl:variable name="nameSpace">
<xsl:value-of
select="@name"/>
</xsl:variable>
<xsl:value-of
select="concat($nameSpace,' ')"/>
</xsl:if>
</xsl:for-each>
<types>
<xsl:for-each select="package">
<xsl:call-template
name="package_types"/>
</xsl:for-each>
</types>
<xsl:for-each select="package">
<xsl:call-template name="package_services"/>
</xsl:for-each>
</definitions>
</xsl:template>
WSDL:
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
The problem appares here!!
xmlns:bla="http://www.blabla.bla/bla/"
xmlns:ble="http://www.bleblebel.net/ble"
Christoffer Daae-Qvale
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list