Top>Projects>CoSMoS

CoSMoS:
Component Service Model with Semantics
  Overview
  Model Spec.
  Description
    XML
    WSDL
    RDFS
  Downloads
  Demo



Component Service Model with Semantics:
RDF Schema style ver.1.0


Abstract

This document specifies a representation of Component Service Model with Semantics using RDF Schema. This representation uses RDF Schema and OWL to represent semantics and ontologies.

Table of Contents

1. Introduction
2. Namespace
3. RDF Schema representation of CoSMoS
  Concept
  Ontology
  Noun
  Link
  Logics
4. Examples

1.Introduction

This document specifies a representation of Component Service Model with Semantics using RDF Schema (CoSMoS/RDFS). This representation is designed for modeling semantics of components, including concepts, predicates, ontologies, and logics.  Since CoSMoS/RDFS itself cannot represent functional information of components, it must be used with another XML representation of CoSMoS, such as CoSMoS/XML or CoSMoS/WSDL.

2.Namespace

This document uses the following namespaces.

Name Namespace
rdf http://www.w3.org/1999/02/22-rdf-syntax-ns#
rdfs http://www.w3.org/2000/01/rdf-schema#
owl http://www.w3.org/2002/07/owl#
log http://www.w3.org/2000/10/swap/grammar/log#

3. RDF representation of CoSMoS

Concept

CoSMoS/RDFS defines a concept node as a subclass of cosmos:Concept class.

<rdfs:Class rdf:ID="String">
  <rdfs:subClassOf rdf:resource="&cosmos;Concept"/>
</rdf:Description>

The rdf:ID attribute of the rdf:Description defines the name of the concept node.

Predicate

CoSMoS/RDFS defines a predicate node as a subclass of cosmos:Predicate class.

<rdfs:Class rdf:ID="String">
  <rdfs:subClassOf rdf:resource="&cosmos;Predicate"/>
</rdf:Description>

The rdf:ID attribute of the rdf:Description defines the name of the predicate node.

Noun

CoSMoS/RDFS defines a noun node as a subclass of cosmos:Noun class.

<rdfs:Class rdf:ID="String">
  <rdfs:subClassOf rdf:resource="&cosmos;Noun"/>
</rdf:Description>

The rdf:ID attribute of the rdf:Description defines the name of the predicate node.

Ontology

CoSMoS/RDFS defines an ontology using standard ontology languages such as RDF Schema and OWL. Currently, CoSMoS/RDFS supports rdfs:subClassOf and owl:equivalentClass.

rdfs:subClassOf is used to define that a concept is a subtype of another concept. For example, the following CoSMoS/RDFS shows that RV is a subtype of Car.

<rdfs:Class rdf:ID="Car">
  <rdfs:subClassOf rdf:resource="&cosmos;Noun"/>
</rdf:Description>

<rdfs:Class rdf:ID="RV">
  <rdfs:subClassOf rdf:resource="&cosmos;Noun"/>
  <rdfs:subClassOf rdf:resource="#Car"/>
</rdf:Description>

owl:equivalentClass is used to specify that two concepts represent the same thing. For example, the following CoSMoS/RDFS shows that Car and Automobile are the same concepts.

<rdfs:Class rdf:ID="Car">
  <rdfs:subClassOf rdf:resource="&cosmos;Noun"/>
</rdf:Description>

<rdfs:Class rdf:ID="Automobile">
  <rdfs:subClassOf rdf:resource="&cosmos;Noun"/>
  <owl:equivalentClass rdf:resource="#Car"/>
</rdf:Description>

 

Link

CoSMoS/RDFS defines a link between two concepts using rdf:Statement, which consists of rdf:subject, rdf:predicate and rdf:object. First, a link must be defined using rdf:Description. A link node must be an instance of rdfs:Property, and should be as a subclass of either cosmos:Link or cosmos:AnyLink.

<rdfs:Property rdf:ID="String">
  <rdfs:subClassOf rdf:resource="&cosmos;Link"/>
</rdf:Description>

Then, rdf:Statement node is used to specify a link that connects two concept nodes.

<rdf:Statement>
  <rdf:subject rdf:resource="String"/>
  <rdf:predicate rdf:resource="String"/>
  <rdf:object rdf:resource="String"/>
</rdf:Statement>

Logic

Logics is defined using rdf:Statement and log:implies. For example, the following CoSMoS/RDFS shows an induction rule defining that "A Person watches a movie" implies "A TV plays a movie".

<rdf:Statement rdf:ID="aSatament>
  <rdf:subject rdf:resource="#Person"/>
  <rdf:predicate rdf:resource="#watch"/>
  <rdf:object rdf:resource="#Movie"/>
</rdf:Statement>

<rdf:Statement rdf:ID="anotherSatament>
  <rdf:subject rdf:resource="#TV"/>
  <rdf:predicate rdf:resource="#play"/>
  <rdf:object rdf:resource="#Movie"/>
</rdf:Statement>

<rdf:Description rdf:about="#aStatement">
  <log:implies rdf:resource="#anotherStatement"/>
</rdf:Description>

rdf:Bag and rdf:Alt are used as Boolean AND and OR operations, respectively.

4. Examples of CoSMoS/RDFS

Here is an example of CoSMoS/RDFS

CoSMoS/RDFS CoSMoS graph representation
sample.rdfs

(c) Keita Fujii (kfujii@ics.uci.edu)
Netgroup, School of Information and Computer Science, UC Irvine