This is an archive of an inactive wiki and cannot be modified.

SKOS Applications -- Wiki Draft


Discussions about SKOS often make reference to "applications". This document is intended to provide a description of what a SKOS Application might be, and whether particular applications should be considered in or out of scope when considering descriptions of application behaviour in the documentation.

Status of this Document

This is a wiki draft, for internal use by the W3C Semantic Web Deployment Working Group (SWDWG). It is subject to change without notice, and has no formal status within any W3C process.


Section: Introduction

SKOS is a vocabulary for representing concept schemes. As such, SKOS itself is not an application. Rather, applications may consume or produce vocabularies represented using SKOS. Many of the SKOS Use Cases are centered around applications. For example, Use Case #3 describes an application that supports semantic search across multilingual thesauri in the agriculture domain. This is thus an application that consumes a SKOS vocabulary and uses it to provide some service or functionality to the user -- in this case search across thesauri.

There are many different applications that may consume or produce SKOS, including:

It is unreasonable for the SKOS documents to prescribe general application behaviour. However, we can provide a clear specification of a particular class of applications, which we will call SKOS Vocabulary Checkers.

Section: Validation

The SKOS Reference describes a number of "semantic conditions" which should hold for SKOS vocabularies. For example, skos:prefLabel, skos:altLabel and skos:hiddenLabel are Disjoint Properties. In other words, if a resource is annotated with both a skos:prefLabel and a skos:hiddenLabel, the literals used should be different. If not, the condition has been violated. Two questions arise:

  1. Are "SKOS Applications" expected to check for violation of these
    • semantic conditions?
  2. If conditions are violated, what should an application do?

SKOS Vocabulary Checker

A SKOS Vocabulary Checker takes a document as input and returns either Valid or Invalid. The return value MUST conform with the following:

Valid: The document is a SKOS document and does not violate any of the SKOS semantic conditions.

Invalid: The document violates one or more of the SKOS semantic conditions.

A SKOS Vocabulary Checker SHOULD report network errors occurring during the computation of the imports closure of the document.