Build a Novel Annotation Model

Ontologies of Linguistic Annotation. Machine-readable tagsets and annotation schemata for more than 100 languages.

Build a Novel Annotation Model

1.a Using a Graphical Editor

We assume you start with a document (say, a paper, or a whitepaper)

1.b Using a Text Editor and the Turtle Format

In principle, this follows the same procedure, but use a text editor and Turtle format to write the ontology directly. This has the advantage that the resulting data can structured to provide a human-readable form.

1.c From a List of Tags

If no other documentation is available, a list of tags (along with examples) may be extracted from a corpus, if a language expert can interpret these while creating the annotation model.

In principle, this follows the same procedure, but the initial creation process an be automatized.

tag category label URI property value
ACC CASE accusative :ACC olias:hasTagContaining 'ACC';
NOUN POS noun :NOUN olias:hasTagContaining 'NOUN';
tag category label URI property value property class
ACC CASE accusative :ACC olias:hasTagContaining 'ACC'; a :accusative
NOUN POS noun :NOUN olias:hasTagContaining 'NOUN'; a :noun
tag category label URI property value property class .
ACC CASE accusative :ACC olias:hasTagContaining 'ACC'; a :accusative .
NOUN POS noun :NOUN olias:hasTagContaining 'NOUN'; a :noun .
.
tag category label URI property value property class . class property category .
ACC CASE accusative :ACC olias:hasTagContaining ‘ACC’; a :accusative . :accusative rdfs:subPropertyOf :CASE .
NOUN POS noun :NOUN olias:hasTagContaining ‘NOUN’; a :noun; . :noun rdfs:subPropertyOf :POS .

Linking an Annotation Model

To benefit from synergies with OLiA, annotation models should be linked, i.e., rdfs:subClassOf/rdfs:subPropertyOf links with http://purl.org/olia/olia.owl should be created. By convention, these are stored in separate files, using the naming schema xyz-link.rdf (with xyz being the acronym of your annotation model) and provided in RDF/XML format.

2.a Create Linking Model (Manually, GUI)

2.b Create Linking Model (Manually, Text Editor)

Note that you can use the full power of description logics to encode anything more complex, i.e., owl:unionOf, owl:intersectionOf, owl:inverseOf. However, applications may chose to ignore such complicated information and simply rely on rdfs:subClassOf. As multiple applications of rdfs:subClassOf are equivalent to owl:intersectionOf, better avoid the latter wherever possible.

2.c Create Linking Model (Semi-Automatically)

We provide a script to facilitate semiautomated linking for (Unix-style) shell environments. This is the file /tools/link.sh in this repository.