2016-06-02 14 views
0

Wenn ich ein Dokument in MarkLogic einfügen muss, wie kann ich mithilfe der Java-API angeben, in welcher Gesamtstruktur das Dokument gespeichert werden soll? HierAngeben der Gesamtstruktur beim Einfügen/Abrufen des Dokuments in marklogic

ist ein Beispiel, wo ich Daten in eine Datenbank schreiben Marklogic:

// create the client 
DatabaseClient client = DatabaseClientFactory.newClient(
    props.host, props.port, props.writerUser, props.writerPassword, 
    props.authType); 

// make use of the client connection 
TextDocumentManager docMgr = client.newTextDocumentManager(); 
String docId = "/example/text.txt"; 
StringHandle handle = new StringHandle(); 
handle.set("A simple text document"); 
docMgr.write(docId, handle); 

Wenn ich das Dokument durch den Wald Angabe speichern kann, dann auch ich brauche das Dokument mit dem Wald angegeben zu holen.

Ich denke, es ist möglich, weil ich gesehen habe, in einer bestimmten forestId in XQuery zu speichern und zu suchen. Wie so:

Einsatz in einem bestimmten Wald:

xdmp:document-insert(
    $uri as xs:string,$root as node(), 
    [$permissions as element(sec:permission)*], [$collections as xs:string*],  
    [$quality as xs:int?], [$forest-ids as xs:unsignedLong*]) 
as empty-sequence() 

einen bestimmten Wald suchen -

cts:search(
    $expression as node()*, $query as cts:query?, 
    [$options as (cts:order|xs:string)*], [$quality-weight as xs:double?], 
    [$forest-ids as xs:unsignedLong*]) as node()* 

Bitte lassen Sie mich wissen, wie dies in der Java-API zu tun.

Antwort

1

Heute ist dies nicht über Java Client API verfügbar. Es wird in MarkLogic 9 verfügbar sein. Wenn Sie es in einer frühen Version von MarkLogic 9 ausprobieren möchten, können Sie sich der early access program anschließen. Wir würden gerne Ihre Meinung hören, nachdem Sie diese Funktion ausprobiert haben.

In Marklogic 9 Sie können dies tun, indem Sie die Forest zum DatabaseClientFactory Angabe:

DatabaseClient client = DatabaseClientFactory.newClient(
    props.host, props.port, props.writerUser, props.writerPassword, 
    props.authType, props.forestName); 

Dann schriftliche Dokumente werden in diesem Wald und sucht geschrieben werden nur innerhalb dieser Gesamtstruktur entsprechen.

+0

Danke für die Informationen, werde dies versuchen. – RCS