Herculesのversion 0.05を公開しました。変更点は以下の通りです。
// foaf:name が "Tim" のリソース
var results = e.findAll({"foaf:name": "Tim"});
// foaf:homepage が URI <http://example.com/alice/> かつ、foaf:nameが "Alice" のリソース
var results = e.findAll({"foaf:homepage": e.uri("<http://example.com/alice/>"), "foaf:name": "Alice"});
// foaf:homepage が URI <http://example.com/alice/> もしくは、foaf:nameが "Bob" のリソース
var results = e.findAll({RULE: OR, "foaf:name": "Bob", "foaf:homepage": e.uri("<http://example.com/alice/>")});
// foaf:nameが "Bob" もしくは "Alice"の リソース
var results = e.findAll({"foaf:name": ["Bob", "Alice"]});
// ORの複合
var results = e.findAll({RULE: OR, "foaf:name": ["Bob", "Tim"], "foaf:homepage": e.uri("<http://example.com/alice/>")});
// クエリ文字列での検索(Prefixは自動で付加される)
var results = e.findAllByQueryString("SELECT ?person WHERE {?person a foaf:Person}");
results[0]["person"].load();
必要な機能は大体実装できてきた感じ。あとは述語に対応したメソッドの定義を保証する手段とエラーハンドリングかな。
http://yudai.arielworks.com/memo/2007/02/10/221502.trackback
末尾に「2 + 0」の計算結果を繋げて下さい。例えば計算結果が「17」の場合、「221502.trackback17」です。これは機械的なトラックバックスパムを防止するための措置です。