Annotation Core Resources

Annotation Resources

This page contains an assortment of resources to help explain the structure and relationship of the Annotation object. The annotation data model is based on the W3C Web Annotation model and is used to attach annotations to any digital object in the DiSSCo infrastructure. It follows the model as outlined in the below image. Alt text

Diagrams

Class Diagrams

                            classDiagram
 class Annotation { 
   dcterms:identifier : string 
   ods:fdoType : string 
   ods:status : None 
   ods:jobID : string 
   ods:version : integer 
   oa:motivation : None 
   oa:motivatedBy : string 
   oa:hasTarget : object 
   oa:hasBody : object 
   dcterms:creator : object 
   dcterms:created : string 
   dcterms:modified : string 
   dcterms:issued : string 
   as:generator : object 
   ods:batchID : string 
   ods:placeInBatch : integer 
   ods:mergingDecisionStatus : string 
   ods:mergingStateChangeDate : string 
   ods:hasMergingStateChangedBy : object 
   ods:hasTombstoneMetadata : object 
 }
 class hasAggregateRating {
   schema:ratingCount : integer 
   schema:ratingValue : number 
 }
 class TombstoneMetadata { 
   ods:tombstoneDate : string 
   ods:tombstoneText : string 
   ods:hasAgents : object 
   ods:hasRelatedPIDs : array<ods:RelatedPID> 
 }
 class RelatedPID { 
   dcterms:identifier : string 
   schema:identifier : string 
   ods:relationshipType : string 
 }
 class Agent { 
   schema:identifier : string 
   schema:name : string 
   ods:hasRoles : array<ods:Role> 
   schema:email : string 
   schema:url : string 
   ods:hasIdentifiers : array<ods:Identifier> 
 }
 class Role { 
   schema:roleName : string 
   schema:startDate : string 
   schema:endDate : string 
   schema:position : integer 
 }
 class AnnotationTarget { 
   dcterms:identifier : string 
   ods:fdoType : string 
   oa:hasSelector : object 
 }
 class AnnotationBody { 
   oa:value : array<string> 
   dcterms:references : string 
   ods:score : number 
 }
 class Identifier { 
   dcterms:title : string 
   dcterms:type : string 
   dcterms:identifier : string 
   dcterms:format : array<string> 
   dcterms:subject : array<string> 
   ods:isPartOfLabel : boolean 
   ods:gupriLevel : string 
   ods:identifierStatus : string 
 }
Annotation -- hasAggregateRating
Annotation -- TombstoneMetadata 
TombstoneMetadata -- RelatedPID
TombstoneMetadata -- Agent
Annotation -- Agent
Agent -- Role
Agent -- Identifier
Annotation -- AnnotationTarget
Annotation -- AnnotationBody

                            

Entity-Relationship Diagrams

                            erDiagram
    Annotation ||--|| hasAggregateRating : Has
    Annotation ||--o| TombstoneMetadata : Has
    TombstoneMetadata ||--o{ RelatedPID : Has
    TombstoneMetadata ||--|{ Agent : Has
    Annotation ||--o{ Agent : Has
    Agent ||--|{ Role : Has
    Agent ||--o{ Identifier : Has
    Annotation ||--|| AnnotationTarget : Has
    Annotation ||--|| AnnotationBody : Has
                        

Built with Mermaid.js