Skip to content

Worked examples

Basic steps are as follows:

Create an Object → give it a Class (what kind of thing it is) → give it Properties (the facts about it).

A property value comes in one of two shapes:

  • Literal: a value you type in directly, such as a number or a date ("1921", "A street protest").
  • Link: a pointer to another Item (Creator points at a Person, License points at a License document).

A Person, a Collection, even a License are themselves just Items with a Class, so a link always means "Item → Item." Everything is the same shape.

Here is the pattern, followed by five examples.

A link is the archive's defense against drift. When you use a link as a value, you point at another Item that carries its own metadata, so that one record is reused everywhere instead of being retyped (and slowly diverging) in each place.

A person is the clearest example. "Jane Smith" can be the author of a book and the plaintiff in a court transcript. Both point at the same Jane Smith Item, and every link enriches that one record.

How a link is stored

The Item #5 notation below is a teaching shorthand. Under the hood a value is recorded as either a literal or a URI in a single property table, so a link is a URI rather than a foreign key the database enforces. Nothing guarantees the target Item exists or stays put, which is why a link is a convention the archive maintains rather than a constraint it imposes.

Pattern

[ empty Item ]
   ├─ Class:  <pick one type>           ← e.g. Image, Book, Person, Collection
   └─ Properties:
        dcterms:title       = "…"        (literal)
        dcterms:creator     → Item #…    (link to a Person)
        dcterms:date        = "…"        (literal)

Example 1: a photograph

Item #101
   Class:  dctype:Image
   Props:
     dcterms:title    = "Dockworkers' strike, harbor front"   (literal)
     dcterms:creator  → Item #5                                (link → a Person)
     dcterms:date     = "1921-08"                              (literal)
     dcterms:subject  = "Labor movements"                     (literal)
     dcterms:format   = "image/jp2"                            (literal)
     dcterms:rights   → Item #9                                (link → a License)

Example 2: a person (what Creator pointed at)

A creator is its own Item, not loose text:

Item #5
   Class:  dcterms:Agent          (the "person/organization" class)
   Props:
     dcterms:title  = "Jane Smith"     (literal, her name)
     dcterms:date   = "1888/1955"      (lifespan, literal)

Now every item Jane made just links to #5. Fix her name once, it's fixed everywhere.

Example 3: a book or article

Same move, a different class and a few bibliographic properties:

Item #210
   Class:  bibo:Book
   Props:
     dcterms:title             = "The General Strike"      (literal)
     dcterms:creator           → Item #5                   (link → Person)
     dcterms:publisher         = "Red Press"               (literal)
     dcterms:issued            = "1923"                     (literal)
     dcterms:language          = "en"                       (literal)
     dcterms:bibliographicCitation = "Smith, J. (1923)…"   (literal)

Example 4: a collection (the container that holds other Items)

A collection is also just an Item with a class, and membership is a link:

Item #300
   Class:  dctype:Collection
   Props:
     dcterms:title    = "Labor History Archive, 1900/1950"   (literal)
     dcterms:hasPart  → Item #101                            (link → the photo)
     dcterms:hasPart  → Item #210                            (link → the book)

And each member can point back up:

Item #101
     dcterms:isPartOf → Item #300     (link → the collection)

Example 5: a license (what rights pointed at)

Item #9
   Class:  dcterms:LicenseDocument
   Props:
     dcterms:title       = "CC BY 4.0"                              (literal)
     dcterms:identifier  = "https://creativecommons.org/licenses/by/4.0/"  (literal URI)