Coder Social home page Coder Social logo

ontodia's Introduction

Ontodia npm CircleCI

Ontodia is a JavaScript library that allows to visualize, navigate and explore data in the form of an interactive graph based on underlying data sources.

What is Ontodia for?

Ontodia allows you to create and persist diagrams made from existing data - relational, object, semantic.

It was designed to visualize RDF data sets in particular, but could be tailored to almost any data source by implementing a data provider interface.

Core features

  • Visual navigation and diagramming over large graph data sets
  • Rich graph visualization and context-aware navigation features
  • Ability to store and retrieve diagrams
  • User friendly - no graph query language or prior knowledge of the schema required
  • Customizable user interface (by modifying templates for nodes and links) and data storage back-end

How to try it?

You can follow developer tutorials at the developer documentation page

License

The Ontodia library is distributed under LGPL-2.1. A commercial license with additional features, support and custom development is available, please contact us at [email protected].

Developer documentation and contributing

Developer documentation is available at wiki page.

Giving Ontodia people credit

If you use the Ontodia library in your projects, please provide a link to this repository in your publication and a citation reference to the following paper:

Mouromtsev, D., Pavlov, D., Emelyanov, Y., Morozov, A., Razdyakonov, D. and Galkin, M., 2015. The Simple Web-based Tool for Visualization and Sharing of Semantic Data and Ontologies. In International Semantic Web Conference (Posters & Demos).

@inproceedings{Mouromtsev2015,
    author = {Mouromtsev, Dmitry and Pavlov, Dmitry and Emelyanov, Yury and
        Morozov, Alexey and Razdyakonov, Daniil and Galkin, Mikhail},
    year = {2015},
    month = {10},
    title = {The Simple Web-based Tool for Visualization and Sharing of Semantic Data and Ontologies},
    booktitle = {International Semantic Web Conference (Posters & Demos)}
}

It really helps our team to gain publicity and acknowledgment for our efforts. Thank you for being considerate!

ontodia's People

Contributors

alexeymz avatar blolg avatar ladone3 avatar toefl avatar yuricus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ontodia's Issues

The domain app.ontodia.org doesn’t have A or AAAA records

I’d like to try Ontodia, but the app domain isn’t working.

$ dig any @1.1.1.1 app.ontodia.org

; <<>> DiG 9.10.3-P4-Ubuntu <<>> any @1.1.1.1 app.ontodia.org
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOTIMP, id: 19987
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1452
;; QUESTION SECTION:
;app.ontodia.org.		IN	ANY

;; Query time: 4 msec
;; SERVER: 1.1.1.1#53(1.1.1.1)
;; WHEN: Sat Jul 20 07:42:34 CEST 2019
;; MSG SIZE  rcvd: 44

Combine ontodia with rdflib parser

Hi, I did a quick test to combine ontodia with a recent rdflib.js parser, e.g. the RDFParser. It did not work well, I think one reason is that ontodia relies on rdf-ext version 0.3.x, while recent rdf-ext already supports the updates of the RDF/JS specification (one simple example is the difference in node attributes, value vs nominalValue).

I read in the other threads that you are re-evaluating your open source strategy, is there already any idea how you will continue? I can help with updating to the new APIs, but it would be good to know what your plans are around ontodia and open source.

relations / edges not always rendered

I recognized that relations / edged are not always rendered, esp. with a higher number of nodes. is this configurable if so where? or a known limitation/bug? thanks.

installing dependencies fails on npm v8

Hello, I am trying to run npm install, I get this error:

npm ERR! gyp ERR! node -v v17.9.0
npm ERR! gyp ERR! node-gyp -v v3.8.0
npm ERR! gyp ERR! not ok 
npm ERR! Build failed with error code: 1

I am no expert in js, is it a problem with the npm version or smth else? I have built /installed other apps before without problems, so the node/npm setup works well normally. Thanks!

RangeError: Maximum call stack size exceeded

I'm working with Ontodia javascript library to present my graphdb rdf data set.

There's this error I couldnt find the cause of it, which happens onload:
enter image description here

RangeError: Maximum call stack size exceeded.

This function is exactly as the DOCS describes you should connect to your sparql endpoint.

function onWorkspaceMounted(workspace) {
  if (!workspace) {
    return;
  }
  workspace.getModel().importLayout({
    dataProvider: new SparqlDataProvider(
      {
        endpointUrl: REACT_APP_API_URL + "/sparql/query",
        imagePropertyUris: ["http://xmlns.com/foaf/0.1/img"],
        queryMethod: SparqlQueryMethod.GET,
        queryFunction: ontodiaQueryFunction
      },
      OWLStatsSettings
    )
  });
}

I have the feeling something is not valid with the response I get from ...queryFunction: ontodiaQueryFunction, and Ontodia might have a problem dealing with it, but that's just a guess. Though I did log the resolved promise of ontodiaQueryFuncion to see I get a legit response, and it does look legit.

Did you run into a similar issue? or familiar with this error?

issue with the connection to the custom sparql-endpoint

Hi,
I have a problem with http://localhost:10444/sparql.html page.
It doesn't connect to my SPARQL_ENDPOINT, which is set as environment variable.

Return the following error:

Error: Must provide a proper URL as target
at ProxyServer. (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/http-proxy/lib/http-proxy/index.js:68:35)
at Server. (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/webpack-dev-server/lib/Server.js:147:14)
at Layer.handle [as handle_request] (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/layer.js:95:5)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:137:13)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)
at next (/Users/Maria/MegaPanDA/DKC/NodeJS/ontodia/node_modules/express/lib/router/route.js:131:14)

Parameters of elements are visualized incorrectly if using browser google chrome on Windows and set the window zoom more then 150%. Or if using mobile gadgets.

The main problem is that content of element (foreignObject) inside svg, rendered outside if using overflow: scroll or position: relative, absolute e.t.c.
Related chrome issues:
https://bugs.chromium.org/p/chromium/issues/detail?id=568614
https://bugs.chromium.org/p/chromium/issues/detail?id=578682
For now it's true only for google chrome (tested on v. 57.0.2970.0). Opera(v. 42.0.2393.94), IE(11/Edge) and Firefox(v. 47.0.1) are working fine with scrolling (not with position).

Prepopulating with specific resource

Is is possible to add a resource to the workspace on initialization

e.g. I would like to show a specific dbpedia resource when I initialize the workspace.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.