Skip to content

Ref

A value here may be written two ways, and both conform. A reader has to handle either.

  • string — a reference, as @type: @id writes one
  • object — Something the record points at rather than describes.

Examples

"https://bibframe.example/works/9937996a-1083-4357-b05f-4be85f7b7354"
{
  "@id": "http://id.loc.gov/vocabulary/relators/aut",
  "rdfs:label": [
    "author"
  ]
}

Trimmed from a real record rather than written for the occasion, and checked against this definition by tests/test_examples.py. A wrong example is worse than none, because it is the first thing anyone copies.

Properties

PropertyTakesWhat BIBFRAME says it is
rdfs:labelTextdefined by RDF Schema
sourceRefResource from which value or label came or was derived, such as the formal source/scheme from which a classification number is taken or derived, list from which an agent name is taken or derived, source within which an identifier is unique.

Every property here holds an array, and a property this definition does not name is still checked: it must be an array too. Naming a property buys a check on what its values look like, and nothing else.

The schema

https://blue-core-lod.github.io/bibframe-json/schema/dialect/Ref.json is this definition on its own, and https://blue-core-lod.github.io/bibframe-json/schema/dialect.json is the whole shape with every definition inlined. They are checked against each other over the conformance corpus, so either is safe to depend on.