tags:

views:

49

answers:

1

I want to access the children with skos:Concept. getChildren("skos:Concept") and getChildren("Concept") both give me an empty list what should I use instead?.

My example Data:

<owl:AnnotationProperty rdf:about="&dc;identifier"/>
<owl:ObjectProperty rdf:about="&skos;narrower"/>

<skos:Concept rdf:about="#concept:0_acetylpantolactone:4253501">
    <skos:prefLabel xml:lang=""
        >0-acetylpantolactone</skos:prefLabel>
    <skos:hiddenLabel xml:lang=""
        >2(3H)-Furanone, 3-(acetyloxy)dihydro-4,4-dimethyl-, (R)-</skos:hiddenLabel>
    <dc:identifier rdf:resource="urn:CHID:028227363"/>
    <dc:identifier rdf:resource="urn:MESH:C014305"/>
</skos:Concept>

<skos:Concept rdf:about="#concept:1012S:4202655">
    <skos:prefLabel xml:lang="">1012S</skos:prefLabel>
    <skos:hiddenLabel xml:lang="" >C19-H16-Cl2-N6-O</skos:hiddenLabel>
    <skos:hiddenLabel xml:lang="">Compound 1012S</skos:hiddenLabel>
    <dc:identifier rdf:resource="urn:CAS:95211_91_9"/>
    <dc:identifier rdf:resource="urn:CHID:095211919"/>
</skos:Concept>
+1  A: 

According to the javadoc for getChildren(String): "This returns a List of all the child elements nested directly (one level deep) within this element with the given local name and belonging to no namespace". I think the problem is your elements have a namespace, and you should be using the getChildren(String, Namespace):

Namespace ns = Namespace.getNamespace("skos", [String uri]);
List l = elem.getChildren("Concept", ns);
M. Jessup