Re: schema.org as reconstructed from the human-readable information at schema.org

From: Guha <guha@google.com>
| Date: October 24, 2013 6:31:12 PM PDT
| 
| Mostly right. See below for corrections. [...]
| 
| guha
| 
| On Thu, Oct 24, 2013 at 6:13 PM, Peter F. Patel-Schneider
| <pfpschneider@gmail.com> wrote: 
| 
| | I read over the human-readable web pages at schema.org (except for
| | some of the type and property pages there) and came up with the
| | following reconstruction of what schema.org is, ignoring anything to
| | do with the surface syntaxes of schema.org. 
| 
| | Comments are welcome, particularly comments that include evidence
| | that particular parts of the reconstruction below do not correspond to
| | human-readable information available at schema.org or that there is
| | significant human-readable information available at schema.org that is
| | not reflected here. 
| 
| | Peter F. Patel-Schneider
| | Nuance Communications
| | 
| | 
| | Types
| |   There is a collection of types, with two roots, http://schema.org/Thing
| |   and http://schema.org/Datatype, organized in a multi-parent
| |   (generalization) taxonomy.
| |   Each type is a URL under http://schema.org/.
| 
| The type is not a URL. It is referred to by a URL.

From http://www.mozilla.com/en-US/firefox/central/:
"Item types are provided as URLs, in this case
http://schema.org/Movie." 
I was unable to find any human-readable information indicating that
types were anything else. 

| |   All the types directly under http://schema.org are specified in
| |   schema.org 
| 
| Not sure what this means.

It means that you can't currently use, for example, the URL
http://schema.org/Animal as a type in schema.org markup.  However, you
can use the URL http://schema.org/Person/Student as a type in
schema.org markup.

| |   Some types are enumeration types, (whose elements are one of a
| | set of URLs?). 
| 
| See earlier comment.

There is nothing that I could find indicating that the elements of
enumeration types are anything besides URLs and what I read out of the
examples was that these elements in the examples were URLs.

| |   Some types are datatypes.
| |   Each type has a collection of allowable properties.
| |   Subtypes of types can be created by appending /... to a type URL.
| | Datatypes
| |   There are the following datatypes with appropriate data values
| |     Boolean, Date, DateTime, Number (Float, Integer), Text (URL), Time
| | 
| | Properties
| |   There is a collection of properties, organized in a (single-parent?)
| |   taxonomy with multiple roots.
| 
| There is no organizaton of properties.

From http://schema.org/replacee and http://schema.org/ReplaceAction:
  A sub property of object [which is a property]. 

| |   Each property is a string.
| | 
| Properties are first class entities. Unlike some systems (like
| description logics), schema.org does not make a hard distinction
| between individuals, types and properties. They are all
| items/objects/entities. 

All examples show properties as strings and there is no human-readable
information that I could find to indicate otherwise.  I was certainly
unable to find anything indicating that all types and properties were
items or even that items, types, and properties could overlap.

| |   Properties can have any number of ranges each of which are types.
| |   Each value for the property in an item should have one of the range types
| |   (for the property itself, not including the range types of any parent)
| |   as (an ancestor of) (one of?) its types (or otherwise belong to the type).

| I am having difficulty parsing this sentence.

Well, yes, turning weak disjunctive typing into words is a bit convoluted,
but this appears to be what the human-readable information on
schema.org is saying, with the additions needed to make sense and a
qualification concerning multiple typing.

To paraphrase, for an item to be a permissable value for a property
the type of the item (or one of its types, if multiple types are
allowed) should be a subtype of one of the types listed as ranges for
that property.  Ranges for subs or supers of that property are not
considered.

| |   Properties are not restricted to starting with the properties
| |   specified in schema.org
| 
| Don't understand what this means. 

It is currently permissable to use "donor" as a property in schema.org
markup, even though there is no page for "donor" as a property on
schema.org.

| |   Subproperties can be created by appending /... to a property.
| | 
| | 
| | 
| | Items
| 
| See earlier comment about schema.org being in the spirit of rdf,
| cycl, etc. and not making a hard distinction between items and
| types.  

There is no human-readable information that I could find in schema.org
that hinted that items and types could overlap.

| |   Items are things in the world, including information things
| |   Items can have a type (or types?)
| 
| Everything in schema.org can have multiple types

I agree that this makes sense, and the wording in
http://schema.org/Thing could be read this way, but making the
connection requires quite a bit of reading between the lines, even for
someone like me.  Consider, for example, that the wording there talks
about "class".

| |   Items can have one or more property-value pairs, where
| |     the property is an allowable property for the type (one of the types?)
| |     of the item or one of its ancestors
| |     and the value is either a data value, a piece of text, or an item
| |   Some items are described by a web page at a particular URL (URL property) 
| |   Some items can be identified by a URL (sameAs property)
| |   Some items have names, images, descriptions, and additionalTypes
| 
| additionalTypes is just a microdata specific vocabulary extension to
| allow multiple types. 

The description of additionalType is extraordinarily confusing, using
different terminology from that used elsewhere in the human-readable
information in schema.org.

| guha 

peter

Received on Friday, 25 October 2013 04:29:15 UTC