Comparison of Semantic Web serialization syntaxes

Similar documents
Short notes about OWL 1

Publishing OWL ontologies with Presto

FHIR RDF Sample side by side comparisons

Knowledge Representation RDF Turtle Namespace

Appendix B: The LCA ontology (lca.owl)

Tony Mallia Edmond Scientific

Why Ontologies? RRDIU - Semantic Web 2

Table of Contents. iii

SADI Semantic Web Services

Reasoning with Rules SWRL as Example. Jan Pettersen Nytun, UIA

Ontological Modeling: Part 15

RDF /RDF-S Providing Framework Support to OWL Ontologies

Knowledge Representation. Apache Jena Part II. Jan Pettersen Nytun, UiA

OWL 2 Web Ontology Language Primer W3C Recommendation 27 October 2009

An RDF-based Distributed Expert System

Chapter 2 AN INTRODUCTION TO THE OWL WEB ONTOLOGY LANGUAGE 1. INTRODUCTION. Jeff Heflin Lehigh University

Web Ontology Language: OWL

Modeling LMF compliant lexica in OWL-DL

Semantic Technologies

OWL 2 Web Ontology Language Primer

KDI OWL. Fausto Giunchiglia and Mattia Fumagallli. University of Trento

Ontological Modeling: Part 7

FOUNDATIONS OF SEMANTIC WEB TECHNOLOGIES

The Semantic Web RDF, RDF Schema, and OWL (Part 2)

Web Ontology Language (OWL)

Knowledge Representation VII - IKT507. SPARQL stands for SPARQL Protocol And RDF Query Language

DEVELOPING AN OWL ONTOLOGY FOR E- TOURISM

Semantic Web Technologies: Web Ontology Language

The OWL API: An Introduction

A CONCEPTUAL SCHEMA BASED ON RDFS-OWL AND CONSISTENCY CONSTRAINT CHECKING WITH XQuery*

A Frame-based Resource Description Framework Expert System

Building Blocks of Linked Data

The ISO D approach

For return on 19 January 2018 (late submission: 2 February 2018)

Abstract. The report is written in english. Keywords: Linked Data, Clinical Data, Semantic Web, AstraZeneca, RDF, OWL, SPARQL, Jena

Web Ontology Language: OWL

INF3580/4580 Semantic Technologies Spring 2017

Knowledge management. OWL Web Ontology Language

INF3580 Semantic Technologies Spring 2012

Semantic Information Retrieval: An Ontology and RDFbased

RDFS. Suresh Manandhar* & Dimitar Kazakov

The P2 Registry

ISO/TS TECHNICAL SPECIFICATION

Knowledge management. OWL Web Ontology Language

LINKING BACKGROUND INFORMATION

Deep integration of Python with Semantic Web technologies

Description Logic. Eva Mráková,

Toward a new Information retrieval system based on an e-commerce ontology

OWL Web Ontology Language

Parsing OWL DL: Trees or Triples?

ISWC 2017 Tutorial: Semantic Data Management in Practice

Web Ontology Language: OWL by Grigoris Antoniou Frank van Harmelen

Intelligent Agents. Pınar Yolum Utrecht University. Spring 2018 Pınar Yolum

Representing Spatial Norms

