Josh Peek added figure figures/annotation-architecture/annotation-architecture.svg to article  over 9 years ago

Commit id: 9a675ad3ce78c3280b82cbceb5a0f81942f61723

deletions | additions      

         

  xmlns:xlink="http://www.w3.org/1999/xlink"  width="100%" height="100%" viewBox="0 0 1612 880"  onload="init()">  0 0 1612 880  700 70 100 100    W3C Annotation Architecture proposal      xmlns:dc="http://purl.org/dc/elements/1.1/"  xmlns:cc="http://creativecommons.org/ns#">  License: CC-0 (public domain)    W3C Annotation Architecture proposal  image/svg+xml                            text {  font-family: Verdana, sans-serif;  }  .outlines {  stroke: black;  fill: none;  }    .icon {  stroke: white;   stroke-width: 1px;   stroke-dasharray: none;   stroke-linejoin: round;   stroke-linecap: round;  fill: white;   fill-rule: evenodd;   }  .process {  /* filter: url(#drop-shadow);*/  }  path.text-icon {  stroke-width: 6px;  }     path.process {  fill: none;  stroke: peru;  stroke-width: 8px;  marker-start: url(#dot);   marker-end: url(#endArrow);  }  marker.process {  stroke: peru;  fill: peru;  stroke-linejoin: round;   stroke-linecap: round;  stroke-dasharray: none;  }  marker.white {  stroke: white;  fill: white;  }    path.no-arrow {  marker-end: none;  }    path.icon-write {  marker-start: url(#icon-write);   }    path.icon-publish {  marker-start: url(#icon-publish);   }    path.icon-read {  marker-start: url(#icon-read);   }    path.icon-notify {  marker-start: url(#icon-notify);   }    path.icon-api-request {  marker-start: url(#icon-api-request);   }    path.icon-api-download {  marker-start: url(#icon-api-download);   }    path.icon-discover {  marker-start: url(#icon-discover);   }    path.icon-subscribe {  marker-start: url(#icon-subscribe);   }    path.icon-share {  marker-start: url(#icon-share);   }    path.icon-attribution {  marker-start: url(#icon-attribution);   }    path.icon-dot {  marker-start: url(#icon-dot);   }    path.icon-annotate {  marker-start: url(#icon-annotate);   }    .notify {  stroke-dasharray: 2,16;  stroke-linejoin: round;   stroke-linecap: round;  }    .attribution {  stroke-dasharray: 7,9;  stroke-linejoin: round;   stroke-linecap: round;  }    .paper {  fill: mintcream;  fill-rule: nonzero;  stroke: black;  stroke-width: 3px;  stroke-linejoin: round;   stroke-linecap: round;  }    .annotation-connector {  stroke:firebrick;   stroke-width:3px;   stroke-dasharray:5,6;   stroke-linecap:round;   fill:none;  }    .annotation-anchor {  stroke:firebrick;   stroke-width:13px;  }    .label {  font-family: Verdana, sans-serif;  font-size: 22px;  text-anchor: middle;  }    .details {  font-family: Verdana, sans-serif;  fill: navy;   font-size: 23px;   text-anchor: start;  }    .subheading, .stage {   font-weight: bold;  }    #cloud {  fill: gainsboro;  stroke: dimgray;  stroke-linejoin: round;  stroke-width: 3px;  }            refX="-4" refY="0" markerWidth="10" markerHeight="20" orient="auto"  class="process">          refX="-4" refY="0" markerWidth="10" markerHeight="20" orient="auto"  class="process white">          refX="-4" refY="0" markerWidth="10" markerHeight="20" orient="auto"  class="connection-2way" style="stroke:none; fill:black;">        refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">          refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">          refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">          refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">          refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">          refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">          refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">          refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">          refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">                    refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">          refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">          refX="0" refY="0" markerWidth="5" markerHeight="5"  class="process">      d="M-8,0 L-5,-2 Q-5,-5 -2,-5 H4 Q7,-5 7,-2 V2 Q7,5 3,5 H-2 Q-5,5 -5,2 Z   M-4,-4.5 H3.5 V-1.5 H-4 Z   M-4,-1.5 H3.5 V1.5 H-4 Z  M-4,1.5 H3.5 V4.5 H-4 Z  M3.5,-1.5 H6.5 V1.5 H3.5 Z"/>                                                                                                                                                                 Cloud Icon                          Web Annotation Architecture            This interactive infographic explains a proposed  architecture of W3C Web Annotations, as part of an  ongoing conversation with the annotation community.  To read the detailed explanations of this diagram,  use the “down” key to move to the next step,  and the “up” key to move to the previous step.            Content Creator  The Content Creator makes the original text,  images, and other resources, often collaboratively or  with review cycles. There may be more than one Content  Creator responsible for a single work.              Publisher  The Publisher (which may be the same entity as the  Content Creator) distributes the content on the Web,  in ebooks, etc.          The content is published in near-final form, with a URL or  other unique locator (such as an ISBN for an ebook).          Footnotes & Comments  Footnotes and comments may be added to the content.  Both may be considered as a kind of annotation, being  meta-content, and both are implicitly published by the  same publisher as the content, at the same location.  Footnotes may be anchored to a particular section of  the content, and may or may not have different  provenance than the main content, such as a different  author, or a different publication time and date.          Reader comments on the content traditionally lack an  anchor to a specific section of the content; some modern   commenting systems allow comments at the paragraph or  sentence level. Quality comments increase the value of  the original content through corrections, additional  information, or relevant links, and increase reader and  community engagement. Publishers control which  comments are published, which is often hard to manage.          Reader  The Reader plays a critical role in the content ecosystem,  interacting with the content in a number of ways.            The Reader reads, analyzes, and thinks about the  content. But this is only the beginning.            Creating Web Annotations  Annotations provide a more powerful way for an  active Reader to comment, correct, highlight, or  categorize content selections.          With annotations, a Reader can target a discrete  selection.          A selection can be text, a section of an image, a location on  an interactive map, a timestamp of a video or audio, or  a data representation that has an underlying data source.          A Reader can even annotate a footnote ...          ... or a traditional site comment. (Very meta.)          Other readers can annotate sections of content that  overlap existing annotations ...          ... and even annotate annotations themselves, in  threaded replies.            Distributed publication of Web Annotations  When a Reader creates a Web annotation, they don't  have to publish it on the original content site; the  Reader can publish their annotation content on one or  more third-party “annotation services”, or on the Reader's  local device.  This decentralization is one of the key features of Web   Annotations, giving the Reader (who is now a Content  Creator) their choice of Publishers, reader communities,  and publishing policies. This helps promote healthy  competition between services and discourages publisher  lock-in. Individuals or special-interest communities can  even host their own annotation services.            Notifications of annotation sent to Publisher  The Publisher receives a notification for any  annotations made on their site which are explicitly  published publicly.  There are two proposed mechanisms for this:  1) a client-side event which informs the  page of the annotation's publication URLs;  2) a server-side notification sent to the publisher's  “well-known” contact address.  Either or both of these mechanisms may be used, each  with its own use cases.            Publisher queries, fetches, & republishes annotation  Once notified of an annotation, the Publisher can  request more information about the annotation from  the annotation service through the proposed HTTP API,  including author credentials, the reputation of the  annotation (“karma” or “up-votes”), publication license,  and other details that might lead to an informed decision  about the value of the annotation. If the Publisher   wishes, they can fetch the annotation itself.            Once requested, the annotation service sends the  Publisher the annotation.            The Publisher can then publish the annotation as a  comment. This maintains the Reader-provided value  for Publishers, while still allowing distributed annotation  publication.            Reader discovers and subscribes to annotation feeds  Annotation services offer a better way for a Reader to  discover new primary content, new discussion about  content, new individuals or communities, and new  annotation services. Web annotations are ideally seen in  the context of their target content, but annotation  services can offer a view of each annotation alone or in a  collection or stream (as with services like Reddit, Twitter,  or Facebook). Readers can do faceted searches that span  multiple annotated sites, for specific topics or hashtags,  for content from a particular person, or more tasks that  would be difficult with siloed site-specific comment  systems.            Once a Reader discovers an interesting person, topic,  community, or service, they can then subscribe to  have those annotations delivered to their browser when  they visit a relevant URL. Annotation subscriptions may be  proxied by aggregators or federated annotation services.          Web Annotations loaded when user visit target page  Each annotation includes the annotated content's original  URL, so a Reader with annotations enabled can read any  of these annotations when visiting that URL. The  annotations are loaded from one or more annotation  services, displayed on the page (such as in a sidebar),  and dynamically anchored to the specific content  selection, showing the annotation in context, and  enabling discussion even for sites without native  comments.  Currently, this functionality is only available through  JavaScript browser extensions (like the open-source  Annotator project), but the ultimate aim is native  browser support, both for loading annotations for any  URL, and for anchoring them to the selected content.            Other readers share annotations, with provenance  When someone finds an annotation that they like (or  dislike), they can share it with others, by sharing the  annotation's unique permalink, republishing the  annotation, or annotating the annotation with their own  content; even “up-voting” or tagging an annotation is an  act of annotation and sharing. The Open Annotation data  model provides a standardized way to represent an  annotation, so any Web annotation can be shared on the  same annotation service or on a different interoperable  annotation service.            Shared Web annotations include provenance, so they  will always have a link back to its original URL, and  even a chain of attribution that shows everyone who  shared it in a sequence. This is an important way to  spread content while rewarding the original Content  Creator.                                                          d="M265,300 H275 Q285,300 285,310 V330 Q285,340 275,340 H45 Q35,340 35,350 V360"/>                                                                                                                  contentcreator          publisher          reader            web annotation services                                                                      write      send-to-publisher        publish      publish      read        annotate      publish annotation      publish annotation      publish annotation        notification        notification      HTTP API request      HTTP API      publish comment      discover        subscribe      subscribe        subscribe        subscribe      load annotations        load annotations        load annotations      share      attribution chain                 

Replace this text with your caption           

height = 700\nwidth = 500