Rückkehr Ich habe die folgende Abfrage in einer Marklogic XQuery-Datei, und ich sehe die folgende FehlermeldungXQuery-Datei ungültig Entitätsverweis Verwendung von Sonderzeichen
zurückXDMP-ENTITYREF: (err:XPST0003) Invalid entity reference " " . See the MarkLogic server error log for further detail.
Im Folgenden ist der Code, den ich in der XQuery bin mit Datei.
xquery version "1.0-ml";
declare variable $query :=
cts:or-query
((
cts:element-word-query(xs:QName("lines"),"l&l"),
cts:element-word-query(xs:QName("lines"),"pool & cue"),
cts:element-word-query(xs:QName("lines"),"look")
));
declare function local:do-query(){
element xml {
for $i in cts:uris((),(), $query)
let $item := doc($i)
return
element item {
element title { $item/title/string() }
}
}
};
local:do-query()
Offensichtlich sind die 2x Tags ich suche sind l&l
und pool & cue
. Ich habe mir auch den reparaturvollen Vorschlag in einer anderen Frage angeschaut, konnte aber nicht herausfinden, wie das in diese Abfrage passt. Wenn ich die mit Sonderzeichen entfernt habe, funktioniert es wie erwartet.
Irgendwelche Ideen?
Dieser Code läuft gut in QConsole, vielleicht gibt es ein anderes Problem. Wie rufen Sie den Code auf und sind Sie sicher, dass Sie den obigen Code aufrufen und nicht etwas anderes? Könnte es stattdessen ein Datenproblem sein? – grtjn
Ja der Code läuft gut in qconsole vereinbart, aber beim Hochladen besagten Codes in eine .xqy-Datei und versuchen, es in einem Browser auszuführen, ist es dort, wo die Fehlermeldung zurückgegeben wird. Das erwartete Verhalten besteht darin, dass die xml-Ergebnisse über die Konsole beobachtet werden. – Key
Wie haben Sie die .xqy-Datei hochgeladen, und haben Sie zum Beispiel mit der QConsole Explore-Funktion in Ihrer Moduldatenbank überprüft, ob die einmal in die Datenbank geladene .xqy-Datei korrekt aussieht? – grtjn