SlideShare uma empresa Scribd logo
1 de 16
An annotation framework for
          Fedora

         Andrew Ashton
     Brown University Library
Textual scholarship at Brown
•   Brown University Women Writers Project
•   Virtual Humanities Lab
•   Center of Digital Epigraphy
•   Modernist Journals Project
•   Hypertext, CAVE Writing, etc.
The Pico Project
Giovanni Pico della Mirandola’s 900 Theses
                  (1486)
The Brown Digital Repository
(BDR) is a place to gather,
index, preserve, and make
available digital assets of
enduring value produced via
academic and research
activities at Brown.

https://repository.library.brown.edu
Self-service web app:

•   Upload
•   Tag
•   Annotate
•   Share
•   Describe

https://repository.library.brown.edu
A
                                                    B

                                             C




            Annotatio   Annotatio         Primary            Annotatio     Annotatio
               n           n              Object                n             n



                                        Repository




Annotatio                   Annotatio                   Annotatio                 Annotatio
   n                           n                           n                         n




    My group’s                      About component                      My annotations
    annotations                            “C”
Open Annotation Plugin for Fedora
• Requirements:
   – No modifications to Fedora
   – No content model requirements
   – No additional expertise
• Jython web service
   – Create annotations and bodies (optional) – any format
   – Query OA data
   – Serialize individual annotations or by query
   – Listen for updates from Fedora
   http://brown-university-library.github.com/oac_web_service/
   http://bit.ly/oa_fedora
Fedora repository

                  OA plugin

                                                Anno-1
  Client      Serialize
application
              Create
                                 Body-1                       Target-1


              Query                             ActiveMQ




                   Fedora APIs
@prefix   dc: <http://purl.org/dc/elements/1.1/> .
@prefix   fedora-model: <info:fedora/fedora-system:def/model#> .
@prefix   oa: <http://www.w3.org/ns/openannotation/core/> .
@prefix   oax: <http://www.w3.org/ns/openannotation/extension/> .
@prefix   rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

<info:fedora/test:133> a <oa:Annotation>;
    oa:annotated "2012-07-26T12:35:42.282999Z";
    oa:annotator "aashton@brown.edu";
    oa:generated "2012-07-26T12:35:42.404999Z";
    oa:generator "OAC TEI Demo web application";
    oa:hasBody <info:fedora/test:132>;
    oa:hasTarget <info:fedora/test:133/SpecificTarget>;
    oa:modelVersion <http://www.openannotation.org/spec/core/20120509.html>;
    fedora-model:hasModel <info:fedora/bdr-cmodel:oa-annotation>;
    fedora-model:hasService <info:fedora/oac-sdef:serialize> .

<info:fedora/test:132> a <oa:Body>;
    dc:format "text/xml" .

<info:fedora/test:133/SpecificTarget> a <oa:SpecificResource>;
    oa:hasSelector <info:fedora/test:133/selector>;
    oa:hasSource <info:fedora/changeme:35>;
    oax:hasStyle <info:fedora/test:1000010118> .

<info:fedora/test:133/selector> a <http://www.tei-c.org/release/doc/tei-p5-
doc/en/html/SA.html#SATSSR>,
        <oa:FragmentSelector>;
    rdf:value "string_range(/TEI[1]/text[1]/body[1]/div1[1]/div2[1]/p[16],782,25)" .
Create
• Creates annotation objects in Fedora [via HTTP POST]
   – Datastreams:
      • Dublin Core
      • annotation (rdf/xml)
      • specifictarget (rdf/xml)
      • selector (rdf/xml)
• Optionally, creates annotation bodies as new objects in
  Fedora. Annotation bodies can also be URIs for existing
  resources on the web. [via HTTP POST]
• Indexes the RDF content of annotations objects in Jena
Query, Serialize, and Listen
• SPARQL endpoint for querying Fedora annotation data [via
  HTTP POST and GET]
• SPARQL XML response (other formats to come)
• Serialize individual annotations, lists of annotations, or the
  entire repository.
• RDF/XML, JSON, NT, TTL, CSV
• JMS consumer to receive updates via Fedora’s ActiveMQ
  broker
Repository annotation
sandbox
Prototype application to:
• Create annotations on TEI texts in
    Fedora
• Target annotations at sections,
    strings, semantic markup
• Create annotations as XML
    objects, URIs
• Serialize and dump annotation
    repository
Fedora repository
   Sample TEI
   application       1

                                    TEI            XSLT


        2            3


    OA plugin                             Anno-1



Query
                          Body-1                          Target-1
                 4
Create


