Re: Schema.org and OWL

The short-circuiting of Role in schema.org is certainly outside of
schema.org.   OWL has nothing that can do the right thing with the following
schema.org data

DJT : Person
  spouse ? : Role
           spouse MM : Person
           startDate : 1991
           endDate : 1999
  spouse ? : Role
           spouse IT : Person
           startDate : 1977
           endDate: 1992
  spouse MT : Person
particularly in conjunction with
spouse
  domain Person
  range Person

Except that you could turn *all* property values (except maybe for those
properties that are guaranteed never to have a Role intermediary) into events
*before* they got to OWL.  This would look something like:

DJT : Person
  spouseEvent ? : SpouseEvent
                spouse MM : Person
                startDate : 1991
                endDate : 1999
  spouseEvent ? : SpouseEvent
                spouse IT : Person
                startDate : 1997
                endDate : 1992
  spouseEvent ? : SpouseEvent
                spouse MT : Person
spouse range Person
       domain SpouseEvent
spouseEvent range SpouseEvent
            domain Person
SpouseEvent sub Event
startDate range Date
endDate range Date

Hah!  That turned out better than I thought it would, but I view the need for
the transform as showing that schema.org Role is outside the purview of OWL
because it requires major surgery to the underlying ontology (as opposed to a
transform to handle "strings as things" that just replaces such strings with a
blank node connected to the string by some sort of description property which
doesn't require such surgery).

And then what do you do about movie roles?  They shouldn't have start and end
dates, or even have the possibility of start and end dates.

peter

    

On 06/06/2018 02:50 PM, Anthony Moretti wrote:
> Peter, when you say "roles fall outside the purview of OWL" is it possible
> that Role should be a subtype of Event, thus requiring no special treatment?
> I say that because individual roles have potential start and end dates.
>
> If you continue that thinking you end up with several types that might be
> considered subtypes of Event:
>
>     Event
>
>         Action
>         Course
>         Role
>         Offer
>         Parcel delivery
>         Trip
>
>
> Anthony
>
> On Wed, Jun 6, 2018 at 7:42 AM Peter F. Patel-Schneider
> <pfpschneider@gmail.com <mailto:pfpschneider@gmail.com>> wrote:
>
>     OK, it appears that you are trying to produce an OWL ontology that would
>     accept schema.org <http://schema.org> documents that would accept
>     unexceptional schema.org <http://schema.org>
>     documents (under some loose definition of what makes an unexceptional
>     schema.org <http://schema.org> document).
>
>
>     But you are running up against problems with "strings as things" and
>     Roles.  
>
>
>     Look at about and subjectOf.   Any use of a string as a value for about is
>     going to make that string an instance of two OWL Classes (the range of
>     about,
>     which includes Text, and the domain of subjectOf, which doesn't).  This
>     is not
>     permissible in OWL.  
>
>
>     Using a role as a value for subjectOf will make the role node an instance of
>     the domain of about, which doesn't include Role.   Roles fall outside the
>     purview of OWL. 
>
>
>     What I think has to be done for "strings as things" is to preprocess them as
>     an anonymous node with the string as the value of some description
>     property. 
>     Roles need to be short-circuited and the role values eliminated.  If the
>     role
>     values are to be retained then some sort of fancy reification has to be
>     introduced.
>
>
>     But a lot of this is guesswork, as it is unclear just what "strings as
>     things"
>     and Roles mean in schema.org <http://schema.org>.   (I haven't looked
>     closely at the use of URLs
>     as stand-ins for objects but my guess is that that is similar to "strings as
>     things".)
>
>
>
>     OWL makes a distinction between object and data values, and this distinction
>     has to be carried through to the ontology, where there are classes and
>     datatypes.  As far as I can tell Text should be a datatype.
>
>
>
>
>     peter
>
>
>
>     On 06/06/2018 07:09 AM, Richard Wallis wrote:
>     > Just the fresh pair of experienced eyes I needed! - Thanks @Thomas
>     >
>     > @Danbri - not “wasting a lot of time agonising", in simple terms I’m just
>     > [selfishly] trying to get a useful version to load into Protégé and
>     > hopefully helping a few others at the same time.  
>     >
>     > @Peter thanks for your thoughtful questions.  As you can see from the
>     above
>     > the prime simple objective is to get it visible in Protégé.  Beyond
>     that, it
>     > is to capture the class and property hierarchy of Schema.org including
>     > the multiple domain/ranges of properties defined [In Schema.org] using
>     > domainIncludes & rangeIncludes, in a way that a tool like Protégé can cope
>     > with.  As for ranges, it includes the assumption that properties, in
>     > addition to the defined range(s), also have Text, URL, and Role
>     included in
>     > their range.
>     >
>     > Once I’ve done it, I want to add the simple generating code to the Schema
>     > scripts run at release time so that it can be kept up to date.
>     >
>     >
>     > ~Richard.
>     >
>     > Richard Wallis
>     > Founder, Data Liberate
>     > http://dataliberate.com
>     > Linkedin: http://www.linkedin.com/in/richardwallis
>     > Twitter: @rjw
>     >
>     > On 6 June 2018 at 14:45, Peter F. Patel-Schneider
>     <pfpschneider@gmail.com <mailto:pfpschneider@gmail.com>
>     > <mailto:pfpschneider@gmail.com <mailto:pfpschneider@gmail.com>>> wrote:
>     >
>     >     It's hard to say much about the file without knowing what it is
>     supposed to
>     >     capture.
>     >
>     >
>     >     It is supposed to capture the class and property hierarchy and
>     property
>     >     restrictions or schema.org <http://schema.org>
>     <http://schema.org>, but not necessarily in a
>     >     form compatible with RDFS
>     >     or OWL?
>     >
>     >
>     >     Is it supposed to faithfully encode the model theory of schema.org
>     <http://schema.org>
>     >     <http://schema.org> in OWL?  
>     >     If so, where is the document for this theory?
>     >
>     >
>     >     Is it supposed to capture "strings as things" or Roles? 
>     >
>     >
>     >     How does it view property domains and ranges?   As axioms?  As strict
>     >     constraints?  As soft constraints?
>     >
>     >
>     >     I would also move from rdf/xml to turtle, which is easier to write and
>     >     easier
>     >     to read.
>     >
>     >
>     >     peter
>     >
>     >
>     >
>     >     On 06/06/2018 05:05 AM, Richard Wallis wrote:
>     >     > Calling folks with more OWL experience than me!
>     >     >
>     >     > The schema.org <http://schema.org> <http://schema.org>
>     <http://schema.org> site has an OWL
>     >     definition file that has
>     >     > not been maintained since April
>     2014: http://schema.org/docs/schemaorg.owl
>     <http://schema.org/docs/schemaorg.owl>.
>     >     > Also the structure and syntax of the file needs some attention.
>     >     >
>     >     > To help with the occasional questions about accessing processable
>     >     > representations of the vocabulary; to attempt to close an issue
>     (#1611
>     >     > <https://github.com/schemaorg/schemaorg/issues/1611
>     >     <https://github.com/schemaorg/schemaorg/issues/1611>>); and to
>     help with a
>     >     > personal project, I have had a look at producing an up to date,
>     improved,
>     >     > maintainable version of the file.
>     >     >
>     >     > My first attempt can be downloaded/viewed
>     >     > here: https://s3.amazonaws.com/rjwPublicData/public/schemaorg.owl
>     >     <https://s3.amazonaws.com/rjwPublicData/public/schemaorg.owl>
>     >     >
>     >     > I am looking for comments, suggestions, and help around a few
>     aspects of
>     >     > this work in progress:
>     >     >
>     >     >   * Is it generally ‘a good owl file’
>     >     >
>     >     >   * Should it contain more/less info about the vocabulary and
>     its terms
>     >     >
>     >     >   * Specifically with reference to domainIncludes and rangeInclude -
>     >     mapped
>     >     >     to rdfs:domain & rdfs:range with owl:unionOfcollections:
>     >     >
>     >     >       o Is this the best/only way to represent multiple domain &
>     >     ranges for
>     >     >         an objectproperty?
>     >     >
>     >     >       o Have I got the syntax correct?
>     >     >
>     >     >   * Several people use Protégé <https://protege.stanford.edu/> as a
>     >     tool for
>     >     >     this kind of effort - I am trying to identify what syntax,
>     will enable
>     >     >     this tool to recognise the multiple domain/ranges when importing
>     >     this file.
>     >     >
>     >     > If anyone out there with more OWL experience than me (not
>     difficult),
>     >     could
>     >     > spend a few minutes taking a look at this and commenting, it
>     would be
>     >     > greatly appreciated.
>     >     >
>     >     > ~Richard 
>     >     >
>     >     > Richard Wallis
>     >     > Founder, Data Liberate
>     >     > http://dataliberate.com
>     >     > Linkedin: http://www.linkedin.com/in/richardwallis
>     >     <http://www.linkedin.com/in/richardwallis>
>     >     > Twitter: @rjw
>     >
>     >
>     >
>
>

Received on Wednesday, 6 June 2018 22:20:52 UTC