enanomapper / slimmer Goto Github PK
View Code? Open in Web Editor NEWSlims ontologies.
Home Page: https://jbiomedsem.biomedcentral.com/articles/10.1186/s13326-015-0005-5
License: MIT License
Slims ontologies.
Home Page: https://jbiomedsem.biomedcentral.com/articles/10.1186/s13326-015-0005-5
License: MIT License
Why were the terms "skin sensitization" and "skin irritation" not put under "dermal toxicity" but made a separate class. These terms were manually added to the eNM ontology so please can you explain why this decision was made @jannahastings ?
Janna, are there alternative download locations? Jenkins reports:
--2015-09-08 06:43:09-- (try:11) http://livercancer.imbi.uni-heidelberg.de/ccont.owl
Connecting to livercancer.imbi.uni-heidelberg.de (livercancer.imbi.uni
-heidelberg.de)|129.206.228.156|:80... failed: Connection timed out.
Retrying.
Update pom.xml to have the latest version of owlapi-distribution
<dependency>
<groupId>net.sourceforge.owlapi</groupId>
<artifactId>owlapi-distribution</artifactId>
<version>4.3.2</version>
</dependency>
I did a copy and updated to version 5.1.11 but had issues compiling. Changes at the java code might be required.
Ref.:
https://mvnrepository.com/artifact/net.sourceforge.owlapi/owlapi-distribution
The OBI slim file includes the class BFO_0000003 (without metadata) which is not included in the instructions. The only place that the class is used in the slim file is in the range of the preceded_by and precedes relations. As this class is not included in the instructions I would not expect it to be included in the resulting slim file.
There seems to be a change in the subclasses present in the headclass of "toxicity" which is now under the superclass of "information content entity". Before this was under "disposition" so something must have changed in composing the eNM ontology. NOTE: under the toxicity class there are some classes which have manually been added to the eNM ontology.
Currently the slimmer only accepts and "slims" classes. We need to add relationships, which can also be duplicated in much the same fashion as classes are.
The latest version of the NPO slim file is not usable, as it generates an error in Protege / other OWL parsers. According to the error message from Protege, the problem is with an unknown prefix “ncicp” in the XML. This appears in the syntax used internally in the NPO for their definitions, e.g.
<npo:FULL_SYN
rdf:datatype="http://www.w3.org/2001/XMLSchema#string"><ncicp:ComplexTerm
xmlns:ncicp="http://ncicb.nci.nih.gov/xml/owl/EVS/ComplexProperties.xsd#"><ncicp:term-name>cylindrical
shape</ncicp:term-name><ncicp:term-group>PT</ncicp:term-group><ncicp:term-source>NCI</ncicp:term-source></ncicp:ComplexTerm>/npo:FULL_SYN
In previous versions of the slimmer, the output file produced for the NPO slim did not include the escaping of XML characters in the embedded definition, e.g. it used to include ncicp:ComplexDefinition whereas now it includes <ncicp:ComplexDefinition> This change must reflect an underlying change in the slimming software since nothing has changed in the underlying NPO OWL file.
This includes:
So that they are exposed via purl.enanomapper.org.
In the owl:Ontology annotation.
Taking input from the .props files.
There might be a bug with how the parent class (specified in ()) is assigned in the case of cheminf. For cheminf I included only one class with descendents -- chemical descriptor -- and assigned it the parent IAO_0000030 i.e. information content entity. However, in the resulting SLIM the class has no specified parent. I suspect this is because the IAO class that I want to delegate as parent IS actually present in the source version of cheminf, so it gets removed along with the rest of the imported IAO. However, despite the fact that it is present in cheminf I don't want to import it from there as we are importing direct from IAO.
The following config line does not seem to be doing what it should do:
+D(http://purl.bioontology.org/ontology/npo#NPO_707):http://purl.obolibrary.org/obo/CHEBI_50828 silicon dioxide nanoparticle
I have added the .props and .iris
I got the following error message when trying to convert the NPO ontology into OBO format, pointing at the need for a feature to merge rdfs:comment labels in slimmer.
OBO STRUCTURE ERROR Ontology does not conform to OBO structure rules:
multiple comment tags not allowed. in frame:Frame(Disposition id( Disposition)name( disposition)comment(
Possible via a local void file?
Testing adding relationship IRIs for BAO, although the build shows as successful the result is strange (no labels, relationships are still there) and there is an error report in the workspace.
Error report: https://jenm.bigcat.maastrichtuniversity.nl/job/BAO/ws/hs_err_pid2187.log/*view*/
There seems to be something odd going on with the slimmer.
In CHEMINF, despite clearly specifying the same parent class for 'molecular entity quality', 'chemical substance quality' and 'surface area' which I newly added to the cheminf.iris for export, only one of the three is getting the correct parent allocated, while the other two are assigned no parent class.
In PATO, newly assigned classes for export, e.g. size, are not being included in the resulting slim file, despite the build executing on commit as usual.
@jannahastings , what license shall we use? I'm happy with the code under the MIT license. What about the config files? Also MIT or do you want to specify something else?
Possibly an OWLAPI issue, which does the serialization as RDF/XML.
See this upstream issue: owlcs/owlapi#439
update CITATION.cff to 1.2.0
org.semanticweb.owlapi.model.OWLRuntimeException: 1 pending annotations should have been used by now. [Annotation(http://purl.obolibrary.org/obo/IAO_0010000 http://purl.obolibrary.org/obo/BFO_0010034)]
at org.semanticweb.owlapi.rdf.rdfxml.parser.OWLRDFConsumer.setPendingAnnotations(OWLRDFConsumer.java:567)
at org.semanticweb.owlapi.rdf.rdfxml.parser.TripleHandlers$TypeAxiomHandler.handleTriple(TripleHandlers.java:2752)
at org.semanticweb.owlapi.rdf.rdfxml.parser.TripleHandlers$HandlerAccessor.applyAnnotations(TripleHandlers.java:170)
at org.semanticweb.owlapi.rdf.rdfxml.parser.TripleHandlers$HandlerAccessor$3.handleResourceTriple(TripleHandlers.java:199)
at org.semanticweb.owlapi.rdf.rdfxml.parser.OWLRDFConsumer.iterateResourceTriples(OWLRDFConsumer.java:2484)
at org.semanticweb.owlapi.rdf.rdfxml.parser.TripleHandlers$HandlerAccessor.consumeAnnotatedAxioms(TripleHandlers.java:194)
at org.semanticweb.owlapi.rdf.rdfxml.parser.TripleHandlers$HandlerAccessor.mopUp(TripleHandlers.java:377)
at org.semanticweb.owlapi.rdf.rdfxml.parser.OWLRDFConsumer.endModel(OWLRDFConsumer.java:1494)
at org.semanticweb.owlapi.rdf.rdfxml.parser.RDFParser.parse(RDFParser.java:134)
at org.semanticweb.owlapi.rdf.rdfxml.parser.RDFXMLParser.parse(RDFXMLParser.java:81)
at uk.ac.manchester.cs.owl.owlapi.ParsableOWLOntologyFactory.loadOWLOntology(ParsableOWLOntologyFactory.java:159)
at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntology(OWLOntologyManagerImpl.java:958)
at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntologyFromOntologyDocument(OWLOntologyManagerImpl.java:896)
at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntologyFromOntologyDocument(OWLOntologyManagerImpl.java:918)
at com.github.enanomapper.Slimmer.(Slimmer.java:62)
at com.github.enanomapper.Slimmer.(Slimmer.java:48)
at com.github.enanomapper.Slimmer.main(Slimmer.java:119)
This will allow two Jenkins jobs, one for testing the loading, with the intention to turn red and complain on Slack when that happens, and a second Jenkins jobs for the labels and descriptions.
After the slimmer has executed, the resulting file (xxx-slim.owl) should have at least one class in it. Do we agree and if yes should we add that as an automated test?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.