domingo, 21 de abril de 2013

Capa de presentación

Para la capa de presentación utilizaremos la librería js d3:
http://d3js.org/

Mediante dicha librería y una interfaz REST de nuestros métodos de manipulación y búsqueda sobre los datos del graf, podremos realizar la capa de presentación de un modo ágil y rápido.

Bastará con adaptar nuestros datos de nodos y relaciones a un formato JSON predeterminado por d3 e implementar el web service REST con todos los métodos necesarios. Nos podrán ayudar:
-GSON (transformación de objetos a formato JSON)
-Spring RESTful services (una opción para crear el WS REST)

La aplicación mostrará en todo momento el grafo, mientras nos permite realizar otras operaciones:
-Permitirá ejecutar los 3 tipos de búsquedas descritos en la entrada anterior, mediante varios formularios. Los nodos y/o relaciones devueltos serán resaltados.
-Al pinchar sobre un nodo, podremos ver todas sus propiedades y se abrirá un menú para ejecutar cambios sobre el mismo, por ejemplo crear/eliminar alguna dependencia o atributo.
-Sería muy interesante disponer de herramientas de visualización del grafo. Por ejemplo, resaltar u ocultar un determinado tipo de relación o nodo.

El modelo de datos GedcomX es bastante completo y complejo. Por ello, creemos que sería necesario mostrar al usuario una versión simplificada del mismo. Tenemos varias opciones, y conforme vaya conociendo la librería d3 podrían aparecer nuevas opciones o descartar otras:
-Resaltar los nodos más importantes y sus relaciones: Persons y Relationships.
-Ocultar nodos menos importantes.
-Mostrar una capa de abstracción sobre el grafo original. El nodo Person sería un "supernodo". Al pinchar sobre Person, veríamos el detalle del subgrafo Person (Names, Identifiers, Facts...).


1 comentario:

  1. Hem de recordar que en l'apartat de visuaització del graf, vam comentar l'Albert i jo que un arbre genealogic mostra nodes com persones i relacions de tipus 'matrimoni', 'fill/pare' i poques més. Aquestes relacions son linees horizontals entre marit i esposa, o verticals entre pare/mare i fill en un arbre ascendent, o entre el fill i el matrinoni dels pares. Per tant, aquest graf simplificat o resumit que dius, haurem de dissenyar-lo per a que sigui el més intuitiu possible per al usuari genealogista.
    Estic molt d'acord amb quests dos nivells de visualització del graf/arbre.
    Enric

    ResponderEliminar