MarkLogic 6 で同じマークアップを 2 つの別々のドキュメント (1 つは XML、もう 1 つは JSON) に保存する場合、MarkLogic は自動的に相当する JSON を XML に変換し、その点でインデックスを作成しますか、それとも両方ともそれぞれの形式で保存されますか?
私が理解しているのは、MarkLogic は、関係なく、すべてのドキュメントを XML として保存し、クエリが実行されたときに JSON 変換を JSON ドキュメントに単純に適用するということですか?
ドキュメントがネイティブ形式で保存されている場合、パフォーマンスの観点から、ドキュメントを XML ではなく JSON で保存する利点はありますか?
以下は、コード スニペットの例です。
if($outputFormat="json") then (: result in json format :)
let $custom-config :=
let $config := json:config("custom")
return (map:put($config, "array-element-names",(xs:QName("lp:lesson_plan"),
xs:QName("lp:instructional_segment"),
xs:QName("lp:strand_type"),
xs:QName("lp:resource"),
xs:QName("lp:level"),
xs:QName("lp:discipline"),
xs:QName("lp:language"),
xs:QName("lp:program"),
xs:QName("lp:grade"),
xs:QName("res:strand_type"),
xs:QName("res:resource"),
xs:QName("res:ISBN"),
xs:QName("res:level"),
xs:QName("res:standard"),
xs:QName("res:secondaryURL"),
xs:QName("res:grade"),
xs:QName("res:keyword"))),
map:put($config, "whitespace","ignore"),
map:put($config, "text-value","value"),
$config)
return json:transform-to-json($finalResult, $custom-config)
else (: finalResult in xml format :)
$finalResult