remove hydra:Resource and hydra:Class

Dear all,

For reasons of simplicity and vocabulary reuse,
could we remove hydra:Resource and hydra:Class?

Right now, everything in the Hydra Core Vocabulary
is a hydra:Resource, and all classes are hydra:Class.

The only difference between hydra:Resource and rdfs:Resource
is that hydra:Resource instances are dereferenceable;
and rdfs:Resource itself adds no semantics whatsoever, since
“all things described by RDF are instances of the class rdfs:Resource” [1].

Dereferenceability is orthogonal to ontological relationships,
and should IMHO be a recommended practice in the spec
rather than an ontological relationship. It does not add anything at all:
- If a client wants to dereference, the absence of hydra:Resource
  does *not* mean something is *not* dereferenceable.
- If a client wants to dereference a hydra:Resource,
  it takes the exact same steps it would for something
  that is not explicitly labeled a hydra:Resource.
- The only difference is the “guarantee” offered by the ontology
  that something is dereferenceable; but actually doing the dereferencing
  and finding out whether something is dereferenceable
  involves the exact same step, i.e., GETting the thing.
  No gain there.

In addition, hydra:Class is simply the disjunction
of hydra:Resource and rdfs:Class,
so by the above reasoning, we can simply make it rdfs:Class.

It seems to me that hydra:Resource and hydra:Class
are artifacts of something that no longer has importance.
I therefore propose to simplify and clarify the ontology by:
- removing hydra:Resource and mentions of it;
- removing hydra:Class and replace mentions of it by rdfs:Class.
If necessary, we can add something to the spec about dereferencing,
but I don't think that this would add something.

Any thoughts on this?
If we all agree, I can make the necessary edits to the spec.

Best,

Ruben

[1] http://www.w3.org/TR/rdf-schema/#ch_resource

Received on Monday, 5 January 2015 11:59:04 UTC