2010-09-27 115 views
1

我正在處理XML項目,當我嘗試連接我的Xquery中的json文件時遇到問題。解析來自Xquery的json

我會解釋我的問題更多的細節:

我不知道如何讀XQuery中的JSON文件,我在XQuery中有一個URL(此URL有一個JSON文件),並且該網址是下一頁:

http://discomap.eea.europa.eu/ArcGIS/rest/services/Admin/EuroBoundaries_Dyna_WGS84/MapServer/2/query?text=&geometry=16.4027431529776,57.0126631873995&geometryType=esriGeometryPoint&inSR=&spatialRel=esriSpatialRelIntersects&where=&returnGeometry=false&outSR=&outFields=NUTS_CODE&f=json 

此URL下一個信息:

{ 
"displayFieldName":"ICC", 
"fieldAliases":{ 
     "ICC":"ICC", 
     "NUTS_CODE":"NUTS_CODE" 
      }, 
"features":[{ 
     "attributes":{ 
      "ICC":"SE", 
      "NUTS_CODE":"SE21" 
        } 
      }] 
} 

所以,我要讀XQuery中此JSON文件或得到一個函數來此JSON文件轉換爲XML文件。

通過互聯網,我得到這個代碼:

我們進口的json模塊,他們是功能,但下面的網址不工作,所以這是不可能解析這個功能。

import module namespace json ="http://www.zorba-xquery.com/zorba/json-functions"; 

declare function xmlconv:RestWEB() 
{ 
let $var := "&" 

let $datocor1 := "16.4027431529776," 
let $datocor2 := "57.0126631873995" 
let $dat1 := concat("geometry=",$datocor1, $datocor2) 

let $dat2 := "geometryType=esriGeometryPoint" 
let $dat3 := "inSR=" 
let $dat4 := "spatialRel=esriSpatialRelIntersects" 
let $dat5 := "where=" 
let $dat6 := "returnGeometry=false" 
let $dat7 := "outSR=" 
let $dat8 := "outFields=NUTS_CODE" 
let $dat9 := "f=json" 

let $URLinicial := concat($var,$dat1,$var,$dat2,$var,$dat3,$var,$dat4,$var,$dat5,$var,$dat6,$var,$dat7,$var,$dat8,$var,$dat9) 

let $URLFinal := concat($restWeb2,$URLinicial) 

let $FinalResult := json:parse((doc($URLFinal))) 
return 
    <div> 

     {$FinalResult} 

    </div> 
}; 

正如你所看到的,json:parse((doc($URLFinal)))是我嘗試解析JSON文件,XML文件的功能,但它是不可能執行,因爲我不能在此頁面中輸入的模塊:www.zorba- xquery.com/zorba/json-functions。

讓我知道如果你知道一些功能來解決這個問題,或者你需要更多的信息。

在此先感謝

大衛

回答

1

正確的模塊導入:

進口模塊命名空間JSON = 「http://www.zorba-xquery.com/modules/json」;

請檢查出左巴JSON文件:http://www.zorba-xquery.com/doc/zorba-1.2.0/zorba/xqdoc/xhtml/com/zorba-xquery/www/modules/json.html

在28msec網站上,你可以找到寫在XQuery的Web應用程序,其使用這些功能的例如:http://www.28msec.com/support_templates_json_jsonml/index

+0

Zorba現在已經爲JSON提供了一流的支持。你可以試試http://www.zorba-xquery.com/html/jsoniq – wcandillon 2012-02-22 08:44:21