Difference between revisions of "Pr4 UG mi Glossary"

From Protege Wiki
Jump to: navigation, search
(Automated import of articles)
 
(Reasoner: corrected list of reasoners that p4 provides by default)
 
Line 1,818: Line 1,818:
  
 
{{#var:Pr4}} provides access to a variety of semantic reasoners,
 
{{#var:Pr4}} provides access to a variety of semantic reasoners,
including (by default) FaCT++:
+
including (by default) FaCT++ and HermiT:
 
<ul>
 
<ul>
 
A semantic reasoner, reasoning engine, rules engine, or simply a reasoner,
 
A semantic reasoner, reasoning engine, rules engine, or simply a reasoner,

Latest revision as of 13:04, February 25, 2011

Glossary

comment   Editing   Glossary   Outline


Protege 4 User's Guide
Miscellany
Colophon
Conventions
Editing
Feedback
Glossary
Introduction
Outline
Page List
Page Report
Resources
Selection
Startup

Protege 4 uses a number of technical terms. It also uses some common terms (eg, view) in uncommon ways. This page provides short definitions of these terms, along with links to related definitions and other resources.

Like the rest of the guide, this page is a perennial "Work In Progress". If you don't find a needed definition (or don't find the current definition to be useful), speak up!

Format Notes

Each entry in the Glossary consists of a textual description, often supplemented by a quote from a relevant document. Following the description, the "See Also" section provides links to related resources. This section contains one to three subsections, containing (respectively) links or references to:

  • terms in the Glossary
  • pages in the Protege 4 Users Guide
  • external resources (eg, books, web pages)

Many of the external resources are located in Wikipedia; the notation "(WP)" is used to indicate this fact.

Editing

While adding entries, please update the Alphabetical Summary. Otherwise, readers may not be able to find your entry.

The entries on this page are heavily linked by other pages in the Users Guide and elsewhere. Do not change the heading on an entry unless you have checked this with the Protege 4 developers!

Alphabetical Summary

ABC - Abstraction, Ancestor Class, Annotation, Anonymous Class, API, Asserted, Assertion, Asymmetric Property, Axiom, BeanShell, Characteristic, Class, Class Expression

DEF - Data Property, Datatype, Defined, Descendant Class, Description, Description Logic, Dialog Box, Disjoint Class, Disjoint Property, Domain, Entailment, Entity, Enumeration, Equivalent Class, Equivalent Property, FaCT++, Functional Property

GHI - General Axiom, HERAKLES, HermiT, Hierarchy, Individual, Induction, Inference, Inferred, Inheritance, Inherited, Instance, Intersection, Inverse Functional Property, Inverse Property, Irreflexive Property

JKL - Java, KRSS2 Syntax, LaTeX, Lattice

MNO - Manchester OWL Syntax, Member, Menu, Metrics, NaCTeM, Negative Assertion, Nothing, Object Property, OBO Flat File Format, OntoGraf, Ontology, Open World Assumption, OPPL, OWL, OWL DL, OWLDoc, OWL Functional Syntax, OWL/XML, OWLViz

PQR - Pellet, Plugin, Property, Property Chain, Query, Range, RDF, RDFS, RDF/XML, Reasoner, Refactoring, Reflexive Property, Relation, Rendering, Restriction, Rule

STU - Semantic Web, Sibling Class, SKOS, SPARQL, Subclass, Subproperty, Super Property, Superclass, SWRL, Symmetric Property, Tab, Tag Cloud, TerMine, Thing, TONES, Tool, Transitive Property, Triple Store, Turtle, Type, Union, URI, URL

VWX - View, Watson, XML

YZ ...

A, B, C

Abstraction

Abstraction is critical to defining class hierarchies in Protege 4; every superclass is an abstraction (ie, generalization) of its subclass(es):

    Abstraction is the process or result of generalization by reducing the information content of a concept or an observable phenomenon, typically in order to retain only information which is relevant for a particular purpose. For example, abstracting a leather soccer ball to a ball retains only the information on general ball attributes and behaviour.

    -- Abstraction (WP)

See also:

Ancestor Class

An ancestor class resides at a higher (ie, more abstract) point in the class hierarchy. It could be a superclass, a superclass of a superclass, etc. In the Pizza Ontology, Food is an ancestor class of Pizza, NamedPizza, and Margherita.

See also:

Annotation

Annotation properties (commonly referred to as "annotations") allow arbitrary information to be added to selected portions of an OWL ontology. Although some annotations are specific to a given ontology, a number of annotations are in general use.

See also:

Anonymous Class

An anonymous class has a description, but no name. Anonymous classes (ACs) are used throughout OWL ontologies. Any class expression (eg, enumeration, intersection, restriction, union) is an anonymous class.

See also:

API

An API provides a defined way for an application (ie, program) to access a set of functionality:

    An application programming interface (API) is an interface in computer science that defines the ways by which an application program may request services from libraries and/or operating systems. An API determines the vocabulary and calling conventions the programmer should employ to use the services. It may include specifications for routines, data structures, object classes, and protocols used to communicate between the requesting software and the library.

    -- Application programming interface (WP)

Protege 4, in particular, is basically a framework that supports interactive access to the OWL API.

See also:

Asserted

Information in Protege 4 ontologies can be asserted (ie, declared by an assertion) or inferred (ie, calculated by means of an inference). The Asserted Class Hierarchy view displays the results of all assertions. The Inferred Class Hierarchy view adds the results of inferences.

See also:

Assertion

An assertion is an axiom that declares something about one or more concrete objects in the class hierarchy. There are various forms of assertions, including:

  • AnnotationAssertion
  • ClassAssertion
  • DataPropertyAssertion
  • NegativeDataPropertyAssertion
  • NegativeObjectPropertyAssertion
  • NegativePropertyAssertion
  • ObjectPropertyAssertion

See also:

Asymmetric Property

An asymmetric property is an object property that defines an asymmetric relationship:

    Asymmetric often means, simply: not symmetric. In this sense an asymmetric relation is a binary relation which is not a symmetric relation. In some texts, the word is given the following stronger definition. A relation R on X is asymmetric in the following sense: For all a and b in X, if a is related to b, then b is not related to a.

    -- Asymmetric relation (WP)

Protege 4 follows the first of these interpretations: "asymmetric" means there exists a and b where R(a,b) and ! R(b,a). For example, assume that Bill is Sue's brother (ie, Sue is Bill's sister). The "brother of" property is asymmetric in this case because Sue is not Bill's brother.

See also:

Axiom

An axiom is a "piece of knowledge" (ie, a fact or rule):

    ... in order to formulate knowledge explicitly, it is useful to assume that it consists of elementary pieces that are often referred to as statements or propositions. Statements like “it is raining” or “every man is mortal” are typical examples for such basic propositions. In OWL 2, these basic “pieces of knowledge” are called axioms. Indeed, every OWL 2 ontology is – from an abstract viewpoint – essentially just a collection of axioms. It is characteristic for axioms that they can be said to be true or false given a certain state of affairs.

    -- OWL 2 Web Ontology Language Primer

See also:

BeanShell

BeanShell is an interpreted programming environment that can be embedded into Java programs. It supports both Java syntax and a simplified "scripting" syntax. BeanShell offers a quick and convenient way to extend Protege 4.

See also:

Characteristic

Properties can have any of several characteristics (eg, Functional, Reflexive, Symmetric, Transitive) which affect their inference behavior, etc.

See also:

Class

A class describes and (generally) names a level in an abstraction hierarchy (technically, a lattice), headed by the Thing class. The classes Food, Pizza, NamedPizza, and Margherita, for example, are used in the Pizza Ontology. A given Margherita pizza might therefore be an individual (ie, instance) of the class Margherita. By inheritance, it would also be a member of the classes Food, Pizza, etc.

Protege's classes and instances are very similar to those used in object-oriented programming. However, object-oriented classes are used to generate objects and methods that model (as opposed to simply describing) items of interest.

See also:

Class Expression

Class expressions are commonly used (eg, in Manchester Syntax) to define classes in terms of other classes. They use operations such as enumeration, intersection, restriction, and union. For example, in the Pizza Ontology, a MeatyPizza is defined by the expression Pizza and hasTopping some MeatTopping. That is, the intersection of the Pizza class with the restriction hasTopping some MeatTopping.

See also:

D, E, F

Data Property

Datatype properties, also known as data properties, relate objects to data values, rather than other objects. These values are defined in terms of a datatype (eg, date, integer).

See also:

Datatype

A datatype specifies the type of data (eg, date, integer) that may be used as the value for a data property.

See also:

Defined

Descendant Class

A descendant class resides at a lower (ie, more specific) point in the class hierarchy. It could be a subclass, a subclass of a subclass, etc. For example, in the Pizza Ontology, Pizza, NamedPizza, and Margherita are descendant classes of Food.

See also:

Description

In Protege 4, assorted items are defined by descriptions. The exact nature of the descriptions that can be used depend on the type of the item (eg, class, data or object property, individual) and the Description Logic that is in use.

See also:

Description Logic

Description Logic, a subset of first order predicate logic, is the formal basis for Protege 4's descriptions:

    Description logics (DL) are a family of knowledge representation languages which can be used to represent the concept definitions of an application domain (known as terminological knowledge) in a structured and formally well-understood way. The name description logic refers, on the one hand, to concept descriptions used to describe a domain and, on the other hand, to the logic-based semantics which can be given by a translation into first-order predicate logic. Description logic was designed as an extension to frames and semantic networks, which were not equipped with formal logic-based semantics. They form a middle ground solution: including some more expressive operations than propositional logic and having decidable or more efficient decision problems than first order predicate logic.

    -- Description Logic (WP)

See also:

Dialog Box

A dialog box (aka dialog) is a modal window presented to the user to present information, accept choices or confirmations, etc.

See also:

Disjoint Class

If two (or more) classes are disjoint, they cannot have any members in common. For example, in the Pizza Ontology, NonVegetarianPizza and VegetarianPizza are disjoint classes.

See also:

Disjoint Property

If two (or more) properties are disjoint, they cannot apply to the same pairs of individuals. For example, ancestor and descendant are disjoint properties.

See also:

Domain

A property defines a relation from objects in its Domain to objects in its Range.

See also:

Entailment

This is another way of saying "inferred axiom".

See also:

Entity

In Protege 4, an entity is something (eg, a class or individual) that has a unique identity and (commonly) a URI. Entities can be used in statements such as axioms, properties, queries, etc.

See also:

Enumeration

In Protege 4, an enumeration is a class expression in which all of the possibilities are enumerated (ie, listed). For example, in the Pizza Ontology, the definition for Country uses the enumeration {France,America,Italy,England,Germany}.

See also:

Equivalent Class

Asserting that two classes are equivalent (eg, by a property restriction) allows a reasoner to make related inferences. For example, if we assert that "a person is happy exactly if all their children are happy", a reasoner might determine that (by induction) all of a happy individual's descendants are happy.

See also:

Equivalent Property

Asserting that two properties are equivalent allows a reasoner to use one property as if it were the other. For example, we might define hasAge in one ontology as being equivalent to age in another.

See also:

FaCT++

FaCT++ is a third-party semantic reasoner (and rendering format), used by Protege 4 via a plugin. This reasoner, written in C++, was developed at the University of Manchester.

See also:

Functional Property

A functional property is a property that can only hold a single value for a given individual. For example, Bill's age is a functional property because Bill can only have a single age at a given point in time.

See also:

G, H, I

General Axiom

See also:

HERAKLES

HERAKLES is a reasoning broker framework for OWL (Web Ontology Language) reasoning systems.

See also:

HermiT

HermiT is a third-party semantic reasoner (and rendering format), used by Protege 4 via a plugin. This reasoner, written in Java, was developed at Oxford University.

See also:

Hierarchy

In Protege 4, all classes are required to reside in an abstraction (ie, "is a", containment) hierarchy (technically, a lattice), headed by the Thing class. For example, in the Pizza Ontology, any member of the class Margherita "is a" member of the class NamedPizza (and, by inheritance, the classes Pizza, Food, DomainConcept, and Thing).

Other types of hierarchies are possible. For example, it would be possible to define a "has a" hierarchy where a Pizza is defined as having a PizzaBase and one or more instances of PizzaTopping. However, Protege 4 provides no explicit support for this.

See also:

Individual

An individual is a member (ie, instance) of a class. For example, in the Pizza Ontology, you might order a pizza of the class Margherita, but the pizza you receive would be an an instance of the class.

See also:

Induction

Induction uses logical inference to proceed from known facts to general conclusions.

    Induction, also known as inductive reasoning or inductive logic, is a type of reasoning which involves moving from a set of specific facts to a general conclusion. It can also be seen as a form of theory-building, in which specific facts are used to create a theory that explains relationships between the facts and allows prediction of future knowledge.

    -- Inductive reasoning (WP)

See also:

Inference

Inference is the process by which information may be inferred (ie, calculated, reasoned), whether by a human or a program (eg, inference engine, semantic reasoner). Protege 4 provides access to a variety of semantic reasoners, including (by default) FaCT++.

See also:

Inferred

Information in Protege 4 ontologies can be asserted (ie, declared by an assertion) or inferred (calculated by means of an inference). The Asserted Class Hierarchy view displays the results of assertions. The Inferred Class Hierarchy view adds the results of inferences.

See also:

Inheritance

Inheritance allows a descendant class to make use of properties defined for an ancestor class in the abstraction hierarchy. For example, in the Pizza Ontology, the hasBase property is defined for the class Pizza. Consequently, descendants such as NamedPizza and Margherita are also expected to have a PizzaBase.

See also:

Inherited

Properties defined for an ancestor class in the abstraction hierarchy can be inherited by a descendant class.

See also:

Instance

Each member (ie, instance) of a class is an individual. For example, in the Pizza Ontology, you might order a pizza of the class Margherita, but the pizza you receive would be an instance of the class.

See also:

Intersection

In set theory, the intersection of two or more sets is a set which contains only members of all the base sets. So, for example, the set {2} is the intersection of the sets of even {2, 4, ...} and prime {2, 3, 5, 7, 11, ...} numbers, because 2 is the only number which is both even and prime.

See also:

Inverse Functional Property

A property is inverse functional if its inverse is a functional property. So, for example, a URL is an inverse functional property for a web page because there is only one page that corresponds to it (even if the page responds to multiple URLs).

See also:

Inverse Property

An inverse property is a property that defines an inverse relationship:

    In mathematics, the inverse relation of a binary relation is the relation that occurs when you switch the order of the elements in the relation. For example, the inverse of the relation "child of" is the relation "parent of".

    -- Inverse relation (WP)

See also:

Irreflexive Property

An irreflexive property is an object property that defines a irreflexive relationship. That is, none of the elements in the set are related to themselves. Inequality is an example of an irreflexive relationship, because no item can be unequal to itself.

See also:

J, K, L

Java

Protege 4, like many other Semantic Web tools, is written in the Java programming language, runs on the Java Virtual Machine, etc.

See also:

KRSS2 Syntax

KRSS2 syntax, used in Protege 4, is a superset of the "Description-Logic Knowledge Representation System Specification from the KRSS Group of the ARPA Knowledge Sharing Effort" (see "KRSS Specification", cited below).

See also:

LaTeX

LaTeX is a document preparation system, based on TeX. Ontologies may be serialized in LaTeX for ease of reading, publication, etc.

See also:

Lattice

Although Protege 4's classes are generally described as forming an "is a" (ie, class) hierarchy, they can also be considered as a lattice of at least two classes. The "Thing" class is the "join" (ie, union, top) of all classes in the lattice. The "Nothing" class is the "meet" (ie, intersection, bottom).

See also:

M, N, O

Manchester OWL Syntax

The Manchester OWL Syntax is a new syntax that has been designed for writing OWL class expressions. It was influenced by both the OWL Abstract Syntax and the DL style syntax, which uses Description Logic symbols such as the universal quantifier (∀) or the existential quantifier (∃).

Here are some examples:

 hasChild some Man
 hasSibling only Woman
 hasCountryOfOrigin value England
 hasChild min 3
 hasChild exactly 3
 hasChild max 3
 Person and hasChild some (Person and (hasChild only Man) and (hasChild some Person))
 hasAge value "21"^^long
 hasAge some int
 Person and hasAge some int[>= 65]
 Person and hasAge some int[>= 18, <= 30]

See also:

Member

Each member (ie, instance) of a class is an individual. For example, in the Pizza Ontology, you might order a pizza of the class Margherita, but the pizza you receive would be an instance of the class.

See also:

Menu

Like most GUI-based application programs, Protege 4 uses menus (eg, columns and items in the Menu Bar) to handle relatively infrequent user actions (eg, saving a file, adding a view to a tab).

See also:

Metrics

Protege 4 uses this term in two related, but quite different ways. In both cases, it's talking about measurements, but the nature of the measurements is quite different:

  • The DL Metrics view displays qualitative information about the expressivity of the Description Logic (DL) being used by Protege 4. For example, does the DL allow inverse properties?
  • The Ontology Metrics view displays quantitative information about the ontology's use of axioms and properties.

See also:

NaCTeM

NaCTeM (The National Centre for Text Mining) is a publicly-funded text mining center, providing text mining services and tools for the UK academic community. NaCTeM is operated by the University of Manchester with close collaboration with the University of Tokyo.

See also:

Negative Assertion

A negative assertion states that a property is not true. So, for example, one could make an object property assertion that Mary is not Bill's wife or a data property assertion that Bill is not 6 feet tall.

See also:

Nothing

Although Protege 4's classes are generally described as forming an "is a" (ie, class) hierarchy, they can also be considered as a lattice. The "Thing" class is the "join" (ie, union) of all classes; the "Nothing" class is a subset of their "meet" (ie, intersection). In informal terms, Nothing contains nothing.

See also:

Object Property

Object properties relate objects to other objects (as opposed to data values).

See also:

OBO Flat File Format

OBO format is the text file format used by OBO-Edit, an open source, platform-independent application for viewing and editing ontologies.

See also:

OntoGraf

The OntoGraf plugin gives support for interactively navigating the relationships of your OWL ontologies.

See also:

Ontology

An ontology is a formally-defined vocabulary for a particular domain of interest. Ontologies are typically based on a class hierarchy (asserted and/or inferred), supplemented by assorted properties.

See also:

Open World Assumption

The Open World Assumption, used by OWL, says that "just because we don't know something to be true does not mean that we can assume it to be false":

    In formal logic, the open world assumption is the assumption that the truth-value of a statement is independent of whether or not it is known by any single observer or agent to be true. It is the opposite of the closed world assumption, which holds that any statement that is not known to be true is false. The open world assumption (OWA) is used in knowledge representation to codify the informal notion that in general no single agent or observer has complete knowledge, and therefore cannot make the closed world assumption. The OWA limits the kinds of inference and deductions an agent can make to those that follow from statements that are known to the agent to be true. In contrast, the closed world assumption allows an agent to infer, from its lack of knowledge of a statement being true, anything that follows from that statement being false.

    -- Open world assumption (WP)

See also:

OPPL

Ontology Pre-Processor Language (OPPL) is an abstract formalism, based on Manchester OWL Syntax, that allows for manipulating ontologies written in OWL.

See also:

OWL

OWL provides the theoretical basis for Protege 4 ontologies:

    The Web Ontology Language (OWL) is a family of knowledge representation languages for authoring ontologies, and is endorsed by the World Wide Web Consortium. This family of languages is based on two (largely, but not entirely, compatible) semantics: OWL DL and OWL Lite semantics are based on Description Logics, which have attractive and well-understood computational properties, while OWL Full uses a novel semantic model intended to provide compatibility with RDF Schema. OWL ontologies are most commonly serialized using RDF/XML syntax. OWL is considered one of the fundamental technologies underpinning the Semantic Web, and has attracted both academic and commercial interest.

    -- Web Ontology Language (WP)

See also:

OWL DL

OWL DL is the variant of Web Ontology Language (OWL) used by Protege 4:

    OWL DL was designed to provide the maximum expressiveness possible while retaining computational completeness (all conclusions are guaranteed to be computed), decidability (all computations will finish in finite time), and the availability of practical reasoning algorithms. OWL DL includes all OWL language constructs, but they can be used only under certain restrictions (for example, number restrictions may not be placed upon properties which are declared to be transitive). OWL DL is so named due to its correspondence with description logic, a field of research that has studied the logics that form the formal foundation of OWL.

    -- Web Ontology Language (WP)

See also:

OWLDoc

OWLDoc is a documentation tool for OWL ontologies.

See also:

OWL Functional Syntax

OWL Functional Syntax is a human-readable (eg, abstract, linear) encoding for Web Ontology Language (OWL):

    The OWL 1.1 functional-style syntax is a new linear syntax for OWL 1.1. The functional-style syntax abstracts from exchange syntaxes and thus facilitates access to and evaluation of the language. The functional-style syntax is suggested for use as an easier-to-read syntax for communication with humans. The functional-style syntax is also the basis for the model theory for OWL 1.1. The functional-style syntax is not quite a complete concrete syntax as it currently ignores issues of white space. The functional-style syntax is similar to the OWL 1.0 Abstract Syntax; it is, however, not backwards compatible with the OWL 1.0 Abstract Syntax, because of several problems with the OWL 1.0 Abstract Syntax that would be very difficult to overcome without sacrificing backwards compatibility.

    -- OWL Functional Syntax

See also:

OWL/XML

OWL/XML is an XML-based encoding for Web Ontology Language (OWL).

See also:

OWLViz

The OWLViz tab provides access to OWLViz, a GraphViz-based plugin for exploring class hierarchies in an OWL ontology:

    OWLViz is designed to be used with the Protege OWL plugin. It enables the class hierarchies in an OWL Ontology to be viewed and incrementally navigated, allowing comparison of the asserted class hierarchy and the inferred class hierarchy. OWLViz integrates with the Protege-OWL plugin, using the same colour scheme so that primitive and defined classes can be distinguished, computed changes to the class hierarchy may be clearly seen, and inconsistent concepts are highlighted in red. OWLViz has the facility to save both the asserted and inferred views of the class hierarchy to various concrete graphics formats including png, jpeg, and svg.

    -- OWLViz Guide

See also:

P, Q, R

Pellet

Pellet is a third-party semantic reasoner, used by Protege 4 via a plugin. This reasoner, written in Java, was developed by Clark and Parsia.

See also:

Plugin

Protege 4 is able to accept a variety of plugin software, including OWLViz, the OWL API and Editor, and assorted reasoners (eg, FacT++, Pellet).

See also:

Property

A property defines a specified relationship from objects in a class (the domain) and a set of targets (the range). For example, in the Pizza Ontology, the hasTopping property defines a relation from Pizza objects to PizzaTopping objects.

If the target of the relation is an object (ie, URI), the property is called a Object Property. If the target of the relation is a data value (ie, literal), the property is called a Data Property.

See also:

Property Chain

A property chain is a property that is defined as a series of other properties. For example, a hasGrandparent property might be defined as a chain of two hasParent properties.

See also:

Query

Protege 4 uses the term "query" in two distinct, but related ways. In a production system, a query might be a SPARQL "SELECT" command, used to retrieve information from an RDF Triple Store. For example, in the DL Query tab, a Description Logic query (class expression) is used to query the current ontology.

See also:

Range

A property defines a relation from objects in its Domain to objects in its Range.

See also:

RDF

RDF (specifically, the RDF/XML encoding) may be used by Protege to encode ontologies as text:

    The Resource Description Framework (RDF) is a family of World Wide Web Consortium (W3C) specifications originally designed as a metadata data model. It has come to be used as a general method for conceptual description or modeling of information that is implemented in web resources; using a variety of syntax formats.

    -- Resource Description Framework (WP)

See also:

RDFS

RDFS (RDF Schema) is an RDF-based knowledge representation language, providing basic elements (eg, class membership, subclassing) for the description of ontologies.

See also:

RDF/XML

RDF/XML is an XML-based encoding for Resource Description Framework (RDF).

See also:

Reasoner

Protege 4 provides access to a variety of semantic reasoners, including (by default) FaCT++ and HermiT:

    A semantic reasoner, reasoning engine, rules engine, or simply a reasoner, is a piece of software able to infer logical consequences from a set of asserted facts or axioms. The notion of a semantic reasoner generalizes that of an inference engine, by providing a richer set of mechanisms to work with. The inference rules are commonly specified by means of an ontology language, and often a description language. Many reasoners use first-order predicate logic to perform reasoning; inference commonly proceeds by forward chaining and backward chaining.

    -- Semantic reasoner (WP)

See also:

Refactoring

Protege 4 uses the term "refactoring" to describe simplification of axioms, etc. This usage is borrowed from software engineering:

    In software engineering, "refactoring" source code means improving it without changing its overall results, and is sometimes informally referred to as "cleaning it up". Refactoring neither fixes bugs nor adds new functionality, though it might precede either activity. Rather, it improves the understandability of the code, changes its internal structure and design, and removes dead code.

    These changes are intended to make the code easier to comprehend, more maintainable, and more amenable to change. Refactoring is usually motivated by the difficulty of adding new functionality to a program or fixing a bug in it.

    -- Code refactoring (WP)

See also:

Reflexive Property

A reflexive property is an object property that defines a reflexive relationship (ie, all elements are related to themselves):

    If a relation is reflexive, all elements in the set are related to themselves. For example, the relations "is not greater than" and "is equal to" are reflexive over the set of all real numbers. Since no real number is greater than itself, if you compare any number to itself, you will find "is not greater than" to be true. Since every real number is equal to itself, if you compare any number to itself, you will find "is equal to" to be true.

    -- Reflexive relation (WP)

See also:

Relation

Protege 4's notion of a relation is closely tied to the mathematical notion of a "binary relation". That is, a mapping between corresponding pairs of elements in a domain and a range set:

    In mathematics, a binary relation on a set A is a collection of ordered pairs of elements of A. In other words, it is a subset of the Cartesian product A2 = A × A. More generally, a binary relation between two sets A and B is a subset of A × B. The terms dyadic relation and 2-place relation are synonyms for binary relations.

    -- Binary relation (WP)

See also:

Rendering

Protege 4 uses the term "rendering" in two distinct but related meanings:

  • rendering an entity's URI as text (eg, for display and/or entry)
  • rendering an ontology (etc) into text (eg, for export)

The first meaning has to do with the fact that URIs are better optimized for use by computers then by humans. So, Protege 4 allows humans to use a "rendered" name, instead.

The second meaning has to do with the mechanics of ontology storage and interchange. Protege 4 has its own internal format for storing ontologies. This format is optimized for access and processing, but not for display, exchange, storage, transmission, etc.

Rendering is the process of serializing this information into a byte stream (typically, as text). Any of several encoding formats may be used, including FaCT++, Manchester OWL Syntax, OWL Functional Syntax, OWL/XML, and RDF/XML.

See also:

Restriction

Restrictions are statements that can be used to define classes, by restricting aspects of other classes, etc. For example, the Parent class might be defined as class of individuals that are linked to a person by the hasChild property.

See also:

Rule

Semantic Web Rule Language (SWRL) rules provide a way to extend the base set of OWL axioms used in Protege 4. For example, a rule might assert that the composition of parent and brother properties implies the uncle property:

parent(?x,?y) ∧ brother(?y,?z) => uncle(?x,?z)

See also:

S, T, U

Semantic Web

The Semantic Web is an effort, proposed by Tim Berners-Lee et al, to add semantic markup and technology to the World Wide Web. Protege 4 is based on an interlinked collection of Semantic Web standards, including OWL, RDF, RDFS, SPARQL, and SWRL.

See also:

Sibling Class

A sibling class is a subclass of the superclass of another class. For example, in the Pizza Ontology, Margherita is a sibling class of Caprina, because they are both subclasses of NamedPizza.

See also:

SKOS

The Simple Knowledge Organization System (SKOS) is an area of work developing specifications and standards to support the use of knowledge organization systems (KOS) such as thesauri, classification schemes, subject heading systems, and taxonomies within the framework of the Semantic Web.

See also:

SPARQL

SPARQL (SPARQL Protocol and RDF Query Language) refers to a set of related W3C standards:

However, most commonly, the term is used to refer to the query language. The query language, which borrows syntax from SQL and Turtle, is used to obtain information from RDF Triple Stores.

See also:

Subclass

A subclass is an immediate descendant of another class. For example, in the Pizza Ontology, Margherita is a subclass of NamedPizza.

See also:

Subproperty

A subproperty is the immediate descendant of another property. All resources related by a property's subproperty are also related by the property.

See also:

Super Property

A super property (also, superproperty) is the immediate ancestor of another property. All resources related by a property are also related by its super property.

See also:

Superclass

A superclass is the immediate ancestor of another class. For example, in the Pizza Ontology, NamedPizza is the superclass of Margherita.

See also:

SWRL

SWRL (Semantic Web Rule Language) is a proposal for a Semantic Web rules-language, combining sublanguages of the OWL Web Ontology Language (OWL DL and Lite) with those of the Rule Markup Language (Unary/Binary Datalog).

See also:

Symmetric Property

A symmetric property is an object property that defines a symmetric relationship:

    In mathematics, a binary relation R over a set X is symmetric if it holds for all a and b in X that if a is related to b then b is related to a.

    -- Symmetric relation (WP)

So, for example, "sibling" is a symmetric relationship: if a is b's sibling, b is a's sibling.

See also:

Tab

In Protege 4, a tab is an interface element that provides access to one or more views.

See also:

Tag Cloud

A tag cloud depicts a set of related tags with corresponding weights. Typically, these weights are represented by the font size.

See also:

TerMine

TerMine is a term extraction tool, provided by NaCTeM, that extracts concepts from text. The TerMine plugin accesses TerMine via a Web Service over the Internet.

See also:

TONES

TONES (Thinking ONtologiES) is a research project, financed by the European Union:

    The aim of the project is [to] study and develop automated reasoning techniques for both offline and online tasks associated with ontologies, either seen in isolation or as a community of interoperating systems, and devise methodologies for the deployment of such techniques, on the one hand in advanced tools supporting ontology design and management, and on the other hand in applications supporting software agents in operating with ontologies.

    -- http://www.tonesproject.org/

Of particular interest to Protege 4 users and developers, the TONES Ontology Repository collects ontologies that might be of use to tools developers for testing purposes.

See also:

Thing

Although Protege 4's classes are generally described as forming an "is a" (ie, class) hierarchy, they can also be considered as a lattice. The "Thing" class is the "join" (ie, union) of all classes; the "Nothing" class is a subset of their "meet" (ie, intersection). In informal terms, anything can be a Thing.

See also:

Tool

Items in the Tools menu allow use of specialized functionality (eg, plugins).

See also:

Transitive Property

A transitive property is an object property that defines a transitive relationship:

    In mathematics, a binary relation R over a set X is transitive if whenever an element a is related to an element b, and b is in turn related to an element c, then a is also related to c.

    -- Transitive relation (WP)

So, for example, "ancestor" is a transitive relationship: if a is b's ancestor and b is c's ancestor, then a is c's ancestor.

See also:

Triple Store

An RDF Triple Store (also, triplestore) is a special-purpose database, optimized for the storage and retrieval of RDF metadata.

See also:

Turtle

Turtle (Terse RDF Triple Language) is a human-friendly serialization (ie, rendering) format for RDF (Resource Description Framework) graphs. The SPARQL Query Language incorporates a very similar syntax.

See also:

Type

A "type" of an individual is a class that it is an instance of.

See also:


Union

In set theory, the union of two or more sets is a set which contains every member of any base set. So, for example, the set of letters is the union of the sets of consonants and vowels.

See also:

URI

The URI (Uniform Resource Identifier) is similar to the familiar URL (Uniform Resource Locator) which is used to access web pages, etc. In fact, the URL is actually a special case of the URI.

The critical distinction is that, although both URIs and URLs must be unique, a URI need not correspond to an actual resource on the Internet. As long as the identifier is unique, it can safely be used to refer to a resource (eg, an entity).

See also:

URL

The URL (Uniform Resource Locator), a special case of the URI (Uniform Resource Identifier), is used to access web pages, etc.

See also:

V, W, X

View

In Protege 4, a view is an interface element that provides access to some part of the ontology. Specifically, a Protege 4 view is a rectangular display area which may be contained in a tab or shown in a separate window.

This usage is reminiscent of those found in database design, technical illustration, etc. That is, a view reveals a portion of the overall information, seen from a particular perspective.

See also:

Watson

Watson is a set of tools for exploring the Semantic Web. It provides an interactive web interface, web APIs, and editor plugins.

See also:

XML

Various flavors of XML (eg, OWL/XML, RDF/XML) may be used by Protege to encode ontologies as text:

    XML (Extensible Markup Language) is a set of rules for encoding documents electronically. It is defined in the XML 1.0 Specification produced by the W3C and several other related specifications; all are fee-free open standards. XML’s design goals emphasize simplicity, generality, and usability over the Internet. It is a textual data format, with strong support via Unicode for the languages of the world. Although XML’s design focuses on documents, it is widely used for the representation of arbitrary data structures, for example in web services.

    -- XML (WP)

See also:

Y, Z, ...