ExarcaFidalgo / Shumlex

Integración ShEx - UML
MIT License
4 stars 0 forks source link

Comprobar la interoperabilidad con Visual Paradigm #52

Closed ExarcaFidalgo closed 4 years ago

ExarcaFidalgo commented 4 years ago

Edit: Está instalado. Parece que, cuanto menos, reconoce los elementos básicos, de modo que voy a listar aquí el resultado que da cada uno de los ejemplos que ofrezco y qué se debe arreglar.

ExarcaFidalgo commented 4 years ago

ShEx Básico

imagen

Versión actual

imagen Puesto que hemos reconfigurado los AND, Titanuser se conforma ahora de la herencia de User y un AND con una shape vacía que contiene el string. USER AND {titancode xsd:string}

ExarcaFidalgo commented 4 years ago

Herencia

imagen La herencia en sí no da problema. Aparece aquí un error que tendrá su propio apartado, lo señalo igualmente:

Versión actual

imagen

ExarcaFidalgo commented 4 years ago

Tipo de nodo / nodeKind

imagen Nada reseñable.

Versión actual

imagen De nuevo, consecuencia de los cambios en los AND, estos también cambian. Por ejemplo, BNode AND { } ahora tiene un nodeKind BNode y un AND con una Shape vacía.

Queda extraño, pero verdaderamente, es coherente con el modo que tenemos de expresar los AND en UML. Lo que no es coherente es la representación del grafo, donde optábamos por una representación más simple y simplemente indicabamos el nodeKind, obviando estos AND al vacío.

Será cuestión de explicarse.

ExarcaFidalgo commented 4 years ago

Facetas

imagen Nada reseñable

ExarcaFidalgo commented 4 years ago

Rangos y exclusiones

imagen Nada reseñable

ExarcaFidalgo commented 4 years ago

Conjuntos genéricos - Wildcard

imagen Nada reseñable

ExarcaFidalgo commented 4 years ago

Etiquetas de lenguaje

imagen Nada reseñable

ExarcaFidalgo commented 4 years ago

Cardinalidad

imagen Tras los nuevos cambios, nada reseñable

Versión actual

Ahora, con < > imagen

ExarcaFidalgo commented 4 years ago

OneOf

imagen Nada reseñable

Versión actual

imagen El contador de Blank se salta uno, pero no afecta más que visualmente. Admisible por ahora

ExarcaFidalgo commented 4 years ago

Shapes anidadas

imagen Me parece correcto. Ahora permite distinguir entre una referencia a una shape anónima expresada explícitamente:

:Car { :name xsd:string ; :belongs @_:1 }

_:1 { a [ :Garage ] }

Y una shape anidada:

:User { :name xsd:string ; :worksFor { a [ :Company]; } }

Había planteado la relación de contención, pero parece requerir de alguna condición más allá de dos clases cualesquiera. De modo que nos quedamos con la composición, más sencillo y seguramente claro.

Lo que esto plantea ahora es la posibilidad de:

ExarcaFidalgo commented 4 years ago

Shapes cerradas

imagen Los closed aparecen como elementos aparte. Abriendo su especificación se indican los elementos restringidos, que se corresponden con las shapes de ShEx. Asimismo en la clase se listan las restricciones que le afectan. Está correcto.

Como nota, en PlantUML optamos por indicar el CLOSED junto al nombre de la clase, por claridad. Tratándose de una imagen no disponemos de la opción de los programas de poner la restricción aparte y analizar sus elementos restringidos.

Versión actual

imagen De nuevo, el AND cambia algunas cosillas.

ExarcaFidalgo commented 4 years ago

Restricción triple inversa

imagen La enumeración, al tomar el nombre del atributo, toma también el símbolo de inverso. Estaría bien quitar eso, pero ahora mismo es un detalle bastante menor.

ExarcaFidalgo commented 4 years ago

Extra

imagen

ExarcaFidalgo commented 4 years ago

Expresiones etiquetadas

imagen Mayormente bien. Quedaría realizar el mismo movimiento que en la generación del grafo:

Versión actual

imagen

ExarcaFidalgo commented 4 years ago

Conjunciones

imagen

ExarcaFidalgo commented 4 years ago

Cambio el título por uno algo más sutil.

ExarcaFidalgo commented 4 years ago

Disyunciones

imagen