<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Generating Semantic Web Services from Declarative Descriptions</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Mohammad</forename><forename type="middle">Sadnan</forename><surname>Al Manir</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">Department of Computer Science and Applied Statistics</orgName>
								<orgName type="institution">University of New Brunswick Saint John</orgName>
								<address>
									<country key="CA">Canada</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Christopher</forename><forename type="middle">J O</forename><surname>Baker</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">Department of Computer Science and Applied Statistics</orgName>
								<orgName type="institution">University of New Brunswick Saint John</orgName>
								<address>
									<country key="CA">Canada</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Alexandre</forename><surname>Riazanov</surname></persName>
							<affiliation key="aff1">
								<orgName type="institution">IPSNP Computing Inc</orgName>
								<address>
									<country key="CA">Canada</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Harold</forename><surname>Boley</surname></persName>
							<affiliation key="aff2">
								<orgName type="department">Faculty of Computer Science</orgName>
								<orgName type="institution">University of New Brunswick</orgName>
								<address>
									<settlement>Fredericton</settlement>
									<country>Canada harold</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Generating Semantic Web Services from Declarative Descriptions</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">28E8022661552DF0C5D7FED17676CD3C</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T18:25+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Semantic Web services are an effective middleware for semantic querying of relational databases. Despite the benefits of this approach, writing Web service code manually is labor-intensive and error-prone. To ameliorate this, we propose a framework to generate SADI web services from declarative service descriptions in which access to databases is achieved through semantic mappings. These mappings are scripted in the Datalog sublanguage of Positional-Slotted Object-Applicative (PSOA) RuleML. We outline a novel methodology, a system architecture, and an early stage implementation for service generation. We demonstrate the utility of this approach in a use case for querying patient data from a hospital data warehouse.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>I. INTRODUCTION</head><p>Semantic Querying (SQ) is based on the automatic application of domain knowledge formalized as ontologies and rules, which semantically capture the underlying database design. An explicit semantic correspondence between the database schema and relevant domain ontologies is established by rules. Each domain ontology constitutes a highlevel model in the form of logical axioms using RDF(S) 1,2  and OWL 3 , which allows domain experts to pose queries in a semantic context that they are familiar with.</p><p>Existing SQ systems such as D2RQ <ref type="bibr" target="#b0">[1]</ref>, MASTRO <ref type="bibr" target="#b1">[2]</ref>, Incremental Query Rewriting (IQR) <ref type="bibr" target="#b2">[3]</ref> typically allow database programmers to define mappings between relational schemas and domain knowledge bases, in the form of logical axioms or similar declarative constructs. These systems then translate the domain-based queries into SQL queries that can be directly executed on the data.</p><p>In recent work, HAIKU <ref type="bibr" target="#b3">[4]</ref>, <ref type="bibr" target="#b4">[5]</ref> considers a different approach based on the deployment of Semantic Web Services on top of relational databases. This approach relies on suitable mappings written by the database programmers, allowing SADI <ref type="bibr" target="#b5">[6]</ref> framework-based Semantic Web services to extract Hospital-Acquired Infections (HAI) data from The Ottawa Hospital (TOH) Data Warehouse (DW) <ref type="bibr" target="#b6">[7]</ref>. One limitation of this approach is that service creation becomes labor-intensive and can be error-prone, because 1 http://www.w3.org/TR/rdf-concepts/ 2 http://www.w3.org/TR/rdf-schema/ 3 http://www.w3.org/TR/owl-overview/ it requires writing code for the service. This motivated us to investigate if code generation could be automated from declarative service descriptions, specifically by incorporating the necessary input and output parameters in appropriate places of generic Web service code-blocks.</p><p>In this paper, an architecture based on SQ is presented and its implementation is outlined with the goal of generating SADI Semantic Web service code automatically from their declarative input and output descriptions. The architecture enables access to relational data via the expressive rule language PSOA RuleML <ref type="bibr" target="#b7">[8]</ref>. The automation facilitates Web service generation without human intervention and users are able to run queries over the generated services with the help of SADI query clients like Hydra and SHARE (see, e.g., <ref type="bibr" target="#b4">[5]</ref>).</p><p>The methodology and architecture are novel: we are not aware of another system that allows the creation of Semantic Web services on top of relational data by leveraging an expressive rule language for semantic mapping and a firstorder logic reasoner for query rewriting.</p><p>The paper is organized as follows: we start with a brief description of SADI in Section II. A use case for service generation is shown in Section III and the work flow of our architecture is described in Section IV. Finally, in Section V some of the implementation challenges and an evaluation of the methodology are briefly discussed.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>II. PRELIMINARIES</head><p>A. Basic SADI Ideas SADI <ref type="bibr" target="#b5">[6]</ref> is a framework which utilizes Semantic Web standards and allows integration and interoperability among resources on the Web. SADI uses RDF[S], OWL for data representation and modeling, and HTTP-based recommendations (GET, POST) for interacting with the services.</p><p>The main distinguishing features of SADI services is that (1) they only exchange RDF, so "they speak the same language" (2) they can be automatically discovered and (3) orchestrated with the help of query clients like Hydra and SHARE (see, e.g., <ref type="bibr" target="#b4">[5]</ref>).</p><p>III. EARLY-STAGE IMPLEMENTATION To show the advantages of our architecture, we walk through the generation of a simple SADI service that can query a database and retrieve results.</p><p>Our early-stage experiment comprises of a database schema, a corresponding domain ontology, service I/O descriptions modeled according to the ontology, and an SQL template generated from inputs to the reasoner.</p><p>A schema named PatientDiseaseDB is shown in Fig. <ref type="figure" target="#fig_0">1</ref>. A relevant ontology describing the same domain is presented next. Here we describe a simple SADI service getPatientNameByDiseaseName which, upon receiving the name of a disease as input, provides the corresponding patients' names.</p><p>The input class is defined by a disease name with the name data property attached to Disease class which is expressed in Protégé syntax as Disease and name some string. The output class is defined by the patient names with the name property attached to the class Patient, which is attached to the Disease class by the isDiseaseOf property and is expressed as isDiseaseOf some (Patient and name some string).</p><p>Fig. <ref type="figure" target="#fig_1">2</ref> depicts the modeling of both the input and the output classes. The root node for both the classes is Disease. The solid arrows are labeled by the object property isDiseaseOf and by the single string-type data property name. Although the inverse property hasDisease is defined in the ontology, it is not part of the declarative descriptions, and denoted only by a dotted arrow.</p><p>Our reasoner, VampirePrime<ref type="foot" target="#foot_0">4</ref> uses TPTP <ref type="bibr" target="#b8">[9]</ref> as its primary input syntax. Hence, a translation is necessary to transform any non-TPTP syntax for generating SQL. This is accomplished by incorporating three translators into the architecture. The semantic mappings expressed in PSOA in Section IV-B can be translated into TPTP by using opensource tools such as the PSOA RuleML API <ref type="bibr" target="#b9">[10]</ref> and PSOA2TPTP <ref type="bibr" target="#b10">[11]</ref> (part of PSOATransRun<ref type="foot" target="#foot_1">5</ref> ). The declarative input and output descriptions and the ontology are translated by the OWL API <ref type="bibr" target="#b11">[12]</ref>.</p><p>For example, the input and output declarative descriptions are translated by the OWL API-based translator into a single TPTP rule below ('--' labels conditions while '++' labels the conclusion, X, N, D are variables):</p><p>--p_Patient(X),--p_name(X, N),--p_isDiseaseOf(D, X) , --p_Disease(D), --p_name(D, "?"), ++answer(N)</p><p>The tuple N in the unary predicate answer denotes the patient tuple X's names who have the disease tuple D with a name "?", which is like a formal parameter and its actual values come from actual service inputs in run time. This rule is created by merging the input and output class based on the SADI principle that both the input and output class have a common root node.</p><p>VampirePrime generates the following SQL query template from the semantic mapping, ontology and the TPTP rule. Although in this specific case no reasoning is necessary, potentially VampirePrime can do very complex reasoning to rewrite queries. The template query contains the WHERE clause with the condition disease.name = "?", where the symbol '?' is extracted from the TPTP predicate p_name(D, "?") above. Due to space constraints, we refrain from documenting the complete Java code for the SADI Web service.</p><p>One of the most important tasks of our system is to extract the inputs from an RDF input instance and to place them precisely where they are needed. Once invoked, the Web service determines the string-type input value Arthritis, extracts it from the RDF input and replaces '?' with Arthritis in the WHERE clause, making the instantiated SQL query executable over the database: After the call and execution, the service returns the output RDF file containing a list of patient names John Doe, Bob, Alice etc. having Arthritis, each extracted from the tables in Fig. <ref type="figure" target="#fig_0">1</ref>.</p><p>The following figure shows a graphical representation of the above RDF input and output instances: </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>IV. ARCHITECTURE</head><p>The Web service generation process is best described by the main components (modules) of the architecture shown in Fig. <ref type="figure" target="#fig_6">4</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Module for Declarative Descriptions of the Service</head><p>Declarative service descriptions are composed of the properties along with the class names and various logical connectives from the ontology(ies) as shown by the input and output classes in Section II using Protégé syntax.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Module for Semantic Mapping of Databases in PSOA</head><p>This module provides mappings between ontologies and databases using the Datalog sublanguage of the expressive Web rule language PSOA RuleML. The SQL queries and pseudo-RDF indicate how relational data is mapped.</p><p>The PSOA rule below embodies the semantic mapping of HAI-related data from TOH DW. Lines 12-18 essentially represent the SQL query while lines 1-9 and 19-23 capture the meaning of the pseudo-RDF. The relations among SQL queries and pseudo-RDF with these rules are exemplified in <ref type="bibr" target="#b3">[4]</ref>, <ref type="bibr" target="#b4">[5]</ref> in detail. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>C. SQL Query Template Generation Module</head><p>The generation of SQL queries requires declarative service descriptions, semantic mapping of the database, and ontology (semantic schema) as the inputs. Our architecture will be using the IQR technique because it facilitates such SQL generation. The IQR technique takes the inputs and generates a (possibly infinite) number of SQL queries. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>D. Service Generator Module</head><p>The service generator module generates Java code for the Web service. The service code consists of three parts: reading input RDF, business logic and writing RDF output. The code for reading input and writing output are generated based on the input and output class definitions, respectively. The service code when executed, reads input RDF and places all input values in appropriate places of the generated code as well as in the generated SQL template. Finally, the data drawn from the database is presented as RDF output according to the modeling of the output class. Thus, the module ensures automatic generation of a fully functional Web service code with no human intervention.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>V. DISCUSSION, ONGOING WORK AND EVALUATION</head><p>The open-source D2RQ platform uses a declarative language and employs a tool called D2R server, which uses a customizable D2RQ mapping to map database contents into RDF and allows users to issue SPARQL queries which are rewritten into SQL queries via the mapping. MASTRO is an ontology-based data integration tool. The mapping language in MASTRO allows for expressing Global-As-View mappings, answers unions of conjunctive queries, and it provides a sound and complete query answering algorithm for a rather restricted logic fragment. For our work, we plan to adopt the IQR technique which is based on a sound and complete algorithm that works with a full firstorder logic, but without a general termination guarantee and rewrites TPTP queries into SQL queries. Results from initial experiments show that simple SQL queries can be generated without problem. We plan to address complex query generation, case-by-case, in future.</p><p>Unlike D2RQ which exposes the database as a virtual RDF graph, in our approach, semantic mappings are written to map the existing ontology and the relational database. Any changes occurring in the database schema must be reflected in the mappings and such modifications are to be written by the database programmers. The mappings allow decoupling of applications from the database design. Should there be changes in design, the applications need not be changed provided that suitable mappings can be written for the new design. A detailed description of the semantic mappings is beyond the scope of this paper, we plan to address this issue in future.</p><p>For generating SQL queries by the VampirePrime engine, three inputs are required: semantic mappings, the ontology and the declarative descriptions. As VampirePrime can process only TPTP syntax, three translators are necessary for processing these inputs. We plan to reuse and modify existing tools such as the OWL API, the PSOA RuleML API, and PSOA2TPTP for the translation tasks.</p><p>In general, relational data are URI-free while any entity in a Web ontology is identified by a URI. Hence, efficient handling of URIs is important. As formulas in a Web rule language, PSOA rules can easily use entities with or without URI. We plan to use URI constructing functions for URI handling.</p><p>A list of HAI use cases has been identified in <ref type="bibr" target="#b4">[5]</ref>. A thorough evaluation of our system can be performed by generating HAIKU SADI services that leverage these use cases and run on HAI data stored in the TOH DW.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 .</head><label>1</label><figDesc>Figure 1. Database of patients and their diagnosed diseases</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Figure 2 .</head><label>2</label><figDesc>Figure 2. A Simple SADI Service getPatientNameByDiseaseName</figDesc><graphic coords="2,54.00,567.55,251.99,108.21" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head></head><label></label><figDesc>SELECT patient.name AS patName FROM patient, disease, patientdiagnosis WHERE disease.name = "?" AND patient.id = patientdiagnosis.patient_id AND disease.code = patientdiagnosis.code</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head></head><label></label><figDesc>SELECT patient.name AS patName FROM patient, disease, patientdiagnosis WHERE disease.name = "Arthritis" AND patient.id = patientdiagnosis.patient_id AND disease.code = patientdiagnosis.code</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>Figure 3 .</head><label>3</label><figDesc>Figure 3. Service Input and Output Instances</figDesc><graphic coords="3,54.00,269.00,251.99,136.14" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_5"><head></head><label></label><figDesc>(dwa:encWID-&gt;?encounterID 14 dwa:encPatWID-&gt;?patientID) 15 ?diagnosisRow # 16 dwt:NhrDiagnosis(dwa:hdgWID-&gt;?diagnosisID 17 dwa:hdgHraEncWID-&gt;?encounterID 18 dwa:hdgCd-&gt;?diseaseCode) 19 ?patient = External(modf:Patient_by_patWID(?patientID)) 20 ?diagnosis = External(modf:Diagnosis_by_hdgWID(?diagnosisID)) 21 ?diseaseClass 22 = External(modf:disease_class_by_ICD10(?diseaseCode)) 23 ?disease = External(modf:Disease_by_diagnosis(?diagnosisID)) 24 )</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_6"><head>Figure 4 .</head><label>4</label><figDesc>Figure 4. Architecture</figDesc><graphic coords="3,320.58,450.50,231.84,247.42" type="bitmap" /></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="4" xml:id="foot_0">http://riazanov.webs.com/software.htm, last accessed on June 14, 2013</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="5" xml:id="foot_1">http://wiki.ruleml.org/index.php/PSOA RuleML</note>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<title level="m" type="main">D2RQ -Treating Non-RDF Databases as Virtual RDF Graphs</title>
		<author>
			<persName><forename type="first">C</forename><surname>Bizer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Seaborne</surname></persName>
		</author>
		<imprint/>
	</monogr>
	<note>ISWC2004 (posters</note>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">MASTRO-I: Efficient Integration of Relational Data through DL Ontologies</title>
		<author>
			<persName><forename type="first">D</forename><surname>Calvanese</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><forename type="middle">D</forename><surname>Giacomo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Lenzerini</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Lembo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Poggi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Rosati</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Description Logics</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Incremental Query Rewriting with Resolution</title>
		<author>
			<persName><forename type="first">A</forename><surname>Riazanov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">A T</forename><surname>Arago</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Canadian Semantic Web II</title>
				<imprint>
			<publisher>Springer US</publisher>
			<date type="published" when="2010">2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Towards clinical intelligence with SADI semantic web services: a case study with hospital-acquired infections data</title>
		<author>
			<persName><forename type="first">A</forename><surname>Riazanov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><forename type="middle">W</forename><surname>Rose</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Klein</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">J</forename><surname>Forster</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><forename type="middle">J</forename><surname>Baker</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Shaban-Nejad</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">L</forename><surname>Buckeridge</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 4th International Workshop on Semantic Web Applications and Tools for the Life Sciences, ser. SWAT4LS &apos;11</title>
				<meeting>the 4th International Workshop on Semantic Web Applications and Tools for the Life Sciences, ser. SWAT4LS &apos;11</meeting>
		<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Semantic querying of relational data for clinical intelligence: a semantic web services-based approach</title>
		<author>
			<persName><forename type="first">A</forename><surname>Riazanov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Klein</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Shaban-Nejad</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><forename type="middle">W</forename><surname>Rose</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">J</forename><surname>Forster</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">L</forename><surname>Buckeridge</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><forename type="middle">J O</forename><surname>Baker</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">J. Biomedical Semantics</title>
		<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">The Semantic Automated Discovery and Integration (SADI) Web service Design-Pattern, API and Reference Implementation</title>
		<author>
			<persName><forename type="first">M</forename><surname>Wilkinson</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Vandervalk</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Mccarthy</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Journal of Biomedical Semantics</title>
		<imprint>
			<biblScope unit="volume">2</biblScope>
			<biblScope unit="issue">1</biblScope>
			<date type="published" when="2011">2011</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Use of an electronic data warehouse to enhance cardiac surgical site surveillance at a large canadian centre</title>
		<author>
			<persName><forename type="first">G</forename><surname>Rose</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Roth</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Suh</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Taljaard</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Van Walraven</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Forster</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Clin Invest Med</title>
		<imprint>
			<biblScope unit="volume">31</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page">S21</biblScope>
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">A RIF-style semantics for RuleML-Integrated Positional-Slotted, Object-Applicative Rules</title>
		<author>
			<persName><forename type="first">H</forename><surname>Boley</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 5th international conference on Rule-based reasoning, programming, and applications, in RuleML</title>
				<meeting>the 5th international conference on Rule-based reasoning, programming, and applications, in RuleML</meeting>
		<imprint>
			<date type="published" when="2011">2011</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">The TPTP Problem Library and Associated Infrastructure: The FOF and CNF Parts, v3.5.0</title>
		<author>
			<persName><forename type="first">G</forename><surname>Sutcliffe</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Journal of Automated Reasoning</title>
		<imprint>
			<biblScope unit="volume">43</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page" from="337" to="362" />
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">PSOA RuleML API: A Tool for Processing Abstract and Concrete Syntaxes</title>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">S A</forename><surname>Manir</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Riazanov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Boley</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><forename type="middle">J O</forename><surname>Baker</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">RuleML&apos;</title>
				<imprint>
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">PSOA2TPTP: A Reference Translator for Interoperating PSOA RuleML with TPTP Reasoners</title>
		<author>
			<persName><forename type="first">G</forename><surname>Zou</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Peter-Paul</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Boley</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Riazanov</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">RuleML&apos;</title>
				<imprint>
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">The OWL API: A Java API for OWL ontologies</title>
		<author>
			<persName><forename type="first">M</forename><surname>Horridge</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Bechhofer</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Semantic Web</title>
		<imprint>
			<biblScope unit="volume">2</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="11" to="21" />
			<date type="published" when="2011">2011</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
