Hi Justin,
Thanks for your reply. I wish to perform a query at a given ('provider')
node, to find all nodes of a certain type that are children of the provider.
I had been using the provider node's path to provide the path constraint in
the query. The problem was that the first provider node's path returns
../provider, rather than ../provider[1].
How do you mean by node graph? Please would you be able to provide an
example...? Do you mean call getNodes() on the providerNode? If so, how
would I supply property or type constraints?
This is what I am currently doing:
Node providerNode = jcrSession.getNodeByUUID(providerRepositoryUUID);
String providerNodePath = providerNode.getPath();
//Nasty same name siblings! The first same name sibling i.e. provider
doesn't have the array index notation.
//Therefore, the path of the first provider is ../provider and not
../provider[1]. Without the array index notation, we get all providers!
if (providerNode.getIndex() == 1)
providerNodePath += "[1]";
QueryManager queryManager = jcrSession.getWorkspace().getQueryManager();
String queryString = "/jcr:root" + providerNodePath + "//element(*,
atl:account)";
Query query = queryManager.createQuery(queryString, Query.XPATH);
QueryResult queryResult = query.execute();
Thanks and kind regards,
James
--
View this message in context:
http://n4.nabble.com/XPath-query-with-path-constraint-and-same-name-siblings-tp1594661p1596054.html
Sent from the Jackrabbit - Users mailing list archive at Nabble.com.