Re: What does it mean to “implement RDF” or “conform to RDF”?

On Thu, 2012-05-10 at 23:02 +0100, Richard Cyganiak wrote:
> All,
> Gavin quoted Norm Walsh the other day as saying that his fridge conforms to the XML Infoset specification, because that spec doesn't have any conformance requirements.
> Now the good news is that Norm's fridge apparently also supports RDF.
> My understanding is that a “well-formed” specification identifies a certain class of artefacts, and then states requirements (often using MUST, SHOULD, MAY etc) that these artefacts have to meet in order to conform to the spec. Alternatively, the spec may define a completely new class of artefacts. For example it may define the class of “XML documents”, and define in detail what is and isn't an XML document. All this is usually spelled out in a section called “Conformance”.
> Now for some specs these things are so obvious that there's little benefit in pointing them out explicitly. The Turtle spec defines the Turtle language — a class of documents. It also defines a Turtle Parser or Turtle Processor, which is a software system that turns a Turtle document into RDF graphs.
> I've tried to wrap my head around what this could mean for RDF Concepts, and here's what I came up with. I've added this to the spec's Conformance section:
> [[
> This specification, RDF 1.1 Concepts and Abstract Syntax, defines a data model and related terminology for use in other specifications, such as concrete RDF syntaxes, API specifications, and query languages. Implementations cannot directly conform to RDF 1.1 Concepts and Abstract Syntax, but can conform to such other specifications that are based on the RDF data model.
> Another specification conforms to RDF 1.1 Concepts and Abstract Syntax if it defines operations in terms of RDF graphs or RDF datasets, and if any use of terminology defined in normative sections of RDF 1.1 Concepts and Abstract Syntax is consistent with its definitions and conformance requirements.
> ]]
> If this goes against anyone's intuition about what “conforming to RDF Concepts” or “implementing RDF Concepts” should mean, then please speak up and I'll try to fix it.

Perhaps we can go a bit farther than that.  I notice some language like:

        Interoperability problems can be avoided by minting only IRIs
        that are normalized according to Section 5 of [IRI].
        Non-normalized forms that should be avoided include:

              * Uppercase characters in scheme names and domain names
That suggests there might be a class of things which mint IRIs for use
in RDF, and to conform to rdf-concepts, those "IRI-minters" SHOULD only
mint normalized IRIs.

There are other such normative (deontic) statements throughout the
document.  It might be worth thinking about each one a bit to see if it
involves a class of things which we think should/must be some way or
behave in some way.     (I'm happy to help with that, but don't have
time right now, and thought I should share this idea rather than waiting
until I'd done that.)

    -- Sandro


Received on Saturday, 12 May 2012 11:19:38 UTC