{"action":"created","issue":{"url":"https://api.github.com/repos/ontodev/robot/issues/98","repository_url":"https://api.github.com/repos/ontodev/robot","labels_url":"https://api.github.com/repos/ontodev/robot/issues/98/labels{/name}","comments_url":"https://api.github.com/repos/ontodev/robot/issues/98/comments","events_url":"https://api.github.com/repos/ontodev/robot/issues/98/events","html_url":"https://github.com/ontodev/robot/issues/98","id":176743302,"number":98,"title":"Robot silently loses axioms for some ontologies","user":{"login":"cmungall","id":50745,"avatar_url":"https://avatars.githubusercontent.com/u/50745?v=3","gravatar_id":"","url":"https://api.github.com/users/cmungall","html_url":"https://github.com/cmungall","followers_url":"https://api.github.com/users/cmungall/followers","following_url":"https://api.github.com/users/cmungall/following{/other_user}","gists_url":"https://api.github.com/users/cmungall/gists{/gist_id}","starred_url":"https://api.github.com/users/cmungall/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cmungall/subscriptions","organizations_url":"https://api.github.com/users/cmungall/orgs","repos_url":"https://api.github.com/users/cmungall/repos","events_url":"https://api.github.com/users/cmungall/events{/privacy}","received_events_url":"https://api.github.com/users/cmungall/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":14,"created_at":"2016-09-13T20:38:43Z","updated_at":"2016-11-02T18:20:43Z","closed_at":null,"body":"test.owl:\n\n```\n<?xml version=\"1.0\"?>\n<rdf:RDF xmlns=\"http://purl.obolibrary.org/obo/ro.owl#\"\n     xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n     xmlns:owl=\"http://www.w3.org/2002/07/owl#\"\n     xmlns:xml=\"http://www.w3.org/XML/1998/namespace\"\n     xmlns:xsd=\"http://www.w3.org/2001/XMLSchema#\"\n     xmlns:rdfs=\"http://www.w3.org/2000/01/rdf-schema#\">\n    <owl:Ontology rdf:about=\"http://purl.obolibrary.org/obo/ro.owl\"></owl:Ontology>\n\n    <!-- dodgy URI -->\n    <owl:AnnotationProperty rdf:about=\"http://www.geneontology.org/formats/oboInOwl#http://www.w3.org/2000/01/rdf-schema#seeAlso\"/>\n\n    <owl:ObjectProperty rdf:about=\"http://purl.obolibrary.org/obo/BFO_0000050\">\n        <rdfs:label rdf:datatype=\"http://www.w3.org/2001/XMLSchema#string\">part of</rdfs:label>\n    </owl:ObjectProperty>\n</rdf:RDF>\n```\n\n```\nrobot convert -i test.owl -o z.owl && cat z.owl\nWARN  http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit not supported by parser type org.apache.xerces.jaxp.SAXParserImpl\nWARN  entityExpansionLimit not supported by parser type org.apache.xerces.jaxp.SAXParserImpl\nINFO  Notice: root element does not have an xml:base. Relative IRIs will be resolved against file:/Users/cjm/repos/porifera-ontology/src/ontology/test.owl\nWARN  http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit not supported by parser type org.apache.xerces.jaxp.SAXParserImpl\nWARN  entityExpansionLimit not supported by parser type org.apache.xerces.jaxp.SAXParserImpl\n<?xml version=\"1.0\"?>\n<rdf:RDF xmlns=\"http://purl.obolibrary.org/obo/ro.owl#\"\n     xml:base=\"http://purl.obolibrary.org/obo/ro.owl\"\n     xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n     xmlns:owl=\"http://www.w3.org/2002/07/owl#\"\n     xmlns:xml=\"http://www.w3.org/XML/1998/namespace\"\n     xmlns:xsd=\"http://www.w3.org/2001/XMLSchema#\"\n     xmlns:rdfs=\"http://www.w3.org/2000/01/rdf-schema#\">\n    <owl:Ontology rdf:about=\"http://purl.obolibrary.org/obo/ro.owl\"/>\n</rdf:RDF>\n\n\n\n<!-- Generated by the OWL API (version 0.0.1-SNAPSHOT) https://github.com/owlcs/owlapi -->\n```\n\nNote the OP is silently lost.\n\nThe root cause is presumably the strange URI for the AP. However, if this is invalid an error should be thrown. If it is not invalid then the OP should pass through.\n\nThere is a hint in the OWLAPI version. Why does it say `OWL API (version 0.0.1-SNAPSHOT)`. The pom says to get 4.2.6\n"},"comment":{"url":"https://api.github.com/repos/ontodev/robot/issues/comments/257954419","html_url":"https://github.com/ontodev/robot/issues/98#issuecomment-257954419","issue_url":"https://api.github.com/repos/ontodev/robot/issues/98","id":257954419,"user":{"login":"jamesaoverton","id":292409,"avatar_url":"https://avatars.githubusercontent.com/u/292409?v=3","gravatar_id":"","url":"https://api.github.com/users/jamesaoverton","html_url":"https://github.com/jamesaoverton","followers_url":"https://api.github.com/users/jamesaoverton/followers","following_url":"https://api.github.com/users/jamesaoverton/following{/other_user}","gists_url":"https://api.github.com/users/jamesaoverton/gists{/gist_id}","starred_url":"https://api.github.com/users/jamesaoverton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamesaoverton/subscriptions","organizations_url":"https://api.github.com/users/jamesaoverton/orgs","repos_url":"https://api.github.com/users/jamesaoverton/repos","events_url":"https://api.github.com/users/jamesaoverton/events{/privacy}","received_events_url":"https://api.github.com/users/jamesaoverton/received_events","type":"User","site_admin":false},"created_at":"2016-11-02T18:20:42Z","updated_at":"2016-11-02T18:20:42Z","body":"I spent most of my day trying to get rid of the OneJar warnings, and came up with #106.\r\n\r\nOneJar is ancient and unmaintained. Despite various advice on the web, I couldn't suppress its 40 lines of warnings.\r\n\r\nI dug in and tried to resolve the dependency conflict. It's almost certainly caused by a conflict between with `geronimo-stax` and `xml-apis`, where `geronimo-stax` is used by `org.apache.ws.commons.axiom`, which is used by HermiT. I tried excluding all this crap in the POM, and it reduced the number of OneJar warnings, but not completely.\r\n\r\nThe immediate fix is to change `/META-INF/services/org.openrdf.rio.RDFParserFactory` as @balhoff explains above. I tried just providing an alternative version of the file, but the build is non-deterministic, so half the time my version wins and the problem is fixed, and half the time the `owlapi-distribution` version wins.\r\n\r\nUsing `maven-shade-plugin` and it's ServicesResourceTransformer we can merge the various `/META-INF/services/org.openrdf.rio.RDFParserFactory` alternatives, resulting in something like:\r\n\r\n```\r\norg.semanticweb.owlapi.rio.RioFunctionalSyntaxParserFactory\r\norg.semanticweb.owlapi.rio.RioManchesterSyntaxParserFactory\r\norg.semanticweb.owlapi.rio.RioOWLXMLParserFactory\r\norg.semanticweb.owlapi.rio.RioFunctionalSyntaxParserFactory\r\norg.semanticweb.owlapi.rio.RioManchesterSyntaxParserFactory\r\norg.semanticweb.owlapi.rio.RioOWLXMLParserFactory\r\norg.openrdf.rio.binary.BinaryRDFParserFactory\r\norg.openrdf.rio.n3.N3ParserFactory\r\norg.openrdf.rio.nquads.NQuadsParserFactory\r\norg.openrdf.rio.ntriples.NTriplesParserFactory\r\norg.openrdf.rio.rdfjson.RDFJSONParserFactory\r\norg.openrdf.rio.rdfxml.RDFXMLParserFactory\r\norg.openrdf.rio.trix.TriXParserFactory\r\norg.openrdf.rio.turtle.TurtleParserFactory\r\norg.openrdf.rio.trig.TriGParserFactory\r\ncom.github.jsonldjava.sesame.SesameJSONLDParserFactory\r\norg.semarglproject.sesame.rdf.rdfa.SesameRDFaParserFactory\r\n```\r\n\r\nThis seems to work: No more OneJar, and no more warning lines. Maven Shade is maintained, at least, and I think they're accomplishing the same thing. Now that I see all the gory details of this problem and solution, worried about side-effects. This is Shades' build-time warning:\r\n\r\n```\r\n[WARNING] xml-apis-1.4.01.jar, geronimo-stax-api_1.0_spec-1.0.1.jar define 33 overlapping classes:\r\n[WARNING]   - javax.xml.stream.XMLEventReader\r\n[WARNING]   - javax.xml.stream.StreamFilter\r\n[WARNING]   - javax.xml.stream.util.StreamReaderDelegate\r\n[WARNING]   - javax.xml.stream.events.StartDocument\r\n[WARNING]   - javax.xml.stream.EventFilter\r\n[WARNING]   - javax.xml.stream.XMLEventWriter\r\n[WARNING]   - javax.xml.stream.XMLStreamConstants\r\n[WARNING]   - javax.xml.stream.events.EntityDeclaration\r\n[WARNING]   - javax.xml.stream.events.ProcessingInstruction\r\n[WARNING]   - javax.xml.stream.XMLInputFactory\r\n[WARNING]   - 23 more...\r\n[WARNING] xml-apis-1.4.01.jar, jaxen-1.1.4.jar define 1 overlapping classes:\r\n[WARNING]   - org.w3c.dom.UserDataHandler\r\n[WARNING] geronimo-activation_1.1_spec-1.1.jar, geronimo-javamail_1.4_spec-1.7.1.jar define 2 overlapping classes:\r\n[WARNING]   - org.apache.geronimo.osgi.locator.ProviderLocator\r\n[WARNING]   - org.apache.geronimo.osgi.locator.Activator\r\n[WARNING] jcl-over-slf4j-1.7.6.jar, commons-logging-1.1.3.jar define 6 overlapping classes:\r\n[WARNING]   - org.apache.commons.logging.impl.SimpleLog$1\r\n[WARNING]   - org.apache.commons.logging.Log\r\n[WARNING]   - org.apache.commons.logging.impl.SimpleLog\r\n[WARNING]   - org.apache.commons.logging.LogConfigurationException\r\n[WARNING]   - org.apache.commons.logging.impl.NoOpLog\r\n[WARNING]   - org.apache.commons.logging.LogFactory\r\n[WARNING] maven-shade-plugin has detected that some class files are\r\n[WARNING] present in two or more JARs. When this happens, only one\r\n[WARNING] single version of the class is copied to the uber jar.\r\n[WARNING] Usually this is not harmful and you can skip these warnings,\r\n[WARNING] otherwise try to manually exclude artifacts based on\r\n[WARNING] mvn dependency:tree -Ddetail=true and the above output.\r\n[WARNING] See http://maven.apache.org/plugins/maven-shade-plugin/\r\n```\r\n\r\nAny opinions?"}}
{"actor":{"display_login":"jamesaoverton"}}