2017-03-03 4 views

Antwort

4

Versuchen Sie, die folgenden Optionen Parameter verwendet:

let $options := 
    <options xmlns="xdmp:quote"> 
    <indent>no</indent> 
    </options> 

return xdmp:quote(fn:doc($uri)/*, $options) 

Die quote options sind in der Dokumentation für die xdmp:quote() Funktion aufgeführt.

Für eine vollständige Auflistung aller Optionen finden Sie die Datei quote.xsd in Ihrem Installationsbereich im Verzeichnis/MarkLogic/Config.

+1

Vielen Dank! Das hat funktioniert. Es sollte in der Dokumentation als ein Beispiel sein. –

+0

Die Dokumentation zur Verwendung der Optionen ist unvollständig. Der Namespace wird nicht erwähnt. Es sollte weitere Beispiele für die Verwendung der Optionen geben. –

2

Es ist relativ geradlinig, nicht anders, als wie es in anderen Befehlen verwendet wird, wie xdmp: http-get und xdmp: eval:

xdmp:quote(
    $xml, 
    <options xmlns="xdmp:quote"> 
     <omit-xml-declaration>yes</omit-xml-declaration> 
     <indent>no</indent> 
     <indent-untyped>no</indent-untyped> 
    </options> 
) 

Hinweis Gedanken, das wird nicht Leerzeichen Streifen, der ist in der XML vorhanden. Um loszuwerden, dass, können Sie gute alte xsl: strip-space:

xdmp:quote(
    xdmp:xslt-eval(
    <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="#all"> 

     <xsl:output indent="no" omit-xml-declaration="yes"/> 
     <xsl:strip-space elements="*"/> 

     <xsl:template match="@*|node()"> 
     <xsl:copy> 
      <xsl:apply-templates select="@*|node()"/> 
     </xsl:copy> 
     </xsl:template> 

    </xsl:stylesheet>, 
    $xml 
) 

)

HTH!

Verwandte Themen