2012-06-27 27 views
6

Ho una Ontologia scritta in GUFO con Protege. Ma non trovo una soluzione per creare relazioni tra classi. Certo, c'è una relazione "sottoclasse", ma voglio definire le mie relazioni. Quindi ho una gerarchia di classi (che consiste di "sottoclassi" -relations) ma voglio creare una relazione, ad esempio "has_Relation", per connettere due classi.Ontologia: OWL - Creazione di connessioni tra classi

Il mio obiettivo è scrivere un programma java in cui sia possibile ottenere l'informazione "quale classe è classe di genitore di una classe?" e "a quale classe è una connessione has_Relation?"

(non sto parlando di individui - sto solo parlando di classi)

La ringrazio molto per il vostro aiuto in anticipo!

migliori saluti Natan

risposta

7

Il modo più semplice per farlo è quello di utilizzare una proprietà di annotazione. In Protegge, selezionare la classe che si desidera correlare a un'altra classe, quindi fare clic su + accanto a "Annotazioni" nella scheda Annotazioni. Quindi aggiungi la proprietà has_Relation con il secondo pulsante in alto a sinistra nella finestra. Quindi selezionare la scheda IRI entità e la sottoscheda Classi, selezionare l'altra classe a cui si desidera correlare e il gioco è fatto.

Tuttavia, si consiglia di non farlo se has_Relation è una proprietà oggetto o una proprietà datatype. In tal caso, puoi usare "punire", cioè puoi creare nuovi individui nella scheda Individui con gli stessi nomi delle classi che vuoi mettere in relazione. Quindi li rapportano come se fossero individui normali. Notare che ciò è consentito e valido in OWL 2 DL.

+1

Grazie mille, questo è esattamente quello di cui avevo bisogno. L'ho già provato in questo modo, ma il mio problema era che avevo anche una proprietà dell'oggetto con lo stesso nome "has_relation" .. Ma ora: problema risolto! grazie! :) – Natan

+0

È possibile esprimere query DL che corrispondono agli individui appartenenti a classi che contengono queste proprietà di annotazione? –