Z XSLT / XPath, w jaki sposób można dopasować do dowolnego elementu w zerowej przestrzeni nazw?

głosy
6
<xsl:template match=foo>

pasuje do elementu foo w zerowej przestrzeni nazw.

<xsl:template match=*>

dopasowuje dowolny element w jakiejkolwiek przestrzeni nazw.

Próbowałem:

xmlns:null=
...
<xsl:template match=null:*>

ale jest to nielegalne zadeklarować prefiks dla zerowej nazw.

W jaki sposób można dopasować elementu z dowolną nazwę w zerowej przestrzeni nazw?

Utwórz 09/12/2008 o 14:59
źródło użytkownik
W innych językach...                            


2 odpowiedzi

głosy
5

Możesz spróbować:

<xsl:template match='*[namespace-uri() = ""]'>

Jeśli węzeł-set jest pusta lub ma URI przestrzeni nazw, pusty ciąg jest zwracany przez namespace-urifunkcję, która powinna osiągnąć co chcesz.

Odpowiedział 09/12/2008 o 15:06
źródło użytkownik

głosy
4

ffpf jest poprawna.

Dla jeszcze większej jasności polecam użyć następującego wzoru mecz:

 „ *[not(namespace-uri() )]

Odpowiedział 09/12/2008 o 16:06
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more