The document discusses Open Annotation for EPUB. It provides an overview of the Open Annotation Working Group, their activities in 2013 regarding applying Open Annotations in EPUB, and the data model and technical specifications involved. Requirements and issues for annotations in EPUB are also covered, such as mechanisms for identifying document content and maintaining annotation integrity.
1 of 40
More Related Content
140328 전자출판 기술표준세미나 epub 주석 표준 open_annotation_최두립_v2
1. 2014. 3. 28(금)
EPUB을 위한 주석 활용
“Open Annotation for EPUB”
1
지식 확산을 위한 전자출판(EPUB∙EDUPUB∙DAISY) 기술표준세미나
인터파크 최두립
couplewith@gmail.com
3. 3
Open Annotation WG
• W3C Open Annotation Community Group
• Open Annotation Data Model (08 February 2013)
• Annotation Ontology (AO)
• Open Annotation Collaboration (OAC)
• Open Annotations in EPUB (September 2013)
• How to apply Open Annotations (OA) in the context of EPUB
• Users and authors will be able to create, store, share, and
load annotations
• Reduces interoperability across Reading Systems.
• Use cases and functional requirements (2011-12 )
Open Annotation Data Model : http://www.openannotation.org/spec/core/
4. Open Annotation WG : 2013 OA-in-EPUB
4
Annotations - 'metadata on content‘ : sub-group
Requirements & issues
Mechanism to guarantee that document content has not changed
guarantee identity of document author
guarantee that the public annotation has not changed
Document identifiers
XML/HTML Unique Identifiers
Structural Paths (XPath Expressions)
Unicode Character Offset, Unicode Character Range
Time Offset, Time Range
Spacial Area
Single Annotation, Multiple Targets
Annotation content can contain either/any of: audio, video, image, text.
Synchronized audio annotates the text
https://code.google.com/p/epub-revision/wiki/Annotations#Requirements_&_issues
5. Open Annotation WG
Project chairs
TBD (initial lead by Markus Gylling and Rob Sanderson). IDPF members who wish to chair or co-chair this
effort are requested to contact Markus.
Project Members
Rob Sanderson (Los Alamos National Laboratory)
Yasuki Ikeuchi (ACCESS)
Bill McCoy (IDPF, Readium Foundation)
Paolo Ciccarese (Harvard University)
Markus Gylling (IDPF, DAISY)
George Kerscher (DAISY)
Yong-Sang Cho (KERIS)
Hadrien Gardeur (FeedBooks)
Daniel Weck (DAISY, Readium Foundation)
Romain Deltour (DAISY)
Mihnea Tufiș (LIP6)
Jean Kaplansky (Aptara)
Andrew Brookins (Safari Books Online)
Jean-Marie Geffroy (Mantano, Readium Foundation)
King-Wai Chow (ASTRI)
Takeshi Kanai (Sony)
Toshiaki Koike (Voyager Japan)
5
7. IDPF : Open Annotation 연구 배경
7
표준 부재
북마크, 메모,위치 저장, 교환
상호 호환성
리딩 시스템간의 상호 호환성 필요
EPUB스펙 과 별개
EPUB 컨텐츠와 별개로 저장,관리
출판물과 별개로 저장되고 공유 됨
EPUB,DAISY,Adobe등 여러 포멧의 Annotation이 존재
EPUB 2.1 Working Group Charter - Current Industry Problems : http://idpf.org/epub/30/wg-charter#pr_8
전자책 상호 호환
8. W3C : Open Annotation 연구 배경
8
시멘틱 웹을 위핚 기술
RDF
(Resource Description Framework)
Annotation Ontology Open Annotation Model
협력 (유비쿼터스)
Collaboration
웹상의 자원의 정보를 표현하는 XML 규격
컴퓨터에서 다룰 수 있는 형태로 표현핚 모
델
데이터 구조 모형
기계 사람
Open Annotation Community Group : http://www.w3.org/community/openannotation/
RDF : http://ko.wikipedia.org/wiki/RDF
9. Open Annotation의 필요성 : 전자책 붂야
9
Share to Facebook® and Twitter®
Share ideas with other reader
Social Reading
Stats with Reading Life
syncs your bookmarks across devices.클라우드
빅데이터
상호작용
KOBO Books : http://www.kobobooks.com
10. Open Annotation의 필요성 : 교육 붂야
10
디지털교과서 : 참고자료 영상
디지털 교과서 학습 예시 : http://dtbook.edunet.net/st_renewal/file/디지털교과서_학습예시.pdf
• 하일라이트, 메모 공유
12. Open Annotation의 필요성 : 교육 붂야
12
OAC for Communities : http://www.openannotation.org/documents/201207oacNyu-b.pdf
ebook
Collaboration
13. Annotation 의 필요성 : use cases
13
저자 측면
◦ 보조 컨텐츠 설명 (Ancillary content)
: Included at content packaging/publication time
Embedded Commentary
Long descriptions
Annotations - metadata on content : https://code.google.com/p/epub-revision/wiki/Annotations#Requirements_&_issues
14. Annotation 의 필요성 : use cases
14
독자 측면
◦ 메모, 북마크,책갈피
: by a single reader for their private use
Underlining/highlighting significant content
Adding a bookmark & comment (note):위치&영역
Mindless drawing/doodles : 낙서
Create a linkage between a point in a document and any other resource
Reader annotates two distinct sections of a doc.
Tagging a part of a publication, rather than commenting on it.
Annotations with multiple bodies
15. Annotation 의 필요성 : use cases
15
출판물 측면
◦ 공유, 상업적 서비스 : share, commercial offering
Answers to a quiz (rich media) meant for teacher.
Notes from a teacher to students.
Notes from myself to members of my book club.
Adding a table containing additional experimental data to an existing table
in a scholarly journal.
Annotations from a third party for sale to students reading Huckleberry Finn.
Errata : 정오표
“Definitive“commentary from an interesting voice (editor, celebrity, historical
player, etc).
Annotations on annotations
16. Open Annotation 과 EPUB
16
Open Annotation in EPUB
https://docs.google.com/document/d/1imR8GM-
UobvcjvxVpLTGgX7thxGpAaHe1QLzgpb7xvU/edit?pli=1#bookmark=id.kiy6d29rasxu
17. Open Annotation : 관렦 표준
[ContentDocs30] EPUB Content Documents 3.0
[CFI] EPUB Canonical Fragment Identifier (epubcfi) Specification
[HTML5] HTML5: A vocabulary and associated APIs for HTML and XHTML.
[MediaFrag] Media Fragments URI 1.0 (basic). Raphaël Troncy, et al. 25
September 2012.
[RDFa11] RDFa Core 1.1. Syntax and processing rules for embedding RDF
through attributes. Ben Adida, et al. 07 June 2012.
[RFC2119] Key words for use in RFCs to Indicate Requirement Levels (RFC
2119) . March 1997.
[RFC3987] Internationalized Resource Identifiers (IRIs) (RFC 3987). M
Duerst, et al. January 2005.
17
18. EPUB 패키징
Packaging
◦ annotations.json in Zip root
Format
◦ be serialized in a JSON document [RFC4627]
◦ which follows the JSON-LD conventions [JSON-LD].
Metadata
◦ DCMI Metadata Terms [DCMI]
18
19. Json Data Format
The following example shows the source EPUB Publication and Rendition for
resolving EPUB CFIs.
{
"@type": "oa:SpecificResource",
"hasSource": {
"@id": "http://www.example.org/ebooks/A1B0D67E-2E81-4DF5/v2.epub",
"@type": "dctypes:Text"
},
"hasState": {
"@type": "epub:RenditionState",
"opfPath": "/opfs/content.opf"
}
}
19
20. DCMI
{
"@context": "http://idpf.org/epub/oa/1.0/context.json",
"@id": "http://example.org/epub/annotations.json",
"@type": "epub:AnnotationCollection",
"dc:title": "Alice in Wonderland Annotations",
"dc:publisher": "Example Organization",
"dc:creator": "Anne O'Tater",
"dcterms:modified": "2014-03-17T12:30:00Z",
"dc:description": "Anne's collection of annotations on Alice in Wonderland",
"dc:rights": [
{"@value": "Quelques droits en Français", "@language": "fr"},
{"@value": "Some Rights in English", "@language": "en"}
],
"annotations": [ … ],
}
20
22. Open Annotation 기술 : Data Model
22
http://www.openannotation.org/spec/core/20130208/
http://www.slideshare.net/azaroth42/open-annotation-overview
23. Open Annotation 기술 : Data Model
23
<x:MyAnno> a oa:Annotation ;
oa:hasBody <http://www.youtube.com/watch?v=uPh81LIe7B8> ;
oa:hasTarget <http://en.wikipedia.org/> .
RDF:
Model:
http://www.w3.org/community/openannotation/wiki/Sopa_Basic
oa:hasTarget
27. Open Annotation 기술 : RDF/XML
<?xml version="1.0" encoding="UTF-8"?><rdf:RDF
xmlns:cnt="http://www.w3.org/2008/content#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dms="http://dms.stanford.edu/ns/"
xmlns:exif="http://www.w3.org/2003/12/exif/ns#"
xmlns:foaf="http://xmlns.com/foaf/0.1/"
xmlns:oac="http://www.openannotation.org/ns/"
xmlns:ore="http://www.openarchives.org/ore/terms/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="urn:uuid:377a6417-3629-49e6-a0fe-d2dcbf7b3818">
<oac:hasTarget rdf:resource="http://www.shared-canvas.org/impl/demo1/res/Canvas-
f32r"/>
<oac:hasBody rdf:resource="http://www.shared-canvas.org/impl/demo1/res/image-
f32r.jpg"/>
<rdf:type rdf:resource="http://dms.stanford.edu/ns/ImageAnnotation"/>
<rdf:type rdf:resource="http://www.openannotation.org/ns/Annotation"/>
</rdf:Description>
</rdf:RDF>
27
Over view Of Open Annoatation : lib.stanford.edu/files/oac-dmss_0.ppt
http://www.slideshare.net/azaroth42/open-annotation-overview
28. Open Annotation 기술 : RDF
28
http://www.w3.org/community/openannotation/wiki/Annotating_a_Webpage_with_a_Textual_Note
RDFa is a specification for attributes to express structured data in any markup language
ex:Anno a oax:Annotation ;
oa:hasTarget <http://www.w3.org/community/openannotation/> ;
oa:hasBody ex:uuid ;
oa:annotatedBy ex:Person1 ;
oa:annotatedAt "2012-02-12T15:02:14Z" ;
oa:serializedBy ex:Software1 ;
oa:serializedAt "2012-02-12T15:02:14Z" .
<http://www.w3.org/community/openannotation/>
dc:format "text/html" .
ex:uuid a cnt:ContentAsText ;
cnt:chars "This is the result of the merging process of Annotation Ontology (AO) and
Open Annotation Collaboration (OAC)" ;
cnt:characterEncoding "utf-8" .
ex:Person1 a foaf:Person ;
foaf:mbox "john.doe@example.org" ;
foaf:name "John Doe" .
ex:Software1
foaf:name "ExAnnotator" .
29. Open Annotation 기술 : HTML5+RDFa
29
http://www.w3.org/community/openannotation/wiki/Serializations
http://www.w3.org/TR/2008/PR-rdfa-syntax-20080904/#s_xhtmlrdfa
<note id="annotation1">
<p>
<a property="annotatedBy" href="http://example.com/people/shepazu">Shepazu</a>
</p>
<time datetime="2014-01-14T01:28:22-0500">
<a href="http://example.com/annotations/shepazu-1389680902"
title="1:28 AM - 14 Jan 2014">A few minutes ago</a>
</time>
<blockquote cite="http://example.com/sourcedoc.html"
data-prefix="essential feature of the memex. "
data-suffix=" When the user is building a tra">
<p>The process of tying two items together is the important thing.</p>
<footer>
- <cite>
<a href="http://en.wikipedia.org/wiki/Vannevar_Bush">Vannevar Bush</a>
</cite>
</footer>
</blockquote>
<p>Annotations are at the Web's core.</p>
<ul>
<li property="tag">annotations</li>
<li property="tag">web</li>
<li property="tag">standards</li>
</ul>
</note>
HTML
<note> element
30. Open Annotation 기술 : HTML
30
Standard HTML <a>
<p>
Vannevar Bush described about the increased complexity, publication, and specialization
of scientific disciplines<a property="note" href="#annotation2" />. He proposed a new
machine for linking and sharing different sources of information, which he called a
<a property="note" href="#annotation2">memex</a>.
<p>
...
<note id="annotation1">
<cite>Bush, Vannevar (Jul 1945),
<a href="http://www.theatlantic.com/magazine/archive/1945/07/as-we-may-
think/3881/">“As We May Think”</a>,
<i>The <a href="http://www.theatlantic.com/" title="Atlantic Monthly">Atlantic
Monthly</a></i>
<b>176</b> (1): 101–8
</cite>
</note>
http://www.w3.org/community/openannotation/wiki/Serializations
http://www.w3.org/TR/2008/PR-rdfa-syntax-20080904/#sec_D.2.
31. Open Annotation 기술 : JSON , JSON-LD
31
http://www.w3.org/community/openannotation/wiki/Serializations
http://www.w3.org/ns/oa.json
{
"@context": "http://www.w3.org/ns/oa.json",
"@type": "Annotation",
"annotatedAt": "2014-01-14T01:28:22-0500",
"annotatedBy": {
"@id": "http://example.com/people/shepazu",
"name": "Shepazu",
"@type" : "Person"
},
"hasBody": [
{
"chars" : "Annotations are at the Web's core."
},
{
"@type": "Tag",
"chars": [
"web",
"standards",
"annotations"
]
}
],
"hasTarget": "http://example.com/sourcedoc.html"
}
Annotation in JSON
- Using client-side
JavaScript into HTML
- Updates to web pages
via XHR or sockets
33. EPUB CFI : 위치 정보
33
#epubcfi(/2/6/4!/2/4/16) : img element
https://code.google.com/p/epub-revision/wiki/ImplementationProposalFragmentIdentifier
chapter01.xhtml
.opf file
34. EPUB CFI : 링크
34
...
<a href="chapter01.xhtml#epubcfi(/2/4/10/2/1:3b)">location</a>
...
CFI can be also used to cross-reference XML content inside
the EPUB package
chapter02.xhtmlchapter01.xhtml