@prefix rdf: . @prefix rdfs: . @prefix dcterms: . @prefix foaf: . @prefix cpack: . # This file is a Turtle-format RDF file that describes the package. It # *must* be located in rdf/cpack/versioned_graph.ttl # # Author is a FOAF Person. If you have a FOAF profile, you can link to # this. Otherwise you can specify the information inline as done below. # See http://xmlns.com/foaf/spec/ for defines fields. <> a cpack:Library ; cpack:packageName "versioned_graph" ; dcterms:title "Named RDF graphs with versioning" ; cpack:author [ a foaf:Person ; foaf:name "Jacco van Ossenbruggen" ; foaf:mbox ; ] ; cpack:primaryRepository [ a cpack:GitRepository ; cpack:gitURL ] ; cpack:description """Library to version RDF named graphs. In the normal GIT model every commit object refers to a tree object, which represents a complete snapshot of the project directory tree. Trees are recursive structures of other tree objects (subdirectories) and hashes of blobs (storing the contents of files in the dir). In this library every commit also refers to a tree object, but this represents a complete snapshot of all tracked named graphs in the triple store. A tree thus describes the urls of the named graphs with hashes of the blobs which store the actual triples of each named graph. The backend storage is by default done in a normal git repo, but this can be switched to a triple-based storage model where each git object is represented by a named graph in the triple store (node that this can lead to many named graphs). The current implementation naively copies entire graphs, which is fine in the git backend, which is build to deal with this. It explodes, however, when blobs are materialized into RDF. We will need to look into smarter solutions for this later. """ .