Serialize
                         1.   Render TEI
                         2.   Find the relevant annotations
                         3.   Fetch and parse annotations
                         4.   Create annotations
Unresolved issues
•   UUIDs instead of datastream URIs
•   Binary bodies
•   Multiple targets
•   Versioning/persistence
Thank you
                     http://bit.ly/oa_fedora

                                 A.K.A

                  http://brown-university-
           library.github.com/oac_web_service/

Email: andrew_ashton@brown.edu
Twitters: @andyashton

Mais conteúdo relacionado

Mais procurados

Semtech web-protege-tutorial
Semtech web-protege-tutorialSemtech web-protege-tutorial
Semtech web-protege-tutorialmatthewhorridge
 
"Hands Off! Best Practices for Code Hand Offs"
"Hands Off!  Best Practices for Code Hand Offs""Hands Off!  Best Practices for Code Hand Offs"
"Hands Off! Best Practices for Code Hand Offs"Naomi Dushay
 
W3C Open Annotation: Status and Use Cases
W3C Open Annotation: Status and Use CasesW3C Open Annotation: Status and Use Cases
W3C Open Annotation: Status and Use CasesRobert Sanderson
 
(Live) Annotopia Overview by Paolo Ciccarese (Architect and principal developer)
(Live) Annotopia Overview by Paolo Ciccarese (Architect and principal developer)(Live) Annotopia Overview by Paolo Ciccarese (Architect and principal developer)
(Live) Annotopia Overview by Paolo Ciccarese (Architect and principal developer)Paolo Ciccarese
 
Knowledge Organization System (KOS) for biodiversity information resources, G...
Knowledge Organization System (KOS) for biodiversity information resources, G...Knowledge Organization System (KOS) for biodiversity information resources, G...
Knowledge Organization System (KOS) for biodiversity information resources, G...Dag Endresen
 
Best Practices for Multilingual Linked Open Data
Best Practices for Multilingual Linked Open DataBest Practices for Multilingual Linked Open Data
Best Practices for Multilingual Linked Open DataJose Emilio Labra Gayo
 
Building OBO Foundry ontology using semantic web tools
Building OBO Foundry ontology using semantic web toolsBuilding OBO Foundry ontology using semantic web tools
Building OBO Foundry ontology using semantic web toolsMelanie Courtot
 
Linked Data: A short(-ish) introduction
Linked Data: A short(-ish) introductionLinked Data: A short(-ish) introduction
Linked Data: A short(-ish) introductionPete Johnston
 
BioSamples Database Linked Data, SWAT4LS Tutorial
BioSamples Database Linked Data, SWAT4LS TutorialBioSamples Database Linked Data, SWAT4LS Tutorial
BioSamples Database Linked Data, SWAT4LS TutorialRothamsted Research, UK
 
Get on the Linked Data Web!
Get on the Linked Data Web!Get on the Linked Data Web!
Get on the Linked Data Web!Armin Haller
 
Semantic Web - Ontology 101
Semantic Web - Ontology 101Semantic Web - Ontology 101
Semantic Web - Ontology 101Luigi De Russis
 
The MIAPA ontology: An annotation ontology for validating minimum metadata re...
The MIAPA ontology: An annotation ontology for validating minimum metadata re...The MIAPA ontology: An annotation ontology for validating minimum metadata re...
The MIAPA ontology: An annotation ontology for validating minimum metadata re...Hilmar Lapp
 

Mais procurados (17)

Semtech web-protege-tutorial
Semtech web-protege-tutorialSemtech web-protege-tutorial
Semtech web-protege-tutorial
 
"Hands Off! Best Practices for Code Hand Offs"
"Hands Off!  Best Practices for Code Hand Offs""Hands Off!  Best Practices for Code Hand Offs"
"Hands Off! Best Practices for Code Hand Offs"
 
W3C Open Annotation: Status and Use Cases
W3C Open Annotation: Status and Use CasesW3C Open Annotation: Status and Use Cases
W3C Open Annotation: Status and Use Cases
 
(Live) Annotopia Overview by Paolo Ciccarese (Architect and principal developer)
(Live) Annotopia Overview by Paolo Ciccarese (Architect and principal developer)(Live) Annotopia Overview by Paolo Ciccarese (Architect and principal developer)
(Live) Annotopia Overview by Paolo Ciccarese (Architect and principal developer)
 
Knowledge Organization System (KOS) for biodiversity information resources, G...
Knowledge Organization System (KOS) for biodiversity information resources, G...Knowledge Organization System (KOS) for biodiversity information resources, G...
Knowledge Organization System (KOS) for biodiversity information resources, G...
 
