웹 양식에서 메모리에로드 된 매우 큰 XML 파일에서 여러 노드의 값을 변경하려고합니다.xQuery를 사용하여 메모리의 XML 값을 변경하십시오.
파일은 다음과 같이 얻을 수있다 :
let $file := xdmp:get-request-field("xml_to_upload")
그래서, 당신은 파일이 메모리에 볼 수 있습니다.
이제 수천 개의 노드 값을 변경해야하며 지금까지 최적의 방법으로이를 수행 할 수 없었습니다.
아이디어가 있으십니까?
지금까지 tryied 한 것들 중 일부
:let $auxVar :=
if($fileStructureIsValid) then
(
for $currentNode in xdmp:unquote($file)//ID
let $log := xdmp:log(fn:concat("newNodeValue", ": ", mem:replace($currentNode, element ID{ fn:concat($subject, "-", fn:data($currentNode)) })))
return fn:concat($subject, "-", fn:data($currentNode))
)
else
(
)
마이크로 전자 기계 라이브러리는 사용자가 하나를 다운로드합니다.
가, 세 번째 대안은 XSLT 메모리에 문서 변환을 적용하는 것입니다 : 사실, MarkLogic 주제에 정말 잘 쓰여진 블로그 항목이 있습니다. – ehennum