Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Mouna PDF
Mouna PDF
SISTEMADERECUPERACINDELA
INFORMACINPARAELSECTORDELMUEBLEY
AFINES
Realizado por:
Mouna Ziouziou
Dirigido por:
Dr. Javier Samper Zapater
A mis queridos padres y hermanos
por el tiempo y los momentos que no pude pasar con ellos.
II
AGRADECIMIENTOS
A mis amigos, Jos Carlos, Lamia, Jorge y Fatha por haber sido
mi familia aqu. Por escucharme y aguantarme en los momentos ms
difciles. Os quiero.
III
IV
NDICEGENERAL
AGRADECIMIENTOS..........................................................................III
0. RESUMEN.......................................................................................XI
1. INTRODUCCIN........................................................................2
1.1 INTRODUCCIN......................................................................................................2
1.2 MOTIVACIN.........................................................................................................4
1.3 OBJETIVOS.............................................................................................................5
2. ESTADODELARTE...................................................................6
2.1 NECESIDADDELAINTEROPERABILIDADENLAINDUSTRIADELMUEBLEYAFINES....................6
2.2 FUNSTEP............................................................................................................10
2.2.1. ElproyectoFunStep................................................................................10
2.2.2. ElestndarISOfunStep..........................................................................11
2.2.2.1. LaherramientaCadef....................................................................13
2.3 LAWEBSEMNTICA............................................................................................15
2.3.1. IntroduccinalaWebdetercerageneracin.........................................15
2.3.2. DescripcindelaWebSemntica...........................................................16
2.3.3. Representacindelconocimiento...........................................................19
2.3.4. XML:primerpasohacialaWebsemntica............................................21
2.3.5. Ontologas...............................................................................................23
2.3.5.1 Elementosdeunaontologa..........................................................25
2.3.5.2 TiposdeOntologas.......................................................................26
2.3.5.3 OntologasfrenteaTaxonomas...................................................27
2.3.5.4 Lenguajesdeontologas................................................................28
2.3.5.5 Metodologasylibrerasparaconstruccindeontologas..........35
2.3.5.6 HerramientasparalaconstruccindeOntologas.......................40
2.3.6. BasesdeConocimientofrenteaBasesdeDatos....................................43
2.3.7. Sistemasdealmacenamiento.................................................................43
2.3.8. Razonadores...........................................................................................44
2.3.9. Lenguajesdeconsulta.............................................................................46
3. METODOLOGAYPLANDETRABAJO.............................49
3.1. PLANIFICACINYGESTINDELPROYECTO........................................................49
3.1.1. Definicinderecursos.............................................................................50
3.1.1.1Recursoshumanos............................................................................50
3.1.1.2Recursosdelentorno........................................................................51
3.1.2. Planificacintemporal............................................................................51
3.1.2.1DiagramadeGantt.............................................................................56
3.2. ESTIMACINDECOSTESDELPROYECTO............................................................58
3.2.1. CosteLaboral..........................................................................................58
3.2.1.1Tcnicabasadaenelproceso...........................................................59
3.2.1.2ElmodeloCOCOMO2........................................................................61
V
4. PROCESODEINGENIERA...................................................67
4.1 INTRODUCCIN....................................................................................................67
4.2 ONTOLOGAFUNSTEP.CICLODEVIDA........................................................................67
4.2.1. EspecificacindeRequisitos...................................................................68
4.2.2. AnlisisdelModelodeDatosfunStep....................................................69
4.2.3. AdquisicindeConocimientos................................................................77
4.2.4. EspecificacindelaOntologa................................................................79
4.2.5. Decisionesdediseo...............................................................................80
4.2.6. ConstruccindelaOntologa..................................................................84
4.3 APLICACINDEBSQUEDAWEB............................................................................94
4.3.1. FASEDEANLISIS....................................................................................94
4.3.1.1.Especificacinderequisitos............................................................95
4.3.1.2.Funcionalidadesdelsistema.............................................................97
4.3.1.3.Casosdeuso......................................................................................98
4.3.1.4.DiagramasdeActividad..................................................................102
4.3.1.5.Anlisisdelinterfazdeusuario......................................................105
4.3.2. FASEDEDISEO....................................................................................106
4.3.2.1.DiseodelaAplicacin...................................................................106
4.3.2.2.DiseodelaInterfazdeUsuario....................................................112
5. IMPLEMENTACINYPRUEBAS.......................................115
5.1 FASEDEIMPLEMENTACIN..........................................................................115
5.1.1. ImplantacindelaOntologaenlaAplicacin.....................................117
5.1.2. Notasdeimplementacin.....................................................................119
5.2 PRUEBASYEVALUACIN...............................................................................122
5.2.1. Fundamentosdelaprueba...................................................................122
5.2.2. Pruebasdelsistema..............................................................................122
5.2.3. PruebasdeConsistenciaenlaOntologa..............................................136
6. CONCLUSIONESYTRABAJOFUTURO............................139
6.1. CONCLUSIONES............................................................................................139
6.2. TRABAJOFUTURO........................................................................................141
BIBLIOGRAFA............................................................................143
ANEXOS.........................................................................................145
VI
NDICEDEFIGURAS
VII
Figura 5.4 Ejemplo de bsqueda de Conjuntos de saln .......................................... - 127 -
Figura 5.5 Ejemplo de bsqueda de Composiciones con camas .............................. - 128 -
Figura 5.6 Ejemplo de bsqueda de camas individuales con cabecero .................... - 129 -
Figura 5.7 Ejemplo de bsqueda de Sillas modenas en Valencia ciudad ................. - 130 -
Figura 5.8 Ejemplo de bsqueda de Sillas con un rango de precio .......................... - 131 -
Figura 5.9 Ejemplo de bsqueda de Mesas de saln cuadradas ............................... - 132 -
Figura 5.10 Obtener detalles del producto Bedroom Syros 2 ............................... - 133 -
Figura 5.11 Obtener detalles del producto Diez4 Single Bed ............................... - 133 -
Figura 5.12 Obtener detalles del producto Carlotta Chair ................................... - 134 -
Figura 5.13 Obtener detalles del producto Dubai Chair ...................................... - 134 -
Figura 5.14 Obtener detalles del producto Javea Table 031 ................................ - 135 -
Figura 5.15 Inconsistencias detectadas con Racer-Pro. ............................................ - 136 -
Figura 5.16 Chequeo de consistencia de la ontologa con RacerPro ........................ - 137 -
Figura 6.1 Nueva implantacin del Cadef (Versin beta). ....................................... - 142 -
VIII
NDICEDETABLAS
IX
X
0. RESUMEN
Este proyecto surge, en primer lugar, como iniciativa para promover el uso de un
vocabulario comn y unificado de trminos que represente adecuadamente el
significado (semntica) de los conceptos ms usados en el sector del mueble y afines,
con el objetivo de solventar el importante problema de la falta de interoperabilidad
semntica que existe en esa industria. Este problema dificulta enormemente el
intercambio de informacin entre fabricantes, distribuidores, comercios y clientes, y
ralentiza el lanzamiento de nuevos productos al mercado. En segundo lugar, el proyecto
surge para ofrecer una herramienta de bsqueda que facilite al usuario obtener
informacin clara y precisa correspondiente a sus requisitos especficos de bsqueda
(color del mueble, procedencia, dimensiones, precio, etc.).
Para conseguir los objetivos marcados se han seguido las siguientes etapas:
XI
CAPITULO 1 - INTRODUCCIN
1. INTRODUCCIN
1.1 Introduccin
El rpido desarrollo de la sociedad de la informacin y de sus tecnologas ha
hecho posible la superacin de retos como el almacenamiento de datos. La
comunicacin entre sistemas de informacin heterogneos y distantes geogrficamente
es tambin otro problema resuelto gracias a Internet y a la universalidad de sus
protocolos de comunicacin. Con todo, an existen algunos retos que superar. A saber:
la bsqueda de informacin y su integracin. El ejemplo ms claro se encuentra en
Internet. A pesar de la cantidad de informacin abrumadora en la red, no siempre el
usuario encuentra lo que desea cuando emplea buscadores basados en palabras clave, y
muchas veces tarda demasiado tiempo en encontrar la informacin deseada. Segn
muchos autores, la solucin a estos radica en el uso de metadatos y ontologas.
Los metadatos son datos que a su vez describen datos, y denotan cualquier tipo
de informacin sobre la estructura y el contenido de un recurso, ya sea un documento
HTML, una imagen, un documento de vdeo, un conjunto de datos o cualquier otro
recurso. En el campo del almacenamiento y recuperacin de la informacin, los
metadatos permiten acceder ms fcilmente a los recursos que los incluyen. Una de las
facetas ms interesantes de los metadatos es su utilidad para conseguir la
interoperatividad entre diferentes sistemas de informacin, que pueden estar basados
en distintas concepciones y tecnologas.
Las ontologas sirven tambin para conseguir que los sistemas interoperen.
Dos sistemas son interoperables si pueden trabajar conjuntamente de una forma
-2-
CAPITULO 1 - INTRODUCCIN
El sector del mobiliario y afines (mbito de este proyecto) se vio afectado por el
problema de la falta de interoperabilidad, y en el ao 1998 naci el proyecto funStep
con los siguientes objetivos principales:
Por ello, la primera meta de este proyecto es conseguir dicha ontologa, que
permitir catalogar la informacin mediante el significado de las palabras relacionadas
con el sector en cuestin. Gracias al conocimiento almacenado en ella, las aplicaciones
podrn extraer automticamente o semiautomticamente datos de las pginas web,
procesarlos y realizar inferencias a partir de ellos, as como tomar decisiones y negociar
con otros agentes o personas.
-3-
CAPITULO 1 - INTRODUCCIN
1.2 Motivacin
La idea de realizar este proyecto surgi durante una entrevista que mantuve con
la directora del departamento de Tecnologas de la Informacin (TI) de AIDIMA, Da.
Mara Jos Nez, donde realic prcticas en empresa durante el curso 2007/08. Este
departamento ha participado en docenas de proyectos internacionales relacionados con
las tecnologas de la informacin; y ha desarrollado y promueve funStep (ISO 10303-
236), el estndar internacional en el sector del mueble para el intercambio de
informacin en sistemas CAD.
Cuando empec a leer sobre Web Semntica, al igual que mucha gente, me
pareci fascinante la idea de dotar a la web actual de inteligencia y expresar los datos de
manera que sea comprensible para las mquinas, y que permita hacer deducciones
automticas a partir de ellos, consiguiendo as que las mquinas liberen a los humanos
de muchas tareas tediosas.
-4-
CAPITULO 1 - INTRODUCCIN
1.3 Objetivos
El proyecto tiene unos objetivos bien definidos que son los siguientes:
-5-
CAPITULO 2 ESTADO DEL ARTE
2. ESTADODELARTE
2.1 Necesidaddelainteroperabilidadenlaindustriadel
muebleyafines
-6-
CAPITULO 2 ESTADO DEL ARTE
-7-
CAPITULO 2 ESTADO DEL ARTE
Debido a que las PYMES no usan un vocabulario comn, existe una falta de
diccionarios de datos interoperables. Varias grandes organizaciones de estndares que
han desarrollado los diccionarios de datos electrnicos han reconocido que una parte de
la solucin de este problema es la armonizacin entre los diccionarios internacionales
disponibles. El primer paso para el intercambio de informacin entre los componentes
econmicos de las fronteras nacionales es la capacidad de utilizar la misma
terminologa.
Hay una gran necesidad de transferir datos diseos CAD, pedidos, albaranes,
facturas, etc.- de forma estructurada entre fabricantes, distribuidores, clientes, etc. En la
industria de diseo de interiores, hoy en da esto es casi imposible de hacer sin grandes
inversiones por parte de cada uno de los fabricantes. La nica manera de simplificar y
hacer ms eficiente este proceso es llegar a un acuerdo sobre una ontologa comn para
los datos relacionados con el producto.
-8-
CAPITULO 2 ESTADO DEL ARTE
Algunos ejemplos:
-9-
CAPITULO 2 ESTADO DEL ARTE
2.2 FunStep
2.2.1. ElproyectoFunStep
El proyecto funStep surge debido a la necesidad que tienen los fabricantes y
tiendas de mobiliario de intercambiar informacin de producto, tanto grfica como
textualmente independiente del sistema informtico utilizado.
- 10 -
CAPITULO 2 ESTADO DEL ARTE
2.2.2. ElestndarISOfunStep
- 11 -
CAPITULO 2 ESTADO DEL ARTE
- 12 -
CAPITULO 2 ESTADO DEL ARTE
2.2.2.1. LaherramientaCadef
Dado que esta herramienta est construida bajo el estndar funStep, soporta
varias funcionalidades adicionales interesantes para el fabricante: vnculos multimedia,
enlaces a dibujos CAD2D y 3D, el desglose de productos, restricciones, precios segn
configuracin, definicin de las partes constituyentes de un mueble, materiales, telas,
herrajes,
En la figura 2.2 se muestra una captura de pantalla del Cadef. Y en la figura 2.3
se muestra su implantacin actual, enlazndola con la ontologa funStep que se ha
creado en el presente proyecto.
- 13 -
CAPITULO 2 ESTADO DEL ARTE
- 14 -
CAPITULO 2 ESTADO DEL ARTE
2.3 LaWebSemntica
2.3.1. IntroduccinalaWebdetercerageneracin
El mundo de la WWW ha permitido en la ltima dcada disponer de un volumen
de informacin que hasta el momento era impensable por vas tradicionales. Esto, al
mismo tiempo que ha propiciado el xito de la Web, tambin ha originado sus
principales problemas: sobrecarga de informacin y heterogeneidad de fuentes de
informacin, lo cual resulta en un grave problema de interoperabilidad.
- 15 -
CAPITULO 2 ESTADO DEL ARTE
2.3.2. DescripcindelaWebSemntica
La Web slo puede alcanzar todo su potencial si llega a ser un sitio donde se
puedan compartir datos y sean procesados por herramientas automticas, as como por
personas. Para adaptarse a la Web, los programas del maana deben ser capaces de
compartir y procesar datos incluso cuando estos programas se hayan diseado de forma
completamente independiente. La Web semntica es una iniciativa del consorcio World
Wide Web (W3C), diseada para desempear un papel de liderazgo en la definicin de la
Web. ste desarrolla especificaciones abiertas para aquellas tecnologas que estn
preparadas para distribuciones a gran escala, e identifica -mediante el desarrollo
avanzado de cdigo abierto- los componentes de la infraestructura que en el futuro se
necesitarn adaptar a la Web.
- 16 -
CAPITULO 2 ESTADO DEL ARTE
La unin de todas estas capas producira una Web Semntica potente, segura y
amigable.
- 18 -
CAPITULO 2 ESTADO DEL ARTE
2.3.3. Representacindelconocimiento
La expresin pedir a la gente que haga un esfuerzo significa que los humanos
deben representar los datos en algn lenguaje formal (lgico y axiomtico), de manera
que las mquinas puedan usarlos para extraer inferencias lgicas. Estos lenguajes,
vinculados a la representacin del conocimiento, se conocen como lenguajes de
representacin de conocimiento.
- 19 -
CAPITULO 2 ESTADO DEL ARTE
reglas son usadas posteriormente por los motores de razonamiento para inferir
conocimiento a partir de las reglas definidas inicialmente.
- 20 -
CAPITULO 2 ESTADO DEL ARTE
2.3.4. XML:primerpasohacialaWebsemntica
Se pueden crear documentos XML para casi todos los lenguajes humanos, ya
que el juego de caracteres predefinido para l es el Unicode.
- 22 -
CAPITULO 2 ESTADO DEL ARTE
En el caso del comercio B2B, que XML no incluya ningn mecanismo para la
interpretacin semntica constituye un gran problema. Varias empresas pueden
intercambiar documentos XML si todas las partes se han puesto de acuerdo sobre las
DTD (o los esquemas) que van a usar, pero surgirn problemas cuando aparezcan
empresas que usen otras DTD, aunque sean equivalentes. Por ejemplo, un SI que acepte
etiquetas <precio> no ser capaz de procesar etiquetas <precioUnidad>, aunque sean
semnticamente equivalentes.
2.3.5. Ontologas
Cabe sealar que no todas las ontologas deben ser formales: existen ontologas
que se expresan de una forma restringida y estructurada del lenguaje natural, e incluso
mediante el lenguaje natural (espaol, francs, ingls,).
- 23 -
CAPITULO 2 ESTADO DEL ARTE
- 24 -
CAPITULO 2 ESTADO DEL ARTE
otras. Por lo tanto, es razonable que haya una cierta divergencia entre sus mltiples
definiciones. A pesar de que una ontologa pueda tomar una gran variedad de formas,
necesariamente incluir un vocabulario de trminos, alguna especificacin de su
significado y una indicacin de cmo los conceptos se interrelacionan, lo cual impone
una estructura sobre el dominio y restringe las posibles interpretaciones de los trminos
(Uschold, 1999).
Las ontologas tienen los siguientes componentes que servirn para representar
el conocimiento de algn dominio (Gruber, 1993b, citado por Samper):
Conceptos: son las ideas bsicas que se intentan formalizar. Pueden ser clases
de objetos, mtodos, planes, estrategias, procesos de razonamiento, etc.
Axiomas o reglas: son teoremas que se declaran sobre relaciones que deben
cumplir los elementos de la ontologa. Permiten junto al mecanismo de la
herencia de conceptos, inferir conocimiento que no est indicado explcitamente
en la taxonoma de conceptos.
2.3.5.1 Elementosdeunaontologa
- 25 -
CAPITULO 2 ESTADO DEL ARTE
Clases Hermanas. Dos clases son hermanas si comparten la clase padre. Son
subclases de una misma clase. Las clases PartidoSocialy PartidoPopular
seran hermanas.
Instancias: son entidades que pertenecen a una determinada clase. Por ejemplo,
"Andaluca" es una instancia de la clase "ComunidadAutnoma" y "PSOE" es
una instancia de la clase "PartidoPoltico". Las clases se suelen organizar en una
jerarqua, donde las instancias de una subclase pertenecen a la clase. Por
ejemplo, podramos tener en nuestra ontologa la clase "localizacin" de la que
sera subclase "ComunidadAutnoma".
2.3.5.2 TiposdeOntologas
- 26 -
CAPITULO 2 ESTADO DEL ARTE
2.3.5.3 OntologasfrenteaTaxonomas
Segn Noy y MacGuinness (Noy y MacGuiness, 2001) hay tres propiedades que
una ontologa debe poseer para diferenciarla de una taxonoma o tesauro:
Estricta jerarqua de conceptos: toda instancia de una clase debe ser tambin
- 27 -
CAPITULO 2 ESTADO DEL ARTE
2.3.5.4 Lenguajesdeontologas
El lenguaje debe poseer una sintaxis bien definida para poder leer con
facilidad la ontologa definida.
Debe tener una semntica bien definida para comprender perfectamente el
funcionamiento de la ontologa.
Debe tener suficiente expresividad para poder capturar varias ontologas.
Debe ser fcilmente mapeable desde/hacia otros lenguajes ontolgicos.
Debe ser eficiente a la hora de realizar razonamiento.
Merece la pena destacar dos lenguajes intermedios, KIF y PIF, que son los que
usan aplicaciones heterogneas e independientes cuando necesitan intercambiar
conocimiento.
- 28 -
CAPITULO 2 ESTADO DEL ARTE
2.3.5.4.1 Lenguajestradicionales
- 29 -
CAPITULO 2 ESTADO DEL ARTE
2.3.5.4.2 LenguajesbasadosenestndaresyenWeb
RDF y RDFS
Recursos (sujeto) que son todo aquello de lo que se puede decir algo y son
referenciados por un identificador nico de recursos (URI).
- 30 -
CAPITULO 2 ESTADO DEL ARTE
Declaraciones (objeto) los cuales nos sirven para dar valores a las propiedades
de un recurso especfico. El objeto de un estamento puede ser un recurso o un
literal, por ejemplo, un recurso especificado por un URI, o bien un string u otras
primitivas de datos definidas por XML.
Ntese que las propiedades (direccin, ciudad, cdigo postal, calle y estado) y el
sujeto se representan como URIs, mientras que los objetos se representan como cadenas
de texto. Nada impide que los objetos se representen mediante URIs: un URI puede ser
construido para
cualquier entidad o recurso (tangible o intangible) que pueda ser nombrado, por lo que
los hechos RDF pueden referirse, consecuentemente, a cualquier cosa (Rodrguez,
2005).
- 31 -
CAPITULO 2 ESTADO DEL ARTE
1) rdfs:Resource. Se consideran instancias de esta clase los recursos, que son todas
las entidades descritas por expresiones RDF.
rdfs:label proporciona una versin legible para los humanos del nombre
del recurso. P.e.,<rdfs:label>Frigorfico</rdfs:label>.
- 32 -
CAPITULO 2 ESTADO DEL ARTE
La Web semntica no sera posible solo con RDF y XML debido a que RDF
Schema presenta muchas carencias:
Cuando se define un rango para una propiedad, se define para todas las clases.
No se pueden declarar restricciones de rango que sean vlidas solo para algunas
clases.
No se puede reflejar que algunas determinadas clases son disjuntas. Por ejemplo,
en RDF Schema puede declararse que Hombre y Mujer son subclases de
Persona, pero no que son disjuntas. Es decir, resulta imposible especificar que
ninguna persona puede ser a la vez hombre y mujer.
DAML+OIL
Los usuarios de RDF y RDFS conforme utilizaban estos lenguajes para expresar
los metadatos de sus recursos, observaban que ambos lenguajes describan un conjunto
escaso de facilidades para expresar estos metadatos. Por ejemplo, no podan hacer uso
de datatypes del XMLSchema (XMLS, 2001), no podan hacer enumeraciones etc. La
comunidad de usuarios vieron en RDF una herramienta para expresar sus recursos, pero
tambin lamentaban que no existiesen facilidades para permitir la inferencia sobre las
descripciones RDF. Tena que surgir una evolucin de este lenguaje que permitiese el
razonamiento sobre las descripciones.
Por estos motivos, unieron sus esfuerzos los desarrolladores de DAML con los de
- 33 -
CAPITULO 2 ESTADO DEL ARTE
OIL para favorecerse de los sistemas de clasificacin basados en frames de este ltimo.
El resultado final fue el lenguaje DAML+OIL( DAML+OIL, 2001), un lenguaje que a
pesar de tener muchas coincidencias con OIL, tambin tiene sus diferencias, la principal
es que se trata de un lenguaje que se aleja de los ideales de frames de OIL, para
acercarse ms a una base de lenguajes de lgica descriptiva.
Por lo tanto, DAML+OIL es un lenguaje que tiene una semntica sencilla y bien
definida, y que nos ofrece ms expresiones sofisticadas para las descripciones de
clasificaciones y propiedades de los recursos que las que ofreca RDF y RDFS.
OWL
OWL (Ontology Web Language) (OWL, 2004) surge del W3C como la bsqueda
de un
lenguaje de especificacin de ontologas que sirva como estndar para todos los
investigadores de la Web semntica. Deriva del lenguaje DAML + OIL y se construye
sobre la sintaxis de RDF/XML. Se le pretende dar tantas funcionalidades como las que
posee DAML + OIL, aunque diferencindose en algunas.
Como pude verse, OWL tiene mucha ms capacidad expresiva que RDFS.
Adems, OWL facilita la importacin y exportacin de clases: incluye propiedades
como sameAs, equivalentClass, equivalentProperty, differentFrom, etc. Por ejemplo,
equivalentClass permite establecer que dos clases de distintas ontologas sean
equivalentes (p.e. onto1:Persona y onto2:SerHumano), esto significa, que cada
instancia de una clase ser tambin instancia de la otra clase, y viceversa. La capacidad
de expresar que dos clases son iguales resulta muy til cuando se integran o mezclan
ontologas y permite la interoperabilidad.
- 34 -
CAPITULO 2 ESTADO DEL ARTE
OWL DL: esta versin ya tiene todo el vocabulario OWL completo. Las
limitaciones son que las clases no son instancias ni tipos y los tipos no son ni
instancias ni clases. No permite restricciones de cardinalidad en propiedades
transitivas. Posee gran expresividad sin perder las propiedades de completitud y
decidibilidad.
OWL Full: esta versin tambin incluye todo el vocabulario de OWL, pero
interpretado de forma ms amplia que en OWL DL, con la libertad
proporcionada por RDF, en este caso no hay limitaciones para explotar todo su
potencial. No tiene garantas computacionales.
2.3.5.5 Metodologasylibrerasparaconstruccindeontologas
Hay dos mtodos principales que nos permite diferenciar dos tipos de ontologas
segn su construccin:
- 35 -
CAPITULO 2 ESTADO DEL ARTE
Adems de las actividades anteriores, que se deben llevar a cabo en cada etapa
homnima, existen otras actividades que pueden ser realizadas durante todo el ciclo de
vida de la ontologa:
- 36 -
CAPITULO 2 ESTADO DEL ARTE
Figura 2.11 Actividades del ciclo de vida del desarrollo de una ontologa
- 37 -
CAPITULO 2 ESTADO DEL ARTE
- 39 -
CAPITULO 2 ESTADO DEL ARTE
2.3.5.6 HerramientasparalaconstruccindeOntologas
- 40 -
CAPITULO 2 ESTADO DEL ARTE
- 41 -
CAPITULO 2 ESTADO DEL ARTE
- 42 -
CAPITULO 2 ESTADO DEL ARTE
2.3.6. BasesdeConocimientofrenteaBasesdeDatos
Las bases de conocimiento (KM) son una evolucin de las bases de datos (BD)
tradicionales en un intento de plasmar elementos de conocimiento y la forma en que ste
debe ser utilizado. Adems se les dota con conocimiento sobre s mismas: una KM
sabe lo que sabe (Moreno, 2000).
2.3.7. Sistemasdealmacenamiento
- 43 -
CAPITULO 2 ESTADO DEL ARTE
2.3.8. Razonadores
Los razonadores son una de las herramientas ms importantes utilizadas con las
ontologas, sirven para realizar inferencia (deducir informacin adicional), a travs de
los conceptos y en algunos casos las instancias, para obtener nuevo conocimiento.
Generalmente difieren en el lenguaje formal en el que se especifica el conocimiento, as
como los lenguajes de consulta que puedan utilizar.
- 44 -
CAPITULO 2 ESTADO DEL ARTE
- 45 -
CAPITULO 2 ESTADO DEL ARTE
2.3.9. Lenguajesdeconsulta
Se destacan los siguientes:
RDQL (RDF Data Query Language) fue desarrollado por HP para que fuese el
lenguaje de consulta para RDF en los modelos de Jena, con la idea de
convertirse en un modelo de consulta orientado a datos por ser una
aproximacin totalmente declarativa. Debido a esto, solo se pueden hacer
consultas sobre la informacin que hay en el modelo, por lo que la inferencia o
razonamiento no es posible.
Como RDF provee una estructura de grafos, donde los nodos son recursos o
literales, RDQL permite especificar patrones que son mapeados contra las
tripletas (sujeto, predicado, objeto) del modelo para retornar un resultado.
Transformacin de grafo
Soporte de RDF Schema
Soporte de Datatype de XML Schema
Sintaxis expresivas para los path ( o URI)
Matching opcional de path (o URI)
- 46 -
CAPITULO 2 ESTADO DEL ARTE
Query y Answer descritos por una ontologa dql.daml. Esta ontologa describe
como deben de estar formadas tanto las consultas como las respuestas.
OWL-QL tiene en cuenta todos estos factores e intenta subsanar todas las
deficiencias que hasta ahora se haban encontrado en los dems lenguajes de
requerimientos.
- 47 -
CAPITULO 2 ESTADO DEL ARTE
- 48 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
3. METODOLOGAYPLANDETRABAJO
3.1. Planificacinygestindelproyecto
La estimacin comienza con una descripcin del mbito del proyecto. Luego, se
descompone el problema en un conjunto de problemas ms pequeos, y se estima el
esfuerzo para realizar cada uno de stos empleando datos histricos y la experiencia
como guas (Pressman, 2007).
- 49 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
3.1.1. Definicinderecursos
Los recursos necesarios para completar el esfuerzo de desarrollo de este
proyecto se van a determinar en dos grandes categoras de los recursos de ingeniera del
software: el personal y el entorno de desarrollo (hardware y herramientas de software).
3.1.1.1 Recursoshumanos
- 50 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
3.1.1.2 Recursosdelentorno
- 51 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
Durante toda la duracin del proyecto se contar con la ayuda del director y del
jefe de proyecto, por lo que tambin habr que tener en cuenta las horas que
stos le dediquen.
1) Puesta al da bibliogrfica
- 52 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
5) Implementacin
- 53 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
Estimacin de tiempos
Utilizando las estructuras de la figura 3.1, el tiempo estimado para completar las
tareas se especifica en la tabla 3.1.
Las horas estimadas que dedicar cada uno de los recursos humanos de los que
se dispone sern las siguientes:
Identificacin de hitos
Para identificar los hitos hay que centrarse en la divisin que se ha realizado de
la estructura del proyecto y extraer de ella los puntos clave en el desarrollo del mismo.
En este caso, los puntos clave que permiten tener constancia del progreso del proyecto
son claramente los siguientes:
- 55 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
3.1.2.1 DiagramadeGantt
- 56 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
- 57 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
3.2. Estimacindecostesdelproyecto
La realizacin de cualquier proyecto implica una serie de costes directos e
indirectos.
Los costes directos son aquellos que son imputables directamente al proyecto y
consecuencia del mismo, como son: costes de personal, subcontrataciones, material,
equipo, viajes, estancias y otros gastos adicionales (adquisicin de documentacin,
comidas, o ciertos gastos de representacin).
Los costes indirectos se entienden como aquellos que la empresa debe ingresar a
travs de los proyectos que realice y en los cuales sta incurre, realice o no proyectos.
Se conocen tambin como los costes generales, tales como: alquiler y amortizacin del
inmueble, costes de suministros, de limpieza, mensajera, costes laborales asociados a
personal no productivo del proyecto (administracin, directivos, etc.).
Para poder estimar el esfuerzo requerido por cada uno de los participantes para
llevar a cabo el proyecto en su totalidad, conviene usar alguna de las tcnicas existentes.
En el siguiente apartado se realiza esta estimacin utilizando la tcnica de
descomposicin basada en el proceso.
3.2.1.1 Tcnicabasadaenelproceso
Una vez calculados los costes de personal, se va a proceder a estimar los costes
materiales. stos corresponden a los gastos de material informtico tanto software
como hardware, gastos de viajes, gastos de representacin y otros gastos como por
ejemplo de material de oficina.
Subcontrataciones
- 59 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
Material y equipo
Gatos Coste
PC porttil Intel Pentium Centrino 1.000
PC porttil Intel Pentium Core Duo 1.000
MS Office 2007 100
Material de imprenta y material fungible 50
Total 2.650
Viajes y estancias
Otros costes
Coste Total
- 60 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
3.2.1.2 ElmodeloCOCOMO2
Se elige el modelo COCOMO para estimar los costes de este proyecto por las
siguientes razones:
3. Tiene una gran tradicin desde su primera versin en 1981 (Boehm, 1981),
pasando por un refinamiento para el desarrollo de software en ADA (Boehm y
Royce, 1989), hasta su versin COCOMO II, publicada en 1995 (Boehm et al.,
1995).
P = A x ESLOCB x M + PMm
A: Este parmetro viene dado por Boehm, que propone que sea de 2,5.
- 61 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
Siendo:
Cohesin del equipo: Refleja qu tan bien se conocen entre ellos los
miembros del equipo y qu tan bien trabajan juntos. Muy bajo significa
interacciones muy difciles, y extraalto significa un equipo integrado y
efectivo sin problemas de comunicacin. En este caso no existe
informacin ya que se crea un nuevo equipo valor Nominal (3).
- 62 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
Los atributos que se utilizan para ajustar las estimaciones iniciales en el modelo
postarquitectnico son de cuatro clases:
2. Atributos de la computadora:
- 63 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
3. Atributos de personal:
4. Atributos de proyecto:
- 64 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
Siendo:
- 65 -
CAPITULO 3 METODOLOGA Y PLAN DE TRABAJO
Ahora se va a calcular el coste total del proyecto, para ello se debe aadir al
coste de personal obtenido el coste material, es decir, los costes del software y del
hardware, y el resto de gastos que se han estimado en el apartado anterior:
- 66 -
CAPITULO 4 PROCESO DE INGENIERA
4. PROCESODEINGENIERA
4.1 Introduccin
En el desarrollo de este proyecto se han llevado a cabo dos tareas de naturalezas
bien distintas, cada una de las cuales requiere un anlisis, un diseo y una
implementacin.
Creacin de una ontologa del dominio del mueble y afines, que clasifica y
define los trminos de la industria del mueble y afines, basndose en el
estndar funStep.
4.2 OntologafunStep.Ciclodevida.
La primera tarea en el desarrollo del proyecto ha sido la realizacin de una
ontologa que cubriera el mbito del mueble y afines, incorporando modelos y
definiciones del estndar internacional funStep.
- 67 -
CAPITULO 4 PROCESO DE INGENIERA
4.2.1. EspecificacindeRequisitos
Hay que tener en cuenta que la Web Semntica es una de las reas de
conocimiento en mayor expansin, los estndares son bastante nuevos y aunque
comienzan a tener amplia acogida en la actualidad, es cierto que todava pueden
cambiar de una manera considerable. Es por ello que se tendr en cuenta la naturaleza
de la solucin y la seleccin de las herramientas para su realizacin.
Tambin se tendr en cuenta que la ontologa ser usada en un futuro para incluir
un volumen de datos considerable, por lo cual deber ser compacta en cuanto a su
extensin en disco.
- 68 -
CAPITULO 4 PROCESO DE INGENIERA
4.2.2. AnlisisdelModelodeDatosfunStep
- 69 -
CAPITULO 4 PROCESO DE INGENIERA
De estas cuatro partes, nos interesa la primera y la tercera. Las otras dos se
refieren a temas que no abarcar el mbito de nuestra ontologa, tales como descripcin
geomtrica, apariencia visual del producto, etc.
A continuacin se va a analizar cada una de las partes del modelo que son de
nuestro inters:
- 70 -
CAPITULO 4 PROCESO DE INGENIERA
Organisation (Organizacin)
Product_class (Clase de producto)
Product_class_relationship (Clase de relacin con producto)
Class_category_association (Clase de asociacin de una categora de
especificacin con una clase de producto)
Specification_category (Categora de especificacin)
Specification (Especificacin)
Product_specification (Especificacin de producto)
En la figura 4.4 se muestra la entidad Organisation y las clases relacionadas con ella.
- 71 -
CAPITULO 4 PROCESO DE INGENIERA
De esta parte se trunca toda la informacin que tiene que ver con los empleados
de una empresa, es decir, la clase Person y todas las que relacionan esta clase con
Organisation. Nos quedamos con la clase Organisation (Organizacin) que representar
en nuestro modelo a los distintos agentes de la cadena de valor (proveedores, fabricantes
y comercios), y la clase Address (Direccin), que contiene toda la informacin de
contacto de una empresa.
- 72 -
CAPITULO 4 PROCESO DE INGENIERA
- 73 -
CAPITULO 4 PROCESO DE INGENIERA
- 74 -
CAPITULO 4 PROCESO DE INGENIERA
en los catlogos de mueble, tales como: materiales, colores, acabados, etc. Y la clase
Specification representa valores de una SC, por ejemplo los valores: nogal, madera,
rojo, etc.
Propiedades generales, que sern las propiedades que tiene todo mueble en
general, por ejemplo: material, color, etc.
Tras este anlisis, se obtienen las siguientes equivalencias entre las entidades del
modelo de catalogacin funStep y los elementos de la ontologa que se quiere construir:
Otra parte que se tuvo en cuenta a la hora de transformar los elementos del
modelo de datos funStep al modelo semntico formal es la de Propiedades de producto.
La informacin contenida en esta parte permite proporcionar al usuario final el
conocimiento completo sobre el producto que busca. Estas propiedades se dividen en
dos grandes grupos: las propiedades dependientes del contexto y las independientes
del contexto.
Una propiedad dependiente del contexto sera por ejemplo el precio si se quiere
tener precios diferentes para diferentes pases. Otra propiedad dependiente de contexto
podra ser el tamao del producto basado en los diversos sistemas de medida, por
ejemplo: pulgadas, cm., mm., etc.
Una propiedad independiente del contexto debera ser un valor fijo relacionado
con el producto que el propietario del catlogo quiera aadir a la informacin de
producto. Un posible ejemplo sera tener un lema (slogan) de venta especfico para
cada producto.
- 75 -
CAPITULO 4 PROCESO DE INGENIERA
- 76 -
CAPITULO 4 PROCESO DE INGENIERA
4.2.3. AdquisicindeConocimientos
1) Normas de mobiliario:
- 77 -
CAPITULO 4 PROCESO DE INGENIERA
4) Diccionarios y enciclopedias:
Diccionario de la RAE
Mara Moliner
Webster (ltima edicin)
Collins English Dictionary & Thesaurus
The Encyclopedia of Furniture: Third Edition - Completely Revised
Wikipedia
- 78 -
CAPITULO 4 PROCESO DE INGENIERA
4.2.4. EspecificacindelaOntologa
- 79 -
CAPITULO 4 PROCESO DE INGENIERA
Fabricante
Tipo de mueble
Estilo
Distribuidor (geogrficamente)/quin y dnde encontrarlo
Material
Color
Tamao
Estilo
Precio. Bsqueda por rango de precio
Dimensiones (Alto, Ancho, Profundo)
4.2.5. Decisionesdediseo
La primera decisin que se tuvo que tomar para el desarrollo de la ontologa fue
el lenguaje de marcado para expresarla. Se opt por el lenguaje OWL frente a RDFS ya
que es mucho ms expresivo, adems de que facilita la importacin y exportacin de
clases: incluye propiedades como sameAs, equivalentClass, equivalentProperty,
differentFrom, etc. La propiedad equivalentClass por ejemplo, permite expresar que dos
clases de ontologas distintas son equivalentes, lo que significa que cada instancia de
una clase ser tambin instancia de la otra, y viceversa. La capacidad de expresar que
dos entidades son iguales resulta muy til cuando se integran o se mezclan ontologas, y
permite la interoperabilidad.
Dentro del lenguaje OWL, tenemos que decidir entre los tres sublenguajes: OWL-
Lite, OWL-DL y OWL-Full. Se descarta desde un principio OWL-Lite ya que es la
versin ms incompleta, solo permite la jerarqua simple y restricciones simples.
- 80 -
CAPITULO 4 PROCESO DE INGENIERA
- 81 -
CAPITULO 4 PROCESO DE INGENIERA
- 82 -
CAPITULO 4 PROCESO DE INGENIERA
Las clases generadas a partir del modelo de datos son aquellas que permitirn
almacenar la informacin que se quiere obtener sobre los mueble. El resto de las clases
de la ontologia sern las corresponsientes a trminos de muebles, componentes de
muebles y algunos accesorios.
- 83 -
CAPITULO 4 PROCESO DE INGENIERA
4.2.6. ConstruccindelaOntologa
En este apartado se van a exponer los pasos seguidos para la construccin de la
ontologa (Noy y McGuinness, 2005).
El nivel superior (top level) est formado por los conceptos ms generales como:
Mueble (Piece of furniture), Cama (Bed), Mueble infantil (Children piece of furniture),
Puerta (Door), Pantalla (Screen), Asiento (Seat), Mueble de almacenaje (Storage piece
of furniture) y Mesa (Table). Y las clases de nivel inferior en la jerarqua (bottom level)
son las ms especficas, como: Mesa de comedor (Dining Table), Mesita de noche
(Bedside Table), Mesa de cocina (Kitchen Table), etc.
- 84 -
CAPITULO 4 PROCESO DE INGENIERA
- 85 -
CAPITULO 4 PROCESO DE INGENIERA
- 86 -
CAPITULO 4 PROCESO DE INGENIERA
- 87 -
CAPITULO 4 PROCESO DE INGENIERA
Una propiedad de tipo Objeto en OWL puede ser (MathewHorridge et al., 2004):
1 En OWL, toda propiedad de tipo objeto tiene su correspondiente propiedad inversa. Si una propiedad enlaza la instancia
a con b, la propiedad inversa es la que enlaza la instancia b con a.
- 88 -
CAPITULO 4 PROCESO DE INGENIERA
Estas son propiedades cuyo rango es un valor fijo o literal. Una de las
caractersticas que hacen potente a OWL es la capacidad para trabajar con tipos
definidos.
Para este tipo de propiedades se puede establecer una lista de valores permitidos
(allowed values). En OWL, esto se implementa mediante la propiedad oneOf
como podemos ver en el siguiente trozo de cdigo que muestra un ejemplo de la
definicin de la propiedad hasUnit, que especifica la unidad2 en la que se
expresa el precio de un producto.
<owl:FunctionalPropertyrdf:ID="hasUnit">
<rdfs:range>
<owl:DataRange>
<owl:oneOfrdf:parseType="Resource">
<rdf:first
rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Points</rdf:first>
<rdf:restrdf:parseType="Resource">
<rdf:first
rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
></rdf:first>
<rdf:restrdf:parseType="Resource">
<rdf:first
rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>$</rdf:first>
<rdf:rest rdf:resource="http://www.w3.org/1999/02/22rdf
syntaxs#nil">
</rdf:rest>
</rdf:rest>
</owl:oneOf>
</owl:DataRange>
</rdfs:range>
<rdfs:domainrdf:resource="#Price"/>
<rdf:type
rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
</owl:FunctionalProperty>
2 En los catlogos de los fabricantes, los precios de los productos se indican en puntos. Luego cada comercio establece
un valor para el punto.
- 89 -
CAPITULO 4 PROCESO DE INGENIERA
Las restricciones se definen para restringir los individuos que pertenecen a una
clase. Existen tres categoras principales:
- 90 -
CAPITULO 4 PROCESO DE INGENIERA
Veamos un trozo del cdigo generado por Protg que muestra un ejemplo de
restricciones para la clase Stool (taburete), que es subclase de Seat (asiento), pero por
ser una clase bien definida (tiene restricciones que son necesarias y suficientes), el
cdigo generado no es muy intuitivo, pues no se utiliza la propiedad subclassOf de RDF
Schema (para definirla como subclase de Seat), sino la propiedad equivalentClass de
OWL. Si analizamos el cdigo, vemos que Stool es equivalente a Seat con unas
- 91 -
CAPITULO 4 PROCESO DE INGENIERA
<owl:Classrdf:ID="Stool">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOfrdf:parseType="Collection">
<owl:Restriction>
<owl:onPropertyrdf:resource="#hasBase"/>
<owl:allValuesFrom>
<owl:Class>
<owl:unionOfrdf:parseType="Collection">
<owl:Classrdf:about="#CantileverFrame"/>
<owl:Classrdf:about="#Leg"/>
<owl:Classrdf:about="#Pedestal"/>
</owl:unionOf>
</owl:Class>
</owl:allValuesFrom>
</owl:Restriction>
<owl:Restriction>
<owl:onPropertyrdf:resource="#hasSeat"/>
<owl:cardinality
rdf:datatype="&xsd;int">1</owl:cardinality>
</owl:Restriction>
<owl:Classrdf:about="#Seat"/>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<owl:disjointWithrdf:resource="#Bench"/>
<owl:disjointWithrdf:resource="#Chair"/>
<owl:disjointWithrdf:resource="#Swing"/>
<owl:disjointWithrdf:resource="#Sofa"/>
</owl:Class>
Restricciones hasValue
- 92 -
CAPITULO 4 PROCESO DE INGENIERA
4) Crear instancias
En este paso se han creado en primer lugar las instancias de aquellas clases
denominadas clases de instancias, es decir, toda clase creada para ser Rango de
una determinada propiedad. Por ejemplo las clases: Material, Finish, Style, etc.
- 93 -
CAPITULO 4 PROCESO DE INGENIERA
4.3 AplicacindeBsquedaWeb
En este apartado se van a exponer las fases de anlisis y diseo del sistema
desarrollado.
4.3.1. FASEDEANLISIS
- 94 -
CAPITULO 4 PROCESO DE INGENIERA
4.3.1.1.Especificacinderequisitos
El prototipo creado ha de ser accesible va web para que el usuario pueda hacer
uso de la aplicacin de bsqueda de la manera ms fcil y cmoda posible, a
travs de un navegador web.
El buscador debe estar enfocado hacia el cliente, que puede ser un comercio, o
bien, el cliente final. En general, el tipo de bsquedas que se desea poder realizar
son: buscar un mueble con unas caractersticas determinadas, muebles de un
determinado fabricante, o bien los muebles que vende un determinado comercio.
El hecho de que el usuario pueda ser un cliente final quiere decir que,
probablemente no tenga ningn conocimiento sobre el sector del mueble, y por
ello, se desea poder hacer uso de un lenguaje sencillo y comn a la hora de
especificar las caractersticas deseadas en el mueble buscado.
El prototipo tiene que permitir al usuario realizar como mnimo una serie de
consultas que se corresponden con las preguntas de competencia establecidas a
la hora de crear la ontologa:
- 95 -
CAPITULO 4 PROCESO DE INGENIERA
Color
Rangos de precio
Fabricante
- 96 -
CAPITULO 4 PROCESO DE INGENIERA
4.3.1.2.Funcionalidadesdelsistema
- 97 -
CAPITULO 4 PROCESO DE INGENIERA
4.3.1.3.Casosdeuso
Una vez determinados los requisitos que debe cumplir el sistema, identificados
los actores y las funciones del mismo, se procede a representar los casos de uso.
- 98 -
CAPITULO 4 PROCESO DE INGENIERA
- 99 -
CAPITULO 4 PROCESO DE INGENIERA
Actores: Usuario
Tipo: Principal
Referencias: F1.1
Actor Sistema
1.- El usuario accede a la aplicacin
y desea buscar un producto.
2.- El usuario selecciona el tipo de
producto que desea buscar.
3.- Muestra el interfaz con las
propiedades correspondientes al
tipo de producto elegido por el
usuario.
Actores: Usuario
Tipo: Principal
Referencias: F1.2, F1.3, F1.5, F1.6, F1.7, F1.8, F1.9, F1.10, F1.11, F1. 12,
F1.13, F1.14, F1.15
- 100 -
CAPITULO 4 PROCESO DE INGENIERA
Actor Sistema
1.- El usuario selecciona las
caractersticas que desea en el
producto que busca.
2.- El usuario pulsa el botn de
bsqueda tras indicar las
caractersticas buscadas.
3.- Recoge del interfaz los valores
indicados de las propiedades.
4.- Genera y ejecuta la consulta
correspondiente.
5.- Devuelve una lista con las
instancias resultado de la consulta.
Actores: Usuario
Tipo: Principal
Actor Sistema
1.- El usuario selecciona un producto
de la lista para obtener detalles.
2.- Genera y ejecuta la consulta
correspondiente.
3.-Muestra la informacin del
producto en el interfaz de usuario.
- 101 -
CAPITULO 4 PROCESO DE INGENIERA
4.3.1.4.DiagramasdeActividad
- 102 -
CAPITULO 4 PROCESO DE INGENIERA
- 103 -
CAPITULO 4 PROCESO DE INGENIERA
- 104 -
CAPITULO 4 PROCESO DE INGENIERA
4.3.1.5.Anlisisdelinterfazdeusuario
Una vez establecidos los requisitos del sistema e identificados los casos de uso,
se pueden analizar los componentes que va a tener el interfaz de usuario.
- 105 -
CAPITULO 4 PROCESO DE INGENIERA
4.3.2. FASEDEDISEO
4.3.2.1.DiseodelaAplicacin
Una vez elegida la tcnica de diseo del sistema, se procede a definir los objetos
necesarios para el correcto funcionamiento de la aplicacin y las relaciones entre ellos.
- 106 -
CAPITULO 4 PROCESO DE INGENIERA
- 107 -
CAPITULO 4 PROCESO DE INGENIERA
4.3.2.1.1.Diagramadeclases
- 108 -
CAPITULO 4 PROCESO DE INGENIERA
4.3.2.1.2.Diagramadesecuencia
- 109 -
CAPITULO 4 PROCESO DE INGENIERA
Realizar bsqueda
Precondiciones:
Poscondiciones:
- 110 -
CAPITULO 4 PROCESO DE INGENIERA
Precondiciones:
Poscondiciones:
- 111 -
CAPITULO 4 PROCESO DE INGENIERA
4.3.2.2.DiseodelaInterfazdeUsuario
Mostrar los diferentes tipos de muebles para que el usuario pueda elegir
el que quiera. Se ha pensado en extraer la jerarqua de clasificacin de
los muebles de la ontologa y volcarla al interfaz en una estructura de
rbol por ejemplo.
- 112 -
CAPITULO 4 PROCESO DE INGENIERA
aplicacin esta parte contendr un panel con las propiedades genricas que
puede tener cualquier producto, luego cuando el usuario elige un tipo de
mueble o una composicin se mostrar el panel correspondiente al tipo
seleccionado.
- 113 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 114 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
5. IMPLEMENTACINYPRUEBAS
5.1 FASEDEIMPLEMENTACIN
- 115 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
El entorno de trabajo escogido para trabajar con semntica fue Jena 2. Es una
plataforma de trabajo que ofrece un entorno de desarrollo estable y potente
donde poder trabajar con RDF, RDF Schema y OWL. Incluye un parser de RDF,
una API de RDF, una API de ontologas escritas en OWL, DAML y RDFS, un
subsistema de razonamiento, el lenguaje de bsquedas RDQL y SPARQL, as
como un subsistema de persistencia. El subsistema de persistencia trabaja con
MySQL, Oracle y PostgreSQL, por lo que cualquier BD de ese tipo puede ser el
repositorio de hechos (la base de datos donde se almacenar la informacin).
- 116 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
5.1.1. ImplantacindelaOntologaenlaAplicacin
Un modelo de ontologa es una extensin del modelo RDF de Jena que provee
capacidades adicionales para manejar ontologas. Los modelos de ontologa se crean a
travs de la clase ModelFactory de Jena. Una forma simple de crear un modelo de
ontologa es la siguiente:
OntModelm=ModelFactory.createOntologyModel();
Esto crea un modelo de ontologa con las especificaciones por defecto, que son
las siguientes:
Lenguaje OWL_Full
Almacenamiento en memoria
Inferencia RDFS, que principalmente produce hechos a partir de las jerarquas
sub_class y sub_property.
Lenguaje OWL_DL
Almacenamiento en memoria.
Razonador basado en reglas OWL.
Se han implementado dos mtodos que cargan la ontologa a partir del modelo
creado de formas distintas:
publicvoidloadOntologyFromOwl(){
java.io.InputStreamin=FileManager.get().open(OWL_FILE);
if(in==null){
throw new IllegalArgumentException("Archivo no
encontrado"); }
- 117 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
modelOnt=ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_M
EM_RULE_INF);
//leerelarchivoOWL
modelOnt.read(in,"");
}
publicvoidloadOntologyFromDB(){
IDBConnection conModel = new DBConnection(URL_DB, USER_DB,
PWD_DB,"MySQL");
ModelMakermaker=ModelFactory.createModelRDBMaker(conModel);
ModelRDBmodel=(ModelRDB)maker.openModel(MODEL_NAME);
try{
modelOnt=ModelFactory.createOntologyModel(OntModelSpec.OWL
_DL_MEM_RULE_INF,model);
}catch(Exceptione){
e.printStackTrace();
}
}
- 118 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
5.1.2. Notasdeimplementacin
Una vez cargada la ontologa en la aplicacin, sta podr acceder a ella para leer,
modificar, crear o bien buscar informacin. Se recogern las peticiones del usuario del
interfaz y se convertirn en consultas SPARQL que se ejecutarn sobre el modelo de
ontologa devolviendo unos resultados que sern formateados y finalmente, mostrados
al usuario.
Clase AppletUI:
- 119 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
Clase HandlerUI:
- 120 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
ResultSetresults=qe.execSelect();
- 121 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
5.2 PRUEBASYEVALUACIN
5.2.1. Fundamentosdelaprueba
Es imposible que el ser humano trabaje de una manera perfecta, y por ello, el
desarrollo debe ir acompaado de una actividad que garantice la calidad. As pues, la
prueba del software representa la revisin final de las especificaciones, del diseo y de
la codificacin.
La fase de pruebas del sistema tiene como objetivo verificar el sistema software
para comprobar si este cumple sus requisitos. Dentro de esta fase pueden desarrollarse
varios tipos distintos de pruebas en funcin de los objetivos de las mismas. Algunos
tipos son pruebas funcionales, pruebas de usabilidad, pruebas de rendimiento, pruebas
de seguridad, etc. En este caso, dado que el sistema desarrollado consiste en una
aplicacin con interfaz grfica, se deben realizar pruebas funcionales que verifiquen que
el sistema software ofrece a los actores humanos la funcionalidad recogida en su
especificacin.
5.2.2. Pruebasdelsistema
- 122 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 123 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 124 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 125 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 126 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 127 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 128 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 129 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 130 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 131 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
Conclusin: Prueba superada con xito. Se puede ver en las figuras 5.10,
5.11, 5.12, 5.13 y 5.14 los resultados de las consultas de informacin
sobre los productos seleccionados en las figuras 5.4, 5.5, 5.6, 5.7, 5.8 y
5.9 respectivamente.
- 132 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 133 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 134 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
- 135 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
5.2.3. PruebasdeConsistenciaenlaOntologa
A parte de las pruebas funcionales del sistema desarrollado, se han realizado
pruebas de consistencias en la Ontologa que se van exponer en este apartado.
- 136 -
CAPITULO 5 IMPLEMENTACIN Y PRUEBAS
de una propiedad de tipo Datatype (tipo de dato), solo se pueden usar restricciones
hasValue para propiedades de tipo Object.
- 137 -
CAPITULO 6 CONCLUSIONES Y TRABAJO FUTURO
- 138 -
CAPITULO 6 CONCLUSIONES Y TRABAJO FUTURO
6. CONCLUSIONESYTRABAJOFUTURO
6.1. Conclusiones
En este apartado se abordan las conclusiones extradas y los resultados obtenidos
durante el desarrollo del proyecto.
- 139 -
CAPITULO 6 CONCLUSIONES Y TRABAJO FUTURO
- 140 -
CAPITULO 6 CONCLUSIONES Y TRABAJO FUTURO
6.2. TrabajoFuturo
- 141 -
CAPITULO 6 CONCLUSIONES Y TRABAJO FUTURO
- 142 -
BIBLIOGRAFA
BIBLIOGRAFA
Aguado de Cea Guadalupe, lvarez de Mon y Rego Inmaculada, Pareja Lora Antonio
(2002), Primeras aproximaciones a la anotacin lingstico-ontolgica de documentos
de la Web Semntica: OntoTag, Revista Iberoamericana de Inteligencia Artificial, 17,
37-49.
Alan Rector, Nick Drummond, Matthew Horridge, Jeremy Rogers, Holger Knublauch,
Robert Stevens, Hai Wang y Chris Wroe, OWL Pizzas : Practical experience of teaching
OWL-DL : Common Errors & Common Patterns, Department of Computer Science,
University of Manchester, UK y Stanford Medical Informatics, Stanford University,
Stanford, CA, USA.
Alba Julio, (2007), Qu es la Web Semntica, Las TIC en la sanidad, bit 163.
Aldea A., Bocio J., Fensel D., Isern D., Gouzinis A., Gramajo J., Kokosis A., Moreno
A., Politpu D. (2003), D2 State of the Art KM technologies and practices, Information
Societes Technology (IST) Programme. The h-TechSight Consortium.
Berners-Lee Tim, Hendler James and Lassila Ora (2001). The Semantic Web: A new
form of Web content that is meaningful to computers will unleash a revolution of new
possibilities, Scientific American.
Daconta Michael C., Obrst Leo J. and Smith Kevin T. (2003), The Semantic Web. A
Guide to the Future of XML, Web Services and Knowledge Management. USA . Ed.
Wiley Publishing, Inc., 232-237.
- 143 -
BIBLIOGRAFA
Geihs y Richard Stevens (2004), The Methodology to implement services and develop
take up actions towards SMEs, Deliverable D12.1, version 3.0.
Horroks Ian, Ptef-Shneider Peter F., McGuinness Deborah L., Wetty Christofer A.
(2006), OWL: A Description Logic Based Ontology Language for the Semantic Web.
Matthew Horridge, Holger Knublauch, Alan Rector, Robert Stevens y Chris Wroe
(Agosto 2004), A Practical guide to building OWL Ontologies using the Protg-OWL
plugin and CO-ODE tools Edition 1.0, The University of Manchester, Stanford
University.
Samper Zapater Jos Javier (2005), Ontologas para servicios web semnticos de
informacin de trfico: descripcin y herramientas de explotacin, tesis doctoral,
Departamento de Informtica, Universitat de Valncia.
Snchez Fernndez Luis y Fernndez Garca Norberto (2005), Universidad de Carlos III
de Madrid, La Web semntica: fundamentos y breve estado del arte, Novtica:
Revista de la Asociacin de Tcnicos de Informtica, 178, 6-12.
T. Berners-Lee, J. Hendler, O Lassila, (2001). The Semantic Web. Scientific American,
May 2001.
Vallespir Bruno, Bourrieres Jean-Paul, Ducq Yves (2004), INTEROP NoE Project
Presentaction. University Bordeaux.
- 144 -
ANEXO I
ANEXOS
Anexo I: FurnitureOntology.owl
<?xml version="1.0"?>
<!-- Cabecera -->
<rdf:RDF
xmlns:protege="http://protege.stanford.edu/plugins/owl/protege#"
xmlns:xsp="http://www.owl-ontologies.com/2005/08/07/xsp.owl#"
xmlns:p1="http://www.owl-ontologies.com/assert.owl#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns="http://www.aidima.es/furnitureontology.owl#"
xmlns:swrlb="http://www.w3.org/2003/11/swrlb#"
xmlns:daml="http://www.daml.org/2001/03/daml+oil#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:p2="file://C:/FurnitureOntology/furnitureOntology#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:swrl="http://www.w3.org/2003/11/swrl#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xml:base="http://www.aidima.es/furnitureontology.owl">
<owl:Ontology rdf:about="">
<rdfs:comment xml:lang="en">Furniture Ontology by Miguel ngel Abin and Mouna
Ziouziou</rdfs:comment>
<protege:defaultLanguage rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>en</protege:defaultLanguage>
<owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>version 1.3</owl:versionInfo>
<owl:Class rdf:ID="Colour">
<owl:disjointWith>
<owl:Class rdf:ID="Product"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Component"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Finish"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Ambient"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Weight"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Size"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Price"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Style"/>
- 145 -
ANEXO I
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Form"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Use"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Province"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Address"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#Material"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Catalogue"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Organization"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Class rdf:ID="DomainConcept"/>
</rdfs:subClassOf>
</owl:Class>
<owl:Class rdf:ID="Stand-upTable">
<rdfs:subClassOf>
<owl:Class rdf:ID="RestaurantAndBarTable"/>
</rdfs:subClassOf>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Taburete de bar</rdfs:comment>
<rdfs:label xml:lang="en">Stand-up Table</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:ID="RestaurantDiningTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="BanquetTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="CatteringBuffetTable"/>
</owl:disjointWith>
</owl:Class>
<owl:Class rdf:ID="RockingChair">
<rdfs:label xml:lang="en">Rocking Chair</rdfs:label>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>(Also "rocker"). A rocking chair or rocker is a chair with two curved bands of wood (also know
as rockers) attached to the bottom of the legs (one on the left two legs and one on the right two legs).
This gives the chair contact with the floor at only two points granting the occupant the ability to
rock back and forth by shifting his/her weight or pushing lightly with his/her feet. Sometimes the
rocking chair is on springs or on a platform (a "platform rocker").</rdfs:comment>
<owl:disjointWith>
<owl:Class rdf:ID="HomeOfficeChair"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="DomesticLoungeChair"/>
</owl:disjointWith>
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
- 146 -
ANEXO I
<owl:Class rdf:ID="DomesticChair"/>
<owl:Restriction>
<owl:onProperty>
<owl:ObjectProperty rdf:ID="hasBase"/>
</owl:onProperty>
<owl:allValuesFrom>
<owl:Class rdf:ID="Rocker"/>
</owl:allValuesFrom>
</owl:Restriction>
<owl:Restriction>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasBase"/>
</owl:onProperty>
<owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>1</owl:cardinality>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
</owl:Class>
<owl:Class rdf:ID="StoragePieceOfFurniture">
<rdfs:label xml:lang="en">Storage furniture</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:ID="Screen"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Seat"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Table"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Class rdf:ID="PieceOfFurniture"/>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:ID="Bed"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="ChildrenPieceOfFurniture"/>
</owl:disjointWith>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A piece of furniture intended to store items such as clothes, foods, etc.</rdfs:comment>
<owl:disjointWith>
<owl:Class rdf:about="#Door"/>
</owl:disjointWith>
</owl:Class>
<owl:Class rdf:ID="CornerCupboard">
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>In Spanish, "esquinera" or "rinconera".</rdfs:comment>
<rdfs:label xml:lang="en">Corner Cupboard</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:ID="BroomCupboard"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="FumeCupboard"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="LinenCupboard"/>
</owl:disjointWith>
<owl:disjointWith>
- 147 -
ANEXO I
<owl:Class rdf:ID="OtherCupboard"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Wardrobe"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Class rdf:about="#Cupboard"/>
</rdfs:subClassOf>
</owl:Class>
<owl:Class rdf:ID="SingleBed">
<rdfs:subClassOf>
<owl:Class rdf:about="#Bed"/>
</rdfs:subClassOf>
<rdfs:subClassOf>
<owl:Restriction>
<owl:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>1</owl:hasValue>
<owl:onProperty>
<owl:DatatypeProperty rdf:ID="hasNumberOfMattress"/>
</owl:onProperty>
</owl:Restriction>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:ID="Bunk"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="PullOutBed"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="HospitalBed"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="AirBed"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Restriction>
<owl:allValuesFrom>
<owl:Class rdf:ID="BedroomUse"/>
</owl:allValuesFrom>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasUse"/>
</owl:onProperty>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasUse"/>
</owl:onProperty>
<owl:someValuesFrom>
<owl:Class rdf:about="#BedroomUse"/>
</owl:someValuesFrom>
</owl:Restriction>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:ID="BunkBed"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Stretcher"/>
</owl:disjointWith>
- 148 -
ANEXO I
<owl:disjointWith>
<owl:Class rdf:ID="CompactBed"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Single Bed</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:ID="WaterBed"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty>
<owl:DatatypeProperty rdf:ID="hasCapacity"/>
</owl:onProperty>
<owl:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>1</owl:hasValue>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
<owl:Class rdf:about="#CompactBed">
<owl:disjointWith>
<owl:Class rdf:about="#PullOutBed"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#HospitalBed"/>
</owl:disjointWith>
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#Bed"/>
<owl:Restriction>
<owl:onProperty>
<owl:ObjectProperty rdf:ID="hasDesk"/>
</owl:onProperty>
<owl:someValuesFrom>
<owl:Class rdf:ID="HomeStudentDesk"/>
</owl:someValuesFrom>
</owl:Restriction>
<owl:Restriction>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasUse"/>
</owl:onProperty>
<owl:hasValue>
<BedroomUse rdf:ID="YouthBedroomUse">
<rdfs:label xml:lang="en">Youth bedrooms</rdfs:label>
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Youth bedroom</hasName>
</BedroomUse>
</owl:hasValue>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<owl:disjointWith>
<owl:Class rdf:about="#WaterBed"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#AirBed"/>
</owl:disjointWith>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Bed usually designed for young people or children that may consists of modular furniture;
wardrobes, shelf units, desk, etc. all in the same structure together with the bed or
- 149 -
ANEXO I
beds</rdfs:comment>
<owl:disjointWith>
<owl:Class rdf:about="#BunkBed"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Compact Bed</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:about="#Stretcher"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#SingleBed"/>
<owl:disjointWith>
<owl:Class rdf:about="#Bunk"/>
</owl:disjointWith>
</owl:Class>
<owl:Class rdf:ID="Handle">
<owl:disjointWith>
<owl:Class rdf:ID="MirrorFrame"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Backrest"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Class rdf:about="#Component"/>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:ID="Pilaster"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Armrest"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="SeatPart"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="VerticalSurface"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Base"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="HorizontalSurface"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Mattress"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Headboard"/>
</owl:disjointWith>
</owl:Class>
<owl:Class rdf:ID="WritingTable">
<rdfs:subClassOf>
<owl:Class rdf:ID="OfficeTable"/>
</rdfs:subClassOf>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A writing table has a series of drawers directly under the surface of the table, to contain writing
implements, so that it may serve as a desk.</rdfs:comment>
<owl:disjointWith>
<owl:Class rdf:ID="OfficeDesk"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="OtherOfficeTable"/>
- 150 -
ANEXO I
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="DrawingTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="ConferenceTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="ReceptionTable"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Writing Table</rdfs:label>
</owl:Class>
<owl:Class rdf:about="#HomeOfficeChair">
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>(Also called home desk chair). A home oficce chair is a chair that is designed for use at a desk at
home. A home office chair typically swivels, tilts, and rolls about on casters, or small wheels. Home
office chairs, like office chairs, often have a number of ergonomic adjustments: seat height, armrest
height and width, and back reclining tension.</rdfs:comment>
<owl:disjointWith rdf:resource="#RockingChair"/>
<owl:disjointWith>
<owl:Class rdf:about="#DomesticLoungeChair"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Office Chair</rdfs:label>
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#DomesticChair"/>
<owl:Restriction>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasUse"/>
</owl:onProperty>
<owl:hasValue>
<OtherHomeUse rdf:ID="StudyOrOfficeHomeUse">
<rdfs:label xml:lang="en">Studies</rdfs:label>
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Study or office use</hasName>
</OtherHomeUse>
</owl:hasValue>
</owl:Restriction>
<owl:Restriction>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasBase"/>
</owl:onProperty>
<owl:allValuesFrom>
<owl:Class>
<owl:unionOf rdf:parseType="Collection">
<owl:Class rdf:ID="Swivel"/>
<owl:Class rdf:ID="Leg"/>
</owl:unionOf>
</owl:Class>
</owl:allValuesFrom>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
</owl:Class>
<owl:Class rdf:ID="ServingTrolley">
<owl:disjointWith>
<owl:Class rdf:ID="TVStand"/>
</owl:disjointWith>
- 151 -
ANEXO I
<rdfs:subClassOf>
<owl:Class rdf:ID="DomesticTable"/>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:ID="EndTable"/>
</owl:disjointWith>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Mobile table, usually provided with handles and wheels, with removalbe or fixed tray(s). In
Spanish, "camarera".</rdfs:comment>
<rdfs:subClassOf>
<owl:Restriction>
<owl:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>true</owl:hasValue>
<owl:onProperty>
<owl:DatatypeProperty rdf:ID="hasCastors"/>
</owl:onProperty>
</owl:Restriction>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:ID="SofaTable"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Serving Trolley</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:ID="HIFIStand"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#HomeStudentDesk"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="CoffeeTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="LoungeTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="BedsideTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="DiningTable"/>
</owl:disjointWith>
</owl:Class>
<owl:Class rdf:about="#CommunionTable">
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>The table in Christian churches where communion is given.</rdfs:comment>
<rdfs:label xml:lang="en">Comunion Table</rdfs:label>
<owl:disjointWith rdf:resource="#OtherReligiousTable"/>
<owl:disjointWith>
<owl:Class rdf:about="#Altar"/>
</owl:disjointWith>
<rdfs:subClassOf rdf:resource="#ReligiousTable"/>
</owl:Class>
<owl:Class rdf:ID="OfficeWorkChair">
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>(Also called "desk chair"). An office chair that is designed for use at a desk in an office. An
office work chair typically swivels, tilts, and rolls about on casters, or small wheels. Office work
chairs often have a number of ergonomic adjustments: seat height, armrest height and width, and
back reclining tension. It may be very plushly upholstered and in leather and thus characterized as
an executive chair, or come with a low back and be called a steno chair.</rdfs:comment>
<rdfs:subClassOf>
- 152 -
ANEXO I
<owl:Restriction>
<owl:onProperty>
<owl:DatatypeProperty rdf:about="#hasCastors"/>
</owl:onProperty>
<owl:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>true</owl:hasValue>
</owl:Restriction>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:ID="VisitorChair"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Work Chair</rdfs:label>
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Restriction>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasBase"/>
</owl:onProperty>
<owl:allValuesFrom>
<owl:Class rdf:about="#Swivel"/>
</owl:allValuesFrom>
</owl:Restriction>
<owl:Restriction>
<owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>1</owl:cardinality>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasBase"/>
</owl:onProperty>
</owl:Restriction>
<owl:Class rdf:ID="OfficeChair"/>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
</owl:Class>
<owl:Class rdf:about="#Chest">
<owl:disjointWith rdf:resource="#Barrel"/>
<owl:disjointWith>
<owl:Class rdf:about="#Shelf"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#Cabinet"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#Cart"/>
</owl:disjointWith>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A chest is typically a rectangular structure with four walls and a liftable lid, for storage or
shipping. The interior space may be subdivided. The early uses of an antique chest or coffer
included storage of fine cloth, weapons, foods and valuable items.</rdfs:comment>
<rdfs:label xml:lang="en">Chest</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:about="#Coffin"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#Rack"/>
</owl:disjointWith>
<rdfs:subClassOf rdf:resource="#StoragePieceOfFurniture"/>
</owl:Class>
<owl:Class rdf:ID="OtherChest">
- 153 -
ANEXO I
<owl:disjointWith>
<owl:Class rdf:ID="HopeChest"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="MedicineChest"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="ChestOfDrawers"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="SlopChest"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="SeaChest"/>
</owl:disjointWith>
<rdfs:subClassOf rdf:resource="#Chest"/>
<rdfs:label xml:lang="en">Other Chest</rdfs:label>
</owl:Class>
<owl:Class rdf:ID="WheeledChildConveyance">
<owl:disjointWith>
<owl:Class rdf:ID="ChangingTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Cot"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="ChildrenHighChair"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Playpen"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="CarryCot"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Wheeled child convenyance</rdfs:label>
<rdfs:subClassOf>
<owl:Restriction>
<owl:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>true</owl:hasValue>
<owl:onProperty>
<owl:DatatypeProperty rdf:about="#hasCastors"/>
</owl:onProperty>
</owl:Restriction>
</rdfs:subClassOf>
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Restriction>
<owl:hasValue>
<ChildrenUse rdf:ID="ChildrenTransportUse">
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Children transport use</hasName>
<rdfs:label xml:lang="en">Childrens Transport use</rdfs:label>
</ChildrenUse>
</owl:hasValue>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasUse"/>
</owl:onProperty>
</owl:Restriction>
<owl:Class rdf:about="#ChildrenPieceOfFurniture"/>
- 154 -
ANEXO I
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Vehicle designed for the carriage of 1 or more children and which can be pushed or steered
manually.</rdfs:comment>
</owl:Class>
<owl:Class rdf:about="#CoffeeTable">
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A coffee table is a style of long, low table which is designed to be placed in front of a couch, to
support beverages (hence the name), magazines, books (especially coffee table books), and other
small items to be used while sitting, such as coasters. Coffee tables are usually found in the living
room or sitting room. They are available in many different variations and prices vary from style to
style. Coffee tables may also incorporate cabinets for storage.</rdfs:comment>
<owl:disjointWith>
<owl:Class rdf:about="#SofaTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#DiningTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#LoungeTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#TVStand"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#HIFIStand"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#HomeStudentDesk"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Class rdf:about="#DomesticTable"/>
</rdfs:subClassOf>
<rdfs:label xml:lang="en">Coffee Table</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:about="#EndTable"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#ServingTrolley"/>
<owl:disjointWith>
<owl:Class rdf:about="#BedsideTable"/>
</owl:disjointWith>
</owl:Class>
<owl:Class rdf:ID="OtherFinish">
<owl:disjointWith>
<owl:Class rdf:ID="Upholstered"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="Veneer"/>
</owl:disjointWith>
<rdfs:subClassOf rdf:resource="#Finish"/>
<rdfs:label xml:lang="en">Other finishes</rdfs:label>
</owl:Class>
<owl:Class rdf:about="#PetDoor">
<owl:disjointWith>
<owl:Class rdf:about="#Trapdoor"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Class rdf:about="#Door"/>
- 155 -
ANEXO I
</rdfs:subClassOf>
<owl:disjointWith rdf:resource="#GardenDoor"/>
<owl:disjointWith>
<owl:Class rdf:about="#BypassDoor"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#LouverDoor"/>
<owl:disjointWith rdf:resource="#BifoldDoor"/>
<rdfs:subClassOf>
<owl:Restriction>
<owl:allValuesFrom>
<owl:Class rdf:about="#HomeUse"/>
</owl:allValuesFrom>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasUse"/>
</owl:onProperty>
</owl:Restriction>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:about="#FrenchDoor"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#StableDoor"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#ButterflyDoor"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#FlushDoor"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#RevolvingDoor"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#UpAndOverDoor"/>
</owl:disjointWith>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A pet door is an opening in a door to allow pets to enter and exit without the main door being
opened.</rdfs:comment>
<owl:disjointWith>
<owl:Class rdf:about="#BarnDoor"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#SlidingDoor"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#SwingDoor"/>
<owl:disjointWith>
<owl:Class rdf:about="#FalseDoor"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#BlindDoor"/>
</owl:disjointWith>
</owl:Class>
<owl:Class rdf:ID="BarStool">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Restriction>
<owl:hasValue rdf:resource="#RestaurantAndBarUse"/>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasUse"/>
- 156 -
ANEXO I
</owl:onProperty>
</owl:Restriction>
<owl:Class rdf:ID="Stool"/>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<rdfs:label xml:lang="en">Bar Stool</rdfs:label>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A chair with high seating height intended to be used at a high table or desk like a bar, a bistro
table or a counter. For up-right sitting, with legs or foot without backrest and without armrests.
Barstools are a type of stool often with a foot rest which, because of their height and narrowness,
are designed for seating in a bar. Sometimes barstools are in homes, usually placed at the kitchen
counter or at a home bar.</rdfs:comment>
<owl:disjointWith>
<owl:Class rdf:ID="Ottoman"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="GardenStool"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="StepStool"/>
</owl:disjointWith>
</owl:Class>
<owl:Class rdf:about="#BathScreen">
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A shower screen.</rdfs:comment>
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:about="#Screen"/>
<owl:Restriction>
<owl:hasValue>
<OtherHomeUse rdf:ID="BathroomHomeUse">
<rdfs:label xml:lang="en">Bathrooms</rdfs:label>
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Bathroom home use</hasName>
</OtherHomeUse>
</owl:hasValue>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasUse"/>
</owl:onProperty>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<owl:disjointWith>
<owl:Class rdf:about="#ChangingRoomPartition"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#OfficeScreen"/>
<owl:disjointWith>
<owl:Class rdf:about="#ExhibitionScreen"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#FireScreen"/>
<owl:disjointWith>
<owl:Class rdf:about="#RestroomPartition"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#OtherScreen"/>
</owl:disjointWith>
</owl:Class>
- 157 -
ANEXO I
<owl:Class rdf:about="#FrameTableBase">
<owl:disjointWith>
<owl:Class rdf:about="#Spring"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Table Frame</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:about="#CantileverFrame"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#Swivel"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#Rocker"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#BedBase"/>
<owl:disjointWith>
<owl:Class rdf:about="#Leg"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Class rdf:about="#Base"/>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:about="#Pedestal"/>
</owl:disjointWith>
</owl:Class>
<owl:Class rdf:ID="BoosterHighChair">
<rdfs:subClassOf>
<owl:Class rdf:about="#ChildrenHighChair"/>
</rdfs:subClassOf>
<rdfs:label xml:lang="en">Booster high chair</rdfs:label>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Booster chairs or booster high chairs raise the height of children on regular chairs so they can
eat at the main dining table.</rdfs:comment>
</owl:Class>
<owl:Class rdf:about="#TowelRack">
<rdfs:subClassOf>
<owl:Class rdf:about="#BathroomRack"/>
</rdfs:subClassOf>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A rack for storing towels. In Spanish, "toallero".</rdfs:comment>
<owl:disjointWith rdf:resource="#RobeRack"/>
<rdfs:label xml:lang="en">Towel Rack</rdfs:label>
</owl:Class>
<owl:Class rdf:about="#KitchenRack">
<owl:disjointWith>
<owl:Class rdf:about="#HatRack"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Kitchen Rack</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:about="#ShoeRack"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#UmbrellaStand"/>
<owl:disjointWith>
<owl:Class rdf:about="#MagazineRack"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#DryingRack"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#CDDVDRack"/>
- 158 -
ANEXO I
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#BathroomRack"/>
</owl:disjointWith>
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Restriction>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasUse"/>
</owl:onProperty>
<owl:hasValue>
<OtherHomeUse rdf:ID="KitchenHomeUse">
<rdfs:label xml:lang="en">Kitchens</rdfs:label>
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Kittchen use</hasName>
</OtherHomeUse>
</owl:hasValue>
</owl:Restriction>
<owl:Class rdf:about="#DomesticRack"/>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
</owl:Class>
<owl:Class rdf:ID="StreetBench">
<owl:disjointWith>
<owl:Class rdf:ID="OtherBench"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty>
<owl:DatatypeProperty rdf:ID="isFixedAtFloor"/>
</owl:onProperty>
<owl:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>true</owl:hasValue>
</owl:Restriction>
</rdfs:subClassOf>
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Restriction>
<owl:hasValue rdf:resource="#UrbanFurnitureUse"/>
<owl:onProperty>
<owl:ObjectProperty rdf:about="#hasUse"/>
</owl:onProperty>
</owl:Restriction>
<owl:Restriction>
<owl:minCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>2</owl:minCardinality>
<owl:onProperty>
<owl:ObjectProperty rdf:ID="hasSeat"/>
</owl:onProperty>
</owl:Restriction>
<owl:Class rdf:ID="Bench"/>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<owl:disjointWith>
<owl:Class rdf:ID="GardenBench"/>
</owl:disjointWith>
- 159 -
ANEXO I
<owl:disjointWith>
<owl:Class rdf:ID="ReligiousBench"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Street Bench</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:ID="PianoBench"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="ParkBench"/>
</owl:disjointWith>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A public street bench set outdoors and fixed at floor.</rdfs:comment>
</owl:Class>
<owl:Class rdf:ID="WritingDesk">
<rdfs:subClassOf>
<owl:Class rdf:about="#OfficeDesk"/>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:ID="ExecutiveDesk"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="StandingDesk"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="ComputerDesk"/>
</owl:disjointWith>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A writing desk acts as a kind of compact office. Traditionally, a writing desk is for writing
letters by hand. It usually has a top that closes to hide current work, which makes the room
containing it look tidy, maintains privacy, and protects the work. The closing top may contain
several joints so that it can roll closed, or may simply fold closed. The writing surface (or place for
lap-top) typically folds down (perhaps being the lid) or slides out, to preserve the compact size when
closed. They often have small drawers or "pigeon holes".</rdfs:comment>
<rdfs:label xml:lang="en">Writing Desk</rdfs:label>
</owl:Class>
<owl:Class rdf:about="#Swivel">
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Base giratoria</rdfs:comment>
<owl:disjointWith>
<owl:Class rdf:about="#Pedestal"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#Rocker"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#Leg"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#CantileverFrame"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#BedBase"/>
<owl:disjointWith rdf:resource="#FrameTableBase"/>
<owl:disjointWith>
<owl:Class rdf:about="#Spring"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Class rdf:about="#Base"/>
</rdfs:subClassOf>
<rdfs:label xml:lang="en">Swivel</rdfs:label>
</owl:Class>
- 160 -
ANEXO I
<owl:Class rdf:about="#Pedestal">
<owl:disjointWith rdf:resource="#Swivel"/>
<rdfs:label xml:lang="en">Pedestal</rdfs:label>
<owl:disjointWith rdf:resource="#BedBase"/>
<rdfs:subClassOf>
<owl:Class rdf:about="#Base"/>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:about="#Rocker"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#CantileverFrame"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#Spring"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#Leg"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#FrameTableBase"/>
</owl:Class>
<owl:Class rdf:about="#ColectivitiesUse">
<rdfs:subClassOf>
<owl:Class rdf:about="#Use"/>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:about="#HomeUse"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:ID="OtherUse"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Colectivities</rdfs:label>
</owl:Class>
<owl:Class rdf:ID="ElectricChair">
<rdfs:label xml:lang="en">Electric Chair</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:ID="ManualWheelChair"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Class rdf:ID="WheelChair"/>
</rdfs:subClassOf>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Electric-powered wheelchair for people with disabilities.</rdfs:comment>
</owl:Class>
<owl:Class rdf:about="#SlopChest">
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A store of clothing and personal requisites (as tobacco) carried on merchant ships for issue to
the crew usually as a charge against their wages.</rdfs:comment>
<rdfs:subClassOf rdf:resource="#Chest"/>
<owl:disjointWith>
<owl:Class rdf:about="#ChestOfDrawers"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#HopeChest"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#SeaChest"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#OtherChest"/>
<owl:disjointWith>
- 161 -
ANEXO I
<owl:Class rdf:about="#MedicineChest"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Slop Chest</rdfs:label>
</owl:Class>
<owl:Class rdf:ID="TreePot">
<owl:disjointWith>
<owl:Class rdf:ID="PlotPower"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Class rdf:about="#PlantContainer"/>
</rdfs:subClassOf>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A treepot is any container in which trees are cultivated.</rdfs:comment>
</owl:Class>
<owl:Class rdf:about="#Veneer">
<rdfs:subClassOf rdf:resource="#Finish"/>
<rdfs:label xml:lang="en">Veneer</rdfs:label>
<owl:disjointWith>
<owl:Class rdf:about="#Upholstered"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#OtherFinish"/>
</owl:Class>
<owl:Class rdf:about="#ConferenceTable">
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A big table used for conference meetings.</rdfs:comment>
<rdfs:subClassOf>
<owl:Class rdf:about="#OfficeTable"/>
</rdfs:subClassOf>
<owl:disjointWith>
<owl:Class rdf:about="#OfficeDesk"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#ReceptionTable"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#OtherOfficeTable"/>
</owl:disjointWith>
<owl:disjointWith rdf:resource="#WritingTable"/>
<owl:disjointWith>
<owl:Class rdf:about="#DrawingTable"/>
</owl:disjointWith>
<rdfs:label xml:lang="en">Conference Table</rdfs:label>
</owl:Class>
<owl:Class rdf:about="#RoofRack">
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>A system used on automobiles which was designed to carry sporting goods and luggage on top of
a car. They're popular among skiers, snowboarders, cyclist, and kayakers. In Spanish,
"vaca".</rdfs:comment>
<rdfs:label xml:lang="en">Roof Rack</rdfs:label>
<rdfs:subClassOf>
<owl:Class rdf:about="#Rack"/>
</rdfs:subClassOf>
<owl:disjointWith rdf:resource="#BicycleRack"/>
<owl:disjointWith>
<owl:Class rdf:about="#DomesticRack"/>
</owl:disjointWith>
</owl:Class>
<owl:Class rdf:about="#LinenCupboard">
<owl:disjointWith rdf:resource="#CornerCupboard"/>
<owl:disjointWith>
- 162 -
ANEXO I
<owl:Class rdf:about="#FumeCupboard"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#OtherCupboard"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#Wardrobe"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#BroomCupboard"/>
</owl:disjointWith>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>In Spanish, "armario ropero".</rdfs:comment>
<rdfs:subClassOf>
<owl:Class rdf:about="#Cupboard"/>
</rdfs:subClassOf>
<rdfs:label xml:lang="en">Linen Cupboard</rdfs:label>
</owl:Class>
<owl:Class rdf:about="#ExecutiveDesk">
<rdfs:label xml:lang="en">Executive Desk</rdfs:label>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>An executive desk is a the central desk for a meeting between several persons.</rdfs:comment>
<owl:disjointWith rdf:resource="#WritingDesk"/>
<owl:disjointWith>
<owl:Class rdf:about="#ComputerDesk"/>
</owl:disjointWith>
<owl:disjointWith>
<owl:Class rdf:about="#StandingDesk"/>
</owl:disjointWith>
<rdfs:subClassOf>
<owl:Class rdf:about="#OfficeDesk"/>
</rdfs:subClassOf>
</owl:Class>
<Catalogue rdf:ID="CatalogoMariner">
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Catlogo Mariner S.A.</hasName>
<hasDate rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>2008</hasDate>
<hasProvider>
<Manufacturer rdf:ID="Mariner">
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Mariner S.A.</hasName>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Mariner S.A.</rdfs:label>
</Manufacturer>
</hasProvider>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Mariner S.A. Catalogue</rdfs:label>
<hasProduct>
<LoungeTable rdf:ID="MesaAlina_MX2200">
<hasForm rdf:resource="#SquareForm"/>
<hasWidth rdf:datatype="http://www.w3.org/2001/XMLSchema#float"
>200.0</hasWidth>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Table of extensible dining room.</rdfs:comment>
<hasImage rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>src/es/pfc/resources/img/MESAS/ALINA.jpg</hasImage>
<hasMaterial rdf:resource="#OakWood"/>
- 163 -
ANEXO I
<hasHorizontalSurface rdf:resource="#GeneralHorizontalSurface"/>
<hasPrice>
<Price rdf:ID="Price_AlinaTable">
<hasDescriptionPrice rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>HighPrice</hasDescriptionPrice>
<hasUnit rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
></hasUnit>
<hasValue_component rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>1800</hasValue_component>
</Price>
</hasPrice>
<hasLength rdf:datatype="http://www.w3.org/2001/XMLSchema#float"
>90.0</hasLength>
<hasCommerce rdf:resource="#Sindora"/>
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Mesa Alina (MX 2200)</hasName>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Alina Table</rdfs:label>
<hasStyle rdf:resource="#ModernStyle"/>
<hasManufacturer>
<Manufacturer rdf:ID="AndreuWorld">
<hasBuyer>
<Shop rdf:ID="MoblesPass-Avant_AlfafarSedavi">
<hasProvince rdf:resource="#Valencia"/>
<hasAddress>
<Address rdf:ID="Address_MoblesPassAvant">
<hasStreet_number rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>66</hasStreet_number>
<hasStreet rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Avda. Albufera</hasStreet>
<hasUrl rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>http://www.passe-avant.com/</hasUrl>
<hasTelephone_number rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>96-318-22-77</hasTelephone_number>
<hasRegion rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Valencia</hasRegion>
<hasTelex_number rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>96-318-22-78</hasTelex_number>
<hasElectronic_mail_address rdf:datatype=
"http://www.w3.org/2001/XMLSchema#string"
>comercial@passe-avant.com</hasElectronic_mail_address>
<hasTown rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Alfafar</hasTown>
</Address>
</hasAddress>
</Shop>
</hasBuyer>
<rdfs:comment xml:lang="es">Andreu World tiene su origen en la idea e inquietud de su
fundador y presidente, Francisco Andreu Mart. Hoy en da rene a un equipo de profesionales
altamente cualificados, a partir de una premisa muy clara: diseo y calidad.</rdfs:comment>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Andreu World</rdfs:label>
<hasCatalogue>
<Catalogue rdf:ID="CatalogueAndreuWorld">
<hasProduct>
<Chair rdf:ID="CarlotaChair">
<hasBase>
<HighLeg rdf:ID="HighLeg_CarlotaChair"/>
</hasBase>
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
- 164 -
ANEXO I
>Carlota Chair</hasName>
<hasImage rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>src/es/pfc/resources/img/SILLAS/CARLOTA_CHAIR.jpg</hasImage>
<hasFootRests rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>false</hasFootRests>
<hasManuallyAdjustableHeight rdf:datatype=
"http://www.w3.org/2001/XMLSchema#boolean"
>false</hasManuallyAdjustableHeight>
<hasManufacturer rdf:resource="#AndreuWorld"/>
<hasElectricallyAdjustableHeight rdf:datatype=
"http://www.w3.org/2001/XMLSchema#boolean"
>false</hasElectricallyAdjustableHeight>
<isUpholstered rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>true</isUpholstered>
<hasPossibleFinishing rdf:resource="#Fabric"/>
<hasUpholstered rdf:resource="#Fabric"/>
<isAdjustable rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>false</isAdjustable>
<hasPrice>
<Price rdf:ID="Price_CarlotaChair">
<hasValue_component rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>300</hasValue_component>
<hasUnit rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
></hasUnit>
</Price>
</hasPrice>
<hasHeight rdf:datatype="http://www.w3.org/2001/XMLSchema#float"
>78.0</hasHeight>
<hasRecliningSystem rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>false</hasRecliningSystem>
<hasSeat>
<SeatPart rdf:ID="SeatPart_CarlotaChair"/>
</hasSeat>
<hasNumberOfLegs rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>4</hasNumberOfLegs>
<hasLegs rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>true</hasLegs>
<hasLength rdf:datatype="http://www.w3.org/2001/XMLSchema#float"
>55.0</hasLength>
<hasMaterial>
<Wood rdf:ID="BeechWood">
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Beech Wood</hasName>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Beech Wood</rdfs:label>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>"Madera de Haya", "haya", "madera", "wood"</rdfs:comment>
</Wood>
</hasMaterial>
<hasStyle rdf:resource="#ModernStyle"/>
<hasCastors rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>false</hasCastors>
<hasPossibleColour rdf:resource="#Gray"/>
<hasPossibleColour rdf:resource="#Brown"/>
<hasCommerce rdf:resource="#CosinCosin"/>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>The collection of chairs, sofas, armchairs and stools Carlotta is characterized by its
friendly and rounded forms. It comes in solid wood but has the chair and armchair versions are
also available in solid wood oak, and incorporates two different types of backup: upholstered or
natural grid.
- 165 -
ANEXO I
Carlotta SI 0917 model has a structure of beechwood with woven seat and back.</rdfs:comment>
<hasWidth rdf:datatype="http://www.w3.org/2001/XMLSchema#float"
>52.0</hasWidth>
<isStackable rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>false</isStackable>
<hasBackrest>
<Backrest rdf:ID="Backrest_CarlotaChair"/>
</hasBackrest>
<hasCommerce rdf:resource="#MoblesPass-Avant_AlfafarSedavi"/>
</Chair>
</hasProduct>
<hasProduct>
<Chair rdf:ID="LinealChair">
<hasCommerce>
<Commerce rdf:ID="MueblesMartinez">
<hasProvince rdf:resource="#Alicante"/>
<hasAddress>
<Address rdf:ID="Address_MueblesMartinez">
<hasStreet_number rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>7</hasStreet_number>
<hasPostal_code rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>03720</hasPostal_code>
<hasElectronic_mail_address xml:lang="en"
></hasElectronic_mail_address>
<hasUrl rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>www.martinezmuebles.com</hasUrl>
<hasRegion rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Alicante</hasRegion>
<hasTown rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>BENISSA</hasTown>
<hasStreet rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Avda. Pas Valenci</hasStreet>
</Address>
</hasAddress>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Muebles Martinez</rdfs:label>
</Commerce>
</hasCommerce>
<hasCommerce>
<Shop rdf:ID="Mobles_Pass-Avant_Valencia">
<hasProvince rdf:resource="#Valencia"/>
<hasAddress>
<Address rdf:ID="Address_MoblesPass-Avant_Valencia">
<hasRegion rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Valencia</hasRegion>
<hasTelephone_number rdf:datatype=
"http://www.w3.org/2001/XMLSchema#string"
>963 61 37 62</hasTelephone_number>
<hasTelex_number rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>96 362 00 34</hasTelex_number>
<hasTown rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Valencia</hasTown>
<hasStreet_number rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>32-34</hasStreet_number>
<hasPostal_code rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>46021</hasPostal_code>
<hasCountry rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Spain</hasCountry>
<hasElectronic_mail_address rdf:datatype=
"http://www.w3.org/2001/XMLSchema#string"
- 166 -
ANEXO I
>comercial@passe-avant.com</hasElectronic_mail_address>
<hasStreet rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Avda. Aragn</hasStreet>
</Address>
</hasAddress>
</Shop>
</hasCommerce>
<hasBase>
<CantileverFrame rdf:ID="CantileverFrame_LiealChair">
<hasMaterial rdf:resource="#Iron"/>
<hasPossibleFinishing>
<OtherFinish rdf:ID="Chrome">
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Chrome</rdfs:label>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>"Cromado"</rdfs:comment>
</OtherFinish>
</hasPossibleFinishing>
</CantileverFrame>
</hasBase>
<hasPossibleFinishing rdf:resource="#Chrome"/>
<hasSeat>
<SeatPart rdf:ID="SeatPart_LinealChair">
<hasMaterial rdf:resource="#OakWood"/>
<hasPossibleColour rdf:resource="#White"/>
<hasPossibleFinishing rdf:resource="#Lacquered"/>
</SeatPart>
</hasSeat>
<hasLength rdf:datatype="http://www.w3.org/2001/XMLSchema#float"
>52.5</hasLength>
<hasCommerce rdf:resource="#Sindora"/>
<hasBackrest>
<Backrest rdf:ID="Backrest_LinealChair">
<hasPossibleFinishing rdf:resource="#Lacquered"/>
<hasPossibleColour rdf:resource="#White"/>
<hasMaterial rdf:resource="#OakWood"/>
</Backrest>
</hasBackrest>
<hasWidth rdf:datatype="http://www.w3.org/2001/XMLSchema#float"
>51.5</hasWidth>
<hasManufacturer rdf:resource="#AndreuWorld"/>
<hasCommerce rdf:resource="#MueblesGozalbo"/>
<hasStyle rdf:resource="#ModernStyle"/>
<hasPrice>
<Price rdf:ID="Price_LinealChair">
<hasUnit rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
></hasUnit>
<hasDescriptionPrice rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>MiddlePrice</hasDescriptionPrice>
<hasValue_component rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>200</hasValue_component>
</Price>
</hasPrice>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Chair Lineal</rdfs:label>
<hasMaterial rdf:resource="#Iron"/>
<hasCommerce rdf:resource="#CosinCosin"/>
<hasImage rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>src/es/pfc/resources/img/SILLAS/LINEAL_CHAIR.jpg</hasImage>
<hasCommerce>
- 167 -
ANEXO I
<Commerce rdf:ID="DivanoPielSegorbe">
<hasAddress>
<Address rdf:ID="Address_Divano">
<hasTelex_number rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>96471202</hasTelex_number>
<hasUrl rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>http://www.divanopiel.com/</hasUrl>
<hasStreet rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Avda. Espaa</hasStreet>
<hasElectronic_mail_address rdf:datatype=
"http://www.w3.org/2001/XMLSchema#string"
>divano@divanopiel.com
<divano@divanopiel.com></hasElectronic_mail_address>
<hasPostal_code rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>12400</hasPostal_code>
<hasTelephone_number rdf:datatype=
"http://www.w3.org/2001/XMLSchema#string"
>964712699</hasTelephone_number>
<hasRegion rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Castelln</hasRegion>
<hasTown rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>SEGORBE</hasTown>
<hasStreet_number rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>139</hasStreet_number>
<hasCountry rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Spain</hasCountry>
</Address>
</hasAddress>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Divano Piel Segorbe</rdfs:label>
<hasProvince rdf:resource="#Castellon"/>
</Commerce>
</hasCommerce>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Structure of iron rod chrome, trim and back panel of oak</rdfs:comment>
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Lineal Chair (SI 0584)</hasName>
<hasHeight rdf:datatype="http://www.w3.org/2001/XMLSchema#float"
>51.5</hasHeight>
<hasPossibleColour rdf:resource="#White"/>
</Chair>
</hasProduct>
<hasProduct>
<Chair rdf:ID="ManilaChair">
<hasSeat>
<SeatPart rdf:ID="SeatPart_ManilaChair">
<hasPossibleFinishing rdf:resource="#Leather"/>
</SeatPart>
</hasSeat>
<hasPossibleFinishing rdf:resource="#Leather"/>
<hasBase>
<HighLeg rdf:ID="HighLeg_ManilaChair">
<hasMaterial rdf:resource="#BeechWood"/>
<hasPossibleColour rdf:resource="#Black"/>
</HighLeg>
</hasBase>
<hasImage rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>src/es/pfc/resources/img/SILLAS/MANILA_CHAIR.jpg</hasImage>
<hasCommerce rdf:resource="#MoblesPass-Avant_AlfafarSedavi"/>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
- 168 -
ANEXO I
>Manila Chair</rdfs:label>
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Manila Chair (SO 2017)</hasName>
<hasHeight rdf:datatype="http://www.w3.org/2001/XMLSchema#float"
>80.0</hasHeight>
<hasArmrests>
<Armrest rdf:ID="Armrests_ManilaChair"/>
</hasArmrests>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Structure of beech wood, trim and back upholstered</rdfs:comment>
<hasNumberOfLegs rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>4</hasNumberOfLegs>
<hasStyle rdf:resource="#ModernStyle"/>
<hasSize>
<Size rdf:ID="MiddleSize">
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Middle</hasName>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Middle</rdfs:label>
</Size>
</hasSize>
<hasWidth rdf:datatype="http://www.w3.org/2001/XMLSchema#float"
>58.5</hasWidth>
<hasPossibleColour rdf:resource="#Black"/>
<hasManufacturer rdf:resource="#AndreuWorld"/>
<hasPrice>
<Price rdf:ID="Price_ManilaChair">
<hasUnit rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
></hasUnit>
<hasValue_component rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>300</hasValue_component>
<hasDescriptionPrice rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>MiddlePrice</hasDescriptionPrice>
</Price>
</hasPrice>
<hasLength rdf:datatype="http://www.w3.org/2001/XMLSchema#float"
>54.0</hasLength>
<hasCommerce rdf:resource="#CosinCosin"/>
<hasMaterial rdf:resource="#BeechWood"/>
<hasBackrest>
<Backrest rdf:ID="Backrest_ManilaChair">
<hasPossibleFinishing rdf:resource="#Leather"/>
</Backrest>
</hasBackrest>
</Chair>
</hasProduct>
<hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Andreu World Catalog</hasName>
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
>Andreu World Catalog</rdfs:label>
<hasProvider rdf:resource="#AndreuWorld"/>
</Catalogue>
</hasCatalogue>
- 169 -
ANEXO II
- 170 -
ANEXO II
<cadainlofo:Organization id="o_0001">
<id>Furn</id>
<name>The FurniBest</name>
</cadainlofo:Organization>
<cadainlofo:Address id="a_0001">
<street_number>25</street_number>
<street>Anystreet</street>
<town>Anytown</town>
<electronic_mail_address>furnibest@mail.com</electronic_mail_address>
</cadainlofo:Address>
<cadainlofo:Address_assignment id="aa_0001">
<assigned_address ref="a_0001"/>
<located_person_organizations>
<cadainlofo:Organization ref="o_0001"/>
</located_person_organizations>
</cadainlofo:Address_assignment>
<cadainlofo:Person id="p_0001">
<last_name>Doe</last_name>
<first_name>John</first_name>
</cadainlofo:Person>
<cadainlofo:Person_in_organization id="pio_0001">
<concerned_person ref="p_0001"/>
<containing_organization ref="o_0001"/>
<role>Employee</role>
</cadainlofo:Person_in_organization>
<cadainlofo:Organization_or_person_in_organization_assignment id="id_oopioa_0">
<assigned_entity>
<cadainlofo:Organization ref="o_0001"/>
</assigned_entity>
<role>Catalog</role>
<items>
<cadainlofo:Product_class ref="pc_0001"/>
</items>
</cadainlofo:Organization_or_person_in_organization_assignment>
- 171 -
ANEXO II
<cadainlofo:Product_class id="pc_0001">
<id>FurniB-C001</id>
<name>Catalog C 001</name>
<level_type>catalog</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0002">
<id>Legs</id>
<name>Legs</name>
<level_type>line</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0003">
<id>Boards</id>
<name>Boards</name>
<level_type>line</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0004">
<id>Tables</id>
<name>Tables</name>
<level_type>line</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0005">
<id>Chairs</id>
<name>Chairs</name>
<level_type>line</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0006">
<id>Legs_1</id>
<name>Legs_1</name>
<level_type>product</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0007">
<id>Legs_2</id>
<name>Legs_2</name>
<level_type>product</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0008">
<id>Legs_3</id>
<name>Legs_3</name>
<level_type>product</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0009">
<id>Board_1</id>
<name>Board_1</name>
<level_type>product</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0010">
<id>Board_2</id>
<name>Board_2</name>
<level_type>product</level_type>
- 172 -
ANEXO II
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0011">
<id>Table_1</id>
<name>Table_1</name>
<level_type>product</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0012">
<id>Table_2</id>
<name>Table_2</name>
<level_type>product</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0013">
<id>Table_3</id>
<name>Table_3</name>
<level_type>product</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0014">
<id>Chair_1</id>
<name>Chair_1</name>
<level_type>product</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0015">
<id>Chair_2</id>
<name>Chair_2</name>
<level_type>product</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class_relationship id="pcr_0001">
<relating ref="pc_0001"/>
<related ref="pc_0002"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0002">
<relating ref="pc_0001"/>
<related ref="pc_0003"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0003">
<relating ref="pc_0001"/>
<related ref="pc_0004"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0004">
<relating ref="pc_0001"/>
<related ref="pc_0005"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0005">
<relating ref="pc_0002"/>
- 173 -
ANEXO II
<related ref="pc_0006"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0006">
<relating ref="pc_0002"/>
<related ref="pc_0007"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0007">
<relating ref="pc_0002"/>
<related ref="pc_0008"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0008">
<relating ref="pc_0003"/>
<related ref="pc_0009"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0009">
<relating ref="pc_0003"/>
<related ref="pc_0010"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0010">
<relating ref="pc_0004"/>
<related ref="pc_0011"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0011">
<relating ref="pc_0004"/>
<related ref="pc_0012"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0012">
<relating ref="pc_0004"/>
<related ref="pc_0013"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0013">
<relating ref="pc_0005"/>
<related ref="pc_0014"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0014">
<relating ref="pc_0005"/>
<related ref="pc_0015"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0015">
<relating ref="pc_0011"/>
- 174 -
ANEXO II
<related ref="pc_0009"/>
<relation_type>composition</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0016">
<relating ref="pc_0011"/>
<related ref="pc_0006"/>
<relation_type>composition</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0017">
<relating ref="pc_0012"/>
<related ref="pc_0009"/>
<relation_type>composition</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0018">
<relating ref="pc_0012"/>
<related ref="pc_0007"/>
<relation_type>composition</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0019">
<relating ref="pc_0013"/>
<related ref="pc_0010"/>
<relation_type>composition</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0020">
<relating ref="pc_0013"/>
<related ref="pc_0008"/>
<relation_type>composition</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Specification_category id="sc_0001">
<id>colour</id>
<description>Available catalog colours</description>
<implicit_exclusive_condition>true</implicit_exclusive_condition>
</cadainlofo:Specification_category>
<cadainlofo:Specification_category id="sc_0002">
<id>material</id>
<description>Available catalog materials</description>
<implicit_exclusive_condition>true</implicit_exclusive_condition>
</cadainlofo:Specification_category>
<cadainlofo:Specification_category id="sc_0003">
<id>wheels</id>
<description>determines if the product has wheels</description>
<implicit_exclusive_condition>true</implicit_exclusive_condition>
</cadainlofo:Specification_category>
<cadainlofo:Specification_category id="sc_0004">
<id>fabrics</id>
<description>Available catalog fabrics for chairs</description>
<implicit_exclusive_condition>true</implicit_exclusive_condition>
</cadainlofo:Specification_category>
- 175 -
ANEXO II
<cadainlofo:Class_category_association id="cca_0001">
<associated_product_class ref="pc_0001"/>
<mandatory>true</mandatory>
<associated_category ref="sc_0001"/>
</cadainlofo:Class_category_association>
<cadainlofo:Class_category_association id="cca_0002">
<associated_product_class ref="pc_0001"/>
<mandatory>true</mandatory>
<associated_category ref="sc_0002"/>
</cadainlofo:Class_category_association>
<cadainlofo:Class_category_association id="cca_0003">
<associated_product_class ref="pc_0001"/>
<mandatory>true</mandatory>
<associated_category ref="sc_0003"/>
</cadainlofo:Class_category_association>
<cadainlofo:Class_category_association id="cca_0004">
<associated_product_class ref="pc_0001"/>
<mandatory>true</mandatory>
<associated_category ref="sc_0004"/>
</cadainlofo:Class_category_association>
<!-- Specifications-->
<cadainlofo:Specification id="s_0001">
<id>G</id>
<name>Green</name>
<category ref="sc_0001"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0002">
<id>B</id>
<name>Blue</name>
<category ref="sc_0002"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0003">
<id>Y</id>
<name>Yellow</name>
<category ref="sc_0001"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0004">
<id>R</id>
<name>Red</name>
<category ref="sc_0001"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0005">
<id>O</id>
<name>Orange</name>
<category ref="sc_0001"/>
- 176 -
ANEXO II
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0006">
<id>Wh</id>
<name>White</name>
<category ref="sc_0001"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0007">
<id>Bl</id>
<name>Black</name>
<category ref="sc_0001"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0008">
<id>I</id>
<name>Iron</name>
<category ref="sc_0002"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0009">
<id>Wo</id>
<name>Wood</name>
<category ref="sc_0002"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0010">
<id>Pl</id>
<name>Plastic</name>
<category ref="sc_0002"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0011">
<id>ww</id>
<name>with wheels</name>
<category ref="sc_0003"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0012">
<id>wow</id>
<name>without wheels</name>
<category ref="sc_0003"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0013">
<id>B01</id>
<name>Boudeaux_01</name>
<category ref="sc_0004"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0014">
- 177 -
ANEXO II
<id>PX</id>
<name>Pistachio_X</name>
<category ref="sc_0004"/>
<package>false</package>
</cadainlofo:Specification>
<cadainlofo:Specification id="s_0015">
<id>OFA</id>
<name>Old_Fashion_Aubergine</name>
<category ref="sc_0004"/>
<package>false</package>
</cadainlofo:Specification>
- 178 -
ANEXO II
<name>legs_1d</name>
<description>this is a configured leg</description>
<item_context ref="pc_0006"/>
<defining_specifications>
<!-- Colour = Red -->
<cadainlofo:Specification ref="s_0004"/>
<!-- Material = Iron -->
<cadainlofo:Specification ref="s_0008"/>
</defining_specifications>
</cadainlofo:Product_specification>
- 179 -
ANEXO II
- 180 -
ANEXO II
</defining_specifications>
</cadainlofo:Product_specification>
- 181 -
ANEXO II
<cadainlofo:Product_specification id="ps_0017">
<id>Board_1c</id>
<name>Board_1c</name>
<description>this is a configured board</description>
<item_context ref="pc_0009"/>
<defining_specifications>
<!-- Colour = Yellow -->
<cadainlofo:Specification ref="s_0003"/>
<!-- Material = Iron -->
<cadainlofo:Specification ref="s_0008"/>
</defining_specifications>
</cadainlofo:Product_specification>
- 182 -
ANEXO II
<item_context ref="pc_0009"/>
<defining_specifications>
<!-- Colour = Yellow -->
<cadainlofo:Specification ref="s_0003"/>
<!-- Material = Wood -->
<cadainlofo:Specification ref="s_0009"/>
</defining_specifications>
</cadainlofo:Product_specification>
- 183 -
ANEXO II
- 184 -
ANEXO II
- 185 -
ANEXO II
<cadainlofo:Specification ref="s_0010"/>
</defining_specifications>
</cadainlofo:Product_specification>
- 186 -
ANEXO III
<cadainlofo:Product_class id="pc_0005">
<id>Chairs</id>
<name>Chairs</name>
<level_type>line</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0014">
<id>Chair_1</id>
<name>Chair_1</name>
<level_type>product</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class id="pc_0015">
<id>Chair_2</id>
<name>Chair_2</name>
<level_type>product</level_type>
</cadainlofo:Product_class>
<cadainlofo:Product_class_relationship id="pcr_0013">
<relating ref="pc_0005"/>
<related ref="pc_0014"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<cadainlofo:Product_class_relationship id="pcr_0014">
<relating ref="pc_0005"/>
<related ref="pc_0015"/>
<relation_type>hierarchy</relation_type>
</cadainlofo:Product_class_relationship>
<!-- Properties-->
<cadainlofo:Applied_independent_property id="aip_0001">
<name>ergonomic</name>
<described_element>
- 187 -
ANEXO III
<cadainlofo:Product_class ref="pc_0014"/>
</described_element>
<base_independent_property ref="ip_0001"/>
</cadainlofo:Applied_independent_property>
<cadainlofo:Independent_property id="ip_0001">
<id>ergonomy</id>
<property_type>ergonomic</property_type>
</cadainlofo:Independent_property>
<cadainlofo:Applied_independent_property id="aip_0002">
<name>cheap and good</name>
<described_element>
<cadainlofo:Product_class ref="pc_0014"/>
</described_element>
<base_independent_property ref="ip_0002"/>
</cadainlofo:Applied_independent_property>
<cadainlofo:Independent_property id="ip_0002">
<id>slogan</id>
<property_type>slogan</property_type>
</cadainlofo:Independent_property>
<cadainlofo:Assigned_property id="ap_0001">
<name>price</name>
<described_element>
<cadainlofo:Product_class ref="pc_0014"/>
</described_element>
</cadainlofo:Assigned_property>
<cadainlofo:Property_representation id="pr_0001">
<property ref="ap_0001"/>
<rep ref="r_0001"/>
</cadainlofo:Property_representation>
<cadainlofo:Assigned_property id="ap_0002">
<name>slogan</name>
<described_element>
<cadainlofo:Product_class ref="pc_0014"/>
</described_element>
</cadainlofo:Assigned_property>
<cadainlofo:Property_representation id="pr_0002">
<property ref="ap_0002"/>
<rep ref="r_0002"/>
</cadainlofo:Property_representation>
<cadainlofo:Representation id="r_0001">
<context_of_items ref="rc_0001"/>
<items ref="niwu_0001"/>
</cadainlofo:Representation>
<cadainlofo:Representation_context id="rc_0001">
<id>price in Spain</id>
<kind>price</kind>
</cadainlofo:Representation_context>
- 188 -
ANEXO III
<cadainlofo:Numerical_item_with_unit id="niwu_0001">
<unit ref="u_0001"/>
<value_component>55</value_component>
</cadainlofo:Numerical_item_with_unit>
<cadainlofo:Unit id="u_0001">
<name>euros</name>
<si_unit>false</si_unit>
</cadainlofo:Unit>
<cadainlofo:Representation id="r_0002">
<context_of_items ref="rc_0002"/>
<items ref="sri_0001"/>
</cadainlofo:Representation>
<cadainlofo:Representation_context id="rc_0002">
<id>slogan in UK</id>
<kind>slogan</kind>
</cadainlofo:Representation_context>
<cadainlofo:String_representation_item id="sri_0001">
<string_value>Pure London fashion</string_value>
</cadainlofo:String_representation_item>
</exp:uos>
</p28doc:iso_10303_28>
- 189 -