===============================================================================
Release Notes eClassOWL 5.1 2005-11-6

Created by Martin Hepp, mhepp@computer.org, http://www.heppnetz.de.

For more information, please see http://www.heppnetz.de/eclassowl
===============================================================================


IMPORTANT NOTICE 
================
This ontology is derived from eCl@ss 5.1. eCl@ss is a broad iniative for classifying and describing products and services and 
aims at easing e-business transactions. More information on eCl@ss can be found at 
	http://www.eclass.de.
	
This file is a RESEARCH PROTOTYPE, not an official release and is NOT ENDORSED by 
eCl@ss e.V. It may be used FOR RESEARCH PURPOSES ONLY, not for commercial 
applications.

Please download the official version from http://www.eclass.de for any official use of 
eCl@ss.

If you want to use this ontology for commercial purposes, an individual legal 
framework must be negotiated. In this case, please contact me at mhepp@computer.org, 
and I will establish the link to eCl@ss e.V. 

For additional information, please check the project Web site at 
	http://www.heppnetz.de/eclassowl

DISCLAIMER: 
==========
The ontology is released as it is. Usage is permitted for research purposes only 
and at your own risk! Neither the author nor eCl@ss e.V. can be held liable for 
any damage or loss resulting from the use of this ontology. 

WARNING:
=======
Please note that the ontology size exceeds the capabilities 
of most current ontology tools (e.g. Jena, Protégé, vowlidator,...). and it is thus 
very likely that trying to load the files will crash your system!


I. INTRODUCTION
eClassOWL is an OWL Light Ontology based on the comprehensive products and 
services categorization standard eCl@ss 5.1. For more information on eCl@ss, 
see http://www.eclass.de.

eClass defines 
- products and services concepts, 
- product properties, 
- values for enumerated data types, 
- a hierarchy of the product concepts reflecting the perspective of a buying 
organization (!), and 
- recommendations which properties should be used for which type of products and 
- which values are allowed for which (object) property.

The hierarchy is not based on the taxonomic relationship rdfs:subClassOf.

Also, some architectural aspects of eClass are not compatible with the 
open world assumption of OWL. This ontology tries to capture as much of 
the original semantic as possible while being well within the limits of OWL light.

The URIs for all ontology components begin with

http://ontologies.deri.org/eclass/5.1/#
 
The ontology contains three types of entries:

1. Classes
a) Annotation Classes. Such classes are to be used for the annotation of product instances.
The respective ID is C_<primary key in eClass 5.1>.

"C" denotes that it is a class. A human-readable label and a textual definition are given as Dublin Core properties.

Example:
http://ontologies.deri.org/eclass/5.1/#C_AKK255002

is the ID of the Annotation Class for "agricultural machine" 
(eCl@ss 5.1 category AKK255002)

b) Generic Products and Services Concepts
The ID is C_<primary key in eCl@ss 5.1>-gen.

These classes represent the literal meaning of the respective class label, e.g. "TV Sets" encompasses all TV sets, 
but not any TV set-related item that might belong to a descendent of this category in eCl@ss.

The reason for this is that taxonomic standards often treat related categories that are no subclasses as descendents 
of a given category. Examples are "Ice cubes" as a subcategory of "beverages" or "docking stations" as a subcategory 
of "computers".

Example:
http://ontologies.deri.org/eclass/5.1/#C_AKK255002-gen

is the ID of the generic product category "agricultural machine" 
(eCl@ss 5.1 category AKK255002). If you want to find an instance of agricultural machines, 
this would be the class to look out for.

c) Products and Services Concepts in the Taxonomy
The ID is C_<primary key in eClqss 5.1>-tax.

These classes represent the respective category in the context of the original taxonomy.

Example:
http://ontologies.deri.org/eclass/5.1/#C_AKK255002-tax

is the ID of the category "agricultural machine" in the original taxonomy
(eCl@ss 5.1 category AKK255002). Instances are all instances of this product category 
and all categories that are subcategories of this one in eCl@ss 5.1. Thus, instances of 
"maintenance for agricultural machines" might also be returned if you search for instances of this class.

This would be the typical class to use when a shop manager wants to find all products in the agricultural
machines segment, which includes related products from the perspective of a purchasing organization.

2. Properties
eCl@ss contains a wealth of well-defined properties for product characteristics, e.g. "weight" or "screen size".
They fall into two categories:
a) Datatype Properties
b) Object Properties
The ID for both types is P_<primary key in eCl@ss 5.1>, "P" denoting the fact that it is a property.

Example:
http://ontologies.deri.org/eclass/5.1/#P_BAD875001
is the ID for the Datatype Property "Net Weight in kg".

3. Values
For some properties, eCl@ss defines enumerative values.
The ID is V_<primary key in eCl@ss 5.1>, "V" denoting the fact that it is a value.

II. CONTENT
===========
The current release contains the following amount of ontology components:
Classes: 25658
Properties: 5525
	datatypeProperties: 3232
	objectProperties: 2293
	[total 5525]
Value Instances: 4544
Classes with a property recommendation: 21100
Total # of class-property statements: 403859
ObjectProperties with a value recommendation: 2293
Total # of property-value statements: 10000

Currently not supported are keywords, but the eCl@ss Web page can be used to search by keyword.

