Re: Schema. org Actions best encoding practices

Hello,
Thank you for the fast answer.

On 7/30/2014 10:05 AM, Dan Brickley wrote:
> On 30 July 2014 08:29, Adrian Giurca <giurca@tu-cottbus.de> wrote:
>> Dear Schema.org community,
>>
>> We develop a SW application using Schema ontology as data model.  As we
>> started in the early stages of Schema development, we used actions from our
>> own namespace. However, actually, Schema developed a large set of Actions
>> and we would like to align our data to this model.
>>
>> A typical example, is "John eat a cake", encoded as
>>
>> {
>>    "@context": "http://schema.org",
>>    "@type": "EatAction",
>>    "agent": {
>>      "@type": "Person",
>>      "name": "John"
>>    },
>>    "object": {
>>      "@type": "Product",
>>      "name": "Cake"
>>    }
>> }
>>
>>   I wonder what is the best practice to encode "John eat a cake and drink a
>> cola".
> Is the goal to describe two different Action instances without
> duplicating the description of the Person, John?
Indeed.  John is the same person who eat and drink.
>
> I think something like this works in JSON-LD (reversing the direction
> of 'agent' so it can be at the top of the tree):
>
> {
>      "@context": "http://schema.org",
>      "@type": "Person",
>      "name": "John",
>      "@reverse": {
>          "agent": [
>              {
>                  "@type": "DrinkAction",
>                  "object": {
>                      "@type": "Product",
>                      "name": "Coke"
>                  }
>              },
>              {
>                  "@type": "EatAction",
>                  "object": {
>                      "@type": "Product",
>                      "name": "Cake"
>                  }
>              }
>          ]
>      }
> }
>
>
> According to the JSON-LD playground tool (
> http://json-ld.org/playground/ ), this results in the following
> graph/triples:
>
> _:b0 <http://schema.org/name> "John" .
> _:b0 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
> <http://schema.org/Person> .
> _:b1 <http://schema.org/agent> _:b0 .
> _:b1 <http://schema.org/object> _:b2 .
> _:b1 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
> <http://schema.org/DrinkAction> .
> _:b2 <http://schema.org/name> "Coke" .
> _:b2 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
> <http://schema.org/Product> .
> _:b3 <http://schema.org/agent> _:b0 .
> _:b3 <http://schema.org/object> _:b4 .
> _:b3 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
> <http://schema.org/EatAction> .
> _:b4 <http://schema.org/name> "Cake" .
> _:b4 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
> <http://schema.org/Product> .
Great. This is what I was looking for.
> Dan
>
>

All the best,
Adrian

Received on Wednesday, 30 July 2014 08:29:49 UTC