2012-06-10 13 views
6

Mi piacerebbe costruire un'ontologia per la mia applicazione web, e ho pensato di usare Neo4j per rappresentare l'ontologia (dato che uso Neo4j comunque).Un buon quadro per l'ontologia ricorrente all'interno di un database neo4j?

In questo momento, sembra che sia necessario scriverlo da zero, compresa l'intera implementazione di ontologia, convalida, ragionamento, editor GUI. Sicuramente troppo lavoro.

C'è una struttura o una libreria che mi consenta di gestire la mia ontologia su neo4j senza implementarla da zero? In caso contrario, qual è l'alternativa più ragionevole? (Sto usando Neo4j su Node.js)

+1

Avete bisogno di onotologie o RDF? So che, ad es. http://disease-ontology.org/faq/ sta usando Neo4j nel back-end, forse potresti ottenere qualche informazione lì? –

+0

Voglio rappresentare un'ontologia. Grazie, questo è un buon vantaggio! Hanno un rappresentante GitHub: http://github.com/IGS/disease-ontology - Ha qualche codice Python per gestire l'ontologia –

risposta

3

implementazione ontologia, convalida, ragionamento, editor GUI.

È possibile utilizzare lo stack Tinkerpop's Blueprints, se si desiderano queste cose (eccetto l'editor della GUI), mentre si utilizza ancora il Neo4j come DB. Si allontana dall'API dei database dei grafi "di basso livello" e fornisce un'interfaccia unificata. Ciò significa che è possibile modificare il DB in futuro, pur mantenendo le funzionalità.

Per iniziare sono necessari i principali Blueprints lib, Neo4j impl. e Sail oupl.. A questo punto dovresti usare la classe GraphSail e la sua classe Connection per la gestione del grafo semantico.

Si noti che utilizzando la distribuzione di Sail (non ho trovato il termine ..) è possibile utilizzare le librerie di Sesame come (incollando dal mio progetto di maven) sesame-rio-rdfxml, sesame-rio-ntriples, sesame -pospository-sail, sesame-queryparser-sparql.

Non sto lavorando per Tinkerpop, ma mi piace molto il loro framework.

Problemi correlati