SpahQLはJavaScriptオブジェクトのデータ抽出に使えるクエリライブラリです。

WebアプリケーションではデータをJSONで利用するのが一般的です。データが大量にあるのであれば、そこから欲しいデータだけを抽出する仕組みが必要になるでしょう。JavaScriptでそれを可能にするのがSpahQLです。


例です。hash1というキーに対応したデータを取り出しています。


ネストして調べられます。


配列、ハッシュどちらにも使えます。


配列の場合は0などとキー指定もできます。


配列でサイズが1以上のものをピックアップしています。

データは抽出するだけでなく、プロパティを使ってサイズやデータの種別を調べることもできます。さらに正規表現を絡めてマッチするか否かをチェックするといった機能もあります。node.js、Webブラウザどちらでも使えるライブラリになっています。

SpahQLはJavaScript製のソフトウェア(ソースコードは公開されていますがライセンスは明記されていません)です。

MOONGIFTはこう見る

Webアプリケーションが多用されるようになれば、そのデータの蓄積に関して問題が出てきます。専用のクエリ言語を設けるというのは面白い解決策と言えるでしょう。その他、ローカルストレージを使ったり、Web SQL Databaseを使うという手もあります。ただしHTML5に限定され、Web SQL Databaseについては使えるブラウザも限定されるのが欠点です。

専用のクエリ言語が登場すれば、ある程度の無駄を含みつつもとりあえずデータをJSONで渡してしまい、後はJavaScriptに処理してもらうという手法が使えるようになります。検索のフィルタリングにも有用でしょう。Webアプリケーションの可能性を広げる便利なライブラリです。

SpahQL - A query language for Javascript objects

Try SpahQL

danski/spahql