Best Practices for Multilingual Linked Open Data
Best Practices for Multilingual Linked Open DataBest Practices for Multilingual Linked Open Data
Best Practices for Multilingual Linked Open Data
 
Building OBO Foundry ontology using semantic web tools
Building OBO Foundry ontology using semantic web toolsBuilding OBO Foundry ontology using semantic web tools
Building OBO Foundry ontology using semantic web tools
 
Linked Data: A short(-ish) introduction
Linked Data: A short(-ish) introductionLinked Data: A short(-ish) introduction
Linked Data: A short(-ish) introduction
 
BioSamples Database Linked Data, SWAT4LS Tutorial
BioSamples Database Linked Data, SWAT4LS TutorialBioSamples Database Linked Data, SWAT4LS Tutorial
BioSamples Database Linked Data, SWAT4LS Tutorial
 
semantic web & natural language
semantic web & natural languagesemantic web & natural language
semantic web & natural language
 
Get on the Linked Data Web!
Get on the Linked Data Web!Get on the Linked Data Web!
Get on the Linked Data Web!
 
Semantic Web - Ontology 101
Semantic Web - Ontology 101Semantic Web - Ontology 101
Semantic Web - Ontology 101
 
General Introduction for Semantic Web and Linked Open Data
General Introduction for Semantic Web and Linked Open DataGeneral Introduction for Semantic Web and Linked Open Data
General Introduction for Semantic Web and Linked Open Data
 
Introduction to RDF
Introduction to RDFIntroduction to RDF
Introduction to RDF
 
Fedora 4 :Introduction and Overview
Fedora 4 :Introduction and OverviewFedora 4 :Introduction and Overview
Fedora 4 :Introduction and Overview
 
The MIAPA ontology: An annotation ontology for validating minimum metadata re...
The MIAPA ontology: An annotation ontology for validating minimum metadata re...The MIAPA ontology: An annotation ontology for validating minimum metadata re...
The MIAPA ontology: An annotation ontology for validating minimum metadata re...
 
WordPress Data Storage
WordPress Data StorageWordPress Data Storage
WordPress Data Storage
 

Semelhante a An Annotation Framework for Fedora

Building APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformBuilding APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformAntonio Peric-Mazar
 
API Design & Security in django
API Design & Security in djangoAPI Design & Security in django
API Design & Security in djangoTareque Hossain
 
Research Shared: researchobject.org
Research Shared: researchobject.orgResearch Shared: researchobject.org
Research Shared: researchobject.orgNorman Morrison
 
Usage of Linked Data: Introduction and Application Scenarios
Usage of Linked Data: Introduction and Application ScenariosUsage of Linked Data: Introduction and Application Scenarios
Usage of Linked Data: Introduction and Application ScenariosEUCLID project
 
Darwin Core Archive (DwC-A) validation: A New Collaborative Effort
Darwin Core Archive (DwC-A) validation: A New Collaborative EffortDarwin Core Archive (DwC-A) validation: A New Collaborative Effort
Darwin Core Archive (DwC-A) validation: A New Collaborative Effortkristgen
 
Pharo Status ESUG 2014
Pharo Status ESUG 2014Pharo Status ESUG 2014
Pharo Status ESUG 2014Pharo
 
Annotations Supporting Scholarly Editing
Annotations Supporting Scholarly EditingAnnotations Supporting Scholarly Editing
Annotations Supporting Scholarly EditingAnna Gerber
 
DSpace 4.2 Transmission: Import/Export
DSpace 4.2 Transmission: Import/ExportDSpace 4.2 Transmission: Import/Export
DSpace 4.2 Transmission: Import/ExportDuraSpace
 
Managing Annotations (OR2016)
Managing Annotations (OR2016)Managing Annotations (OR2016)
Managing Annotations (OR2016)Robert Sanderson
 
The WorldCat Search API
The WorldCat Search APIThe WorldCat Search API
The WorldCat Search APIOCLC Research
 
"Data Provenance: Principles and Why it matters for BioMedical Applications"
"Data Provenance: Principles and Why it matters for BioMedical Applications""Data Provenance: Principles and Why it matters for BioMedical Applications"
"Data Provenance: Principles and Why it matters for BioMedical Applications"Pinar Alper
 
Open Writing ! - Collaborative Authoring on Apache’s First Open-Source Cloud ...
Open Writing ! -	Collaborative Authoring on Apache’s First Open-Source Cloud ...Open Writing ! -	Collaborative Authoring on Apache’s First Open-Source Cloud ...
Open Writing ! - Collaborative Authoring on Apache’s First Open-Source Cloud ...Radhika Puthiyetath
 
