Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG]: Creazione progetto da file OWL #280

Open
valeriosantarelli opened this issue May 21, 2024 · 9 comments
Open

[BUG]: Creazione progetto da file OWL #280

valeriosantarelli opened this issue May 21, 2024 · 9 comments
Assignees
Labels
bug Something isn't working
Milestone

Comments

@valeriosantarelli
Copy link
Contributor

Describe the bug

Il tentativo di inizializzare un progetto dal file in allegato (o importarlo in una ontologia già creata), produce prima l'errore che si vede nello screenshot sotto, e poi il freeze dell'applicazione.

ontologiaCamera.owl.zip

Screenshot 2024-05-21 alle 23 29 36

Reproduction Steps

Per riprodurre, selezionare Create project from OWL file, e scegliere il file allegato.

Screenshot 2024-05-21 alle 23 36 09

Expected Result

Il risultato atteso è una ontologia graphol contenente l'ontologia OWL selezionata, opportunamente disegnata.

Actual Result

Gli errori di cui sopra.

Affected Versions

3.5.2

Installation

macOS dmg

Operating System

macOS

Operating System Version

macOS 14.2.1

Operating System Architecture

x86_64

Log

No response

@mnamici
Copy link
Collaborator

mnamici commented May 22, 2024

Riporto un pò di considerazioni da una prima sessione di debug.

Il messaggio di errore è dovuto al fatto che non supportiamo in eddy annotazioni i cui soggetti od oggetti sono individui anonimi, tranne in casi precisi (es. annotazioni di alcuni assiomi logici). Allo stato attuale supportare questa funzione richiede un intervento significativo ma fattibile in un pò di tempo.

Il messaggio però è innocuo, il fatto che si pianti è legato ad uno strano comportamento di owlapi, in particolare una variante della nota issue sulla gestione degli import risolta con uno switch temporaneo alla versione downstream per owlapi 5, ma ancora più strano nella versione inclusa in eddy che è molto datata. In particolare ho notato che c'è una sorta di race condition, dove alcune volte si pianta (in un loop di importazioni a cascata), in altre funziona ma sbaglia la provenienza delle entità.

Per risolvere (escluse le annotazioni di individui anonimi) per prima cosa dobbiamo provare ad aggiornare le owlapi incluse in eddy (l'ultima versione 4 ufficiale include il fix), ho un branch sperimentale che include il supporto a java 17 e nuovo build di owlapi, a breve metto i link per scaricare un build di prova.

@mnamici
Copy link
Collaborator

mnamici commented May 23, 2024

Ho aggiornato owlapi alla 4.5.29.

Potresti provare se con il build seguente riesci a caricare l'ontologia?

https://github.com/obdasystems/eddy/actions/runs/9198915778

Potrebbe sembrare che l'applicazioni si blocchi per 4/5 secondi ancora ma poi mi pare che stia completanto il caricamento, ci sono delle parti bloccanti nel plugin di importazione ma non ho capito esattamente in che fase.

In particolare potresti verificare dall'ontology manager il Document Path dell'ontologia skos importata come viene impostato?

EDIT: dimenticavo di dire che se hai forzato la chiusura dell'app potrebbe dirti che l'ontologia è già associata al progetto, questo perché il db rimane in uno stato inconsistente, in tal caso prova ad eliminarlo e a rifare l'importazione.

Il db va in ~/Library/Application Support/eddy/imports.sqlite in macOS.

@MariaRosariaFraraccio
Copy link
Contributor

Con questo build ci mette un po' ma funziona, gli unici assiomi che non riesce a importare sono quelli che coinvolgono gli individui anonimi.

@mnamici
Copy link
Collaborator

mnamici commented May 23, 2024

Ok grazie, per caso hai visto il Document Path che specifica per l'import di skos nell'ontology manager? Perché a me vengono fuori percorsi che non c'entrano niente quindi sto cercando di capire se si tratta di un'altro bug (nostro o di owlapi)

@MariaRosariaFraraccio
Copy link
Contributor

Come Document Location c'è http://www.w3.org/2004/02/skos/core

@mnamici
Copy link
Collaborator

mnamici commented May 23, 2024

Ok quello è corretto. A quanto pare io sono incappato in una (feature?) di owlapi di cui non ero a conoscenza, ma questo è un altro discorso...

C'è ancora da capire a cosa è dovuta la parte bloccante ora.

@mnamici
Copy link
Collaborator

mnamici commented May 24, 2024

Ho fatto il merge dell'aggiornamento a owlapi 4.5.29 che contiene il fix degli import, a breve su actions ci saranno i build da develop disponibili.

Per il discorso del supporto ai blank node bisognerebbe proprio implementarlo, se ritenete che sia una feature con priorità alta posso iniziare a occuparmene.

@valeriosantarelli
Copy link
Contributor Author

No, direi di no.
Non capisco bene l'utilità di una annotazione su un blank node (rappresenta un assioma)?

Per il momento tralasciamo.

@mnamici
Copy link
Collaborator

mnamici commented May 24, 2024

Ok, in questo caso escono fuori dalla reificazione delle note storiche, si vede che raggruppano una collezione di annotazioni ad un dato istante (come uno stato).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants