選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
Puck Meerburg 4383d9fd49 Use proper namespace for mapping language strings to RDF 3ヶ月前
schema Rewrite first part of the EntityStore into using proper async 6ヶ月前
src Use proper namespace for mapping language strings to RDF 3ヶ月前
.gitignore Initial commit of the Cellar 11ヶ月前
Cargo.toml temporarily pin revision 4ヶ月前
README.md Initial commit of the Cellar 11ヶ月前

README.md

Kroeg Cellar

(I’d have called this kroeg-kelder but that’d probably go too far)

Simple JSON-LD storage mechanism, storing everything in a database of RDF quads.

Usage

This code is made mostly to work inside of Kroeg, but the external API is documented with rustdoc, which isn’t publicly generated yet. Clone therepo then run cargo doc to do it yourself.

Design

The database currently stores its data in two tables:

Attribute

This table maps an ID number to a URL, allowing for e.g. quick lookups and even quicker renaming of objects (just change its value in this table, and everything automatically updates!)

Quad

This table is slightly complicated, as it has to support everything that RDF can:

  • id: unique ID for the quad.
  • quad_id, subject_id, predicate_id: These point into the Attribute table, fort the corresponding RDF quad attributes.

  • attribute_id: used if object points to another ID.

  • object, type_id, language: The value, and type or language of the quad. The code only supports language or type_id being set, both of them being set is unsupported.