This section presents the key concepts in semantic modelling. 

We will go through the key concepts of semantic modelling and how it differs in tools and methods of traditional data modelling. In the latter chapters this information will be connected to FI-Platform tools, so understanding the key concepts behind semantic web is essential in understanding the usage of the FI-Platform.

The aim of semantic web is to solve the most problematic issues that come with the growth of a non-semantic (HTML-based or similar) web that results in a high level of human effort for finding, retrieving, and exploiting information.

Semantic web

Semantic Web is a way of linking data between systems or entities that allows for rich, self-describing interrelations of data available across the globe on the web. This means a shift in thinking from publishing data in human readable HTML documents with hyperlinks to machine readable, contextually linked documents.

Below is an example of relational and graph databases and a table presenting their corresponding attributes.

Model

Example format

Data

Metadata

Identifier

Query syntax

Semantics (meaning)

Relational

MySQL

Table Cell Values

Table Column Definitions

Primary Key

SQL

N/A

Graph

RDF/XML

RDF

RDFS/OWL

URI

SPARQL

Yes, RDFS and OWL

From the table above it can be seen how the link between data is formed in a relational database versus a graph database. The usage of RDF (Resource Description Network) and OWL (Web Ontology Language) allows semantic databases to contextually link data across different sites. The linking is based on using the same vocabulary and ontology for expressing the meaning behind the data they expose and publishing that data on a queryable endpoint so that sites can communicate with each other using the same vocabulary.

Universal Resource Identifiers (URI)

Semantic Web uses unique identifiers for concepts and the relationships between them. These identifiers, URIs, are similar to normal web page URLs, but do not necessarily identify documents from the web. Their purpose is to uniquely identify objects or concepts and the relationships between them. A URI is like an address by itself or an address with directions, while a URL is always an address with directions.

Ontologies

An ontology communicates what kinds of things there are (for the subject matter of interest) and how they are related to each other. It is built so that automated reasoning software can draw conclusions resulting in new information. OWL 2 is not a programming language but a declarative expression, i.e., it describes a state of affairs in a logical way. Appropriate tools (so-called reasoners) can then be used to infer further information about that state of affairs.

In general, an ontology formally describes a (usually finite) domain of related concepts (classes of objects) and their relationships. For example, in a company setting, staff members, managers, company products, offices, and departments might be important concepts. The relationships typically include hierarchies of classes.

The good news is you often won’t have to go through the effort of defining and sharing your own ontology for your particular domain of knowledge. There are many popular, standard ontologies already distributed on the web which you can adopt, and if necessary, extend yourself.

Resource Description Framework (RDF) and RDF Schemas

The underlying structure of any expression in RDF is a collection of triples, each consisting of a subject, a predicate, and an object. A set of such triples is called an RDF graph. These triples are based on an Entity Attribute Value (EAV) model, in which the subject is the entity, the predicate is the attribute, and the object is the value. Each triple has a unique identifier known as the Uniform Resource Identifier, or URI. URIs look like web page addresses. The parts of a triple, the subject, predicate, and object, represent links in a graph.

An example of a triplet would be:

Subject

Predicate

Object

:Fred

:hasSpouse

:Wilma

:Fred

:has Age

25

Querying semantical data 

As relational databases are queried using traditional SQL or other methods, the triples of RDF data are queried using SPARQL (SPARQL Protocol and RDF Query Language). (SPARQL 1.2 Update (w3c.github.io))

SPARQL is the equivalent of SQL for RDF. A short introduction to SHACL and how it is related to this topic is given in the following link: Shapes Constraint Language (SHACL) (w3.org)


  • No labels