Bibliographic description in emerging library standards is embracing a multi-entity model that describes varying levels of abstraction from the conceptual work to the physical item. Three of these multi-entity models have been published as vocabularies using the Semantic Web standard Resource Description Framework (RDF). In Multi-Entity Models of Resource Description in the Semantic Web: A comparison of FRBR, RDA, and BIBFRAME, the authors test RDF data based on the three vocabularies using Protégé Desktop and TopBraid Composer, common Semantic Web-enabled software. This document provides an overview of the methodology used to test the example RDF data, and makes supporting ontology and data files available for download.
This document includes a discussion of the methodology used to test the annotated examples of RDF data using FRBRer, RDA, and BIBFRAME presented in Multi-Entity Models of Resource Description in the Semantic Web: A Comparison of FRBR, RDA, and BIBFRAME. The purpose of this document is to summarize the methodology and describe the necessary modifications that were made to the vocabularies and instance data used in the study. Each example was tested using the Pellet reasoner in Protégé Desktop 5.0 Beta, then validated using the inferencing engine in Top-Braid Composer. The results of this exercise are then presented and include (1) each inference made from the data, (2) the total number of explanations for each inference, and (3) the total number of justifications as made available in the Protégé explanation workbench. Each example includes a URL that can be easily imported into Protégé or downloaded locally and loaded directly into the software.
This study involved the creation of a series of examples that were developed after analyzing the FRBRer, RDA, and BIBFRAME ontologies. Each example was created to trigger a specific set of inferences when reasoning was applied using Semantic Web-enabled software. Reasoning was first done "by hand" based on vocabulary specifications, and was then confirmed using Standford’s Protégé and TopQuadrant’s TopBraid Composer.
Protege is a popular, open-source knowledge modeling tool and ontology editor. The development platform is currently available in two packages: Protégé Desktop and WebProtégé, a web-based version with support for collaboration. Protégé provides full support for OWL 2 and RDF standards, and is compatible with many common formats such as RDF/XML and Turtle.
The version of Protégé used in this study was Protégé Desktop 5.0 Beta. The desktop version of the software provides reasoning capabilities through the implementation of description logic reasoners with support for OWL 2, including Pellet, HermiT, and FaCT++.
Loading the example data into Protégé Desktop involved first importing the target ontology into the workspace. After the ontology was successfully loaded and tested, the workspace was then saved as a separate OWL ontology file. Instance data for each example was then added manually to this file alongside the owl:imports
statement resulting from the import of the target vocabulary. While BIBFRAME imported successfully over HTTP using this method, FRBRer and RDA presented some difficulties requiring adjustments to local versions of the ontology files. These technical changes are described in the Examples sub-section for each ontology and links to each of these modified versions are provided for reference.
Reasoning was applied to each example using the Pellet reasoner in Protégé. The interface presents these results as "inferred axioms", while displaying the entailments produced as a series of explanations each accompanied by a descriptive set of justifications, or the "minimal set of axioms that [are] sufficient for a given entailment to hold" (Horridge, Parsia, & Sattler, 2008, p. 1). Previous versions of Protégé only flagged inconsistent classes in an ontology by coloring these members red, while updated versions of Protégé have included the helpful “explanation workbench" [Fig. 1]. This tool is accessible via the question-mark icon that appears next to each inference and explains both consistent and inconsistent classes, providing users with additional information necessary for debugging their data (Horridge et al., 2008). When data violates the constraints defined in an ontology, the ontology is considered "inconsistent" by the software.
The inferences made through the application of reasoning to the examples using Protégé were then confirmed using TopBraid Composer Standard Edition (TBC-SE). After creating and testing each example file using the method described above, the file was then loaded into TBC-SE. The software was configured to use the SwiftOWLIM inferencing engine and results were confirmed in the interface’s Inferences tab [Fig. 2].
While both of these software packages represent the usage of Semantic Web development tools to apply reasoning to data, an alternative approach is to use a web-based reasoner. The Web Data Inspector from Sindice is a tool that can be used to validate and apply reasoning to data available on the Web.
The following examples test RDF data using three bibliographic vocabularies: FRBRer, RDA, and BIBFRAME. Anticipated inferences for each example were confirmed using the Pellet reasoner in Protégé, then validated using Top-Braid Composer.
None of the examples test the values of the RDF triples beyond what is defined in the domains and ranges established in the ontologies. Although the data created would approximate real and valid bibliographic data for the purposes of readability, the same tests could be conducted with nonsense values. Additionally, because the actual ranges defined in some cases did not permit what were perceived to be easily-understandable values (e.g. some did not allow text strings for titles) liberties were taken with the display of the values in these examples. Where those adjustments have been made, the change is noted.
The examples are expressed in the Turtle (Terse RDF Triple Language) syntax. Each can be loaded directly into Protégé by either downloading the related .TTL file and opening the file locally, or directly importing the ontology from the listed URL using the Protégé interface.
The representation of FRBR used in the following examples is the FRBRer model, one of the IFLA FRBR Vocabularies. Unfortunately, the version of this ontology available at the official URI at the time of the study was incompatible with Protégé OWL version 4 and 5. OWL 2 does not permit a property to be both transitive and asymmetric, and FRBRer properties with both characteristics had their transitive quality removed in order to successfully load the ontology into the Protégé software and apply reasoning to the examples. The modified version of FRBRer used in the study is available at the following URL: [http://lod-lam.slis.kent.edu/vocabs/frbrer/frbrerDebug.ttl].
ex:ResourceA
frbrer:P2001 ex:ResourceB ; # isRealizedThrough
frbrer:P2009 <http://id.loc.gov/authorities/names/n79021164> ; # isCreatedByPerson
frbrer:P3001 "The adventures of Tom Sawyer" . # hasTitleOfTheWork
ex:ResourceB
frbrer:P2002 ex:ResourceA ; # isRealizationOf
frbrer:P2003 ex:ResourceC ; # isEmbodiedIn
frbrer:P3011 <http://id.loc.gov/vocabulary/iso639-2/eng> . # hasLanguageOfExpression
ex:ResourceC
frbrer:P2004 ex:ResourceB ; # isEmbodimentOf
frbrer:P3020 "The adventures of Tom Sawyer" ; # hasTitleOfTheManifestation
frbrer:P3055 "1996" . # hasDateOfPublicationOrDistribution
Example 1 Results | ||
Inference | Explanations | Justifications |
---|---|---|
ResourceA Type C1001 | 7 | 17 |
ResourceB Type C1002 | 9 | 22 |
ResourceC Type C1003 | 6 | 14 |
n79021164 Type C1005 | 2 | 5 |
24 | 58 |
ex:ResourceB # FRBRer Expression
frbrer:P2002 ex:ResourceA ; # isRealizationOf
frbrer:P2002 ex:ResourceA1 ; # isRealizationOf
frbrer:P3011 <http://id.loc.gov/vocabulary/iso639-2/eng> . # hasLanguageOfExpression
Example 2 Results | ||
Inference | Explanations | Justifications |
---|---|---|
ResourceA Type C1001 | 2 | 5 |
ResourceA1 Type C1001 | 2 | 5 |
ResourceB Type C1002 | 5 | 12 |
9 | 22 |
ex:ResourceA
frbrer:P2001 ex:ResourceB ; # isRealizationOf
frbrer:P2009 <http://id.loc.gov/authorities/names/n79021164> ; # isCreatedByPerson
frbrer:P3020 "The adventures of Tom Sawyer" . # hasTitleOfTheManifestation
Example 3 Results | ||
Inference | Explanations | Justifications |
---|---|---|
P2009 (Inconsistent) | 3 | 11 |
P2001 ResourceB (Inconsistent) | 3 | 11 |
6 | 22 |
The representation of the Resource Description and Access (RDA) cataloging standard used in the following examples is available at the RDA Registry. The examples used element sets for Classes, Work properties, Expression properties, and Manifestation properties. Loading the individual RDA vocabulary files directly from the official URIs prevented reasoning in Protégé. In an attempt to solve this problem, the RDA vocabularies were manually combined into one TTL file. This combined file is available at the following URL: [http://lod-lam.slis.kent.edu/vocabs/rda/rdaDebug.ttl]. Unfortunately, this file too presented issues in regards to reasoning in Protégé and the examples were added directly to the combined RDA vocabulary in order to achieve the desired results. This practice makes the RDA example files rather large (~500Kb). The instance data appears at the very end of each example file.
ex:ResourceA
rdaw:P10078 ex:ResourceB ; # expressionOfWork
rdaw:P10065 <http://id.loc.gov/authorities/names/n79021164> ; # creator
rdaw:P10088 "The adventures of Tom Sawyer" . # titleOfTheWork
ex:ResourceB
rdae:P20231 ex:ResourceA ; # workExpressed
rdae:P20059 ex:ResourceC ; # manifestationOfExpression
rdae:P20006 <http://id.loc.gov/vocabulary/iso639-2/eng> . # languageOfExpression
ex:ResourceC
rdam:P30139 ex:ResourceB ; # expressionManifested
rdam:P30156 "The adventures of Tom Sawyer" ; # titleProper
rdam:P30011 "1996" . # dateOfPublication
Example 4 Results | ||
Inference | Explanations | Justifications |
---|---|---|
ResourceA Type C10001 | 5 | 12 |
ResourceB Type C10006 | 8 | 20 |
ResourceC Type C10007 | 4 | 10 |
n79021164 Type C10002 | 1 | 2 |
18 | 44 |
ex:ResourceA
rdaw:P10065 <http://id.loc.gov/authorities/names/n79021164> ; # creator
rdaw:P10088 "The adventures of Tom Sawyer" ; # titleOfTheWork
rdae:P20006 <http://id.loc.gov/vocabulary/iso639-2/eng> ; # languageOfExpression
rdam:P30156 "The adventures of Tom Sawyer" ; # titleProper
rdam:P30011 "1996" . # dateOfPublication
Example 5 Results | ||
Inference | Explanations | Justifications |
---|---|---|
ResourceA P10065 C10001 | 1 | 2 |
n79021164 Type C10002 | 1 | 2 |
2 | 4 |
The official RDF representation of the BIBFRAME Vocabulary did not require any adjustments to import the file successfully into Protégé or conduct reasoning. However, in the examples that follow, literal values were replaced with URIs meant to represent titles. In an effort to improve the readability of the examples in text, the literal values have been used instead of these URIs. The BIBFRAME vocabulary declares many of the properties tested with a range of bf:Title
causing the OWL API in Protégé to interpret those specific properties as an owl:ObjectProperty
, resulting in the expectation of a non-literal value. Additionally, adding the instance data directly to a local copy of the BIBFRAME ontology yielded the most consistent results in Protege. The results listed for each example are derived using this method.
ex:ResourceA
bf:hasInstance ex:ResourceB ;
bf:creator <http://id.loc.gov/authorities/names/n79021164> ;
bf:title "The adventures of Tom Sawyer" ;
bf:language <http://id.loc.gov/vocabulary/iso639-2/eng> .
ex:ResourceB
bf:instanceOf ex:ResourceA ;
bf:instanceTitle "The adventures of Tom Sawyer" ;
bf:providerDate "1996" .
Example 6 Results | ||
Inference | Explanations | Justifications |
---|---|---|
AdventuresOfTomSawyer Type Resource | 1 | 3 |
AdventuresOfTomSawyer Type Title | 1 | 2 |
ResourceA Type Resource | 5 | 15 |
ResourceA Type Work | 3 | 6 |
ResourceB Type Instance | 3 | 6 |
ResourceB Type Provider | 1 | 2 |
TheAdventuresOfTomSawyer Type Resource | 1 | 3 |
TheAdventuresOfTomSawyer Type Title | 1 | 2 |
n79021164 Type Authority | 1 | 2 |
n79021164 Type Resource | 1 | 3 |
eng Type Language | 1 | 2 |
eng Type Resource | 1 | 3 |
20 | 49 |
ex:ResourceA
bf:language <http://id.loc.gov/authorities/names/n79021164> ;
bf:title "The adventures of Tom Sawyer" ;
bf:language <http://id.loc.gov/vocabulary/iso639-2/eng> ;
bf:instanceTitle "The adventures of Tom Sawyer" ;
bf:providerDate "1996" .
Example 7 Results | ||
Inference | Explanations | Justifications |
---|---|---|
AdventuresOfTomSawyer Type Resource | 1 | 3 |
AdventuresOfTomSawyer Type Title | 1 | 2 |
ResourceA Type Instance | 1 | 2 |
ResourceA Type Provider | 1 | 2 |
ResourceA Type Resource | 3 | 9 |
ResourceA Type Work | 1 | 2 |
TheAdventuresOfTomSawyer Type Resource | 1 | 3 |
TheAdventuresOfTomSawyer Type Title | 1 | 2 |
n79021164 Type Authority | 1 | 2 |
n79021164 Type Resource | 1 | 3 |
eng Type Language | 1 | 2 |
eng Type Resource | 1 | 3 |
14 | 32 |
ex:ResourceA # FRBRer/Work
frbrer:P2001 ex:ResourceB ;
frbrer:P2009 <http://id.loc.gov/authorities/names/n79021164> ;
frbrer:P3001 “The adventures of Tom Sawyer" .
ex:ResourceA owl:sameAs ex:ResourceX .
ex:ResourceB # FRBRer/Expression
frbrer:P2002 ex:ResourceA ;
frbrer:P2003 ex:ResourceC ;
frbrer:P3011 <http://id.loc.gov/vocabulary/iso639-2/eng> .
ex:ResourceB owl:sameAs ex:ResourceX .
ex:ResourceC # FRBRer Manifestation
frbrer:P2004 ex:ResourceB ;
frbrer:P3020 “The adventures of Tom Sawyer" ;
frbrer:P3055 “1996" .
ex:ResourceX # BF/Work
bf:hasAuthority <http://id.loc.gov/authorities/names/n79021164> ;
bf:workTitle “The adventures of Tom Sawyer" ;
bf:language <http://id.loc.gov/vocabulary/iso639-2/eng> .
ex:ResourceY # BF/Instance
bf:instanceOf ex:ResourceX ;
bf:instanceTitle “The adventures of Tom Sawyer" ;
bf:providerDate “1996" .
Horridge, M., Parsia, B., & Sattler, U. (2008). Explanation of OWL Entailments in Protege 4. In International Semantic Web Conference (Posters & Demos) (Vol. 401). Retrieved from http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.142.7929