peter müller: adressierung von namensräumen

hallo miteinander

ein xml / xsl / xpath-beginner versucht sich in xslt und hat dabei ein problem bei der adressierung der xml-elemente. mein problem ist, dass die xml-datei in namensräume aufgeteilt ist und ich nicht weiss, wie ich jetzt die einzelnen elemente im xsl-file ansprechen kann.

hypotetische xml-struktur:
<a:x>
 <a:y>...</a:y>
</a:x>

xsl-problem:
<xsl:value-of select="wie spreche ich hier die x und y an?" />

als parser verwende ich übrigens den ms xml parser v. 3 [msxml3.dll], den ich via asp-seite anspreche --> Server.CreateObject("Microsoft.XMLDOM"). bei meinen versuchen ist meist folgender fehler aufgetreten: NodeTest expected here. dies weisst wohl auf einen falsch adressierten knoten in der xsl-datei hin...

vielen dank jetzt schon für die hilfe!!
peter

  1. Hi Peter,

    zu der Verwendung von Maespaces habe ich neulich einen guten Artikel in der MSDN Online gefunden, er steht hier: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnexxml/html/xml05202002.asp. Er ist halt in Englisch, aber ansonsten gut verständlich. Ich hoffe, er hilft dir weiter.

    Gruß,
    Martin (der bisher Namespaces vermeiden konnte)

    1. hallo martin

      erst mal danke für deine schnelle antwort.

      Ich hoffe, er hilft dir weiter.

      mein bisheriges studium des artikels hat mir noch nicht zum durchbruch verholfen, aber ich arbeite daran.

      bin also für weitere tipps offen ;-).
      peter

  2. hallo miteinander

    Hi,

    ein xml / xsl / xpath-beginner versucht sich in xslt und hat dabei ein problem bei der adressierung der xml-elemente. mein problem ist, dass die xml-datei in namensräume aufgeteilt ist und ich nicht weiss, wie ich jetzt die einzelnen elemente im xsl-file ansprechen kann.

    hypotetische xml-struktur:
    <a:x>
    <a:y>...</a:y>
    </a:x>

    xsl-problem:
    <xsl:value-of select="wie spreche ich hier die x und y an?" />

    <xsl:value-of select="a:x"/>

    sollte doch eigentlich gehen.

    Andreas

    1. Hi,

      auch hallo!

      suupi, problem solved!

      <xsl:value-of select="a:x"/>

      sollte doch eigentlich gehen.

      YEAH, es klappt! natürlich hatte ich es auch schon so versucht, aber ich machte einen oberdummen fehler bei der absoluten adressierung. ich notierte <xsl:value-of select="/a:x/"/> mit einem abschliessenden / slash... *haareausreiss*

      für andere interessierte: auch noch nützlich ist, wenn man im einleitenden xsl:stylesheet-tag das attribut 'extension-element-prefixes="namespace1 namspace2 etc"' notiert; wobei es auch ohne funktioniert :).

      noch mals vielen dank & auf wiederschaun
      peter

  3. hallo,

    ein xml / xsl / xpath-beginner versucht sich in xslt und hat dabei ein problem bei der adressierung der xml-elemente.

    zum verständnis von namensräumen hilft dir dieser artikel:
    http://aktuell.de.selfhtml.org/artikel/xml/namensraeume/index.htm

    namensräume in xslt:
    http://www.xml.com/pub/a/2001/04/04/trxml/index.html

    grüße
    thomas