Roles, multiple bodies, and creating wiki page of potential solution

Posting my reply to the list as you suggested (I was initially focused on the administrivia of getting the wiki page going, not the details of Ray's solution). 

 

To continue on with your strawman illustrating Ray's role assignment approach -- If I wanted to use a blank node for the Embedded Textual Resource in your example, would this be the JSON?

 

{

  "@id": "http://example.org/anno1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_anno1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=DmFqIJtEzhqkaDeDwf6E9PYx-7GLfzTUCq9-ZWq4FC0&e=> ",

  "@type": "Annotation",

  "motivation": "bookmarking",

  "body": [

    {

      "@id": "_:n1",

      "@type": "EmbeddedContent",

      "value": "Come back and read this page about Paris."

    },

    {

      "@id": "http://example.org/tag1",

      "@type": "EmbeddedContent",

      "value": "paris"

    },

    {

      "@id": "http://example.org/tag2 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag2&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=VSOMbmuGR41XHMJ5xpJJpxSGDgoi0WzTXC22Q7wg_rc&e=> ",

      "@type": "EmbeddedContent",

      "value": "MustRead"

    }

  ],

  "target":  "@id": "http://example.org/paris.html <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_paris.html&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=5w8OVOI-tWa9ONYZqozWv0FlDWxM6W8hHvg10fSR9_o&e=> ",

  "roles": [

    {"role": "commenting", "for": "_:n1"},

    {"role": "tagging", "for": "http://example.org/tag1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=wAyNglO23dQpoSvolgABgz7hAVHB8O7AeVPohr98ee4&e=> "},

    {"role": "tagging", "for": "http://example.org/tag2 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag2&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=VSOMbmuGR41XHMJ5xpJJpxSGDgoi0WzTXC22Q7wg_rc&e=> "}

  ]

}

-Tim Cole

 

From: Robert Sanderson [mailto:azaroth42@gmail.com] 
Sent: Wednesday, August 05, 2015 12:19 PM
To: t-cole3 <t-cole3@illinois.edu>; Ivan Herman <ivan@w3.org>
Cc: Denenberg, Ray <rden@loc.gov>; Frederick Hirsch <w3c@fjhirsch.com>
Subject: Re: Web Annotation -- New Wiki page

 

On Wed, Aug 5, 2015 at 9:29 AM, Timothy Cole <t-cole3@illinois.edu <mailto:t-cole3@illinois.edu> > wrote (edited/updated):

My take away from today's WG call  is that we need: 

1)  a complete, concrete annotation example or 2 based on Ray's proposed solution in Turtle as well as JSON-LD, and

 

Yup, I propose the simple bookmark export use case, rather than the edits with custom motivations.

 

 

 2) a wiki page that integrates this/these examples (adding JSON/JSON-LD) with representative examples of currently supported approach and other proposed solutions still under discussion.

 

Yep, and the priority being 1 then 2.

 

 All examples on the wiki page would be serialized in both JSON/JSON-LD and Turtle.

 Am I right that I should take the lead on 2 (creating the wiki page)? 

 

As a strawperson for 1:

 

{

  "@id": "http://example.org/anno1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_anno1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=DmFqIJtEzhqkaDeDwf6E9PYx-7GLfzTUCq9-ZWq4FC0&e=> ",

  "@type": "Annotation",

  "motivation": "bookmarking",

  "body": [

    {

      "@id": "http://example.org/comment1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_comment1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=_oibSjDeFz1gR9uFc6RosvefyN_DZ3CZZL3dJzclHDQ&e=> ",

      "@type": "EmbeddedContent",

      "value": "Come back and read this page about Paris."

    },

    {

      "@id": "http://example.org/tag1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=wAyNglO23dQpoSvolgABgz7hAVHB8O7AeVPohr98ee4&e=> ",

      "@type": "EmbeddedContent",

      "value": "paris"

    },

    {

      "@id": "http://example.org/tag2 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag2&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=VSOMbmuGR41XHMJ5xpJJpxSGDgoi0WzTXC22Q7wg_rc&e=> ",

      "@type": "EmbeddedContent",

      "value": "MustRead"

    }

  ],

  "target":  "@id": "http://example.org/paris.html <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_paris.html&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=5w8OVOI-tWa9ONYZqozWv0FlDWxM6W8hHvg10fSR9_o&e=> ",

  "roles": [

    {"role": "commenting", "for": "http://example.org/comment1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_comment1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=_oibSjDeFz1gR9uFc6RosvefyN_DZ3CZZL3dJzclHDQ&e=> "},

    {"role": "tagging", "for": "http://example.org/tag1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=wAyNglO23dQpoSvolgABgz7hAVHB8O7AeVPohr98ee4&e=> "},

    {"role": "tagging", "for": "http://example.org/tag2 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag2&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=VSOMbmuGR41XHMJ5xpJJpxSGDgoi0WzTXC22Q7wg_rc&e=> "}

  ]

}

 

