W3C home > Mailing lists > Public > public-sdw-wg@w3.org > November 2016

Re: rdfs:class versus owl:class in SOSA-Core

From: Rob Atkinson <rob@metalinkage.com.au>
Date: Wed, 09 Nov 2016 01:05:00 +0000
Message-ID: <CACfF9LwTJOfBnkzZLV2NH3sVkfrpDFXgQhRC9yAfgt5Nmswb3g@mail.gmail.com>
To: Kerry Taylor <kerry.taylor@anu.edu.au>, Rob Atkinson <rob@metalinkage.com.au>
Cc: SDW WG Public List <public-sdw-wg@w3.org>
agreed  - I only used owl:equivalentClass as an example property with
domain owl:Class, from which the rdfs:Class can be inferred to be an
owl:Class. Should have used a different property to avoid confusion about
typing intention.

Rob

On Wed, 9 Nov 2016 at 11:03 Kerry Taylor <kerry.taylor@anu.edu.au> wrote:

> Rob,
>
> I think your reasoning is correct, but I think the simpler form again of
> asserting only  :myClass a rdfs:Class  in sosacore is adequate to have
> the desired effect in the sosa-core scope.
>
> In ssn, when sosa-core is imported,
>
> instead of  :myClass owl:equivalentClass eg:yourClass
>
> I am  expecting  to say instead
>
> :myClass a owl:Class
>
> But that is because I want all the sosa terms to be ssn terms in every
> possible way--- not somehow different things that need to be  declared to
> be equivalent.
>
>
>
> --Kerry
>
> *From:* Rob Atkinson [mailto:rob@metalinkage.com.au]
> *Sent:* Wednesday, 9 November 2016 10:47 AM
> *To:* Krzysztof Janowicz <jano@geog.ucsb.edu>; Joshua Lieberman <
> jlieberman@tumblingwalls.com>; Simon Cox <Simon.Cox@csiro.au>; Kerry
> Taylor <kerry.taylor@anu.edu.au>; Armin Haller <armin.haller@anu.edu.au>
>
>
> *Cc:* SDW WG Public List <public-sdw-wg@w3.org>
>
> *Subject:* Re: rdfs:class versus owl:class in SOSA-Core
>
>
>
>
>
> Correct me if I'm wrong here:
>
>
>
>
>
> :myClass a owl:Class, rdfs:Class
>
>
>
> is the same as
>
>
>
> :myClass a owl:Class
>
>
>
> if you are using OWL reasoning.
>
>
>
> If you are using RDFS reasoning (and tools like RDF4J support this) - then
> these statements are not the same - and only the first one helps you with
> any RDFS reasoning.
>
>
>
> So why cant we just use the first form?
>
>
>
> The principle would be that the "core" would not _require_ OWL reasoning
> to provide a RDFS model. It doenst mean we don't model in OWL, just that we
> take on the responsibility of materialising OWL entailments sufficient to
> allow any RDFS entailments. (Thats what I mean about a "contract" with the
> user - being explicit about what entailments are theer responsibility
>
>
>
>
>
> Note that is we state:
>
>
>
> :myClass a rdfs:Class
>
>
>
> and say:
>
> :myClass owl:equivalentClass eg:yourClass
>
>
>
> then if you use OWL reasoning you get
>
>
>
> :myClass a owl:Class, rdfs:Class
>
>
>
> because
>
> owl:equivalentClass rdfs:domain owl:Class
>
> owl:equivalentClass rdfs:range owl:Class
>
>
>
> Therefore, if you don't explicitly state its an owl:Class you can still do
> OWL reasoning and you have lost nothing - but if you don't explicity state
> its and RDFS class then you wont get the full RDFS expressible semantics
>  without OWL reasoning.
>
>
>
> statements such as owl:inverseOf are just documentation for RDFS
> interpretations, and perhaps "do no harm"?
>
>
>
> am I missing something here?
>
>
>
> note that we can then have sosa-owl-dl  and other OWL flavours as vertical
> modules that require OWL reasoning to be fully understood.
>
>
>
> Rob Atkinson
>
>
>
>
>
>
>
>
>
> On Wed, 9 Nov 2016 at 10:01 Krzysztof Janowicz <jano@geog.ucsb.edu> wrote:
>
> Hi,
>
> Sorry for being so picky about this during our meeting but I do not want
> us to take decisions that have consequences that we can not yet foresee.
>
> To the best of my knowledge (and please correct me if I am wrong):
>
> Under the semantics of OWL1, rdfs:class and owl:class are only equivalent
> for OWL-Full. For OWL-DL (and OWL-Lite) owl:class is a subclass of
> rdfs:class.
>
> This means that every valid document in OWL will be a valid document in
> RDFS, however *not* every rdfs:class is an owl:class. I do not want us to
> end up in OWL-Full because of this.
>
> For OWL2, I found this: 'owl:Class rdfs:subClassOf rdfs:Class . " (
> https://www.w3.org/TR/owl2-rdf-based-semantics/). Things may be more
> complicated here due to OWL2 punning and they may well turn out to be
> equivalent, I will check this later.
>
> If we decide to restrict ourself to only using RDFS for SOSA-core, and I
> am not in favor of this, then we may have to go with rdfs:class. However,
> we have not yet taken this decision and have also not discussed which
> axioms and language to use for SSN. As Sosa-core and SSN will be aligned,
> this may have more consequences that we should consider. It also seems like
> many of us are in favor of using inverseOf, so we would be using OWL (and
> its formal semantics) anyway. Note that this does not do any harm to an
> RDFS-only tool/user as for those the inverseOf axiom will simply have no
> formal semantics. Still all other triples that use both relations will
> still be just fine.
>
> Given the subclasssing, I do not see any problems using owl:class, but we
> may accidentally end up in OWL-full or with being incompatible to the
> standards if we opt for rdfs:class. Again, I am happy to be corrected. At
> least, I do not see harm in simply using owl:class.
>
> Finally, and from very pragmatic point of view: ontologies that are under
> very heavy use such as the DBpedia ontology simply use owl:class and I have
> not yet seen any issues or complaints about that. See, for example,
> http://dbpedia.org/ontology/City "dbo:City    rdf:type    owl:Class ."
> The same is true for the goodrelations ontology and so forth (but I admit
> that this is due to the more complex axiomatization they use).
>
> I hope this will start a productive discussion.
>
> Thanks for reading,
>
> Krzysztof
>
>
>
>
Received on Wednesday, 9 November 2016 01:05:50 UTC

This archive was generated by hypermail 2.4.0 : Thursday, 24 March 2022 20:31:27 UTC