Gellish es un lenguaje de ontología para el almacenamiento y la comunicación de datos, diseñado y desarrollado por Andries van Renssen desde mediados de los años 1990. [1] Comenzó como un lenguaje de modelado de ingeniería ("lenguaje de ingeniería genérico", de ahí su nombre, "Gellish"), pero evolucionó hasta convertirse en un lenguaje de modelado de datos conceptual universal y extensible con aplicaciones generales. Debido a que incluye terminología y definiciones específicas del dominio, también es un lenguaje de modelado de datos semántico y la metodología de modelado Gellish es miembro de la familia de metodologías de modelado semántico.
Aunque sus conceptos tienen 'nombres' y definiciones en varios lenguajes naturales, Gellish es un lenguaje formal independiente del lenguaje natural . Cualquier variante del lenguaje natural, como el inglés formal Gellish, es un lenguaje natural controlado . La información y el conocimiento se pueden expresar de tal manera que sean interpretables por computadora, así como independientes del sistema y del lenguaje natural. Cada variante del lenguaje natural es un subconjunto estructurado de ese lenguaje natural y es adecuado para el modelado de información y la representación del conocimiento en ese lenguaje en particular. Todas las expresiones, conceptos y cosas individuales se representan en Gellish mediante identificadores únicos (numéricos) (UID de Gellish). Esto permite que el software traduzca expresiones de un lenguaje natural formal a cualquier otro lenguaje natural formal.
El gellish está destinado a la expresión de hechos (declaraciones), consultas, respuestas, etc. Por ejemplo, para la especificación completa e inequívoca de procesos comerciales, productos, instalaciones y procesos físicos; para información sobre su compra, fabricación, instalación, operación y mantenimiento; y para el intercambio de dicha información entre sistemas, aunque de una manera independiente del sistema, interpretable por computadora e independiente del lenguaje. También está destinado a la expresión de conocimientos y requisitos sobre tales cosas.
La definición de Gellish se puede derivar de la definición de inglés formal Gellish al considerar las "expresiones" como relaciones entre los identificadores únicos únicamente. La definición de inglés formal Gellish se proporciona en el Diccionario-Taxonomía de inglés Gellish , que es un gran " diccionario inteligente " de conceptos con relaciones entre esos conceptos (anteriormente se llamaba STEPlib). El Diccionario-Taxonomía se llama "diccionario inteligente", porque los conceptos están organizados en una jerarquía de subtipo -supertipo, lo que lo convierte en una taxonomía que admite la herencia de propiedades de conceptos de supertipo a conceptos de subtipo. Además, debido a que junto con otras relaciones entre los conceptos, el diccionario inteligente se extiende a una ontología . Gellish tiene básicamente una estructura objeto-relación-objeto extendida para expresar hechos por relaciones, mientras que cada hecho puede estar acompañado por una serie de hechos auxiliares sobre el hecho principal. Algunos ejemplos de hechos auxiliares son el autor, la fecha, el estado, etc. Para permitir una interpretación inequívoca, Gellish incluye la definición de una gran cantidad (más de 650) de tipos de relaciones estándar que determinan la rica capacidad de expresión semántica del lenguaje.
En principio, para cada lengua natural existe una variante Gellish específica para esa lengua. Por ejemplo, Gellish holandés (Gellish Nederlands), Gellish italiano, Gellish inglés , Gellish ruso, etc. Gellish no inventa su propia terminología, como el esperanto , sino que utiliza los términos de las lenguas naturales. Por tanto, el diccionario-taxonomía Gellish inglés es como un diccionario ordinario (electrónico) que se amplía con conceptos adicionales y con relaciones entre los conceptos.
Por ejemplo, el diccionario-taxonomía Gellish contiene definiciones de muchos conceptos que también aparecen en diccionarios ordinarios, como tipos de objetos físicos como edificios, aviones, automóviles, bombas, tuberías, propiedades como masa y color, escalas como kilogramos y barras, así como actividades y procesos, como reparación y calefacción, etc. Además de eso, el diccionario contiene conceptos con nombres compuestos, como "intercambiador de calor de horquilla", que no aparecerán en diccionarios ordinarios. La principal diferencia con los diccionarios ordinarios es que el diccionario Gellish también incluye definiciones de tipos estándar de relaciones ( tipos de relación ), que se denotan mediante frases estándar en inglés Gellish. Por ejemplo, define tipos de relación como ⟨es un subtipo de⟩ , ⟨se clasifica como un⟩ , ⟨tiene como aspecto⟩ , ⟨se cuantifica como⟩ , ⟨puede ser un ejecutante de un⟩ , ⟨debe tener como parte un⟩ , etc. Estos tipos de relación estándar y definiciones de conceptos permiten que un software impulsado por Gellish interprete de manera correcta e inequívoca las expresiones Gellish.
Las expresiones Gellish pueden expresarse en cualquier formato adecuado, como SQL , RDF u OWL , o incluso en forma de tablas de hojas de cálculo , siempre que su contenido sea equivalente a la forma tabular de las tablas de nombres Gellish (que definen el vocabulario) y las tablas de hechos (que definen juntas el contenido de una base de datos Gellish) o equivalente a las tablas de mensajes Gellish (para el intercambio de datos). Un ejemplo del núcleo de una tabla de mensajes es el siguiente:
Una tabla de mensajes Gellish completa requiere columnas adicionales para identificadores únicos, la intención de la expresión, el idioma de la expresión, cardinalidades, unidad de medida, contexto de validez, estado, fecha de creación, autor, referencias y varias otras columnas. Gellish Light solo requiere las tres columnas anteriores, pero no admite, por ejemplo, capacidades para distinguir homónimos ; traducción automática; y administración de versiones, etc. Esas capacidades y varias otras son admitidas por Full Gellish. El siguiente ejemplo ilustra el uso de algunas columnas adicionales en una tabla de mensajes Gellish, donde UoM significa 'unidad de medida'.
La colección de tipos de relación estándar define los tipos de hechos que se pueden expresar en Gellish, aunque cualquiera puede crear su propia extensión del diccionario y, por lo tanto, puede agregar conceptos y tipos de relación cuando sea necesario.
Como Gellish es un lenguaje formal, cualquier expresión Gellish solo puede utilizar conceptos que estén definidos en un diccionario Gellish, o la definición de cualquier concepto debe ser ad hoc dentro de la colección de expresiones Gellish. Se pueden crear bases de conocimiento utilizando el lenguaje Gellish y sus definiciones de conceptos en un diccionario Gellish. Ejemplos de aplicaciones de un diccionario Gellish son su uso como fuente de clases para la clasificación de equipos, documentos, etc., o como terminología estándar ( metadatos ) o para armonizar datos en varios sistemas informáticos, o como tesauro o taxonomía en un motor de búsqueda .
Gellish permite la traducción automática y el uso de sinónimos, abreviaturas y códigos, así como homónimos, debido al uso de un identificador independiente del lenguaje natural (UID) único para cada concepto. Por ejemplo, 130206 (bomba) y 1225 (está clasificado como un). Esto garantiza que los conceptos se identifiquen de forma independiente del lenguaje natural. Por lo tanto, varios diccionarios Gellish utilizan los mismos UID para el mismo concepto. Esto significa que esos diccionarios proporcionan traducciones de los nombres de los objetos, así como una traducción de los tipos de relación estándar. Los UID permiten que la información y el conocimiento que se expresan en una variante lingüística de Gellish se puedan traducir y presentar automáticamente mediante software con tecnología Gellish en cualquier otra variante lingüística para la que haya un diccionario Gellish disponible. Por ejemplo, la frase ⟨está clasificado como un⟩ y la frase ⟨ist klassifiziert als⟩ son denotaciones del mismo UID 1225.
Por ejemplo, una computadora puede expresar automáticamente la segunda línea del ejemplo anterior en alemán de la siguiente manera:
También se pueden formular preguntas (consultas). Las consultas se facilitan mediante términos estandarizados como qué, cuál, dónde y cuándo. Se pueden utilizar en combinación con UID reservados para incógnitas en el rango de 1 a 100. Esto permite utilizar expresiones Gellish para consultas como:
El software basado en Gellish debería poder proporcionar la respuesta correcta a esta consulta comparando la expresión con los hechos de la base de datos y debería responder con:
Tenga en cuenta que la capacidad de traducción automática implica que una consulta/pregunta expresada en un idioma particular, digamos inglés, se puede utilizar para buscar en una base de datos Gellish en otro idioma (digamos chino), mientras que la respuesta se puede presentar en inglés.
Los modelos de información se pueden distinguir en dos categorías principales:
Todas estas categorías de modelos pueden incluir dibujos y otros documentos, así como información de formas 3D (el núcleo de los modelos 3D). Todos ellos se pueden expresar e integrar en Gellish.
La relación de clasificación entre las cosas individuales y los tipos de cosas hace que las definiciones, el conocimiento y los requisitos sobre los tipos de cosas estén disponibles para las cosas individuales. Además, la jerarquía de subtipos y supertipos en una taxonomía de diccionarios Gellish implica que el conocimiento y los requisitos que se especifican para un tipo de cosa son heredados por todos sus subtipos. En consecuencia, cuando alguien diseña un artículo individual y lo clasifica según un tipo particular, entonces también se reconocerán y podrán ponerse a disposición automáticamente todos los conocimientos y requisitos que se conocen para los supertipos de ese tipo.
Cada categoría de modelo de información requiere su propia semántica, porque la expresión del hecho individual de que algo real es el caso requiere otros tipos de relaciones que la expresión del hecho general de que algo puede ser el caso, lo que a su vez difiere de un hecho que expresa que algo será el caso en un contexto particular o que algo es siempre el caso por definición. Estas diferencias semánticas hacen que las diversas categorías de modelos de información requieran sus propios subconjuntos de tipos de relaciones estándar. Por lo tanto, Gellish hace una distinción entre las siguientes categorías de tipos de relaciones:
El gellish se expresa normalmente en forma de tablas de datos de gellish. Existen tres categorías de tablas de datos:
Una base de datos Gellish generalmente consta de una o más tablas de nombres y una o más tablas de hechos juntas. Las tablas de datos y las tablas de hechos son equivalentes a las tablas de mensajes.
Todas las columnas de las tablas están estandarizadas, de modo que cada tabla de datos Gellish de una categoría contiene las mismas columnas estándar, o un subconjunto de las estándar. Esto proporciona interfaces estándar para el intercambio de datos entre sistemas de aplicación. El contenido de las tablas de datos también puede incluir restricciones y requisitos ( modelos de datos ) que especifican el tipo de datos que deben y pueden proporcionarse para aplicaciones particulares. Dichos modelos de requisitos hacen que los diseños de bases de datos dedicados sean superfluos. Las tablas de datos Gellish se pueden utilizar como parte de una base de datos central o pueden formar bases de datos distribuidas, pero las tablas también se pueden intercambiar en archivos de intercambio de datos o como cuerpo de mensajes Gellish.
Una tabla de nombres relaciona los términos de un idioma y una comunidad lingüística ('comunidad de habla') con un identificador único. Esto permite el uso inequívoco de sinónimos, abreviaturas y códigos, así como homónimos en varios idiomas. La siguiente tabla es un ejemplo de una tabla de nombres:
El indicador inverso solo es relevante cuando se utilizan frases para indicar tipos de relación, ya que cada tipo de relación estándar se indica mediante al menos una frase estándar y al menos una frase inversa estándar. Por ejemplo, la frase <es parte de> tiene como frase inversa <tiene como parte>. Ambas frases indican el mismo tipo de relación (una relación de composición). Sin embargo, cuando la frase inversa se utiliza para expresar un hecho, los objetos de la izquierda y de la derecha en la expresión deben tener una posición inversa. Por lo tanto, las siguientes expresiones se reconocerán como dos expresiones igualmente válidas del mismo hecho (con el mismo UID de hecho):
Así, el indicador inverso indica para los tipos de relación si una frase es una frase base (1) o una frase inversa (2).
Una tabla de hechos contiene expresiones de cualquier hecho, cada una de las cuales está acompañada por una serie de hechos auxiliares que aportan información adicional relevante para los hechos principales. Algunos ejemplos de hechos auxiliares son: la intención, el estado, el autor, la fecha de creación, etc.
Una tabla de hechos Gellish consta de columnas para el hecho principal y varias columnas para hechos auxiliares. Los hechos auxiliares permiten especificar cosas como roles, cardinalidades, contextos de validez, unidades de medida, fecha del último cambio, autor, referencias, etcétera:
Las columnas para el hecho principal en una tabla de hechos son:
Estas columnas también aparecen en una tabla de mensajes como se muestra a continuación.
Una tabla de mensajes Gellish completa es, de hecho, una combinación de una tabla de nombres y una tabla de hechos. Contiene no sólo columnas para la expresión de hechos, sino también columnas para los nombres de los objetos relacionados y columnas adicionales para expresar hechos auxiliares. Esto permite el uso de una única tabla, también para la especificación y el uso de sinónimos y homónimos, varios idiomas, etcétera. El núcleo de una tabla de mensajes se ilustra en la siguiente tabla:
En el ejemplo anterior, los conceptos con los nombres, así como los tipos de relación (estándar), se seleccionan con sus UID del Diccionario inglés Gellish.
Una tabla de base de datos Gellish se puede implementar en cualquier formato tabular. Por ejemplo, se puede implementar como una base de datos basada en SQL o, de lo contrario, como un archivo STEP (según la norma ISO 10303 -21), o como una tabla de hoja de cálculo simple, como en Excel, como el propio Diccionario Gellish.
Las tablas de bases de datos Gellish también se pueden describir de forma equivalente utilizando RDF / Notation3 o XML . Una representación de “Gellish en XML” se define en un esquema XML estándar. Se recomienda que un archivo XML con datos de acuerdo con ese esquema XML tenga la extensión de archivo GML, mientras que GMZ significa “Gellish en XML comprimido”.
Una de las diferencias entre Gellish y RDF, XML u OWL es que Gellish English incluye un extenso diccionario de conceptos en inglés, que incluye también un gran (y ampliable) conjunto de tipos de relaciones estándar para crear expresiones interpretables por ordenador (en un formato que también es legible para profesionales no informáticos). Por otro lado, los "lenguajes" como RDF, XML y OWL sólo definen unos pocos conceptos básicos, lo que deja mucha libertad a sus usuarios para definir sus propios conceptos de "lenguaje de dominio".
Esta atractiva libertad tiene la desventaja de que los usuarios de "lenguajes" como RDF, XML u OWL aún no utilizan un lenguaje común y aún no pueden integrar datos que provienen de diferentes fuentes. Gellish está diseñado para proporcionar un lenguaje común real, al menos en una medida mucho mayor y, por lo tanto, proporciona mucha más estandarización y uniformidad en terminología y expresiones.
Tanto OWL ( Web Ontology Language /Ontological Web Language) como Gellish están pensados para su uso en la web semántica . Gellish se puede utilizar en combinación con OWL o por sí solo. Existen muchas similitudes entre ambos lenguajes, como el uso de identificadores únicos (UID de Gellish, URI de OWL ) [2], pero también diferencias importantes. Las principales diferencias son las siguientes:
OWL es un metalenguaje que incluye una gramática básica, pero sin diccionario. OWL está pensado para que lo utilicen los desarrolladores de sistemas informáticos y los desarrolladores de ontologías para crear ontologías. Gellish es un lenguaje que incluye una gramática, así como un diccionario-taxonomía y una ontología. Gellish está pensado para que lo utilicen los desarrolladores de sistemas informáticos, así como los usuarios finales, y también lo pueden utilizar los desarrolladores de ontologías cuando quieran ampliar la ontología Gellish o crear su propia ontología de dominio. Gellish no hace distinción entre un metalenguaje y un lenguaje de usuario; los conceptos de ambos "mundos" están integrados en un solo lenguaje. Por tanto, el diccionario de inglés Gellish contiene conceptos que son equivalentes a los conceptos de OWL, pero también contiene los conceptos de un diccionario de inglés normal.
OWL se puede utilizar para representar explícitamente el significado de términos en vocabularios y las relaciones entre esos términos. En otras palabras, se puede utilizar para la definición de taxonomías u ontologías . Los términos de un vocabulario de este tipo no pasan a formar parte del lenguaje OWL. Por lo tanto, OWL no incluye definiciones de los términos en un lenguaje natural, como carretera, coche, perno o longitud. Sin embargo, se puede utilizar para definirlos y construir una ontología.
La parte superior de la ontología del Gellish también se puede utilizar para definir términos y las relaciones entre ellos. Sin embargo, muchos de estos términos del lenguaje natural ya están definidos en la parte inferior del diccionario-taxonomía del Gellish. Por lo tanto, en el Gellish, términos como carretera, coche, perno o longitud son parte del lenguaje Gellish. Por lo tanto, el inglés Gellish es un subconjunto del inglés natural.
Gellish distingue entre conceptos y los distintos términos que se utilizan como nombres (sinónimos, abreviaturas y traducciones) para referirse a esos conceptos en diferentes contextos e idiomas. Cada concepto se identifica mediante un identificador único que es independiente del lenguaje natural y puede tener muchos términos diferentes en diferentes idiomas para denotar el concepto. Esto permite la traducción automática entre diferentes versiones de Gellish en lenguaje natural. En OWL, los distintos términos en diferentes idiomas y los sinónimos son, en principio, conceptos diferentes que deben declararse como iguales mediante relaciones de equivalencia explícitas (a menos que las alternativas se expresen en términos de las propiedades de anotación de etiquetas alternativas). [3] Por un lado, el enfoque OWL es más simple, pero hace que las expresiones sean ambiguas y hace que la integración de datos y la traducción automática sean significativamente más complicadas.
OWL puede considerarse una ontología superior que consta de 54 "construcciones del lenguaje" (constructores o conceptos). [4] La parte de ontología superior de Gellish consta actualmente de más de 1500 conceptos, de los cuales unos 650 son tipos de relación estándar. Además de eso, el Diccionario-Taxonomía de Gellish contiene más de 40.000 conceptos. Esto indica la gran riqueza semántica y las capacidades de expresión de Gellish. Además, Gellish contiene definiciones de muchos hechos sobre los conceptos definidos que se expresan como relaciones entre esos conceptos.
OWL tiene un conjunto fijo de conceptos (términos) que solo se amplían cuando se amplía el estándar OWL. Gellish es extensible para cualquier usuario, bajo condiciones de código abierto .
Gellish es un desarrollo posterior de ISO 10303 -221 (AP221) e ISO 15926. Gellish es una integración y extensión de los conceptos que se definen en ambas normas. La principal diferencia con ambas normas ISO es que Gellish es más fácil de implementar y tiene capacidades de expresión semántica más (precisas) y es adecuado para expresar consultas y respuestas también. La filosofía específica de partes espacio-temporales que se utiliza en ISO 15926 para representar períodos de tiempo discretos para representar el tiempo también se puede utilizar en Gellish, sin embargo, la representación recomendada del tiempo en Gellish es el método más intuitivo que especifica que los hechos tienen una duración de validez especificada. Por ejemplo, cada propiedad puede tener múltiples valores numéricos en una escala, que se expresa como múltiples hechos, mientras que para cada uno de esos hechos se puede agregar una especificación (opcional) del momento o período de tiempo durante el cual ese hecho es válido.
Se utiliza un subconjunto del Diccionario Gellish (Taxonomía) para crear la norma ISO 15926-4 . El Gellish en RDF se está estandarizando como ISO 15926-11 .