A SPARQL server for Media Arts Database
Find a file
2023-12-17 00:47:09 +09:00
.github/workflows feat: update fuseki to 4.9.0 2023-10-16 02:07:14 +09:00
versions feat: add dataset version 20231020 2023-12-17 00:47:09 +09:00
.gitignore first commit 2023-07-03 03:14:10 +09:00
assembler.ttl fix: use CJKAnalyzer 2023-07-03 05:36:14 +09:00
create_void.py fix: remove latest file 2023-07-03 23:46:20 +09:00
Dockerfile fix: add label to image 2023-07-03 11:45:19 +09:00
LICENSE feat: add license file 2023-07-03 04:16:22 +09:00
README.md docs: update readme 2023-07-03 23:46:30 +09:00

MADB-Fuseki-Docker

Docker Hub: babibubebon/madb-fuseki

メディア芸術データベースのデータセットをロードしたApache Jena FusekiによるSPARQLサーバです。

以下で公開されているRDFデータセットを各バージョン毎にロード済みのDockerイメージを提供します。

Usage

docker run --rm -p 3030:3030 babibubebon/madb-fuseki:{version}

タグ {version} には、利用したいデータセットのバージョンを YYYYMMDD 形式で指定します。便宜上、データセットの公開日をバージョンとして扱っています。

利用可能な {version} は、 versions/*.txt をご確認ください。

起動後、以下のURLにアクセスして利用します。

データセットのバージョンの識別

<http://localhost:3030/madb/void/> という名前付きグラフ内でデータセットのメタデータを記述しています。データセットを表すURIは <http://localhost:3030/madb/#dataset> としています。

例えば、以下のようなクエリで確認することができます。

SELECT *
WHERE {
  GRAPH <http://localhost:3030/madb/void/> {
    <http://localhost:3030/madb/#dataset> ?p ?o .
  }
}

全文検索

Luceneによる全文検索インデックスが構築済みですので、SPARQLクエリで全文検索できます。

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX schema: <https://schema.org/>
PREFIX text: <http://jena.apache.org/text#>

SELECT ?公開年 (COUNT(DISTINCT ?マンガ単行本) AS ?合計数) (SAMPLE(?マンガ単行本) AS ?マンガ単行本の例)
WHERE { 
  ?マンガ単行本 text:query '"異世界" OR "転生"' .
  ?マンガ単行本 schema:genre "マンガ単行本";
          schema:datePublished ?公開年月日 .
  BIND (SUBSTR(?公開年月日, 1, 4) AS ?公開年)
}
GROUP BY ?公開年
ORDER BY DESC(?公開年)

Build

VERSION=YYYYMMDD
python create_void.py ${VERSION} > void.trig
docker build --build-arg DATASET_VERSION=${VERSION} -t babibubebon/madb-fuseki:${VERSION} .

License

本リポジトリに含まれるリソースは、MIT Licenseで提供されます。

Dockerイメージ内に含まれるTDB2のデータベースファイルとして格納されたデータセットは、メディア芸術データベース 利用規約に従って、メディア芸術データベース(ベータ版)データセットを加工して生成したものです。