Re: Schema.org and OWL

Yeah, we decided against cramming Actions under Event a long time ago, even
if it has a certain appeal; I' d say same goes for the other event-ish
types.

On Sun, 10 Jun 2018, 11:24 Peter F. Patel-Schneider, <pfpschneider@gmail.com>
wrote:

> It's very difficult to determine what things are instance of schema.org
> Event
> because the guidance is so slim, particularly as we are not supposed  to
> take
> into account most of the information on http://schema.org/Event.   My
> view is
> that even if we are supposed to ignore everything after "certain time and
> location", then schema.org Event should be read narrowly, excluding things
> that don't have a certain time or don't have a certain location.  This
> would
> rule out Action, ParcelDelivery (as the entire delivery process), and
> Trip, as
> these generally take place over several locations.   Offer is ruled out
> because it often doesn't have a location at all and its temporal
> information
> doesn't have to do with its "happening".  Course is also ruled out because
> it
> is more than a sequence of lectures.
>
>
> One could take an expansive view of schema.org Event, perhaps saying that
> its
> instances are anything that has a temporal component and a spatial
> component.   So Bill Murray is an instance of schema.org Event via his
> birth
> date and his location on Earth, as is his membership in the cast of
> Ghostbusters.  But then what things aren't instances of Event (besides
> platonic entities like 3, if you assume that there are any truly platonic
> entities)?
>
>
> Is there a middle ground?  Formal ontologists have attempted to create
> one---dividing the universe into endurants and perdurants.  But I don't see
> that schema.org Event is getting at the meaning of perdurant.
>
>
> peter
>
>
>
>
> On 06/10/2018 12:32 AM, Anthony Moretti wrote:
> > Let's get the easy ones out of the way before looking at Roles. The
> > following are obviously subtypes of event, I might create an issue on
> GitHub
> > to get more feedback:
> >
> >     Event
> >
> >         Action
> >
> >         Course
> >
> >         Offer
> >
> >         ParcelDelivery
> >
> >         Trip
> >
> >
> > I'll argue for Role now. In my view, it would be easier to understand if
> the
> > terminology was Relation, or Relationship, rather than Role.
> >
> > An event is either:
> >
> >   * A period of time (e.g. Jun 9, 2018, 12 PM - 1 PM)
> >   * The period of time that a statement, explicit or implicit, is true
> (e.g.
> >     My run this morning = Anthony isRunning True)
> >
> > To be clear, having the same statement exist with different periods of
> > validity can still be consistent:
> >
> >   * Anthony isRunning True (Jun 9, 2018, 12 PM - 1 PM)
> >   * Anthony isRunning True (Jun 8, 2018, 12 PM - 1 PM)
> >
> > If you look at temporal databases
> > <https://en.wikipedia.org/wiki/Temporal_database> every fact has a valid
> > time <https://en.wikipedia.org/wiki/Valid_time> - the time period during
> > which the fact is true. Therefore if you reify any fact or relationship
> you
> > produce something with start or end times, therefore producing an event.
> >
> > In schema.org <http://schema.org>:
> >
> >  1. All Roles are reified relationships.
> >  2. Therefore all Roles have "valid times".
> >  3. Therefore all Roles have start or end times.
> >  4. Therefore all Roles are events.
> >
> > If the terminology was updated it would look like:
> >
> >     Event
> >
> >         Relationship, or Relation (currently Role)
> >
> >
> > Regarding Bill Murray, what is being modeled if not the fact that Bill
> > Murray was involved as an actor during its filming, and so for a period
> of time?
> >
> > And yep, I agree that you can define an entity and separately define an
> > event that represents its period of existence. But you can't do that for
> an
> > event, and in like fashion you can't do that for a statement either, it
> just
> > wouldn't make sense for either right?
> >
> > Anthony
> >
> >
> > On Sat, Jun 9, 2018 at 6:52 PM Peter F. Patel-Schneider
> > <pfpschneider@gmail.com <mailto:pfpschneider@gmail.com>> wrote:
> >
> >     Yes, many Roles in schema.org <http://schema.org> are events, and
> could
> >     be so modelled.  But not
> >     all, in my opinion, or at least not usefully.
> >
> >
> >     For example the relationship between Bill Murray and Ghostbusters is
> not an
> >     event.   It was, perhaps, initiated by a bunch of events, namely a
> >     sequence of
> >     acting performances that were captured and edited together to form
> the
> >     movie.
> >     However, that bunch of events is not the relationship being
> modelled.
> >
> >
> >     It's just like one might model people as their lives, i.e., an event
> that
> >     plays out (roughly) from conception to death.  But I find it useful
> to
> >     distinguish between a person and their life event.
> >
> >
> >     peter
> >
> >
> >
> >     On 06/06/2018 09:01 PM, Anthony Moretti wrote:
> >     > I agree that the first problem to do with strings can be solved by
> boxing
> >     > them into anonymous individuals. On the second problem to do with
> Roles I
> >     > agree that you can't do a simple "subjectOf" transform because
> Role is not
> >     > in the domain of "about", but maybe defining a new property such as
> >     > "participantIn" (domain Thing, range Role) and using it wherever a
> Role is
> >     > the object of a statement might keep about the same level of
> meaning (not
> >     > very good) but at least make it consistent OWL? So your example
> would be
> >     > transformed to:
> >     >
> >     >     DJT : Person
> >     >
> >     >         participantIn ? : Role
> >     >
> >     >             spouse MM : Person
> >     >
> >     >             startDate : 1993
> >     >
> >     >             endDate : 1999
> >     >
> >     >         participantIn ? : Role
> >     >
> >     >             spouse IT : Person
> >     >
> >     >             startDate : 1977
> >     >
> >     >             endDate : 1992
> >     >
> >     >
> >     > A more general solution using guidance
> >     > from https://www.w3.org/TR/swbp-n-aryRelations/ and with better
> meaning
> >     > might be:
> >     >
> >     >     DJT : Person
> >     >
> >     >         isSpouseFor ? : MarriageRelation
> >     >
> >     >             spouse DJT : Person
> >     >
> >     >             spouse MM : Person
> >     >
> >     >             startDate : 1993
> >     >
> >     >             endDate : 1999
> >     >
> >     >         isSpouseFor ? : MarriageRelation
> >     >
> >     >             spouse DJT : Person
> >     >
> >     >             spouse IT : Person
> >     >
> >     >             startDate : 1977
> >     >
> >     >             endDate : 1992
> >     >
> >     >
> >     > Your question about movie roles is also solved by this, for
> example:
> >     >
> >     >     Bill Murray : Person
> >     >
> >     >         isActorFor ? : PerformanceRelation
> >     >
> >     >             actor Bill Murray : Person
> >     >
> >     >             movie Ghostbusters : Movie
> >     >
> >     >             characterName : Dr. Peter Venkman
> >     >
> >     >             startDate : 1983
> >     >
> >     >             endDate : 1984
> >     >
> >     >
> >     > Class hierarchy:
> >     >
> >     >     Event
> >     >
> >     >         Relation
> >     >
> >     >             MarriageRelation
> >     >
> >     >             PerformanceRelation
> >     >
> >     >
> >     > I think confusion might come from the many English meanings of
> "role":
> >     >
> >     >     Type of role, e.g. Quarterback - no start or end dates.
> >     >     Instance of a role, e.g. 49ers quarterback 1979-1992 -
> potential start
> >     >     and end dates.
> >     >     Character, e.g. Hamlet - no start or end dates.
> >     >
> >     >
> >     > So I'm still lead to believe that Role/Relation and several other
> types in
> >     > schema.org <http://schema.org> <http://schema.org> are subtypes of
> >     Event because their instances
> >     > always have potential start and end dates:
> >     >
> >     >     Event
> >     >
> >     >         Action
> >     >
> >     >         Course
> >     >
> >     >         Role/Relation
> >     >
> >     >         Offer
> >     >
> >     >         ParcelDelivery
> >     >
> >     >         Trip
> >     >
> >     >
> >     > Anybody else think this too? I'm a bit new to this so hope I'm not
> putting
> >     > something too strange out there!
> >     >
> >     > Anthony
> >     >
> >     >
> >     > On Wed, Jun 6, 2018 at 3:20 PM Peter F. Patel-Schneider
> >     > <pfpschneider@gmail.com <mailto:pfpschneider@gmail.com>
> >     <mailto:pfpschneider@gmail.com <mailto:pfpschneider@gmail.com>>>
> wrote:
> >     >
> >     >     The short-circuiting of Role in schema.org <http://schema.org>
> >     <http://schema.org> is
> >     >     certainly outside of
> >     >     schema.org <http://schema.org> <http://schema.org>.   OWL has
> >     nothing that can do the right
> >     >     thing with the following
> >     >     schema.org <http://schema.org> <http://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 <http://schema.org>
> >     <http://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>
> >     <mailto:pfpschneider@gmail.com <mailto:pfpschneider@gmail.com>>
> >     >     <mailto:pfpschneider@gmail.com <mailto:pfpschneider@gmail.com>
> >     <mailto: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> <http://schema.org
> >
> >     <http://schema.org>
> >     >     documents that would accept
> >     >     >     unexceptional schema.org <http://schema.org>
> >     <http://schema.org> <http://schema.org>
> >     >     >     documents (under some loose definition of what makes an
> >     unexceptional
> >     >     >     schema.org <http://schema.org> <http://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>
> >     <http://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>>
> >     >     <mailto:pfpschneider@gmail.com <mailto:pfpschneider@gmail.com>
> >     <mailto:pfpschneider@gmail.com <mailto:pfpschneider@gmail.com>>>
> >     >     >     > <mailto:pfpschneider@gmail.com
> >     <mailto:pfpschneider@gmail.com> <mailto:pfpschneider@gmail.com
> >     <mailto:pfpschneider@gmail.com>>
> >     >     <mailto: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>
> >     >     <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>
> >     >     >     <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>
> >     >     <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 Sunday, 10 June 2018 18:38:27 UTC