Ich versuche, einen Ordner und seine Nachkommen aus einem JCR mit XPath auszuwählen. Ich kann den Ordner leicht genug, um wählen:Element auswählen und seine Nachkommen
//content/documents/folder-name
Ich kann seine Nachkommen wählen zu:
//content/documents/folder-name//*
aber ich kann nicht herausfinden, wie beide zu bekommen. Ich habe mehrere Dinge ausprobiert. Diese wählen Sie nichts:
//content/documents/folder-name | //content/documents/folder-name//*
//content/documents/folder-name(. | *)
//content/documents/folder-name/(. | *)
//content/documents/folder-name/descendant-or-self
//content/documents/folder-name/descendant-or-self::node()
Diese beiden werfen ein javax.jcr.query.InvalidQueryException
:
//content/documents/folder-name[. | *]
//content/documents/folder-name/[. | *]
Natürlich bin ich schrecklich XPath. Bitte helfen Sie.
Edit: Ich habe die //
Vorwahl verwendet, weil ich nicht wusste, dass ich stattdessen /jcr:root/content
verwenden könnte. Ich habe jedoch das gleiche Problem damit.
'/ jcr: root/content/Dokumente/Ordnername |/jcr: root/content/documents/Ordnername/* 'wählt nichts aus. Ebenso für '// content/documents/folder-name | // Inhalt/Dokumente/Ordnername // * '. '// content/documents/ordnername' enthält keine Nachkommen. –
Vielleicht sollten Sie die Beispiel-XML-Datei und die genauen Ergebnisse, die Sie erwarten, veröffentlichen, damit wir wissen, was Sie zu tun versuchen. Die XPaths in Ihrem Kommentar enthalten jetzt Namespace-Präfixe. Dies ist eine weitere mögliche Quelle für potenzielle Probleme, die wir ohne Ihr XML nicht diagnostizieren können. – kjhughes
Ich würde gerne, aber es ist eine riesige Datei mit NDA Zeug drin. Ich werde versuchen, etwas zu schließen, wenn ich ein paar Minuten habe. –