Apidays New York 2024 - The value of a flexible API Management solution for O...
Annotating Scholarly Works - the W3C Open Annotation Model
1. STANFORD UNIVERSITY LIBRARIES
W3C Open Annotation Data Model
April 17th, 2016
BR I N G I N G OP E N AN N O TAT I O N T O AL L S C H O L A R LY WO R K S
Rob Sanderson / azaroth42@gmail.com / @azaroth42
2. @azaroth42
#openannotation
Brief History of Annotation
2001: Annotea
2009: Open Annotation Collaboration
& Annotation Ontology
2011: Open Annotation Community Group
2014: Web Annotation Working Group
3. @azaroth42
#openannotation
Mission:
Interoperability between Annotation systems and platforms, by
…following the Architecture of the Web
…reusing existing web standards
…providing a single, coherent model to implement
…which is orthogonal to the domain of interest
…without requiring adoption of specific platforms
…while maintaining low implementation costs
Published Draft Model and Vocabulary Feb 2013
Open Annotation Community Group
Outcomes:
4. @azaroth42
#openannotation
Chartered Areas:
1. Model
2. Vocabulary
3. Serialization
4. Protocol
5. Client API
6. Robust Linking
Web Annotation Working Group
Working Draft towards TR
Working Draft towards TR
(merged with Model, + Notes)
Working Draft towards TR
Working Draft
(no formal output)
• http://www.w3.org/TR/annotation-model/
• http://www.w3.org/TR/annotation-vocab/
• http://www.w3.org/TR/annotation-protocol/
5. @azaroth42
#openannotation
An Annotation is considered to be a set of connected
resources, typically including a body and target, where
the body is related to the target.
“ ”
Highlighting, Bookmarking
Commenting, Describing
Tagging, Linking
Classifying, Identifying
Questioning, Replying
Editing, Moderating
Users Annotate To:
…Provide an Aide-Memoire
…Share and Inform
…Improve Discovery
…Organize Resources
…Interact with Others
…Participate in the Community
Annotation?
Activities:
15. @azaroth42
#openannotation
Motivation Use Case
bookmarking Pointer to come back to the target, e.g. to use it later
classifying Associate a class with target, such as a Rebuttal
commenting Make a comment about the target
describing Describe the target, e.g. to enable discovery of data
editing Propose an edit to the target, such as a typo correction
highlighting Highlight a segment, e.g. to use as a quote in a paper
identifying Associate identity with target, e.g. the name of a gene
linking Link the body resource to the target
moderating Moderate the target up/down, to reduce spam/harassment
questioning Ask a question about the target
replying Reply to a question, comment or previous statement
reviewing Provide assessment of the target, e.g. peer review
tagging Tag the target with some string or concept
19. @azaroth42
#openannotation
Selectors
Fragment
CSS
XPath
Text Quote
Text Position
Data Position
SVG
Range
Use URI fragment to describe segment
Use CSS selection (#foo > .class p)
Use XPath (/html/body/p[6]/span[3])
Quote text to match, plus prefix/suffix
Start position and offset into text
Start position and offset into raw data
SVG shape
Use selectors for start and end of range
21. @azaroth42
#openannotation
Annotation Protocol: CRUD
• Based on Linked Data Platform (LDP) specification
• Containers for Annotation management
• Follows REST and Linked Data
• Discovery of Annotation Containers via Link headers/elements
• Paging mechanism based on Social Web WG's ActivityStreams
• JSON-LD required, content negotiation for other RDF formats
• Server will return created annotation on PUT/POST
22. @azaroth42
#openannotation
WebMention: Notification
• Social Web WG's specification
• Very simple:
• Post form-encoded content to specified endpoint
• Contains URI of Annotation, and URI of target resource
• Recipient verifies annotation to make sure it's not spam
• If all okay, can then make use of it
• http://www.w3.org/TR/webmention/