Re: schema:Bookmark ?

On 09/17/2014 11:47 PM, Guha wrote:
> As much as I love Actions, sometimes, we need to be able to model the
> result of the action independently.
I FULLY agree!

> 
> A bookmark may have properties such as the , the number of times it has
> been used, etc. which don't really make sense in the Action context.
Yesterday I replied with example how BookmarkAction, WebPage and
Bookmark could relate

{
  "@type": "BookmarkAction",
  "object: {
    "@type": "WebPage",
    "@id": "http://example.net/"
  },
  "result": {
    "@type": "Bookmark",
    "about": "http://example.net/"
  }
}

On special properties side, it could add tag, collection and one could
share it

{
  "@id": "http://mypds.net/joe/zh98fs9h9s",
  "@type": "Bookmark",
  "about": "http://example.net/",
  "tag": [
    "comedy",
    "satire"
  ],
  "collection": [
    {
      "@id": "http://mypds.net/joe/dfa89fa9f",
      "@type": "ItemList",
      "name": "Watch later"
    },
    {
      "@id": "http://mypds.net/joe/h8d7f8dg9",
      "@type": "ItemList",
      "name": "Easy watching"
    }
  ],
  "interaction": [
    {
       "@type": "ShareAction",
       "actionStatus": "CompletedActionStatus",
       "recipient": "mailto:alice@funkycamp.net",
       "endTime": "2017-01-04T10:32:15+01:00"
    }
  ]
}

When it comes to viewed/unviewed or read/unread, I would see it on a
page not bookmark itself

{
  "@type": "WebPage",
  "@id": "http://example.net/",
  "interaction": [
    {
      "@type": "ViewAction",
      "@id": "http://mypds.net/joe/ew0r98a0ga",
      "actionStatus": "CompletedActionStatus",
      "object": "http://example.net/",
      "endTime": "2017-01-04T10:32:15+01:00"
    },
    {
      "@type": "ReadAction",
      "@id": "http://mypds.net/joe/0a9fd80gh7",
      "actionStatus": "CompletedActionStatus",
      "object": "http://example.net/",
      "startTime": "2017-01-04T10:32:15+01:00",
      "endTime": "2017-01-04T10:37:04+01:00"
    }
  ]
}

While on it, I would like to bring attention (for the 4th time in last 2
years) to: http://schema.org/interactionCount

And propose to replace it with *interaction* which would accompany
*potentialAction* on Thing.

* Thing --{potentialAction}--> Action --{actionStatus}-->
PotentialActionStatus

* Thing --{interaction}--> Action --{actionStatus}--> ActiveActionStatus
|| CompletedActionStatus

Last but not least let's make sure we think about *multiple graphs*!
In our bookmarking scenario:

* content provider would keep its graph on "http://example.net"
* content consumers would all keep their personal graphs, for example
Joe on "http://mypds.net/joe", Alice "http://funkycamp.net/alice" etc.

Of course content consumer could also syndicate her interaction on
provided resource. Or allow provider to *also* log her interaction.


I hope it helps with clarifying!

Received on Thursday, 18 September 2014 07:29:49 UTC