OAI Identifiers: Decentralised PIDs for Research Outputs in Repositories
OAI Identifiers: Decentralised PIDs for Research Outputs in RepositoriesOAI Identifiers: Decentralised PIDs for Research Outputs in Repositories
OAI Identifiers: Decentralised PIDs for Research Outputs in Repositoriespetrknoth
 
WOTS2E: A Search Engine for a Semantic Web of Things
WOTS2E: A Search Engine for a Semantic Web of ThingsWOTS2E: A Search Engine for a Semantic Web of Things
WOTS2E: A Search Engine for a Semantic Web of ThingsAndreas Kamilaris
 
Getting Started with Wonder
Getting Started with WonderGetting Started with Wonder
Getting Started with WonderWO Community
 

Semelhante a An Annotation Framework for Fedora (20)

OCCIware
OCCIwareOCCIware
OCCIware
 
Building APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformBuilding APIs in an easy way using API Platform
Building APIs in an easy way using API Platform
 
API Design & Security in django
API Design & Security in djangoAPI Design & Security in django
API Design & Security in django
 
Publishing Linked Data from RDB
Publishing Linked Data from RDBPublishing Linked Data from RDB
Publishing Linked Data from RDB
 
Research Shared: researchobject.org
Research Shared: researchobject.orgResearch Shared: researchobject.org
Research Shared: researchobject.org
 
Usage of Linked Data: Introduction and Application Scenarios
Usage of Linked Data: Introduction and Application ScenariosUsage of Linked Data: Introduction and Application Scenarios
Usage of Linked Data: Introduction and Application Scenarios
 
Darwin Core Archive (DwC-A) validation: A New Collaborative Effort
Darwin Core Archive (DwC-A) validation: A New Collaborative EffortDarwin Core Archive (DwC-A) validation: A New Collaborative Effort
Darwin Core Archive (DwC-A) validation: A New Collaborative Effort
 
Introduction to FIWARE IoT
Introduction to FIWARE IoTIntroduction to FIWARE IoT
Introduction to FIWARE IoT
 
Pharo Status ESUG 2014
Pharo Status ESUG 2014Pharo Status ESUG 2014
Pharo Status ESUG 2014
 
Annotations Supporting Scholarly Editing
Annotations Supporting Scholarly EditingAnnotations Supporting Scholarly Editing
Annotations Supporting Scholarly Editing
 
DSpace 4.2 Transmission: Import/Export
DSpace 4.2 Transmission: Import/ExportDSpace 4.2 Transmission: Import/Export
DSpace 4.2 Transmission: Import/Export
 
Managing Annotations (OR2016)
Managing Annotations (OR2016)Managing Annotations (OR2016)
Managing Annotations (OR2016)
 
How to debug IoT Agents
How to debug IoT AgentsHow to debug IoT Agents
How to debug IoT Agents
 
The WorldCat Search API
The WorldCat Search APIThe WorldCat Search API
The WorldCat Search API
 
"Data Provenance: Principles and Why it matters for BioMedical Applications"
"Data Provenance: Principles and Why it matters for BioMedical Applications""Data Provenance: Principles and Why it matters for BioMedical Applications"
"Data Provenance: Principles and Why it matters for BioMedical Applications"
 
Open Writing ! - Collaborative Authoring on Apache’s First Open-Source Cloud ...
Open Writing ! -	Collaborative Authoring on Apache’s First Open-Source Cloud ...Open Writing ! -	Collaborative Authoring on Apache’s First Open-Source Cloud ...
Open Writing ! - Collaborative Authoring on Apache’s First Open-Source Cloud ...
 
OAI Identifiers: Decentralised PIDs for Research Outputs in Repositories
OAI Identifiers: Decentralised PIDs for Research Outputs in RepositoriesOAI Identifiers: Decentralised PIDs for Research Outputs in Repositories
OAI Identifiers: Decentralised PIDs for Research Outputs in Repositories
 
Fedora4
Fedora4Fedora4
Fedora4
 
WOTS2E: A Search Engine for a Semantic Web of Things
WOTS2E: A Search Engine for a Semantic Web of ThingsWOTS2E: A Search Engine for a Semantic Web of Things
WOTS2E: A Search Engine for a Semantic Web of Things
 
Getting Started with Wonder
Getting Started with WonderGetting Started with Wonder
Getting Started with Wonder
 

Último

Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfUmakantAnnand
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting DataJhengPantaleon
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 