The ontology comes in three files:

a) eclass_51en.owl
All classes (generic categories, taxonomic categories, and annotation categories), properties, and values.
b) eclassClassesProperties_51en.owl
Property recommendations for each class.
c)eclassPropertiesValues_51en.owl
Value recommendations for Object Properties

a) is the core ontology. b) and c) capture supporting information that can be loaded to the ontology repository on demand.

III. USAGE
==========
The following examples show how the resulting ontology can be used for various e-Business scenarios.

The prefix "pcs" must be substituted by "http://ontologies.deri.org/eclass/5.1/#"

1. Product Description in the Semantic Web

We assume that “Fendt Supermower“ is an agricultural machine (eCl@ss category AKK255002), 
its weight is 125.5 kg, and the manufacturer name is "Fendt". 
Assumed that the ID for this product instance is “machine1”, the respective product description using 
the eCl@ss ontology would be as follows:

<pcs:C_AKK255002 rdf:ID="machine1">
 <pcs:P_BAD875001>125.50</pcs: P_BAD875001>  <!-- Net Weight -->
 <pcs:P_BAA001001>Fendt</pcs:P_BAA001001>  <!-- Manufacturer -->
 <pcs:P_BAA316001>Fendt Supermower1234</pcs:P_BAA316001> <!-- Name -->
</pcs:C_AKK255002>

Now, we want to search for all agricultural machines in the ontology that weigh less than 160 kg. 
The respective RDQL query would be:

SELECT ?x, ?weight, ?productName, ?vendor WHERE
(?x, <rdf:type>, <pcs:C_AKK255002-gen>)
(?x, <pcs:P_BAA001001>, ?vendor)
(?x, <pcs:P_BAA316001>, ?productName)
(?x, <pcs:P_BAD875001>, ?weight)
AND ?weight <160

Because we want to get only instances of the generic product category, the class to be used in the query 
is C_AKK255002-gen, not C_AKK255002-tax. The later could be used to determine all products that fall in the
respective taxonomy category. For example, a store manager might want to see all products in this product segment, 
including maintenance and spare parts for agricultural machines. 
Just changing the class ID in the query to C_AKK255002-tax would return exactly that.

2. Annotation of Incoming Invoices for Spend Analysis
As described, the usage of this ontology is not limited to product description. It can also be employed to tag 
incoming invoices for spend analysis and cost accounting. 
For this, we need the additional class „IncomingInvoice“ (a concept for paid invoices), 
the annotation property „costAccountingCategory“, and the data type property „totalInUSD“ for the total in US dollar.

<owl:Class rdf:ID="IncomingInvoice"/>
<owl:AnnotationProperty rdf:about="&pcs;costAccountingCategory"/>
<owl:DatatypeProperty rdf:ID="totalInUSD">
 <rdfs:domain rdf:resource="&pcs;IncomingInvoice"/>
 <rdfs:range rdf:resource="&xsd;float"/>
</owl:DatatypeProperty>

Then, we can annotate the incoming invoice over $ 1,200 for the above mentioned mower:

<pcs:IncomingInvoice rdf:ID="invoice1">
<pcs:totalInUSD>1200.00</pcs:totalInUSD>
<pcs:costAccountingCategory rdf:resource="&pcs;C_AKK255002"/>
</pcs:IncomingInvoice>

In order to find all incoming invoices related to the cost accounting category C_AKJ644002-tax 
(“Machine, device (for special applications)”, which is a superordinate class to C_AKK255002-tax) and its 
subclasses, we can use the following RDQL query:

SELECT ?x, ?total WHERE
(?x, <rdf:type> <pcs:IncomingInvoice>) 
(?x, <pcs:costAccountingCategory>, ?y)	 
(?y, <rdfs:subClassOf>  <pcs:C_AKJ644002-tax>) 
(?x, <pcs:totalInUSD>, ?total) 

Especially the fact that we have a sophisticated set of properties in the ontology allows for rich descriptions 
of the items, which eases rule-based content integration significantly. For example, we can use a combination of 
(1) taxonomy class information and (2) property ranges to automatically find the proper cost accounting category. 
A realistic scenario is that we infer the cost accounting ledger from a combination of the supplier name and the
products and service category. For example, invoices referring to the category “Services (unclassified)” will be
treated as “IT services” if the supplier is “IBM”, and “Building maintenance” if the supplier is “Southwest Carpet 
Cleaning”. 

3. Accessing Recommended Properties and Property Values
We can also easily determine the recommended properties for a given class or the recommended property value 
instances for a given property with a simple RDQL query. As per definition, the properties are assigned to the 
annotation class, and not to the generic or taxonomy concept. 

Find recommended properties for C_AKK255002:
SELECT ?property WHERE 
(<pcs:C_AKK255002>, <pcs:recommendedProperty> ?property)

Find recommended values for ObjectProperty P_XYZ001001:
SELECT ?value WHERE 
(<pcs:P_XYZ001001>, <pcs:recommendedValue> ?value)

===============================================================================
Release Notes eClassOWL 5.1 2005-11-6

Created by Martin Hepp, mhepp@computer.org, http://www.heppnetz.de.

For more information, please see http://www.heppnetz.de/eclassowl
===============================================================================	
