The SPAR (Semantic Publishing and Referencing) Ontologies are a suite of complementary and orthogonal ontologies written in the latest version of the Web Ontology Language OWL 2 DL, that have been specially created to permit information relating to bibliographic entities to be encoded in RDF. These SPAR ontologies are thus of specific relevance to the academic publishing and library communities, and are described at http://purl.org/spar/ as well as in earlier posts in this Semantic Publishing blog. In addition, FaBiO and CiTO are described in detail in a recent paper in the Journal of Web Semantics .
The original eight ontologies within this growing suite are as follows:
CiTO, the Citation Typing Ontology
CiTO, the Citation Typing Ontology, is an ontology written to enable the existence of bibliographic reference citations to be asserted, and their factual and rhetorical nature or type characterized, both factually and rhetorically, and to permit these descriptions to be published on the Web.
The citations characterized may be direct and explicit (as in the reference list of a journal article), indirect (e.g. a citation to a more recent paper by the same research group on the same topic), or implicit (e.g. as in artistic quotations or parodies, or in cases of plagiarism).
:paperA cito:cites :paperB ; cito:reviews :paperB ; cito:critiques :paperB .
(Note: For an explanation of the Turtle syntax used to encode the examples given in this paper, see the earlier post Libraries and linked data #2: A rough guide to Turtle. Background information on RDF, and its use to encode bibliographic records, are given in two other posts: Libraries and linked data #1: What are linked data? and Libraries and linked data #3: Encoding bibliographic records in RDF.)
The CiTO properties are summarized in the following diagram:
In this diagram, all the CiTO properties shown, except cito:cites and cito:sharesAuthorsWith, are sub-properties of cito:cites itself. The inverse property of cito:cites, namely cito:isCitedBy, and its inverse sub-properties, and the recently added properties cito:compiles, cito:isCompiledBy and cito:likes, are not shown in this diagram.
None of the CiTO properties, which are all object properties, have domain or range restrictions, permitting their use in a variety of other contexts, in addition to conventional bibliographic citations.
BiRO, the Bibliographic Reference Ontology
BiRO is an ontology structured according to the FRBR model (see below) that provides a logical system for describing an individual bibliographic reference, such as appears in the reference list of a published article (which, depending on the house style of the journal in which the citing article appears, may lack the title of the cited article, the full names of the listed authors, or indeed the full list of authors), and the relationship of that reference to the complete bibliographic record for that cited article, which in addition to having the reference fields missing from the reference, may also include the name of the publisher, and the ISSN or ISBN of the publication.
BiRO also permits a description of the compilation of bibliographic references into bibliographic lists such as reference lists, and that the compilation of bibliographic records into bibliographic collections such as library catalogues.
:this-reference a biro:BibliographicReference ; frbr:partOf biro:ReferenceList ; biro:references :that-paper .
The following diagram, expressed using Graffoo, the Graphical Framework For OWL Ontologies created by Silvio Peroni, shows the relationships of the classes in the complete BiRO ontology:
Note the symmetry of the diagram, in which bibliographic references and reference lists in the lower half of the diagram are classified as FRBR Expressions, while bibliographic records and library catalogues in the upper half of the diagram are classified as FRBR Works, and note also that the Collections Ontology (prefix co:) is used to describe ordered lists of references and sets of bibliographic records.
Not shown in the diagram is the fact that both Works and Expressions can have different Manifestations. Thus, for example, a library catalogue can be manifested either as index cards or as an online catalogue.
FaBiO, the FRBR-aligned Bibliographic Ontology
FaBiO is an ontology for recording and publishing on the Semantic Web descriptions of entities that are published or potentially publishable, and that contain or are referred to by bibliographic references, or entities used to define such bibliographic references. FaBiO entities are primarily textual publications such as books, magazines, newspapers and journals, and items of their content such as poems, conference papers and editorials. However, they also include blogs, web pages, datasets, computer algorithms, experimental protocols, formal specifications and vocabularies, legal records, governmental papers, technical and commercial reports and similar publications, and also anthologies, catalogues and similar collections. FaBiO uses terms from the RDF versions of FRBR and PRISM.
:that-article a fabio:JournalArticle ; fabio:hasPublicationYear "2009"^^xsd:gYear ; prism:doi "10.1002/asi.21134" ; frbr:partOf [ a fabio:JournalIssue ; prism:issueIdentifier "9" ; frbr:partOf [ a fabio:JournalVolume ; prism:volume "60" frbr:partOf [ a fabio:Journal ; dcterms:title "Journal of the American Society for Information Science and Technology" ] ] ] .
The use of FRBR in BiRO and FaBiO
The classes in the BiRO and FaBiO ontologies (but not those in other SPAR ontologies) are structured according to the FRBR (Functional Requirements for Bibliographic Records) model that contains FRBR Works, Expressions, Manifestations and Items, collectively referred to as FRBR Endeavours:
- A Work is a distinct intellectual or artistic creation, an abstract concept recognised through its various expressions.
- An Expression is the specific form that a Work takes each time it is ‘realized’ in physical or electronic form.
- A Manifestation is a particular physical or electronic embodiment of an Expression. Typically, the print version of an article, the on-line HTML version of that article, and the downloadable PDF file are three separate Manifestations of the same Expression, all bearing the same DOI. They can be viewed as alternative ‘containers’ or ‘channels’ for the same information.
An Item is one single exemplar copy of a Manifestation, i.e. a physical or electronic copy of a document that can be owned by a person.
Indeed, FaBiO adds new properties to the FRBR model to provide short-cuts linking Works to Manifestations, Works to Items, and Expressions to Items, as shown in the following figure (and their inverse properties, not shown):
In creating FaBiO, we aligned our ontology terms to the FRBR model, deciding that some things (e.g. an Opinion, a Research Paper, a Novel) were Works that could have various forms of Expression, while others (e.g. an Editorial, a Journal Article, a Book) were Expressions, and yet others (e.g. a Reprint) were clearly Manifestations.
Thus, using FaBiO, we can say (adding new RDF triples to the FaBiO example above, which dealt only with Expressions):
:that-article a fabio:JournalArticle ; # An Expression frbr:realizationOf fabio:ResearchPaper ; # A Work frbr:embodiment :printed , :html , :pdf ; # Manifestations frbr:partOf [ a fabio:JournalIssue ; # Another Expression frbr:embodiment :printed-issue ] . # A Manifestation
In other words, using the FRBR structures, the article, which is a FaBiO Expression, is the realization of a conceptual Work, a fabio:ResearchPaper, and is in turn embodied in three different types of Manifestation, in printed, PDF and HTML formats. In addition, the article forms part of a Journal Issue, itself an Expression, and this issue has a printed embodiment in a Manifestation called the printed issue.
The entities :printed-issue, :print, :pdf and :html can then be further defined as follows:
:printed-issue a fabio:Paperback ; dcterms:publisher :wiley-and-sons ; prism:publicationDate "09-2009"^^xsd:gYearMonth ; frbr:part :printed . :printed a fabio:PrintObject ; prism:startingPage "1895" ; prism:endingPage "1906" . :html a fabio:WebPage ; dcterms:publisher :wiley-and-sons ; dcterms:format type:text/html ; prism:publicationDate "21-08-2009"^^xsd:date . :pdf a fabio:DigitalManifestation ; dcterms:publisher :wiley-and-sons ; dcterms:format type:application/pdf ; prism:publicationDate "21-08-2009"^^xsd:date . :wiley-and-sons a foaf:Organization ; foaf:name "John Wiley & Sons, Inc." .
Note how this structure gives the flexibility required to show that the print version of the article has a different publication date from that of the online PDF and HTML versions, and that the page numbers refer only to that print version.
Comparison of FaBiO with BIBO
BIBO, the Bibliographic Ontology, is another OWL ontology that provides terms for describing bibliographic entities. Indeed it was the first OWL ontology specifically designed to address the bibliographic domain, and as such has found wide usage. It has not been modified since 2009.
A comparison of FaBiO and BIBO is given in , and also in an earlier blog post. A mapping of BIBO to SPAR ontology terms, available from https://sempublishing.svn.sourceforge.net/svnroot/sempublishing/SPAR/BIBO2SPAR.ttl, is described in another post.
For convenience of readers of this document, the limitations of BIBO are summarized again here:
BIBO does not use the FRBF data model and so is less expressive than FaBiO. For example, BIBO has the class bibo:AcademicArticle, which is a conflation of the concepts “academic paper” and “journal article”, separately described in FaBiO by the classes fabio:ResearchPaper (a Work) and fabio:JournalArticle (an Expression).
Additionally, for the RDF example used above, BIBO has no means of associating the page numbers specifically with the print manifestation of the article, nor of distinguishing that the August publication date apply specifically to the on-line versions of the article, while the September publication date applies to the print version. All that one can say in BIBO is:
:that-article a bibo:AcademicArticle ; dcterms:hasFormat :html , :pdf , :print ; bibo:pageStart "1895" ; bibo:pageEnd "1906" ; dcterms:issued "09-2009"^^xsd:gYearMonth , "21-08-2009"^^xsd:date .
leaving it undefined as to which manifestation the page numbers relate and to which manifestations the two dates refer.
- BIBO also has many fewer terms. For example, BIBO lacks the concept of “Volume” as a distinct class (the equivalent of fabio:JournalVolume), among other bibliographic classes that have a hierarchical partitive relationship to one another (i.e. Article > Issue > Volume > Journal, as used in the first FaBiO RDF example above. In all, BIBO contains 69 classes, 52 object properties, 54 data properties and 14 individuals, while FaBiO contains 239 classes, 69 object properties, 63 data properties and 15 individuals.
BIBO is an OWL Full ontology, rather than and OWL DL ontology. OWL Full is based on a different semantics from OWL DL, and in particular is undecidable, meaning that no reasoning software is able to perform computational reasoning over OWL Full statements.
If one can live with these restrictions, BIBO is a useful ontology.
C4O, the Citation Counting and Context Characterization Ontology
[Note: The terminology used here, for example “in-text reference pointer”, is explained in a previous blog post.]
C4O allows one to characterize bibliographic citations in terms of their number (both locally and globally), and also their textual context.
First, it provides the ontological structures to permit one to record both the number of in-text citations of a cited paper (i.e. the number of in-text reference pointers to a single reference in the citing article’s reference list), and also the number of citations that the cited paper has received globally, as determined by a bibliographic information resource such as Google Scholar, Scopus or Web of Knowledge on a particular date. For example:
:paperA frbr:part [ a biro:BibliographicReference ; frbr:partOf biro:ReferenceList ; biro:references :paperB ; c4o:hasInTextCitationFrequency "10"^^xsd:nonNegativeInteger ] . :paperB c4o:hasGlobalCitationFrequency [ a c4o:GlobalCitationCount ; c4o:hasGlobalCountValue "309"^^xsd:integer ; c4o:hasGlobalCountDate "2011-09-07"^^xsd:date ; c4o:hasGlobalCountSource <http://scholar.google.com> ] .
The first set of triples states that Paper A contains a reference to Paper B in its reference list, and that it cites Paper B 10 times in its text. The second set states that Paper B had been cited 309 times globally on 7th September 2011, according to Google Scholar.
These aspects of C4O are captured in the following C4O diagram:
Additionally, C4O can be used to define the context of a citation, i.e. the text in which an in-text reference pointer is embedded within the citing paper. It also permits that contextual content to be related to relevant textual passages in the cited document. This can be expressed as follows:
<pre>:this-reference c4o:hasContext [ a doco:TextChunk ; frbr:partOf :PaperA ; c4o:hasContent "XXXX " ; # Some text containing the citation c4o:isRelevantTo [a doco:TextChunk ; frbr:partOf :PaperB ; c4o:hasContent "YYYY" ] ] . # Some text within the cited paper
These aspects of C4O are expressed in this second Graffoo diagram:
Clearly, if it can be shown that there is text in the cited paper that is relevant to text in the citing paper, the validity of the author’s original citation is enhanced. A Web tool for exposing this sort of relationship has been developed by Stephen Wan and his colleagues [2, 3].
DoCO, the Document Components Ontology
DoCO provides a structured vocabulary for describing document components, both structural (e.g. block, chapter, heading, inline, paragraph, section, text chunk) and rhetorical (e.g. Abstract, Introduction, Results, Discussion, Conclusions, Acknowledgements, Bibliography, Figure, Appendix), enabling these components, and documents composed of them, to be described in RDF. For example:
:MyArticle dcterms:hasPart [ doco:FigureBox ; dcterms:hasPart a doco:FigureCaption ; dcterms:hasPart [ a doco:Figure ; dcterms:title "Figure 3" ] .
(Note that since DoCO does not use the FRBR model, one can here use dcterms:hasPart instead of frbr:part, which is used specifically to refer to part of a FRBR Endeavour.)
The following figure summarizes the principal structural and rhetorical document components served by DoCO:
Note that DoCO imports the Discourse Elements Ontology and the Document Structural Patterns Ontology, and uses eight rhetorical block elements (Abstract, Background, Conclusion, Contribution, Discussion, Evaluation, Motivation and Scenario) from the SALT Rhetorical Ontology.
PRO, the Publishing Roles Ontology
PRO is an ontology for the characterization of the roles of agents in the publication process (i.e. people, groups or organizations; e.g. author, editor, librarian, review panel, publisher), and for specifying the times during which those roles are held, and the contexts in which those roles are relevant.
Because RDF statements are triples, they are by design limited in their expressivity. In particular, it is difficult to attach contexts and time limits to bald RDF statements. To circumvent this problem, we employ a standard ontology design pattern called the Time-indexed Value in Context Pattern (TVC) .
This design pattern, which involves one level of indirection between the object and the location, via the class tvc:ValueInTime, has the advantages both of enabling contextual information to be easily recorded, and also of permitting any temporal constraints accompanying such relationships to be specified.
It is quite common in the publishing world for people to have different roles in the context of different publications. For example, someone may be editor of a scholarly journal during a particular period, and hence of the articles within it, while at the same time being author of an article published in another journal from the time that article was written and for all future time.
To permit accurate description of such situations, we employ the TVC design pattern within PRO, which imports TVC . This allows the role of a person to be defined within the context of a particular publication (for example, to which journal the role of Editor in Chief relates), and when necessary within what time period. This is made possible by invoking one level of indirection between the person and that person’s role via the class pro:RoleInTime, a sub-class of tvc:ValueInTime, as shown in the following figure:
Thus the range of pro:withRole is the class pro:Role, and the different publishing roles one might wish to describe are defined as individual members of the class pro:PublishingRole, a sub-class of pro:Role. This has the advantage that it is easy to add new publishing roles, simply by adding a new member to the class, without changing the ontology or its data model.
The domain of pro:withRole is not foaf:Agent, but rather an anonymous member of the class pro:RoleInTime, which itself is the range of the property pro:holdsRoleInTime, for which the domain is foaf:Agent.
An example of using PRO in this way is given below. A particular individual was the Editor in Chief of PNAS (Proceedings of the National Academy of Sciences, USA) from 2006 until late 2011, and since 7th November 2011 has held the new post as Editor in Chief of the new journal eLife. This can be encoded as follows:
:personA pro:holdsRoleInTime [ a pro:RoleInTime ; pro:withRole pro:EditorInChief ; pro:relatesToDocument [ a fabio:Journal ; dcterms:title "PNAS" ; dc:publisher "AAAS" ; tvc:atTime [ a ti:timeInterval ; ti:hasIntervalStartDate "2006"^^xsd:gYear ; ti:hasIntervalEndDate "2011-10"^^ xsd:gYearMonth ] ] ; pro:holdsRoleInTime [ a pro:RoleInTime ; pro:withRole pro:EditorInChief ; pro:relatesToDocument [ a fabio:Journal ; dcterms:title "eLife" ; dc:publisher "Wellcome Trust" ; tvc:atTime [ a ti:timeInterval ; ti:hasIntervalStartDate "2011-11-07"^^xsd:date ] ] .
From this, one could infer that, for a brief period at the beginning of November 2011, this person was Editor in Chief of neither journal.
PSO, the Publishing Status Ontology
PSO is an ontology for characterizing the publication status of a document or other publication entity at each of the various stages in the publishing process (e.g. draft, submitted, under review, rejected, accepted for publication, proof, published, Version of Record, catalogued, archived). It can also be used for specifying the times during which those statuses are held, events that trigger a transition from one status to the next, and the people involved in those events.
For this, we again employ the TVC design pattern, and also the Participation Design Pattern (PDP) for describing events, both of which are imported into PSO . This allows the status of a document to be defined within a context of events and the agents that participate in those events, and when necessary within a particular time period. This is made possible by invoking one level of indirection between the document and that document’s status via the class pso:holdsStatusInTime, as shown in the following figure:
The different publishing statuses one may wish to describe are defined as individual members of the class pso:PublishingStatus, a sub-class of pso:Status. Thus, using PSO, we can define, for example, the various statuses enjoyed by a conference paper at different times during the submission process:
:my-paper pso:holdsStatusInTime :submitted , :under-review, :accepted . :submitted a pso:StatusInTime ; pso:withStatus pso:submitted ; tvc:atTime [ a ti:TimeInterval ; ti:hasIntervalStartDate "2012-04-24T13:18:21Z"^^xsd:dateTime ]; pso:isAcquiredAsConsequenceOf :author-submits-paper ] . :under-review a pso:StatusInTime ; pso:withStatus pso:under-review ; tvc:atTime [ a ti:TimeInterval ; ti:hasIntervalStartDate "2012-04-26T12:00:00Z"^^xsd:dateTime ; ti:hasIntervalEndDate "2012-05-27T17:38:01Z"^^xsd:dateTime ] ; pso:isAcquiredAsConsequenceOf :reviewers-sent-paper ; pso:isLostAsConsequenceOf :reviewers-finish-reviewing . :accepted a pso:StatusInTime ; pso:withStatus pso:accepted ; tvc:atTime [ a ti:TimeInterval ; ti:hasIntervalStartDate "2012-05-28T10:22:31Z"^^xsd:dateTime ] ; pso:isAcquiredAsConsequenceOf :paper-accepted ] . :author-submits-paper a part:Event ; dcterms:description "The paper was submitted through the online conference submission system." ; part:hasParticipant :ds . :reviewers-sent-paper a part:Event ; dcterms:description "Paper sent to reviewers." ; part:hasParticipant :editor , :reviewer1 , :reviewer2 . :reviewers-finish-reviewing a part:Event ; dcterms:description "Reviews completed and returned" ; part:hasParticipant :reviewer1 , :reviewer2 . :paper-accepted a part:Event ; dcterms:description "Paper accepted." ; part:hasParticipant :editor . :ds a foaf:Person ; foaf:name "David Shotton" ; pro:holdsRoleInTime [ a pro:RoleInTime ; pro:withRole pro:author ; pro:relatesToDocument :my-paper ] . :editor a foaf:Person ; pro:holdsRoleInTime [ a pro:RoleInTime ; pro:withRole pro:editor ; pro:relatesToDocument :my-paper ] . :reviewer1 a foaf:Person ; pro:holdsRoleInTime [ a pro:RoleInTime ; pro:withRole pro:reviewer ; pro:relatesToDocument :my-paper ] . :reviewer2 a foaf:Person ; pro:holdsRoleInTime [ a pro:RoleInTime ; pro:withRole pro:reviewer ; pro:relatesToDocument :my-paper ] .
Again, as for roles in PRO, new statuses can be added as individual members of the class pso:Status, without changing the ontology or its data model.
PWO, the Publishing Workflow Ontology
PWO is a further simple ontology, similar to PSO, for characterizing the main stages in the workflow associated with the publication of a document (e.g. being written, under review, XML capture, page design, publication to the Web), and for specifying the input and output and the timings and events associated with each step. It is designed specifically to describe workflows that have happened, rather than to provide decision trees for future workflows.
To permit this, we again use PDP for describing events, as in PSO, and we also import into PWO the temporal component of the TVC design pattern used within PRO and PSO, namely the Time Indexed Situation Pattern (TISIT).
The components of PWO are as shown in the following Graffoo diagram:
PWO allows the steps in the workflow of a publication process to be described, as shown in the following example, which is the same example as used above for PSO, namely the submission of a conference paper, to which it makes reference:
:workflow a pwo:Workflow ; pwo:hasFirstStep :stepOne ; pwo:hasStep :stepTwo , :stepThree , :stepFour . :stepOne a pwo:Step ; # Author writes paper pwo:involvesEvent [ a part:Event ; dcterms:description "Author writes the paper" ; part:hasParticipant :author ] ; tisit:atTime [ a ti:TimeInterval ; ti:hasIntervalStartDate "2009-02-14T00:00:00Z"^^xsd:dateTime ; ti:hasIntervalEndDate "2009-03-25T00:00:00Z"^^xsd:dateTime ] ; pwo:produces :my-paper ; pwo:hasNextStep :stepTwo . :stepTwo a pwo:Step ; # Author submits paper pwo:needs :my-paper; pwo:involvesEvent [ a part:Event ; dcterms:description "Author submits the paper" ; part:hasParticipant :author ] ; tisit:atTime [ a ti:TimeInterval ; ti:hasIntervalStartDate "2009-04-24T13:18:21Z"^^xsd:dateTime ; ti:hasIntervalEndDate "2009-04-24T13:18:21Z"^^xsd:dateTime ] ; pwo:produces :submitted ; # New status-in-time for :my-paper pwo:hasNextStep :stepThree . :stepThree a pwo:Step ; # Paper under review pwo:needs :my-paper ; pwo:involvesEvent [ a part:Event ; dcterms:description "Reviewers review the paper" ; part:hasParticipant :reviewer1, :reviewer2 ] ; tisit:atTime [ a ti:TimeInterval ; ti:hasIntervalStartDate "2009-04-26T12:00:00Z"^^xsd:dateTime ; ti:hasIntervalEndDate "2009-05-26T12:00:00Z"^^xsd:dateTime ] ; pwo:produces :review1 , :review2; pwo:hasNextStep :stepFour . :stepFour a pwo:Step ; # Notification of acceptance pwo:needs :review1 , :review2; pwo:involvesEvent [ a part:Event ; dcterms:description "Editor sends acceptance notification" ; part:hasParticipant :editor ] ; tisit:atTime [ a ti:TimeInterval ; ti:hasIntervalStartDate "2009-04-26T12:00:00Z"^^xsd:dateTime ; ti:hasIntervalEndDate "2009-05-27T17:38:01Z"^^xsd:dateTime ] ; pwo:produces :accepted , :acceptance-notification . # New status-in-time for the paper, and a new document :my-paper a fabio:ConferencePaper . :review1 a fabio:Manuscript ; frbr:realizationOf [ a fabio:Review ] ; cito:reviews :my-paper ; pro:isDocumentContextFor [ a pro:RoleInTime ; pro:withRole pro:author ; pro:isRoleHeldBy :reviewer1 ] . :review2 a fabio:Manuscript ; frbr:realizationOf [ a fabio:Review ] ; cito:reviews :my-paper ; pro:isDocumentContextFor [ a pro:RoleInTime ; pro:withRole pro:author ; pro:isRoleHeldBy :reviewer2 ] . :acceptance-notification a fabio:Email ; cito:cites :my-paper ; pro:isDocumentContextFor [ a pro:RoleInTime ; pro:withRole pro:author ; pro:isRoleHeldBy :editor ] . :author a foaf:Person ; pro:holdsRoleInTime [ a pro:RoleInTime ; pro:withRole pro:author ; pro:relatesToDocument :my-paper ] . :editor a foaf:Person ; pro:holdsRoleInTime [ a pro:RoleInTime ; pro:withRole pro:editor ; pro:relatesToDocument :my-paper ] ; pro:holdsRoleInTime [ a pro:RoleInTime ; pro:withRole pro:author ; pro:relatesToDocument :acceptance-notification ] . :reviewer1 a foaf:Person ; pro:holdsRoleInTime [ a pro:RoleInTime ; pro:withRole pro:reviewer ; pro:relatesToDocument :review1 ] . :reviewer2 a foaf:Person ; pro:holdsRoleInTime [ a pro:RoleInTime ; pro:withRole pro:reviewer ; pro:relatesToDocument :review2 ] . :submitted a pso:PublicationStatus ; pso:isStatusIn [ a pso:StatusInTime ; pso:isStatusHeldBy :my-paper ] ; tisit:atTime [ a ti:TimeInterval ; ti:hasIntervalStartDate "2009-04-24T13:18:21Z"^^xsd:dateTime ; ti:hasIntervalEndDate "2009-05-27T17:38:01Z"^^xsd:dateTime ] . :accepted a pso:PublicationStatus ; pso:isStatusIn [ a pso:StatusInTime ; pso:isStatusHeldBy :my-paper ] ; tisit:atTime [ a ti:TimeInterval ; ti:hasIntervalStartDate "2009-05-27T17:38:01Z"^^xsd:dateTime ] .
Are the SPAR Ontologies too complex?
These last three RDF examples, for PRO, PSO and PWO, show the richness of detail that can be expressed using the SPAR Ontologies. Clearly these RDF examples would be tedious to write manually. The creation of such complex metadata for large document collections should be undertaken by ‘smart’ applications with user-friendly interfaces that hide the complexity of the formalism/vocabularies used.
Clearly, if one wishes to publish just a few simple metadata statements about a document, there are simpler vocabularies such as Dublin Core and BIBO that one could use as alternatives to the SPAR ontologies. But none of these are as expressive, as explained in . For example, none permits designation of author or editor roles in the context of specific documents, organizations and time spans, as exemplified above. So, if one needs to publish as linked data a mass of bibliographic data with different kinds of complex relations among them, SPAR can be a good choice.
To the eight original SPAR ontologies described above, we have now added SCORO, the Scholarly Contributors and Roles Ontology (which imports PRO) and the DataCite Ontology. Complementary to SCORO is the FRAPO (Funding, Research Administration and Projects) Ontology. Descriptions of those ontologies is outside the scope of this document and will be given in subsequent posts.
 Peroni S and Shotton D (2012). FaBiO and CiTO: ontologies for describing bibliographic resources and citations. J. Web Semantics: Science, Services and Agents on the World Wide Web. Available online 13 August 2012. doi:10.1016/j.websem.2012.08.001.
 Peroni S, Shotton D and Vitali F (2012). Describing roles and statuses and their temporal extents: a general pattern with applications in scholarly publishing. In Proceedings of the 8th International Conference on Semantic Systems (i-Semantics 2012): pages 9-16. http://dx.doi.org/10.1145/2362499.2362502.