Persistent public annotation

1,124 views

Published on

Published in: Technology, Art & Photos
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,124
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Persistent public annotation

  1. 1. Building an Open and Persistent Annotating System<br />Abdulla Alasaadi Michael L. Nelson<br />Computer Science Department<br />Old Dominion University<br />
  2. 2. Introduction<br />Annotation is a regular activity practiced by scholars while reading [books or articles] [Webpages]<br />Webpage, Image, Text, Video, etc… <br />
  3. 3. Annotation<br />
  4. 4. Web Annotation<br />Web Annotation can be used by scholars or web-users to share information about certain resources or topics.<br />Existing Annotation systems:<br />Need Client side script to create and view the annotations.<br />The Annotea<br />LEMO<br />
  5. 5. Time<br />Time of the annotation:<br />Resources may:<br />Move [location]<br />Change [updated] <br />Disappear <br />
  6. 6. Annotation<br />Open and Independent <br /> The focus on sharing annotations.<br /> Persistent <br /> Readable at anytime.<br /> Archived [Targets and Annotation body] <br />
  7. 7. Resources Archiving<br />What if the Resource doesn’t have a memento?!<br />We will not be able to view the annotation when the original resource move. <br />Push all related resources to the Archive .<br />In this case, we make sure that, all resources are archived and persistent.<br />
  8. 8.  Uniform Time Annotations<br />
  9. 9. 2010-12-20T04:46:10-00:00<br /> Uniform Time Annotations<br />
  10. 10. * Annotation Body can have more than one media-type.<br />
  11. 11. Media types<br />Annotate by image<br />Annotate by video<br />Annotate by Text<br />
  12. 12. Open and Independent <br />The annotation should be retrieved by the browser without the help of any extra plugin or adds-on.<br />SVG [Scalable Vector Graphs] used to represent the annotations. <br />SVG is a Text-based Markup language written in XML<br />Supported in [Firefox, IE9, Chrome ,Safari]<br />
  13. 13. Scalable Vector Graphs [SVG]: <br />Searchable:<br />Google started indexing the SVG content on August 31st, 2010.<br />SVG file can contain Audio, Video, and image tags.<br />Image tag is supported by all browsers<br />Audio and video tags are supported by SVG readers but not browsers yet. Promises that they will be supported in future updates. <br />SVG video tags can be rendered to flash in the server side in order to overcome the lack of support.<br />Supports Scripting (JavaScript).<br />
  14. 14. SVG Example<br /><svg width="640" height="480" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg"><br /> <g id= “Target”><br /><image x="128" y="77.00001" width="402.99999" height="250.99999" id="svg_1" xlink:href="http://www.theanimalfiles.com/images/african_elephant_range.jpg"/><br /></g><br /><g id=“Body”><br /> <rectfill="#2eff00" stroke-width="2" x="237" y="144" width="166" height="45" id="svg_2" opacity="0.25" fill-opacity="0.6" stroke="#a01111"/><br /> <text x="172" y="210" fill="black" font-weight="bold">SavanaElephents live here</text><br /> <image x="264" y="207.5" width="99" height="90" id="svg_3" opacity="0.7" xlink:href="http://www.theanimalfiles.com/images/african_elephant_2.jpg"/><br /> </g><br /></svg><br />
  15. 15. Cont. SVG Examples<br />Video / Audio tags :<br /><g id= “AnnBody”><br /> <video id="vid1" xlink:href="20051210-w50s.flv" type="video/x-flv" begin="2.2s" dur="20s" x="50" y="50" width="400" height="300"><br /></g><br /><ul><li>Not supported in browsers
  16. 16. Can be rendered in flash
  17. 17. Example: http://codinginparadise.org/projects/svgweb/samples/demo.html</li></li></ul><li>SVG-Edit [modified] Annotation Tool:<br /><ul><li>Users can use the SVG-Edit [modified version] to create the SVG annotation.
  18. 18. The plugin sends the annotation to the Annotation service.
  19. 19. The annotation service sends back a short URI for the annotation tat can be shared by users.</li></li></ul><li>Annotation service sends back the<br />bit.ly URI for the annotation.<br />http://bit.ly/i2AfwN/<br /><ul><li>User can share the bit.ly URI in his blog.
  20. 20. Can view the annotation in any browser</li></ul>By dereferencing the bit.ly URI.<br />
  21. 21. On The Server …<br />Different types of resources or URIs are associated with every annotation. <br /><ul><li>The target resource [URI-T] [may contain more than one target]
  22. 22. The Annotation Body:
  23. 23. Link to other URI/URIs from different website.
  24. 24. User annotations [text, drawings, etc..]</li></ul>The server sends all the related resources to the [Archiving service ] .<br />It creates separate memento for every resource. <br />URI-A, URI-T, URI-C  URI-M1, URI-M2, URI,M2<br />
  25. 25. Relations Between Resources<br />Annotation SVG File <br />http://128.82.5.41:8080/SVGs/image276.svg<br />SVG Archived<br />http://www.webcitation.org/5upcCpZRV<br />Target Archived<br />http://www.webcitation.org/5uAxY6YIO<br />Target Resource<br />http://businessinsider.com/image/chart1.gif<br />Body Archived<br />http://www.webcitation.org/7oKrI2DMK<br />Annotation Body<br />http://128.82.5.41:8080/SVGs/image276.svg#Ann<br />All resources are archived <br />ReM keeps track of them ALL<br />ReM<br />http://128.82.5.41:8080/Res/276.atom<br />
  26. 26. Resource Map<br /><ul><li>Resource Map for every annotation.</li></ul><?xml version="1.0" encoding="utf-8"?><br /><entry xmlns=http://www.w3.org/2005/Atom<br />xmlns:oreatom="http://www.openarchives.org/ore/atom/"<br />xmlns:oac="http://www.openannotation.org/ns/"<br />xmlns:dc="http://purl.org/dc/elements/1.1/"<br />xmlns:dcterms="http://purl.org/dc/terms/"<br />xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"<br />xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"<br />xmlns:ore="http://www.openarchives.org/ore/terms/"<br />xmlns:foaf="http://xmlns.com/foaf/0.1/"<br />xmlns:grddl="http://www.w3.org/2003/g/data-view#"<br />grddl:transformation="http://www.openarchives.org/ore/atom/atom-grddl.xsl"><br />
  27. 27. <link rel="alternate" type="text/html" href="http://128.82.5.41:8080/cgi-bin/retrieve.py?svg=314"/> <br /><!-- Resource Map Metadata --> <br /><link rel="self" type="application/atom+xml" href="http://128.82.5.41:8080/Res/314.atom"/> <br /><link rel="http://www.openarchives.org/ore/terms/describes" href="http://128.82.5.41:8080/aggregates/314"/> <br /><id>http://128.82.5.41/314</id><br /><author> <name>Mr. John Smith </name></author><br /><updated>2011-01-10T04:46:10-00:00</updated><br /><title>Library of Congress</title> <br /><published>2011-01-10T04:46:10-00:00</published> <br />
  28. 28. <!-- Aggregated Resources --> <br /><link rel="http://www.openarchives.org/ore/terms/aggregates" href="http://robertarood.files.wordpress.com/2008/07/library-of-congress-2.jpg" title="The original Image -source" type="image/gif" /> <br /><link rel="http://www.openarchives.org/ore/terms/aggregates" href="http://128.82.5.41:8080/SVGs/image314.svg" title="The SVG annotation" type="image/svg+xml" /> <br /><link rel="http://www.openarchives.org/ore/terms/aggregates" href="http://www.webcitation.org/5vd5SSILe" title="Archived Resource Image" type="text/html" /><br /><link rel="http://www.openarchives.org/ore/terms/aggregates" href="http://www.webcitation.org/5vd5SVT9v" title="Archived SVG Annotation " type="text/html" hreflang="en"/><br />
  29. 29. <oreatom:triples><br /> <oac:Annotationrdf:about=‘'http://128.82.5.41:8080/SVGs/image314.svg#Ann'><br /> <oac:hasbodyrdf:resource='http://128.82.5.41:8080/SVGs/image314.svg#body'/><br /> <oac:hasTargetrdf:resource='http://robertarood.files.wordpress.com/2008/07/library-of-congress-2.jpg'/><br /> <oac:hasTargetContext><br /> <oac:TargetContext><br /> <oac:contextAboutrdf:resource='http://robertarood.files.wordpress.com/2008/07/library-of-congress-2.jpg'/><br /> <oac:when>2011-01-10T04:46:10-00:00</oac:when><br /> <dc:type>image/gif</dc:type><br /> </oac:TargetContext><br /> </oac:hasTargetContext><br /> <rdf:typerdf:resource='http://www.w3.org/2000/10/annotation-ns#Annotation'/><br /> </oac:Annotation><br /></oreatom:triples><br /></entry><br />
  30. 30. Link Header<br />Link:<br /><URI-A>; rel =“http://www.openannotation.org/ns/hasBody";<URI-C>,<br /><URI-A>; rel =“ http://www.openannotation.org/ns/hasTarget"; anchor=“URI-T”, <br /><URI-ResM>; rel="resourcemap", <br /><URI-M1>; rel ="memento"; datetime= “Wed, 08 Dec 2010 09:00:00 GMT“; anchor=“URI-C”,<br /><URI-M2>; rel ="memento"; datetime= “Wed, 08 Dec 2010 09:00:00 GMT“; anchor=“URI-T”<br /><URI-A> : Annotation<br /><URI-C> : Annotation Body<br /><URI-T> : Target<br /><URI-ResM> : Resource Map<br /><URI-M1> : Memento of URI-C<br /><URI-M2> : Memento of URI-T<br />
  31. 31. Link Header Example<br />Example: http://128.82.5.41:8080/cgi-bin/retrieve.py?svg=333, [http://bit.ly/gGhbpu ]<br />% curl -I http://128.82.5.41:8080/cgi-bin/retrieve.py?svg=333<br />HTTP/1.1 200 OK<br />Date: Thu, 20 Jan 2011 14:15:36 GMT<br />Server: Apache/2.2.17 (Win32) PHP/5.3.3<br />link: <http://128.82.5.41:8080/SVGs/image333.svg> ; rel="http://www.openannotation.org/ns/hasTarget"; anchor = "http://www.theanimalfiles.com/images/african_elephant_range.jpg", <http://128.82.5.41:8080/SVGs/image333.svg> ; rel="http://www.openannotation.org/ns/hasBody"; anchor = "http://128.82.5.41:8080/SVGs/image333.svg#body", <http://128.82.5.41:8080/Res/333.atom> ; rel="resourcemap", <http://www.webcitation.org/5vsZjkHN8>; rel ="memento"; datetime= "Thu, 20 Jan 2011 14:15:36 GMT", <http://www.webcitation.org/5vsZjnwrV>; rel ="memento"; datetime= "Thu, 20 Jan 2011 14:15:36 GMT"<br />Content-Type: text/html<br />
  32. 32. THE Application<br />Request<br />http://bit.ly/i2AfwN/<br />http://www.webcitation.org<br />
  33. 33. Retrieve The Annotation<br />http://bit.ly/i2AfwN/<br />
  34. 34. Example:<br />http://bit.ly/hekOCW/<br />
  35. 35. Conclusion <br />Web Archives helped in solving the issue of keeping the annotation persistent over time, and the use of the SVG technology helped in keeping the annotation readable in any browser without any need to install extra plugins.<br />

×