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
有什么问题?请帮忙
答案 0 :(得分:0)
在JSONiq数据模型(JDM)中,不允许使用重复的键(例如您的示例中的书)。似乎这个实现不会抛出错误,而是使用该密钥进行最后一对。
在original JSON RFC中,这个约束应该是应该的。您可以通过将阅读列表建模为一系列书籍来提高互操作性。