Las
anteriores definiciones nos permiten especificar
tanto los diferentes conceptos como las relaciones
(properties) necesarias para el desarrollo
de nuestra ontología ejemplo. El primer
paso será pues la construcción
de la taxonomía de conceptos y su orden
jerárquico, tal y como podemos apreciar
en la figura 1.
Figura
1: Taxonomía de conceptos
Como
se puede observar en la figura anterior existen
dos ramas principales en el grafo claramente
diferenciadas, que establecen los dominios
de “Object”, elementos físicos
que caracterizan nuestra pequeña ontología,
y el dominio “Abstract” utilizado para determinar
las medidas y cantidades que determinaran
una clase en concreto mediante el uso de restricciones.
Hay
que hacer constar que aunque el uso de DataTypeProperties
y de XML Schema podría simplificar
de manera notable el desarrollo de la Ontología
se ha preferido definir clases para los conceptos
de Number y Real para una mayor claridad en
nuestra explicación.
Algunos
conceptos como UnitOfMeasure, Quantity,
o SpeedQuantity se corresponden
con las definiciones dadas anteriormente y
otros conceptos son usados para aportar una
mayor expresividad como:
-
MeasureFn
: Representa las diferentes
medidas que se pueden obtener. Es utilizado
para restringir el dominio o rango de
ciertas propiedades que a continuación
se exponen.
Algunas
de las relaciones necesarias también
tienen su correspondencia con las definiciones
aportadas (magnitude y unitOfMeasure) y otras
son utilizadas para aportar el grado de expresividad
requerido:
-
magnitude
(dominio: MeasureFn, rango:
Number)1
-
unitOfMeasure
(dominio:MeasureFn, rango: UnitOfMeasure)
-
speed
(dominio: Object, rango: SpeedQuantity):
Esta propiedad es usada para poder establecer
distintos valores de velocidad mediante
el uso de individuales.
-
hasMeasureFn
(dominio: Quantity, rango: MeasureFn):
Propiedad usada para establecer correspondencias
entre “cantidades físicas” y “medidas”.
-
lessThan
(dominio: Number, rango: Number):
Se corresponde con el operador relacional
“<” o “menor que”.
Llegados
a este punto y mediante el uso de propiedades
y de individuales, podremos especificar la
clase MotorCycleA, objeto de nuestro estudio
mediante el uso de la siguiente restricción
de su velocidad:
y
por tanto la definición completa sería:
Tomando
la primera de las restricciones, la siguiente
figura muestra cómo es posible la especificación
de este tipo de restricciones mediante el
uso de editores de expresiones como se aprecia
en la figura 2.

Figura
2: Especificación de restricciones
mediante editores
|