Giter VIP home page Giter VIP logo

aberowl's People

Contributors

leechuck avatar miguelangelrg avatar reality avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

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

aberowl's Issues

Queries returning only direct subclasses !

It looks like the following query is returning only direct subclasses, despite 'direct': False. (The doc says this is default but I tried setting it anyway).

q = "'part of' some postsynapse"
p = requests.post(url = 'http://aber-owl.net/service/api/runQuery.groovy?', 
                            data = json.dumps({ 'type': 'subclass', 'ontology': 'GO', 
                            'query': q, 'labels': True, 'direct' : False}))
len(p.json()['result'])

=> 12

In Protege:
image

This is a pretty serious show-stopper

Make API return values more informative

Please could API queries with errors return appropriate http codes / error messages. Some examples:

This returns 200 + results, as it should:
http://aber-owl.net/service/api/runQuery.groovy?type=subeq&query=%3Chttp%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FBFO_0000050%3E%20SOME%20%3Chttp%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0006915%3E&ontology=GO

This returns 200 + results - but what are they, given the nonsense query type spec?
http://aber-owl.net/service/api/runQuery.groovy?type=asdfufoe&query=%3Chttp%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FBFO_0000050%3E%20SOME%20%3Chttp%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0006915%3E&ontology=GO

Should return 400 + an error indicating unsupported query type.

This returns 200 + empty results:
http://aber-owl.net/service/api/runQuery.groovy?type=subeq&query=asfdgerb&ontology=GO
{"result":[],"time":1}

I think 200 is OK, but the JSON should include the OWL-API error message in an error field. it is important to be able to distinguish between a valid query with empty results and an invalid query. For an invalid query, it is important to be able to diagnose the problem (the OWL-API error message is good for that).

This returns an incomprehensible error message:
http://aber-owl.net/service/api/runQuery.groovy?type=subeq&query=asfdgerb&ontology=asfh
java.lang.IllegalArgumentException: URI is not absolute

I think 200 would be OK, but it should return an error indicating that the ontology is unknown

CC @Robbie1977

broken uris

elk-owlapi dependencies considered harmful

Providing a wider range of formats for each ontology.

Just a suggestion.

I believe that it would be great if AberOWL could include the feature of downloading every ontology in differing formats.

Right now, we're only able to download the data in .ont format. Converting this schema to JSON, Turtle, RDF and N-triples would be an awesome feature to have!

group query results

When i ask for the equivalent classes to 'process' in SIO, i see equivalent results from SIO and BIOMO. would be good to group equivalent URIs together, so as to only show one result, or at least preferentially from the ontology i'm trying to query...

visualize tab view bug

if you try to execute a query, then change to visualize, you get the query view not the visualize view . seems to require a reload to get back the visualize view.

Change Redis data model for submissions

Here is my suggestion, as discussed with @MiguelAngelRG : http://pastebin.com/SAYYE25j

The ordered canonical array of submissions will store versions ofthe ontology with their data time/file in an object instead of being keyed by the time - thus we can use the array ID as the version ID elsewhere in AberOWL. Each version having its own object will also mean that we can easily extend versions with more info (release notes or names or w/e) in future.

This will require small changes in pretty much everywhere records are retrieved, would start with: https://github.com/bio-ontology-research-group/aberowl-obase as this is where the records are built, then it should just be a matter of selecting the canonical last in the ordered array instead of using the lastSubDate when retrieving the most recent ontology elsewhere. We will also need to write a conversion script, but I am happy to do this once the changes have been implemented

rendering of ontology metadata fields

