我正在尝试使用BaseX将新元素插入到xml文档中。
declare variable $part external; insert nodes $part as first into db:open("PARTDB")/assembly[@name="ZB09010"]
我正在使用BaseX GUI进行测试,并定义了$ part变量(通过单击$图标)。
如果我使用“本地”变量,例如
let $up :=return insert node $up as last into doc('office')/Staff 666-66-1234 Doctor Jeff
那么插入将正常工作,但是,使用外部变量,每个保留的xml字符都将转换为xml转义字符序列,例如:<变为&lt;
我已经通过使用函数xquery:eval($ part)来包装变量来使其成功工作,但是在我看来,这就像是黑客。
我应该使用xs:string以外的其他类型来阻止翻译吗?还是我需要与外部变量一起使用以防止转换的某些功能。我也尝试用CDATA包装$ part xml内容,但是xml仍然转换为转义字符。