1

私のjsonとクエリの画像

ここに画像の説明を入力

JSON コード

{
    "reading_list": {
        "book": {
            "name": "Fifty shades of grey",
            "author": "E.L James",
            "date": "March 2015",
            "comment": "did not like it very much"
        },
        "book": {
            "name": "The grass is singing",
            "author": "Doris Lessing",
            "date": "April 2015",
            "comment": "enjoyed it quite a bit"
        },
        "book": {
            "name": "A short history of nearly everything",
            "author": "Bill Bryson",
            "date": "June 2015",
            "comment": "very informative"
        },
        "book": {
            "name": "JSON in 24 hours",
            "author": "Peter Settler",
            "date": "in the year",
            "comment": "read for work"
        },
        "book": {
            "name": "Miss Smilla's feeling for snow",
            "author": "Peter Hoeg's",
            "date": "in the year",
            "comment": "read for entertainment"
        }
    }
}

クエリ コード:

for $x in reading_list
return $x("book")/name

リンクからわかるように、すべての本の名前を取得することを期待していましたが、取得できるのは次のとおりです。

Miss Smilla's feeling for snow.
The output should be like this:
Fifty shades of grey
A short history of nearly everything
The grass is singing
JSON in 24 hours
Miss Smilla's feeling for snow

何が問題なのですか?..助けてください

4

1 に答える 1

0

JSONiq データ モデル (JDM) では、重複キー (例の book など) は許可されていません。この実装はエラーをスローしないようですが、そのキーとの最後のペアを取得します。

元のJSON RFC では、この制約は SHOULD です。図書リストを本の配列としてモデル化することで、相互運用性を高めることができます。

于 2016-03-24T07:52:55.920 に答える