diff --git a/owlsim-core/pom.xml b/owlsim-core/pom.xml
index 9ae54f4..f2d9372 100644
--- a/owlsim-core/pom.xml
+++ b/owlsim-core/pom.xml
@@ -1,192 +1,201 @@
- 4.0.0
-
- owlsim
- org.monarchinitiative.owlsim
- 3.0-SNAPSHOT
-
- owlsim-core
- jar
- owlsim-core
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ 4.0.0
+
+ owlsim
+ org.monarchinitiative.owlsim
+ 3.0-SNAPSHOT
+
+ owlsim-core
+ jar
+ owlsim-core
-
- 2.11.2
-
+
+ 2.11.2
+
-
-
+
+
- org.apache.maven.plugins
- maven-assembly-plugin
-
- owlsim
- false
- false
- ${project.parent.basedir}/bin
-
- jar-with-dependencies
-
-
-
- true
- org.monarchinitiative.owlsim.compute.runner.RunEngine
-
-
-
-
-
- make-assembly
- package
-
- single
-
-
-
+ org.apache.maven.plugins
+ maven-assembly-plugin
+
+ owlsim
+ false
+ false
+ ${project.parent.basedir}/bin
+
+ jar-with-dependencies
+
+
+
+ true
+ org.monarchinitiative.owlsim.compute.runner.RunEngine
+
+
+
+
+
+ make-assembly
+ package
+
+ single
+
+
+
- org.apache.maven.plugins
- maven-failsafe-plugin
- 2.18.1
-
-
-
- integration-test
- verify
-
-
-
+ org.apache.maven.plugins
+ maven-failsafe-plugin
+ 2.18.1
+
+
+
+ integration-test
+ verify
+
+
+
-
-
-
-
-
- org.apache.jena
- jena-core
- ${jena.version}
-
-
- org.apache.jena
- jena-arq
- ${jena.version}
-
-
- net.sourceforge.owlapi
- owlapi-apibinding
- ${owlapi.version}
-
-
- net.sourceforge.owlapi
- owlapi-api
- ${owlapi.version}
-
-
- net.sourceforge.owlapi
- owlapi-contract
- ${owlapi.version}
-
-
- net.sourceforge.owlapi
- owlapi-distribution
- ${owlapi.version}
-
-
- net.sourceforge.owlapi
- owlapi-impl
- ${owlapi.version}
-
-
- net.sourceforge.owlapi
- owlapi-parsers
- ${owlapi.version}
-
-
- net.sourceforge.owlapi
- owlapi-tools
- ${owlapi.version}
-
-
- log4j
- log4j
- 1.2.17
-
-
- mail
- javax.mail
-
-
- jms
- javax.jms
-
-
- jmxtools
- com.sun.jdmk
-
-
- jmxri
- com.sun.jmx
-
-
-
-
- org.apache.ant
- ant
- 1.8.2
-
-
- commons-io
- commons-io
- 2.2
-
-
- org.semanticweb.elk
- elk-owlapi
- 0.4.1
-
-
- com.google.code.gson
- gson
- 2.2.4
-
-
- net.sourceforge.owlapi
- jfact
- 1.0.0
-
-
- jline
- jline
- 0.9.93
-
-
- junit
- junit
-
-
-
-
- org.apache.geronimo.specs
- geronimo-javamail_1.4_spec
- 1.6
-
-
- com.googlecode.javaewah
- JavaEWAH
- 0.7.7
-
-
- org.apache.commons
- commons-math3
- 3.3
-
-
- commons-validator
- commons-validator
- 1.4.0
-
-
+
+
+
+
+ org.apache.jena
+ jena-core
+ ${jena.version}
+
+
+ org.apache.jena
+ jena-arq
+ ${jena.version}
+
+
+ net.sourceforge.owlapi
+ owlapi-apibinding
+ ${owlapi.version}
+
+
+ net.sourceforge.owlapi
+ owlapi-api
+ ${owlapi.version}
+
+
+ net.sourceforge.owlapi
+ owlapi-contract
+ ${owlapi.version}
+
+
+ net.sourceforge.owlapi
+ owlapi-distribution
+ ${owlapi.version}
+
+
+ net.sourceforge.owlapi
+ owlapi-impl
+ ${owlapi.version}
+
+
+ net.sourceforge.owlapi
+ owlapi-parsers
+ ${owlapi.version}
+
+
+ net.sourceforge.owlapi
+ owlapi-tools
+ ${owlapi.version}
+
+
+ log4j
+ log4j
+ 1.2.17
+
+
+ mail
+ javax.mail
+
+
+ jms
+ javax.jms
+
+
+ jmxtools
+ com.sun.jdmk
+
+
+ jmxri
+ com.sun.jmx
+
+
+
+
+ org.apache.ant
+ ant
+ 1.8.2
+
+
+ commons-io
+ commons-io
+ 2.2
+
+
+ org.semanticweb.elk
+ elk-owlapi
+ 0.4.1
+
+
+ com.google.code.gson
+ gson
+ 2.2.4
+
+
+ net.sourceforge.owlapi
+ jfact
+ 1.0.0
+
+
+ jline
+ jline
+ 0.9.93
+
+
+ junit
+ junit
+
+
+
+
+ org.apache.geronimo.specs
+ geronimo-javamail_1.4_spec
+ 1.6
+
+
+ com.googlecode.javaewah
+ JavaEWAH
+ 0.7.7
+
+
+ org.apache.commons
+ commons-math3
+ 3.3
+
+
+ commons-validator
+ commons-validator
+ 1.4.0
+
+
+ org.phenopackets
+ phenopackets-api
+ 0.0.4
+
+
+ junit
+ junit
+ 4.12
+
+
diff --git a/owlsim-core/src/main/java/org/monarchinitiative/owlsim/io/OWLLoader.java b/owlsim-core/src/main/java/org/monarchinitiative/owlsim/io/OWLLoader.java
index 00964bb..97760eb 100644
--- a/owlsim-core/src/main/java/org/monarchinitiative/owlsim/io/OWLLoader.java
+++ b/owlsim-core/src/main/java/org/monarchinitiative/owlsim/io/OWLLoader.java
@@ -5,10 +5,15 @@
import java.util.List;
import org.apache.commons.io.FileUtils;
-import org.apache.commons.io.IOUtils;
import org.apache.log4j.Logger;
import org.monarchinitiative.owlsim.kb.BMKnowledgeBase;
import org.monarchinitiative.owlsim.kb.impl.BMKnowledgeBaseOWLAPIImpl;
+import org.phenopackets.api.PhenoPacket;
+import org.phenopackets.api.io.JsonReader;
+import org.phenopackets.api.io.YamlReader;
+import org.phenopackets.api.model.association.PhenotypeAssociation;
+import org.phenopackets.api.model.ontology.OntologyClass;
+import org.phenopackets.api.util.ContextUtil;
import org.semanticweb.elk.owlapi.ElkReasonerFactory;
import org.semanticweb.owlapi.apibinding.OWLManager;
import org.semanticweb.owlapi.model.IRI;
@@ -20,6 +25,8 @@
import org.semanticweb.owlapi.reasoner.OWLReasoner;
import org.semanticweb.owlapi.reasoner.OWLReasonerFactory;
+import com.github.jsonldjava.core.Context;
+import com.github.jsonldjava.core.JsonLdError;
import com.google.common.base.Preconditions;
/**
@@ -145,7 +152,24 @@ public void loadDataFromTsv(String path) throws OWLOntologyCreationException, IO
Preconditions.checkNotNull(owlDataOntology);
}
-
+ public void loadDataFromPhenoPacket(String path) throws IOException, JsonLdError {
+ File f = new File(path);
+ PhenoPacket packet;
+ try {
+ packet = JsonReader.readFile(f);
+ } catch (IOException e) {
+ packet = YamlReader.readFile(f);
+ }
+ Context context = ContextUtil.getJSONLDContext(packet);
+ for (PhenotypeAssociation association : packet.getPhenotypeAssociations()) {
+ String instance = ContextUtil.expandIdentifierAsValue(association.getEntityId(), context);
+ for (OntologyClass type : association.getPhenotype().getTypes()) {
+ // PhenoPacket types are not expanded as JSON-LD @type fields
+ String term = ContextUtil.expandIdentifierAsValue(type.getId(), context);
+ addInstanceOf(instance, term);
+ }
+ }
+ }
private IRI getIRI(String id) {
// TODO - use json-ld
diff --git a/owlsim-services/pom.xml b/owlsim-services/pom.xml
index 3b3380e..d3589e5 100644
--- a/owlsim-services/pom.xml
+++ b/owlsim-services/pom.xml
@@ -1,104 +1,113 @@
-
- 4.0.0
-
- org.monarchinitiative.owlsim
- owlsim
- 3.0-SNAPSHOT
-
- owlsim-services
- owlsim REST services
+
+ 4.0.0
+
+ org.monarchinitiative.owlsim
+ owlsim
+ 3.0-SNAPSHOT
+
+ owlsim-services
+ owlsim REST services
-
-
- org.monarchinitiative.owlsim
- owlsim-core
- 3.0-SNAPSHOT
-
-
- slf4j-log4j12
- org.slf4j
-
-
-
-
- io.dropwizard
- dropwizard-core
- ${dropwizard.version}
-
-
- io.dropwizard
- dropwizard-assets
- ${dropwizard.version}
-
-
- io.dropwizard
- dropwizard-testing
- ${dropwizard.version}
- test
-
-
- com.wordnik
- swagger-jaxrs_2.10
- 1.3.7
-
-
- net.sf.dozer
- dozer
- 5.5.1
-
-
- slf4j-log4j12
- org.slf4j
-
-
-
-
+
+
+ org.monarchinitiative.owlsim
+ owlsim-core
+ 3.0-SNAPSHOT
+
+
+ slf4j-log4j12
+ org.slf4j
+
+
+
+
+ io.dropwizard
+ dropwizard-core
+ ${dropwizard.version}
+
+
+ io.dropwizard
+ dropwizard-assets
+ ${dropwizard.version}
+
+
+ io.dropwizard
+ dropwizard-testing
+ ${dropwizard.version}
+ test
+
+
+ com.wordnik
+ swagger-jaxrs_2.10
+ 1.3.7
+
+
+ net.sf.dozer
+ dozer
+ 5.5.1
+
+
+ slf4j-log4j12
+ org.slf4j
+
+
+
+
+ junit
+ junit
+ 4.12
+ test
+
+
-
-
-
- org.apache.maven.plugins
- maven-shade-plugin
- 1.6
-
- true
-
-
- *:*
-
- META-INF/*.SF
- META-INF/*.DSA
- META-INF/*.RSA
-
-
-
-
-
-
- package
-
- shade
-
-
-
-
-
- org.monarchinitiative.owlsim.services.OwlSimServiceApplication
-
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-deploy-plugin
- 2.8.1
-
- true
-
-
-
-
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+ 1.6
+
+ true
+
+
+ *:*
+
+ META-INF/*.SF
+ META-INF/*.DSA
+ META-INF/*.RSA
+
+
+
+
+
+
+ package
+
+ shade
+
+
+
+
+
+ org.monarchinitiative.owlsim.services.OwlSimServiceApplication
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-deploy-plugin
+ 2.8.1
+
+ true
+
+
+
+
-
\ No newline at end of file
+
\ No newline at end of file