問題タブ [jsoniq]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xquery - 単なるファイルシステム以上の Zorba
Zorba (および xquery/jsoniq) を使用して、ファイルシステム以外に保存されているドキュメントをクエリすることはできますか? 28msec などのスライドを見て、これを実行したことを示唆していましたが、その方法はわかりませんでした。彼らがサードパーティのコードを使用したのか、それとも何か他のものを使用したのかはわかりませんでした。
私は Basex を試して気に入りましたが、JSONiq をサポートしておらず、スケールアウトしないと思います。
xml - JSONiq は XML の処理をサポートしていますか?
JSONiq クエリ言語が XM の処理もサポートしているという記述を見たことがありますが、私が見つけた唯一の例は、JSONiq ウィキペディアの記事にあります。XML処理は「XQueryのJSONiq拡張機能」でしかできないようですが、これはJSONiqと同じではありませんね。JSONiq仕様には XML 構文が含まれていないため、禁止する必要がありますか?
json - JSONiq での配列とオブジェクトのルックアップ
私は現在、追加の配列と「レコード」を備えた XQuery エンジンである Brackit[1] と [2] を使用して、JSON クエリ機能の改善に取り組んでいます。基本的には JSONiq が使用するのと同じ XDM に従っていますが、残念ながら私は XQuery の専門家ではありません。多かれ少なかれセバスチャンからプロジェクトを引き継いで、特に一時的な機能強化を追加したと思います。
Brackit は、=>
レコード/オブジェクトの逆参照演算子を使用して、名前の値を取得します。
さらに[[expr()]]
、配列インデックスの検索に使用します。おそらく、純粋な JSONiq 仕様と同じです。
代わりに動的関数呼び出しを行う正当な理由があると確信しているので、変更する必要があるかもしれません。ただし、逆参照演算子はすべての場合に機能する可能性があると思います。これは、私の意見では、より優れた構文です。
このビジョンは、データストアで使用するための実証済みの最適化を備えた半構造化データ用のクエリコンパイラを持つことで素晴らしいと思います: http://wwwlgis.informatik.uni-kl.de/cms/dbis/projects/brackit/mission/
Brackit の決定的な機能の 1 つは、集合指向処理のための FLOWR 式のパイプライン処理です。
敬具
ヨハネス
[1] https://github.com/sirixdb/brackit
[2] http://wwwlgis.informatik.uni-kl.de/cms/fileadmin/publications/2013/Dissertation-Baechle.pdf
json - JSONiq - 配列をシーケンスに変換するにはどうすればよいですか?
JSONiqのJSONiq から JavaScript への実装を使用して、配列があるとします
要素をシーケンスとして取得したいのですが、これらはすべて配列自体を返します-
配列のメンバーを抽出する正しい方法は何ですか?
私の最終的な目標は、配列内のオブジェクトを文字列に変換することです-
<timestamp>|address|%Q0.7
JSON オブジェクトの配列をなどの文字列のセットに変換するため
編集: Zorbaを使用すると、$a() 構文は問題なく動作するようです。ノード jsoniq パーサーの問題ですか?
例えば
戻り値
2021-02-19T23:10:13.434273Z|アドレス|%Q0.1 2021-02-19T23:10:13.434273Z|アドレス|%Q0.7
jsoniq - JSONiq ドキュメントのコード スニペットは有効ですか?
JSONiq ドキュメントからいくつかの例を試していましたが、ドキュメントの一部のスニペットでエラーがスローされます。
npm を使用して jsoniq (バージョン 0.0.8) をインストールしました。
例 :
エラー :
このコード スニペットは無効ですか?
上記のエラーをスローする他のスニペットもほとんどありません。
誰かが最新/有効なドキュメントを教えてくれたり、この構文が無効になっているかどうかを教えてくれたりすると、とても助かります。