2016-06-06 7 views
3

Ich habe versucht, das Beispiel in der Suche Entwickler Leitfaden für die Konfiguration von Datensatzelementen in den Suchergebnissen extrahiert werden.Auszug-Dokument-Daten in Suchoptionen Fehler

<options xmlns="http://marklogic.com/appservices/search"> 
    <extract-document-data> 
     <extract-path xmlns:pdbe="http://schemas.abbvienet.com/people-db/envelope" xmlns:pdbm="http://schemas.abbvienet.com/people-db/model">/pdbe:person-envelope/pdbm:person/pdbm:account</extract-path> 
    </extract-document-data> 
</options> 

Mit diesen Optionen erhalte ich den Fehler.

[1.0-ml] XDMP-UNBPRFX: (err:XPST0081) Prefix pdbe has no namespace binding 

Selbst wenn ich das Beispiel aus dem Beispiel aus der Führung versuchen, wörtlich, erhalte ich den Fehler als auch (das ist, solange ich Treffer zurück bin immer und es versucht, zu extrahieren, wenn es keine ist Treffer, dann ist es kein Fehler).

Mache ich etwas falsch?

UPDATE

Wenn ich die Namespaces mit dem /config/namespaces REST-Endpunkt zuerst hinzufügen und dann suchen die REST-API verwenden, dann bekomme ich die extrahierten Werte. Aber ich kann nicht mit search:search in der Abfragekonsole testen. Wenn ich die config/namespaces entferne, dann sehe ich den gleichen Fehler in der Abfragekonsole wie direkt vom REST-Endpunkt.

Antwort

3

Das dokumentierte Beispiel im Abschnitt Syntax Summary hat einen Tippfehler (ich habe das Docs-Team gewarnt): Das Attribut xmlns ist falsch geschrieben "xmnls". Das würde den Fehler bei der Verwendung dieses wortgleichen Beispiels erklären.

Wenn Sie in Ihrem Beispiel einfügen, sieht es so aus, als ob es funktioniert (MarkLogic 8.0-5.2). Vielleicht haben Sie den Fehler "xmnls" beim Posten der Frage korrigiert?

import module namespace search = "http://marklogic.com/appservices/search" 
    at "/MarkLogic/appservices/search/search.xqy"; 

search:search("hello sample-property-constraint:boo", 
    <options xmlns="http://marklogic.com/appservices/search"> 
    <extract-document-data> 
     <extract-path 
      xmlns:pdbe="http://schemas.abbvienet.com/people-db/envelope" 
      xmlns:pdbm="http://schemas.abbvienet.com/people-db/model"> 
     /pdbe:person-envelope/pdbm:person/pdbm:account 
     </extract-path> 
    </extract-document-data> 
    </options>) 
+0

Ich werde versuchen, 8.0-5.2 und sehen, ob es für mich besser funktioniert. Ich habe den Tippfehler nicht einmal bemerkt, aber es ist die korrekte Syntax, die in 8.0-4 nicht für mich funktioniert. –

+0

Dies funktioniert in 8.0-5.2 korrekt. –