1
Я использую xsl 1.0. Мне нужно получить uri пространства имен из префикса.Получение пространства имен uri путем предоставления префикса в xslt
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:a1="http://example.com/arthemetic/integers/a1">
<soapenv:Header>
</soapenv:Header>
<soapenv:Body>
<a1:add>
</a1:add>
</soapenv:Body>
</soapenv:Envelope>
Я хочу, чтобы получить URI пространства имен для префикса a1 является http://example.com/arthemetic/integers/v1
Вот код, который я пытаюсь вне,
<xsl:template match="/">
<xsl:variable name="operationName">
<xsl:value-of
select="name(/*[local-name()='Envelope']/*[local-name()='Body']/*[1])"></xsl:value-of>
</xsl:variable>
<xsl:variable name="prefix">
<xsl:value-of select="substring-before($operationName, ':')"></xsl:value-of>
</xsl:variable>
<xsl:variable name="ns-node"
select="namespace::node()[.= $prefix]" />
dfadsfdfadsf
<xsl:value-of select="$ns-node" />
</xsl:template>
</xsl:stylesheet>
Но я не получаю пространство имен.
благодарит Dimitre, это работает для меня :) –
@RrK: Я рад, что мой ответ решил проблему. Не могли бы вы, * принять * этот ответ (нажав галочку рядом с ответом)? –