Re: Some comments on Actions

Hi Leigh, Bo,

Thanks for your input.

I think that the Actions schema would play well with the Counter Ontology.
Thanks for pointing it out.

The Actions in Schema.org does not include generalized "target", "object"
and "product" properties, nor "factors", and instead each action type has
its specific properties. One of the motivations behind this is that
schema.org markup is done by millions of webmasters, each usually only
needing to know about a very small number of nouns and verbs. If
schema.orguses very generic properties, many webmasters will err,
putting wrong
values in the wrong properties.

For example, the DriveAction type will have the following properties:

   - vehicle (Vehicle)
   - passengers (Person)
   - cargo (Thing)
   - origin (Place)
   - destination (Place)
   - averageSpeed (Number)
   - mpg (Number)
   - route (Route)
   - ...

I think that the schema.org specifications could also denote which
properties are the ontological "target" (destination), "object" (vehicle),
"factors" (cargo, passengers, averageSpeed, origin, ...) and a potential
"product" (non in this case). This extra layer of specification might help
bridge the gap between what webmasters would like to work with and what
aggregators & data-crunchers would like to work with.

Leigh, to answer your specific note about Thing > Action > BuyAction >
BuyTicketAction > BuyMovieTicketAction:
This can be seen as "utility schemas" or "model sugaring". One can easily
describe buying a movie ticket like this with basic pre-existing schemas:

{
@type: http://schema.org/BuyAction
 actor: "Yaar Schnitman"
itemBought: {
 @type: http://schema.org/Ticket
price: $10
 seat: 16
row: 9
ticketFor: {
 @type: http://schema.org/MovieShowing
movie: {
 @type: http://schema.org/Movie
name: "The Hobbit"
 }
startTime: 8:30pm
...
 }
}
}

Semantically correct, but possible too complicated for large scale adoption
by webmasters. The Actions in Schema.org proposal therefore suggests that
for complex use cases that hit adoption problems, schema.org will introduce
a specialized BuyAction > BuyTicketAction > BuyMovieTicketAction, which
will allow simpler, shorter declarations like the following:

{
@type: http://schema.org/BuyMovieTicketAction
 actor: "Yaar Schnitman"
price: $10
 seat: 16
row: 9
 movie: "The Hobbit"
 startTime: 8:30pm
}

Does this clarify things?

-Yaar

Received on Friday, 24 May 2013 03:00:15 UTC