Último (20)

Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.Compdf
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 

An Annotation Framework for Fedora

  • 1. An annotation framework for Fedora Andrew Ashton Brown University Library
  • 2. Textual scholarship at Brown • Brown University Women Writers Project • Virtual Humanities Lab • Center of Digital Epigraphy • Modernist Journals Project • Hypertext, CAVE Writing, etc.
  • 4. Giovanni Pico della Mirandola’s 900 Theses (1486)
  • 5. The Brown Digital Repository (BDR) is a place to gather, index, preserve, and make available digital assets of enduring value produced via academic and research activities at Brown. https://repository.library.brown.edu
  • 6. Self-service web app: • Upload • Tag • Annotate • Share • Describe https://repository.library.brown.edu
  • 7. A B C Annotatio Annotatio Primary Annotatio Annotatio n n Object n n Repository Annotatio Annotatio Annotatio Annotatio n n n n My group’s About component My annotations annotations “C”
  • 8. Open Annotation Plugin for Fedora • Requirements: – No modifications to Fedora – No content model requirements – No additional expertise • Jython web service – Create annotations and bodies (optional) – any format – Query OA data – Serialize individual annotations or by query – Listen for updates from Fedora http://brown-university-library.github.com/oac_web_service/ http://bit.ly/oa_fedora
  • 9. Fedora repository OA plugin Anno-1 Client Serialize application Create Body-1 Target-1 Query ActiveMQ Fedora APIs
  • 10. @prefix dc: <http://purl.org/dc/elements/1.1/> . @prefix fedora-model: <info:fedora/fedora-system:def/model#> . @prefix oa: <http://www.w3.org/ns/openannotation/core/> . @prefix oax: <http://www.w3.org/ns/openannotation/extension/> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . <info:fedora/test:133> a <oa:Annotation>; oa:annotated "2012-07-26T12:35:42.282999Z"; oa:annotator "aashton@brown.edu"; oa:generated "2012-07-26T12:35:42.404999Z"; oa:generator "OAC TEI Demo web application"; oa:hasBody <info:fedora/test:132>; oa:hasTarget <info:fedora/test:133/SpecificTarget>; oa:modelVersion <http://www.openannotation.org/spec/core/20120509.html>; fedora-model:hasModel <info:fedora/bdr-cmodel:oa-annotation>; fedora-model:hasService <info:fedora/oac-sdef:serialize> . <info:fedora/test:132> a <oa:Body>; dc:format "text/xml" . <info:fedora/test:133/SpecificTarget> a <oa:SpecificResource>; oa:hasSelector <info:fedora/test:133/selector>; oa:hasSource <info:fedora/changeme:35>; oax:hasStyle <info:fedora/test:1000010118> . <info:fedora/test:133/selector> a <http://www.tei-c.org/release/doc/tei-p5- doc/en/html/SA.html#SATSSR>, <oa:FragmentSelector>; rdf:value "string_range(/TEI[1]/text[1]/body[1]/div1[1]/div2[1]/p[16],782,25)" .
  • 11. Create • Creates annotation objects in Fedora [via HTTP POST] – Datastreams: • Dublin Core • annotation (rdf/xml) • specifictarget (rdf/xml) • selector (rdf/xml) • Optionally, creates annotation bodies as new objects in Fedora. Annotation bodies can also be URIs for existing resources on the web. [via HTTP POST] • Indexes the RDF content of annotations objects in Jena
  • 12. Query, Serialize, and Listen • SPARQL endpoint for querying Fedora annotation data [via HTTP POST and GET] • SPARQL XML response (other formats to come) • Serialize individual annotations, lists of annotations, or the entire repository. • RDF/XML, JSON, NT, TTL, CSV • JMS consumer to receive updates via Fedora’s ActiveMQ broker
  • 13. Repository annotation sandbox Prototype application to: • Create annotations on TEI texts in Fedora • Target annotations at sections, strings, semantic markup • Create annotations as XML objects, URIs • Serialize and dump annotation repository
  • 14. Fedora repository Sample TEI application 1 TEI XSLT 2 3 OA plugin Anno-1 Query Body-1 Target-1 4 Create Serialize 1. Render TEI 2. Find the relevant annotations 3. Fetch and parse annotations 4. Create annotations
  • 15. Unresolved issues • UUIDs instead of datastream URIs • Binary bodies • Multiple targets • Versioning/persistence
  • 16. Thank you http://bit.ly/oa_fedora A.K.A http://brown-university- library.github.com/oac_web_service/ Email: andrew_ashton@brown.edu Twitters: @andyashton