[jdom-interest] getChildren problem
zongo46 at gmx.net
zongo46 at gmx.net
Wed Sep 26 12:00:15 PDT 2007
Hi Rolf, thanks for your help. It works now. The different namespaces are intentional (though the XML is not from me). The children of "Post" are again in other namespaces, e.g. Dublin Core.
Best, -P-
-------- Original-Nachricht --------
> Datum: Wed, 26 Sep 2007 10:16:38 -0400
> Von: rolf.lear at algorithmics.com
> An: zongo46 at gmx.net, jdom-interest at jdom.org
> Betreff: RE: [jdom-interest] getChildren problem
> See:
> http://www.jdom.org/docs/apidocs/org/jdom/Element.html#getChildren(java.lang.String)
>
> Especially the part wherre it says it gets Child Elements which have no
> namespace.
>
> Your XML document has a default namespace (which is not the 'no
> namespace') of "http://www.connotea.org/2005/01/schema#", so, you need to use the
> second form of getChildren (String, Namespace) with the arguments:
>
> posts = element.getChildren("Post",
> Namespace.getNamespace("http://www.connotea.org/2005/01/schema#"));
>
> Also, it is probably intentional, but I just want to confirm that the root
> element RDF is supposed to be in a different namespace than the child
> element Post?
>
> Rolf
>
>
> -----Original Message-----
> From: jdom-interest-bounces at jdom.org
> [mailto:jdom-interest-bounces at jdom.org]On Behalf Of zongo46 at gmx.net
> Sent: Wednesday, September 26, 2007 5:32 AM
> To: jdom-interest at jdom.org
> Subject: [jdom-interest] getChildren problem
>
>
> hello together,
> I got a strange problem with getChildren(). i get the following xml
> inputstream by a http GET request:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
> xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
> xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/"
> xmlns:prism="http://prismstandard.org/namespaces/1.2/basic/"
> xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns="http://www.connotea.org/2005/01/schema#">
>
> <Post rdf:about="A_URL">
> <!-- more elements here -->
> </Post>
>
> </rdf:RDF>
>
> my sendRequest() method returns the above xml as a String. From that
> String I build a Document:
>
> String in = sendRequest();
> SAXBuilder parser = new SAXBuilder();
> Document doc = parser.build(new InputSource(new StringReader(in)));
>
> Then I search for the child "Post" of the root element:
>
> List posts = doc.getRootElement().getChildren("Post");
> System.out.println(posts.size()); // output: 0
>
> There is no child "Post"? I think there should be. I tested the following:
>
> List posts = doc.getRootElement().getChildren();
> Element el = (Element)posts.get(0);
> System.out.println(el.getName()); // output: Post
>
> The first output says there is no child post of the root element, the
> second output says that the first child of root element is named "Post". What's
> wrong here?
>
> Thank you in advance! -P-
> --
> Psssst! Schon vom neuen GMX MultiMessenger gehört?
> Der kanns mit allen: http://www.gmx.net/de/go/multimessenger
> _______________________________________________
> To control your jdom-interest membership:
> http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com
>
> --------------------------------------------------------
> This email and any files transmitted with it are confidential and
> proprietary to Algorithmics Incorporated and its affiliates ("Algorithmics"). If
> received in error, use is prohibited. Please destroy, and notify sender.
> Sender does not waive confidentiality or privilege. Internet communications
> cannot be guaranteed to be timely, secure, error or virus-free. Algorithmics
> does not accept liability for any errors or omissions. Any commitment
> intended to bind Algorithmics must be reduced to writing and signed by an
> authorized signatory.
> --------------------------------------------------------
--
GMX FreeMail: 1 GB Postfach, 5 E-Mail-Adressen, 10 Free SMS.
Alle Infos und kostenlose Anmeldung: http://www.gmx.net/de/go/freemail
More information about the jdom-interest
mailing list