Skip to content

Adapting to Triple Terms and Reifiers #49

@gkellogg

Description

@gkellogg

The direction for RDF 1.2 now abandons quoted triples for triple terms which are intended to be used indirectly through a reifier that relates an identifier to the triple term through rdf:reifies. This likely affects how we might represent this in JSON-LD. Rather than using a recursive value on @id, we may instead do something using additional keywords:

The bob example might look more like the following:

{
  "@context": {
    "@base": "http://example.org/",
    "@vocab": "http://example.org/",
    "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
  },
  "rdf:reifies": {
    "@triple": {
      "@id": "bob",
      "age": 42
    }
  },
  "certainty": 0.8
}

This could be reduced by also introducing a @reifies keyword (at the expense of adding yet another keyword) as follows:

{
  "@context": {
    "@base": "http://example.org/",
    "@vocab": "http://example.org/",
    "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
  },
  "@reifies": {
    "@id": "bob",
    "age": 42
  },
  "certainty": 0.8
}

The annotation syntax could also allow for an @id entry for assigning the reifier identifier:

{
  "@context": {
    "@base": "http://example.org/",
    "@vocab": "http://example.org/"
  },
  "@id": "bob",
  "age": {
    "@value": 42,
    "@annotation": {
      "@id": "_:anno",
      "certainty": 0.8
    }
  }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions