Hi, thanks for all your helpful comments. After thinking about your hints and tips, I think, I've found the answer to my problem:
I used the wrong methods to add my attributes (and maybe even my elements but that didn't seem to make a difference). old: element.addAttribute("xml:lang", "en"); new: QName qname = DocumentFactory.getInstance().createQName("lang", "xml", "http://www.w3.org/XML/1998/namespace"); element.addAttribute(qname , "en"); Now, my XPath queries deliver the desired elements (so far ;-) -- Andreas > -----Ursprüngliche Nachricht----- > Von: James Strachan [mailto:[EMAIL PROTECTED]] > Gesendet: Donnerstag, 29. August 2002 15:54 > An: Andreas Wille > Cc: Dom4j-User@Lists. Sourceforge. Net > Betreff: Re: [dom4j-user] Does XPath consider the namespace of > attributes? > > > How are you created the document in memory? Could you give us some example > code? Maybe its how you're setting the namespaces on the attributes... > > James > ------- > http://radio.weblogs.com/0112098/ > ----- Original Message ----- > From: "Andreas Wille" <[EMAIL PROTECTED]> > To: "Mike Skells" <[EMAIL PROTECTED]> > Cc: "Dom4j-User@Lists. Sourceforge. Net" > <[EMAIL PROTECTED]> > Sent: Thursday, August 29, 2002 9:43 AM > Subject: Re: [dom4j-user] Does XPath consider the namespace of attributes? > > > > Hi, > > > > you are rigth. > > The problem does only appear when I'm creating a new document in memory > and > > then execute the mentioned XPath query. > > If I read an existing XML document, like your example class b2, > everything > > is all right. > > > > So, is this behaviour normal to newly-created documents and if > yes, is the > > only alternative solution to store the document and then read it again > > before executing the XPath query ? > > > > -- > > Andreas > > > > > > > -----Ursprüngliche Nachricht----- > > > Von: Mike Skells [mailto:[EMAIL PROTECTED]] > > > Gesendet: Mittwoch, 28. August 2002 20:33 > > > An: [EMAIL PROTECTED] > > > Cc: Dom4j-User@Lists. Sourceforge. Net > > > Betreff: RE: [dom4j-user] Does XPath consider the namespace of > > > attributes? > > > > > > > > > I cant reproduce the problem > > > > > > --- code --- > > > import org.dom4j.*; > > > import org.dom4j.io.*; > > > > > > public class b2 { > > > > > > public static void main(java.lang.String[] args) throws > Exception { > > > new bug(); > > > } > > > private Document doc ; > > > public b2() throws Exception{ > > > SAXReader sr = new SAXReader(); > > > Document doc = > sr.read(getClass().getResourceAsStream("b2.xml")); > > > System.out.println(doc.asXML()); > > > > > > System.out.println(doc.selectNodes("//ims:title[@ims:lang='de']")); > > > > > > } > > > } > > > ---- output ----- > > > <?xml version="1.0" encoding="UTF-8"?> > > > <kern xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > > xmlns:ims="http://www.imsglobal.org/xsd/imsmd_v1p2" > > > xsi:noNamespaceSchemaLocation="movii-kern.xsd" > > > xsi:schemaLocation="http://www.imsglobal.org/xsd/imsmd_v1p2 > > > imsmd_v1p2p2.xsd"> > > > <metadata> > > > <ims:title ims:lang="de">...</ims:title> > > > </metadata> > > > </kern> > > > [org.dom4j.tree.DefaultElement@908ca1 [Element: <ims:title uri: > > > http://www.imsglobal.org/xsd/imsmd_v1p2 attributes: > > > [org.dom4j.tree.DefaultAttribute@dd46f7 [Attribute: name ims:lang > > > value "de"]]/>]] > > > -- end --- > > > > > > > -----Original Message----- > > > > From: [EMAIL PROTECTED] > > > > [mailto:[EMAIL PROTECTED]] On Behalf Of > > > > Andreas Wille > > > > Sent: Wednesday 28 August 2002 15:24 > > > > To: [EMAIL PROTECTED] > > > > Subject: [dom4j-user] Does XPath consider the namespace of > attributes? > > > > > > > > > > > > Hello, > > > > > > > > my question is whether XPath does consider the namespace of > > > > attributes or not ? > > > > > > > > for example: > > > > > > > > <?xml version="1.0" encoding="UTF-8"?> > > > > <kern xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > > > xmlns:ims="http://www.imsglobal.org/xsd/imsmd_v1p2" > > > > xsi:noNamespaceSchemaLocation="movii-kern.xsd" > > > > > > > > xsi:schemaLocation="http://www.imsglobal.org/xsd/imsmd_v1p2 > > > > imsmd_v1p2p2.xsd"> ... <metadata> > > > > <ims:title ims:lang="de">...</ims:title> > > > > </metadata> > > > > ... > > > > </kern> > > > > > > > > If I start the following XPath query > > > > > > > > rootElement.selectNodes("//ims:title[@ims:lang='de']") > > > > > > > > on the XML document below, I get an empty List. > > > > But if I remove the namespace for the 'lang' attribute in the > > > > document (<ims:title lang="de">...</ims:title>) and in the > > > > XPath query ("//ims:title[@lang='de']") I get the expected > > > > list of elements. > > > > > > > > > > > > Has somebody similar experiences or can tell me what XPath is doing? > > > > > > > > -- > > > > Andreas > > > > > > > > -- > > > > berlin.de - meine stadt im netz. Jetzt eigene eMail-adresse > > > > @berlin.de sichern! http://webmail.berlin.de > > > > > > > > > > > > > > > > ------------------------------------------------------- > > > > This sf.net email is sponsored by: Jabber - The world's > > > > fastest growing > > > > real-time communications platform! Don't just IM. Build it in! > > > > http://www.jabber.com/osdn/xim > > > > _______________________________________________ > > > > dom4j-user mailing list > > > > [EMAIL PROTECTED] > > > > https://lists.sourceforge.net/lists/listinfo/d> om4j-user > > > > > > > > > > > __________________________________________________ > Do You Yahoo!? > Everything you'll ever need on one web page > from News and Sport to Email and Music Charts > http://uk.my.yahoo.com > > ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ dom4j-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dom4j-user