0

XQueryを使用して「aaa=1&bbb=2」のような文字列をxmlに変換する方法

<request>
  <aaa>1</aaa>
  <bbb>2</bbb>
</request>

次のコードを試しましたが、失敗しました。

xquery version "1.0" encoding "GBK";
(:: pragma  type="xs:anyType" ::)

declare namespace xf = "http://tempuri.org/BNetAP/Xquery/query2xml/";

declare function xf:query2xml($queryStr as xs:string)
    as element(*) {
    <query-params>
    {
        for $c in
            fn:tokenize($queryStr, "&amp;")
        let $myname as xs:string := "{fn:substring-before($c,"=")}"
        return 
            element
                {fn:QName("", $myname)}
                {"{fn:substring-after($c,"=")}"}
    }
    </query-params>
};

エラーメッセージは次のとおりです。

line 15, column 6:  "{http://www.w3.org/2004/07/xpath-functions}QName": unknown function (or number of arguments (2) is wrong)  BNetAP/Xquery   query2xml.xq    line 15 1241431186406   397

「QName」が「不明な関数」なのかわかりません!

4

1 に答える 1