新規作成 | 一覧 | RSS | FrontPage | 検索 | 更新履歴
[Calendar/When/RDF/Event/2.Lib/2.DataSet] (前:1.DataSets|次:3.Event) (English)

2.DataSet

一言語データセット(DataSet)は「データセット定義ファイル」の一言語部分をオンメモリに展開したものとお考えください。

データセット定義ファイル

多言語データセット配下には、データセット定義ファイルのデータセットに対する{ts:reference}の行数分だけ一言語データセットが作られます。

 {ts:reference},    example.csv, csv with header
 {ts:reference}@ja, example.csv, csv with header

と記述されたデータセット定義ファイルでデータセットを読み込んだ場合、生成される一言語データセットは、{ts:reference}による特定の言語に依存しない一言語データセットと、{ts:reference}@jaによる日本語用の一言語データセットの2つです。

一言語データセットには、データセット定義ファイルのうち、自身の言語コードに一致する“@言語コード”のついた行と、自身の言語コードに一致する行のない要素の“@言語コード”がつかない行が渡されます。

example.csv に date, english_abstract, japanese_abstract, french_abstract という名前のカラムがあり、

 {dcq:valid},       [date]
 {dcq:abstract},    [english_abstract]
 {dcq:abstract}@ja, [japanese_abstract]
 {dcq:abstract}@fr, [french_abstract]

と記述されていたとすると、特定の言語に依存しない一言語データセットには、

 {ts:reference},    example.csv, csv with header
 {dcq:valid},       [date]
 {dcq:abstract},    [english_abstract]

日本語用の一言語データセットには、

 {ts:reference},    example.csv, csv with header
 {dcq:valid},       [date]
 {dcq:abstract},    [japanese_abstract]

が渡されます。フランス語用の一言語データセットは生成しないので、

 {dcq:abstract}@fr, [french_abstract]

の行は使われません。

API

repository

repositoryは指定の Event を主語とする Statement からなる RDF:Repository を生成します。

Array<When::Events::Event>を入力とし、Hash<String=>RDF:Repository> を返します。

Hash のキーは RDFグラフの IRI で、無名グラフでは''(長さ0の空文字列)です。

When.exe Ruby版の「イベント機能」を担当するWebサーバー(http://hosi.org)のAPIで「条件に合致するイベントをすべて取得する場合」にRDFの何れかの形式で応答する際に使われています。

event

eventは指定の URI を主語とする Statement からなる RDF:Repository を生成します。

指定のイベントのURIを意味するStringを入力とし、Hash<String=>RDF:Repository> を返します。

Hash のキーは RDFグラフの IRI で、無名グラフでは''(長さ0の空文字列)です。

When.exe Ruby版の「イベント機能」を担当するWebサーバー(http://hosi.org)のAPIで「ひとつのイベントを取得する場合」に使われています。

used_ns

used_nsはRDF:Repository を生成する際に実際に登録したリソースのURI と先頭一致するプレフィクスと名前空間の対を Hash<String(Prefix)=>String(namespace)> で返します。 RDF:Repository を dump する際に :prefixes オプションの値として用います(→サンプルコードmake_events_ttl.rb)。

intersection_events

intersection_eventsは指定の条件を満たす Event の Array を返します。

When.exe Ruby版の「イベント機能」を担当するWebサーバー(http://hosi.org)のAPIで「条件に合致するイベントをすべて取得する場合」に、合致するイベントを抽出するために使われています。

edge_included

edge_includedyは順序キーによる検索を行います。

intersection_events の中で使われており、イベントの{ts:start}・{ts:west}・{ts:south}・{ts:bottom} の何れかが、指定の範囲に入っているか判断し、入っているイベントの番号(Integer)のArray を返します。

range_overlaped

range_overlapedは範囲の重なりによる検索を行います。

intersection_events の中で使われており、イベントの{ts:start}~{ts:until}・{ts:west}~{ts:east}・{ts:south}~{ts:north}・{ts:bottom}~{ts:top} の何れかと、指定の範囲が重なっているか判断し、重なっているイベントの番号(Integer)のArray を返します。