Element XSLT <xsl:namespace-alias>
Definicja i użycie
Element <xsl:namespace-alias> służy do zastępowania przestrzeni nazw szablonu inną przestrzenią nazw w wyjściu, innymi słowy, używając innego przedrostka do zastępowania przedrostka związанного z daną przestrzenią nazw.
Komentarz:<xsl:namespace-alias> jest elementem najwyższego poziomu (top-level element) i musi być elementem podrzędnym <xsl:stylesheet> lub <xsl:transform>.
Czasami pliki XSLT generują kolejne pliki XSLT. To powoduje problemy z przestrzenią nazw, ponieważ nie ma jasnego sposobu deklarowania dwóch przedrostków dla tej samej przestrzeni nazw, a procesor nie traktuje dwóch przedrostków jako tej samej przestrzeni nazw. Użycie polecenia <xsl:namespace-alias> pozwala przypisać przejściową przestrzeń nazw do alternatywnego przedrostka, zastosować szablon, a następnie mapować alternatywną przestrzeń nazw do przestrzeni nazw XSLT.
Chociaż generowanie plików z XSL do XSL jest głównym celem tej komendy, nie jest to jedyny cel. Można używać tej komendy w każdej sytuacji konfliktu przestrzeni nazw (np. przestrzeń nazw danych typu xsi).
Gramatyka
<xsl:namespace-alias stylesheet-prefix="prefix|#default" result-prefix="prefix|"#default"/>
Atrybut
Atrybut | Wartość | Opis |
---|---|---|
stylesheet-prefix |
|
Wymagane. Określa przestrzeń nazw, którą chcesz zmienić. |
result-prefix |
|
Wymagane. Określa oczekiwaną przestrzeń nazw dla wyjścia. |
Przykład
Przykład 1
Przedrostek wxsl zostaje przekształcony na przedrostek xsl:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:wxsl="http://www.codew3c.com/w3style.xsl"> <xsl:namespace-alias stylesheet-prefix="wxsl" result-prefix="xsl"/> <xsl:template match="/"> <wxsl:stylesheet> <xsl:apply-templates/> </wxsl:stylesheet> </xsl:template> </xsl:stylesheet>