-
Notifications
You must be signed in to change notification settings - Fork 12
Description
I have just come across the rdf.js specification. Please forgive me if I have overlooked a previous discussion of this point.
It does not appear that this specification is itself based on an RDF vocabulary, such as could serve to disambiguate the very names defined therein.
I would expect an effort like this to start by identifying a namespace and then defining the associated terms, followed by their semantics.
Why? Because the whole point of RDF is to support the "composition with impunity" of data from unforeseen, heterogeneous sources.
For example, although it does not use RDF, the @@transducer protocol defined here by several library authors makes an effort to avoid name collisions with other protocols that may be implemented by a given object. So does the fantasy-land specification, another interop-oriented initiative.
However, this is not just about avoiding name collisions. The use of these distinct identifiers also allows consumers of data from unknown sources to make determinations about their nature and capabilities—again, the whole point of the semantic web as I understand it. How does a conformant implementation declare itself as such? A simple @context on the prototype would suffice, if the bespoke namespace had been defined.
Again, apologies if I have failed to find a relevant decision documented somewhere. I'll be happy to elaborate if any part of my question is unclear.
Thanks!