<?xml version='1.0' encoding='iso '?> <!DOCTYPE rdf:rdf [ <!ENTITY rdf ' <!

Using RDF to Model the Structure and Process of Systems

Web Ontology Language: OWL

Ontological Modeling: Part 14

Exercise 3.1 (Win-Move Game: Draw Nodes) Consider again the Win-Move-Game. There, WinNodes and LoseNodes have been axiomatized.

Chapter 4 Web Ontology Language: OWL

08 OWL SEMANTIC WEB ONTOLOGY WEB LANGUAGE IMRAN IHSAN ASSISTANT PROFESSOR, AIR UNIVERSITY, ISLAMABAD

Semantic Web in Depth: Web Ontology Language (OWL) Dr Nicholas Gibbins 32/3019

An Introduction to the Semantic Web. Jeff Heflin Lehigh University

The Semantic Web. INF5100 Autumn 2007 Norun C. Sanderson

Semantic Web In Depth: Resource Description Framework. Dr Nicholas Gibbins 32/4037

Ontology-based Virtual IoT Devices for Edge Computing

Terminology binding in FHIR-RDF

What is the Semantic Web?

XML and Semantic Web Technologies. III. Semantic Web / 1. Ressource Description Framework (RDF)

Chapter 3 Research Method

Automated Rendering of Schema Diagram for Ontologies

SWAD-Europe Deliverable 8.1 Core RDF Vocabularies for Thesauri

OWL DL: Trees or Triples?

Big Data 14. Graph Databases

The OWL API: An Introduction

Solving problem of semantic terminology in digital library

Introduction to OWL. Marco Ronchetti Università di Trento Italy

Lecture 8 OWL: Web Ontology Language

Defining Several Ontologies to Enhance the Expressive Power of Queries

BUILDING THE SEMANTIC WEB

Contents. G52IWS: The Semantic Web. The Semantic Web. Semantic web elements. Semantic Web technologies. Semantic Web Services

Querying the Semantic Web

Interoperability of Protégé using RDF(S) as Interchange Language

Semantic Web. Ontology and OWL. Morteza Amini. Sharif University of Technology Fall 95-96

Ontological Modeling: Part 11

7.2 OWL. the OWL versions use certain DL semantics:

OWL DL / Full Compatability

Blending FHIR RDF and OWL

a paradigm for the Semantic Web RDF Data Model Angelica Lo Duca IIT-CNR Linked Open Data:

An Alternative CIM Modeling Approach using JSON-LD

OWLET: An Object-Oriented Environment for OWL Ontology Management

Linked data and its role in the semantic web. Dave Reynolds, Epimorphics

Chapter 3. RDF Schema

Integrating OWL and Rules: A Syntax Proposal for Nominal Schemas

Web Data and Declarative Programming

Introducing Linked Data

STTL SPARQL Template Transformation Language for RDF Graphs

Profiles Research Networking Software API Guide

Goals. Introduction to Ontologybased. Service Semantics. Functional Semantics. Need more than XML Schema. Non-functional Semantics

A Semantic Framework for Integrating and Publishing Linked Data on the Web. Aparna Padki

Transcription:

Comparison of Semantic Web serialization syntaxes Tony Mallia Edmond Scientific 7 March 2015 Introduction This is the comparison of serialization syntaxes supported by Protégé. The sample contains two files inferencetest1 contains the model of two classes foo, bar inferencetest2 contains an instance individualbar and imports inferencetest1 The model is testing the pattern by Eric Prud hommeaux for inferring type from a Dataproperty and is described at the end of this paper. The following syntaxes are compared: RDF/XML OWL/XML Turtle OWL Functional Syntax Rendering Other syntaxes which could be used but are not included here are: Manchester OWL Syntax OBO KRSS2 Latex If there is specific interest these examples can be generated. JSON-LD is not available with Protégé. RDF/XML <!DOCTYPE rdf:rdf [ <!ENTITY "http://#" > <!ENTITY owl "http://www.w3.org/2002/07/owl#" > <rdf:rdf xmlns="http://#" xml:base="http://"

xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:="http://#"> <owl:ontology rdf:about="http://"/> <!-- // Data properties --> <!-- http://#istype --> <owl:datatypeproperty rdf:about="&;istype"/> <!-- // Classes --> <!-- http://#bar --> <owl:class rdf:about="&;bar"> <owl:equivalentclass> <owl:class> <owl:intersectionof rdf:parsetype="collection"> <rdf:description rdf:about="&;foo"/> <owl:restriction> <owl:onproperty rdf:resource="&;istype"/> <owl:hasvalue>fum</owl:hasvalue> </owl:restriction> </owl:intersectionof> </owl:class> </owl:equivalentclass> </owl:class> <!-- http://#foo --> <owl:class rdf:about="&;foo"> <rdfs:subclassof rdf:resource="&owl;thing"/> </owl:class> <!-- http://www.w3.org/2002/07/owl#thing --> <rdf:description rdf:about="&owl;thing"> <rdfs:subclassof rdf:resource="&owl;thing"/> </rdf:description> </rdf:rdf> <!DOCTYPE rdf:rdf [ <!ENTITY "http://#" > <!ENTITY owl "http://www.w3.org/2002/07/owl#" > <rdf:rdf xmlns="http://#" xml:base="http://" xmlns:owl="http://www.w3.org/2002/07/owl#"

xmlns:="http://#"> <owl:ontology rdf:about="http://"> <owl:imports rdf:resource="http://"/> </owl:ontology> <!-- // Individuals --> <!-- http://#individualbar --> <owl:namedindividual rdf:about="http://#individualbar"> <rdf:type rdf:resource="&;foo"/> <:istype>fum</:istype> </owl:namedindividual> </rdf:rdf> OWL/XML <!DOCTYPE Ontology [ <!ENTITY xml "http://www.w3.org/xml/1998/namespace" > <Ontology xmlns="http://www.w3.org/2002/07/owl#" xml:base="http://" xmlns:xml="http://www.w3.org/xml/1998/namespace" ontologyiri="http://"> <Prefix name="" IRI="http://#"/> <Prefix name="owl" IRI="http://www.w3.org/2002/07/owl#"/> <Prefix name="rdf" IRI="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/> <Prefix name="xsd" IRI="http://www.w3.org/2001/XMLSchema#"/> <Prefix name="rdfs" IRI="http://www.w3.org/2000/01/rdf-schema#"/> <Prefix name="" IRI="http://#"/> <Class IRI="#bar"/> <Class IRI="#foo"/> <DataProperty IRI="#isType"/> <EquivalentClasses> <Class IRI="#bar"/> <ObjectIntersectionOf> <Class IRI="#foo"/> <DataHasValue> <DataProperty IRI="#isType"/> <Literal datatypeiri="&rdf;plainliteral">fum</literal> </DataHasValue> </ObjectIntersectionOf> </EquivalentClasses> <SubClassOf> <Class IRI="#foo"/>

<Class abbreviatediri="owl:thing"/> </SubClassOf> <SubClassOf> <Class abbreviatediri="owl:thing"/> <Class abbreviatediri="owl:thing"/> </SubClassOf> </Ontology> <!-- Generated by the OWL API (version 3.5.0) http://owlapi.sourceforge.net --> <!DOCTYPE Ontology [ <!ENTITY xml "http://www.w3.org/xml/1998/namespace" > <Ontology xmlns="http://www.w3.org/2002/07/owl#" xml:base="http://" xmlns:xml="http://www.w3.org/xml/1998/namespace" ontologyiri="http://"> <Prefix name="rdf" IRI="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/> <Prefix name="rdfs" IRI="http://www.w3.org/2000/01/rdf-schema#"/> <Prefix name="xsd" IRI="http://www.w3.org/2001/XMLSchema#"/> <Prefix name="owl" IRI="http://www.w3.org/2002/07/owl#"/> <Import>http://</Import> <NamedIndividual IRI="#individualBar"/> <ClassAssertion> <Class IRI="http://#foo"/> <NamedIndividual IRI="#individualBar"/> </ClassAssertion> <DataPropertyAssertion> <DataProperty IRI="http://#isType"/> <NamedIndividual IRI="#individualBar"/> <Literal datatypeiri="&rdf;plainliteral">fum</literal> </DataPropertyAssertion> </Ontology> <!-- Generated by the OWL API (version 3.5.0) http://owlapi.sourceforge.net --> Turtle @prefix : <http://#>. @prefix owl: <http://www.w3.org/2002/07/owl#>. @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. @prefix xml: <http://www.w3.org/xml/1998/namespace>. @prefix xsd: <http://www.w3.org/2001/xmlschema#>. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @prefix : <http://#>. @base <http://>. <http://> rdf:type owl:ontology.

# Data properties ### http://#istype :istype rdf:type owl:datatypeproperty. # Classes ### http://#bar :bar rdf:type owl:class ; owl:equivalentclass [ rdf:type owl:class ; owl:intersectionof ( :foo [ rdf:type owl:restriction ; owl:onproperty :istype ; owl:hasvalue "fum" ] ) ]. ### http://#foo :foo rdf:type owl:class ; rdfs:subclassof owl:thing. ### http://www.w3.org/2002/07/owl#thing owl:thing rdfs:subclassof owl:thing. ### Generated by the OWL API (version 3.5.0) http://owlapi.sourceforge.net @prefix : <http://#>. @prefix owl: <http://www.w3.org/2002/07/owl#>. @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. @prefix xml: <http://www.w3.org/xml/1998/namespace>. @prefix xsd: <http://www.w3.org/2001/xmlschema#>. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @base <http://>. <http://> rdf:type owl:ontology ; owl:imports <http://>. # Individuals ### http://#individualbar :individualbar rdf:type <http://#foo>, owl:namedindividual ; <http://#istype> "fum". ### Generated by the OWL API (version 3.5.0) http://owlapi.sourceforge.net

OWL Functional Syntax Rendering Prefix(:=<http://#>) Prefix(owl:=<http://www.w3.org/2002/07/owl#>) Prefix(rdf:=<http://www.w3.org/1999/02/22-rdf-syntax-ns#>) Prefix(xml:=<http://www.w3.org/XML/1998/namespace>) Prefix(xsd:=<http://www.w3.org/2001/XMLSchema#>) Prefix(rdfs:=<http://www.w3.org/2000/01/rdf-schema#>) Prefix(:=<http://#>) Ontology(<http://> Declaration(Class(:bar)) Declaration(Class(:foo)) Declaration(DataProperty(:isType)) EquivalentClasses(:bar ObjectIntersectionOf(DataHasValue(:isType "fum") :foo)) SubClassOf(:foo owl:thing) SubClassOf(owl:Thing owl:thing) ) Prefix(:=<http://#>) Prefix(owl:=<http://www.w3.org/2002/07/owl#>) Prefix(rdf:=<http://www.w3.org/1999/02/22-rdf-syntax-ns#>) Prefix(xml:=<http://www.w3.org/XML/1998/namespace>) Prefix(xsd:=<http://www.w3.org/2001/XMLSchema#>) Prefix(rdfs:=<http://www.w3.org/2000/01/rdf-schema#>) Ontology(<http://> Import(<http://>) Declaration(NamedIndividual(:individualbar)) ClassAssertion(<http://#foo> :individualbar) DataPropertyAssertion(<http://#isType> :individualbar "fum") ) Example Description The example tests a reasoner (HermiT) to infer the subclass for an individual individualbar which is declared to be type foo. Type bar has an equivalent class expression which is that it is a subclass of foo and has a dataproperty istype with a value fum. Thus after running the reasoner, individualbar is inferred to have a type bar. This is the mechanism for assigning a terminology type to an individual fhir:code or fhir:coding based on the value of the dataproperties (value) of system and code objects. The example just shows the equivalent of code bar. foo is the equivalent of a simple valueset.