[解決済み】JSON用のクエリ言語はありますか?
質問
JSONをクエリするための(おおまかな)SQLやXQueryのような言語はありますか?
私は、JSONにうまくマッピングされた非常に小さなデータセットについて考えています。例えば、 "what are all values of X where Y > 3" といった問い合わせに簡単に答えることや、通常のSUM / COUNTタイプの操作を行うことができればいいなと考えています。
完全にでっち上げの例ですが、こんな感じです。
[{"x": 2, "y": 0}}, {"x": 3, "y": 1}, {"x": 4, "y": 1}]
SUM(X) WHERE Y > 0 (would equate to 7)
LIST(X) WHERE Y > 0 (would equate to [3,4])
これは、クライアントサイドとサーバーサイドの両方で動作し、結果は適切な言語固有のデータ構造に変換される(あるいはJSONとして保持される)と考えています。
ググってみると、それについて考え、いくつかのことを実装している人がいるようです( JAQL しかし、標準的な使い方やライブラリのセットはまだ出てきていないようです。各機能はそれ自体で実装するのはかなり些細なことですが、もし誰かがすでに正しく行っているのであれば、車輪の再発明はしたくありません。
何か提案はありますか?
編集:これは確かに悪い考えかもしれませんし、JSONは私が考えていることに対してあまりにも一般的なフォーマットかもしれません。必要に応じて合計などの関数を直接実行するのではなく、クエリー言語が欲しい理由は、ユーザー入力に基づいてクエリーを動的に構築したいからです。SQLは必要ない、必要な関数を書けばいいんだ」という主張と似ていますね。最終的にそれは手に負えなくなるか、SQLをどんどん押し進めるうちに、自分自身のバージョンを書くことになります。(なるほど、これはちょっとくだらない議論ですが、おわかりですね...)
どのように解決するのか?
もちろん、どうでしょう。
どれもまだ少し未完成のようですが、ある程度は機能しています。また、XMLとJSONでは概念モデルが異なりますが(階層型とオブジェクト/構造型)、概念的にはXPathやXQueryに似ています。
EDIT 2015年9月 実際に今あるのは JSONポインタ この規格は、JSONコンテンツを非常にシンプルかつ効率的にトラバースすることを可能にします。これは正式に規定されているだけでなく、多くのJSONライブラリでサポートされています。表現力が限られているため、それ自体をクエリ言語とみなすことはできないかもしれませんが、私はこれを実際に役立つ標準と呼びたいと思います。
関連
-
[解決済み] JsonBuilderを使用して、keyに変数名、valueにその値を指定してjsonを構築するにはどうすればよいですか?
-
[解決済み] 正しいJSONコンテンツタイプは何ですか?
-
[解決済み] JSONでコメントを使用することはできますか?
-
[解決済み] なぜGoogleはJSONレスポンスにwhile(1);を前置するのでしょうか?
-
[解決済み] cURLでJSONデータをPOSTするにはどうすればよいですか?
-
[解決済み] JavaScriptでJSONをきれいに印刷する
-
[解決済み] Microsoft JSONの日付はどのようにフォーマットするのですか?
-
[解決済み] JSON APIのレスポンス形式には規格がありますか?
-
[解決済み】なぜPythonはこのJSONデータをパースできないのですか?[終了] PythonがこのJSONデータをパースできないのはなぜですか?
-
[解決済み】json.Unmarshalとjson.NewDecoder.Decodeを使ったJSONのデコードについて
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Sequelizeとnode.jsを使った一括挿入の方法
-
[解決済み] JSONCとは何ですか?JSONCとJSON-Cは違うのですか?
-
[解決済み] JSONの未定義の値型
-
[解決済み] UnixツールでJSONをパースする
-
[解決済み】JSONのキーは引用符で囲む必要があるのでしょうか?
-
[解決済み】JSON文字列を構築する際に、特殊文字をエスケープする方法は?
-
[解決済み】Map<String, String>をPOJOに変換する。
-
[解決済み】JSON用のクエリ言語はありますか?
-
[解決済み】mongodbでISODateを使った日付クエリが動作しないようです。
-
[解決済み】json.Unmarshalとjson.NewDecoder.Decodeを使ったJSONのデコードについて