might suggest to
i) dereference the URI to obtain an rdfs:label, dct:title, skos:prefLabel, etc and keep a local cache
ii) failing this, use the uri fragment (e.g. #protein) or string following the last forward slash (e.g. /protein)

Gateway timeout in data tables query

When clicking on the 'Data' tab in any ontology overview (e.g. at http://aber-owl.net/ontology/OMIM) I get the alert:

DataTables warning: table id=data_results - Ajax error. For more information about this error, please see http://datatables.net/tn/7

In the Firebug console I see

NetworkError: 504 Gateway Timeout - http://aber-owl.net/openlifedata/QueryBio2RDF.groovy?query=&_=1455451605925

make left frame expandable

replace the fixed % width for the left frame with one that i can freely expand the width of, to accommodate classes / properties that have large labels, and to allow me to see the tree in one frame.

Logging of queries

AberOWL should log the queries that are being run to a logfile. This logfile would be useful to help debug errors, and also provide a resource useful for reasoner evaluation and improvement of performance.

Add documentation on how to run an instance of AberOWL

I'm interested in running a local AberOWL server with my own ontologies loaded. Looks like it should be straighforward enough to run from a checkout of the repo but have failed in my (brief) attempts to do this. Can you add some documentation on installation configuration and running?

Add descriptions

Seems something like rdfs:description is missing from the indexing stage

Error in return superclasses

Selecting the "superclass" radio button on the query tab seems to return the subclasses, not the superclasses.

term tree expansion

It would be better if the tree used the expansion icon where only those nodes can be expanded. nothing is more frustrating than clicking on that and not getting an expansion.

AberOWL server is leaking threads

Somewhere, threads seem to be created and left in a blocked state; number of threads increases and at some point the JVM will crash. Last crash happened with 32k elk-reasoner threads in blocked state.

Redesign the API to use full URIs instead of (or in addition to) labels

Currently, the Aber-OWL API uses Manchester OWL syntax with a custom shortform provider. For many applications, it would be better (or rather: more generic) to use the URI of a class or object property, and let the user-interface perform the mapping between a label, synonym, definition, etc. and the corresponding URI. Therefore, I think it would be good to add the option to use URIs in the Manchester OWL syntax to Aber-OWL.

Add ontology facet for search page

Sometimes doing a search results in a large number of hits across different ontologies. it would be useful to implement a facet that summarizes the hits for each ontology, and enables use to restrict the results to that ontology. another option is to have a text search filter immediately above the ontology column, for which i can filter the ontology labels. the current filter across the entire table is useful, but not sufficiently specific.

Issues loading Individuals OWL

Continuing for #18

full size was loaded as VFB
and a smaller version loaded as VFB_test

neither seem to ever load?

How are we supposed to diagnose OWL loading errors?

GO versions are very out of date

GO: date: 03:11:2015 11:44
GO-plus: date: 27:08:2015 08:12

Can they be kept up to date?

Also, please could you display the version IRI where this is recorded? This is a much more reliable way to track versions that the date field. (Version IRI from OBO (foundry) ontologies should be resolvable to the original file).

Cheers

Support for http post requests

I, perhaps naively, expected to be able to fire post requests at the API endpoint.

Using python requests - this works

g = requests.get('http://aber-owl.net/service/api/runQuery.groovy?type=subeq&query=<http://purl.obolibrary.org/obo/BFO_0000050> some <http://purl.obolibrary.org/obo/GO_0006915>&ontology=GO')

This => 200 + empty results (see #39 ):

query = '<http://purl.obolibrary.org/obo/BFO_0000050> some <http://purl.obolibrary.org/obo/GO_0006915>'
p = requests.post(url = 'http://aber-owl.net/service/api/runQuery.groovy?', 
                 data = json.dumps({ 'type': 'subeq', 'ontology': 'GO', 'query': query }))

Is there a way to use POST, and if not, can you add support?

Cheers,
David

@Robbie1977

Better documentation

Update inline code documentation for all modules and run it through doxygen/similar

Implement OWLReasoner interface for AberOWL API

People should have the option to use AberOWL from within OWLAPI, by implementing an AberOWLReasoner, which implements OWLReasoner and supports all the OWLAPI calls. The ontology would either be the ontology in AberOWL, or, if it's not available, the ontology in OWLAPI which is sent to AberOWL and then classified there and queried through the AberOWLReasoner class.

permalink

Would be nice to have a permalink for any page being viewed in aber-owl, whether browsing the tree, or posing a query.

Sync issues

Namely: new ontologies do not reload correctly, new versions of very large ontologies do not reload

term search in tree

On performing a keyword search on a specific ontology, two issues arise

  1. the tree expands to the selected term, but cannot be used to expand parent nodes.
  2. the frame that contains the tree prevents us from seeing the full label. so needs to resize according to expansion.

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.