Search code examples
json-ldhypermediahydra-core

Some questions about Hydra's terms


I'm working on a Hydra documentation generator for Golang. I've been using the demo as an example and I was wondering about the ambiguity in some hydra terms.

  • What's the difference between hydra:title and rdfs:label? label is used in vocab:User, but hydra:title is used for Resource and Collection, as well as in properties.
  • Speaking of Resource and Collection, why are they re-described in this ApiDocumentation? Shouldn't they be part of hydra/core?
  • In many properties, there's both a hydra:title + hydra:description and label + description that contain the same information. Why is that? Can I ignore one and be fine?

Apologies in advance if I failed to spot that in the spec, but I've only recently gained an interest in hypermedia APIs and many concepts are still a bit hazy.


Solution

  • • What's the difference between hydra:title and rdfs:label?

    rdfs:label is used for the vocabulary definition itself. hydra:title is used to overwrite that label in Hydra clients (that use it for instance to render forms). This was the first issue that was opend when Hydra's further development was moved into a W3C Community Group: Hydra ISSUE-1

    • Speaking of Resource and Collection, why are they re-described in this ApiDocumentation? Shouldn't they be part of hydra/core?

    They are part of the Hydra Core Vocabulary. As such, it isn't necessary to re-describe them. It was an implementation shortcut I took.

    • In many properties, there's both a hydra:title + hydra:description and label + description that contain the same information. Why is that? Can I ignore one and be fine?

    See the answer to the first question. In general, you should prefer the Hydra versions in a Hydra-specific tool but fall back to the rdfs properties.

    Btw. there's a dedicated mailing list for Hydra. Join the W3C Community Group if you are interested in influencing the future development of Hydra. You should definitely announce your documentation generator there as well.