Turtle (hand written, please verify)

 

<http://example.org/anno1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_anno1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=DmFqIJtEzhqkaDeDwf6E9PYx-7GLfzTUCq9-ZWq4FC0&e=> > a oa:Annotation ;

  oa:motivatedBy oa:bookmarking ;

  oa:hasTarget <http://example.org/paris.html <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_paris.html&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=5w8OVOI-tWa9ONYZqozWv0FlDWxM6W8hHvg10fSR9_o&e=> > ;

  oa:hasBody <http://example.org/comment1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_comment1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=_oibSjDeFz1gR9uFc6RosvefyN_DZ3CZZL3dJzclHDQ&e=> >, <http://example.org/tag1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=wAyNglO23dQpoSvolgABgz7hAVHB8O7AeVPohr98ee4&e=> >, <http://example.org.tag2 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org.tag2&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=yNA7EnbXC05mh2eXtBr6jIOP4LyLayVx5uiO6yUBRxM&e=> > ;

  oa:hasRole [

    oa:role oa:commenting ;

    oa:roleFor <http://example.org/comment1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_comment1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=_oibSjDeFz1gR9uFc6RosvefyN_DZ3CZZL3dJzclHDQ&e=> > ],

    [

    oa:role oa:tagging ;

    oa:roleFor <http://example.org/tag1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=wAyNglO23dQpoSvolgABgz7hAVHB8O7AeVPohr98ee4&e=> > ],

    [

    oa:role oa:tagging ;

    oa:roleFor <http://example.org/tag2 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag2&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=VSOMbmuGR41XHMJ5xpJJpxSGDgoi0WzTXC22Q7wg_rc&e=> > ] .

 

<http://example.org/comment1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_comment1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=_oibSjDeFz1gR9uFc6RosvefyN_DZ3CZZL3dJzclHDQ&e=> > a oa:EmbeddedResource ;

  rdf:value "Come back and read this page about Paris" .

 

<http://example.org/tag1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=wAyNglO23dQpoSvolgABgz7hAVHB8O7AeVPohr98ee4&e=> > a oa:EmbeddedResource ;

  rdf:value "paris" .

 

<http://example.org/tag1 <https://urldefense.proofpoint.com/v2/url?u=http-3A__example.org_tag1&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=zjI0r-H6xRs5fYf2_jJkju6US9ijk0nLw4ns2nuwU2k&m=cJqARgr41lCItdetoau46NrfOtmYXb1XEdEOItktpAs&s=wAyNglO23dQpoSvolgABgz7hAVHB8O7AeVPohr98ee4&e=> > a oa:EmbeddedResource ;

  rdf:value "MustRead" .  

 

 

 

Some initial observations:

* All bodies need URIs to be referred to from the role.  Meaning that clients creating the annotation would have to assign, for example, a UUID or blank node identifier.

* There's no need to have the Tag class and the role :) So if we're adopting this we can drop Tag and SemanticTag :) 

* I don't think we have a use case where the exact same resource is both a body AND a target, but it would be potentially ambiguous if that were true, and the same role could be used as both a body role and target role.

 

R

 

-- 

Rob Sanderson

Information Standards Advocate

Digital Library Systems and Services

Stanford, CA 94305

Received on Wednesday, 5 August 2015 18:26:32 UTC