Grupo de Sistemas Ingeligentes

Ontologies for the Participation Project

V1.0 - 27 June 2021

Main document: http://gsi.upm.es/ontologies/participation
Editors: J. Fernando Sánchez-Rada Guillermo García-Grao
Contributors: See acknowledgements

Creative Commons License


Abstract

One of the main tasks within Project Participation is the annotation of text with several types of information: emotions, narrative, ideology, etc. To that effect, and in alignment with the Linked Data principles, the project uses a combination of different ontologies dedicated to specific domains.

This document explains each of these ontologies, and their interplay for the annotation of resources (lexicons and corpora) as well as analysis results.


Table of Contents

  1. NIF
  2. SKOS
  3. SLIWC
  4. Narrative
  5. Morality
  6. Senpy
  7. Onyx
  8. Full examples

NIF

NIF, the NLP Interchange Format, is an ontology for the annotation in the NLP domain. It mainly covers the annotation of NLP analysis results, through the use of nif:Context.

Explaining NIF is beyond the scope of this document, and the reader is encouraged to check the online documentation for NIF as a whole, including the Core Ontology.

SKOS

SKOS or Simple Knowledge Organization System, is a W3C's standard that serves as a bridging representation model between the chaotically heterogeneous traditional data models for taxonomies and the extremely formal languages used in the Semantic Web, like the Web Ontology Language (OWL). As such, it is perfect for tasks like translating LIWC categories.

For more information about SKOS and simple steps to get started with it, please visit the excellent documentation at the SKOS primer.

Semantic LIWC

Linguistic Inquiry and Word Count (LIWC) is the gold standard in software for analyzing word use. It can be used to study a single individual, groups of people over time, or all of social media.

The way that the LIWC program works is fairly simple. Basically, it reads a given text and counts the percentage of words that reflect different emotions, thinking styles, social concerns, and even parts of speech.

An important part of the LIWC project are the LIWC dictionaries. The importance and popularity of LIWC has led other researchers to adopt their annotation conventions and to use the same format to produce dictionaries that are compatible with LIWC programs.

In the Participation project, we have produced a semantic version of the LIWC annotation schema. It consists of two parts. First, an ontology that represents the general concepts used in LIWC annotation (e.g., dimensions, categories, word-level dimensions, document-level dimensions, etc.). The second part uses these concepts to provide elements specific to the LIWC dictionaries, such as specific categories, and their hierarchical relation to one another. These categories have been modelled both as an ontology (i.e., classes) and as a SKOS taxonomy, so that the hierarchical structure can be exploited, independently of the ontological relations.

Full documentation for this ontology can be found here.

The Narrative ontology

This ontology contains the concepts necessary to annotate NIF, SIOC and even lemon elements with a narrative component.

The Morality ontology

The Moral Foundations Theory (MFT) is modeled and included into the intelligent engine, which allows users to study such a complex phenomena automatically. The MFT expresses the psychological basis of morality in terms of innate intuitions, defining the following five foundations: care/damage, justice/cheating, loyalty/betrayal, authority/subversion, and purity/degradation.

Although recent, MFT is the most established theory in psychology and the social sciences. It is also widely adopted in computational social science, as it defines a clear taxonomy of values along with a dictionary of terms, the Moral Foundations Dictionary (MFD), which is an essential resource for NLP applications.

Full documentation for this ontology can be found here.

The Senpy ontology

Senpy is a framework to build sentiment and emotion analysis services. It provides functionalities for:

The purpose of this ontology is to provide a model for the data returned by Senpy, allowing the service to use the same concepts when annotating texts using different sentiment analysis tools.

Full documentation for this ontology can be found here.

The Onyx ontology

Onyx is a standardised data schema designed to annotate and describe the emotions expressed by user-generated content on the web or in particular Information Systems.

Full documentation for this ontology can be found here.

Full examples

@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix narr: <http://www.gsi.upm.es/ontologies/participation/narrative/ns#> .
@prefix sliwc: <http://www.gsi.upm.es/ontologies/participation/sliwc/ns#> .
@prefix moral: <http://www.gsi.upm.es/ontologies/participation/moral/ns#> .
@prefix moral: <http://www.gsi.upm.es/ontologies/participation/senpy/ns#> .

:Tweet1  a sioc:Post ;
         narr:hasIdeology narr:Religious ;
         senpy:hasAnnotation [
                           a senpy:AggregatedAnnotation ;
                           a narr:Annotation ;
                           senpy:hasCategory narr:ProReligion ;
                           senpy:ratio 0.1 .
         ] ;
         senpy:hasAnnotation [
                             a senpy:AggregatedAnnotation ;
                             a moral:Annotation ;
                             senpy:hasCategory moral:IngroupVirtue ;
                             senpy:ratio 0.1 .
         ] ;
         senpy:hasAnnotation [
                             a senpy:AggregatedAnnotation ;
                             senpy:hasCategory sliwc:Filler ;
                             senpy:ratio 0.34 ;
                             senpy:count 23 .
         ] ;
         senpy:hasAnnotation [
                             a senpy:AggregatedAnnotation ;
                             senpy:hasCategory sliwc:Adverb ;
                             senpy:ratio 0.15 ;
                             senpy:count 11 .
         ] .



_:compassion a  lemon:Lexicalentry; 
           lemon:sense [

                      lemon:reference  wn:synset-fear-noun-1;
                      senpy:hasAnnotation [
                                          a senpy:Annotation ;
                                          senpy:hasCategory moral:IngroupVirtue .
                      ] .
          ] ;
          senpy:hasAnnotation [
                              a senpy:Annotation ; # Optional, can be inferred
                              senpy:hasCategory moral:IngroupVirtue .
          ] ;
          lexinfo:partDfSpeech  lexinfo:noun .

A Changelog

2021-06-27

2022-01-20

B Acknowledgements

Special thanks for support with the taxonomy translation to: Prof. Carlos A. Iglesias and members of the GSI Group of DIT department of Universidad Politécnica de Madrid.

These ontologies have been created for their use in the Participation Project