What would be the xpath query to find all child nodes with a specific attribute value, but starting from a node with a specific attribute value?
This is kind of related to a question I posted earlier about parsing an rdf xml file - I thought I had solved it but not quite yet.
For example, I am trying to parse and grab all of the rdf:about
attribute values. I have this working fine. I need to add the following condition though - parsing needs to start after a specific rdf:about
value is found.
I am working in PHP and and using DomDocument
and am using the following xpath query:
$xpath->query('//@rdf:about');
It is finding all rdf:about
attributes fine.
I need to extend this to only find those attributes that come after the node whose rdf:about
attribute is equal to something.
How?
$xpath->query("//*[@rdf:about='http://rdfs.org/sioc/ns#']/following-sibling::*/@rdf:about");
With your sample script, outputs URLs starting/ending with:
http://rdfs.org/sioc/ns#Community
http://rdfs.org/sioc/ns#Container
...
http://rdfs.org/sioc/ns#reference
http://rdfs.org/sioc/ns#subject