balhoff / arachne Goto Github PK
View Code? Open in Web Editor NEWRDF rule engine
License: BSD 3-Clause "New" or "Revised" License
RDF rule engine
License: BSD 3-Clause "New" or "Revised" License
Is it possible - with limited effort - to integrate arachne with RDF4J?
I think it would be useful to have a forward chaining reasoner for RDF4J SAILs.
From @goodb: I wonder if it would be possible to adjust your explanation code such that the variables in the rules (e.g. ?x1) were replaced by the URIs that were bound to them when the rule activated? That would make it a little easier to string together the inference chain.
Context: @deepakunni3 is building an uber kg for translator. We just want to use simple edges for existentials. See https://douroucouli.wordpress.com/2019/07/11/proposed-strategy-for-semantics-in-rdf-and-property-graphs/
We want to propagate properties down is-a hierarchies @realmarcin will take results and analyze as matrix
Here we want to ignore the OWL translation rules and instead just have rules like
?c owl:subClassOf ?d .
?d ?r ?y .
?r a owl:ObjectProperty .
==>
?c ?r ?y .
possibly also annotating triples with inference provenance.
Can we have these rules stored in this repo, and have an option to use these rather than owl ones?
I would like to try out this reasoner, but I have no knowledge about Scala and the mentioned build tools (sbt). Is there an installation manual available?
If not, could you tell me what to do after building the software? Do I run it as a stand alone CLI or use some jar file?
I found a binary in the latest release (arachne-1.2.1.tgz
, in bin
folder). When executing it, an error is raised about missing parameters:
./arachne
Constructed reasoner from rules in 0.013s
Exception in thread "main" java.lang.IllegalArgumentException: Parameter 'directory' is not a directory: data
at org.apache.commons.io.FileUtils.validateListFilesParameters(FileUtils.java:541)
at org.apache.commons.io.FileUtils.listFiles(FileUtils.java:517)
at org.apache.commons.io.FileUtils.listFiles(FileUtils.java:689)
at org.geneontology.rules.cli.Main$.$anonfun$run$10(Main.scala:65)
at org.geneontology.rules.cli.Main$.time(Main.scala:93)
at org.geneontology.rules.cli.Main$.run(Main.scala:63)
at org.geneontology.rules.cli.Main$.run(Main.scala:22)
at org.backuity.clist.CliMain.$anonfun$runWith$1(CliMain.scala:14)
at org.backuity.clist.Parser.$anonfun$withCommand$1(Parser.scala:156)
at org.backuity.clist.Parser.withParsingException(Parser.scala:199)
at org.backuity.clist.Parser.withCommand(Parser.scala:154)
at org.backuity.clist.CliMain.runWith(CliMain.scala:14)
at org.backuity.clist.CliMain.main(CliMain.scala:6)
at org.geneontology.rules.cli.Main.main(Main.scala)
Thanks for any hint in advance.
https://github.com/JuPfu/chelona/
Would be useful for Scala.js version of Arachne.
I tried to compile arache using using sbt compile
command. Running scalaVersion=2.12, sbtVersion=1.0, on OS X 10.15 (Catalina).
Received the following errors:
[error] sbt.librarymanagement.ResolveException: unresolved dependency: com.typesafe.sbt#sbt-native-packager;1.3.19: Resolution failed several times for dependency: com.typesafe.sbt#sbt-native-packager;1.3.19 {compile=[default(compile)]}::
[error] typesafe-ivy-releases: unable to get resource for com.typesafe.sbt#sbt-native-packager;1.3.19: res=https://repo.typesafe.com/typesafe/ivy-releases/com.typesafe.sbt/sbt-native-packager/scala_2.12/sbt_1.0/1.3.19/ivys/ivy.xml: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
[error] sbt-plugin-releases: unable to get resource for com.typesafe.sbt#sbt-native-packager;1.3.19: res=https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/com.typesafe.sbt/sbt-native-packager/scala_2.12/sbt_1.0/1.3.19/ivys/ivy.xml: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
In some cases it would be useful to be able to modify the rules without rebuilding the whole RuleEngine object (which can be a little slow when there are large numbers of rules to process).
Use case produced by consistency checking system for BioPAX2GO .
A Protege plugin for Arachne would be very useful for exploring GO use-cases.
with --ontology=uberon.owl
Exception in thread "main" scala.MatchError: ObjectMinCardinality(2 <http://purl.obolibrary.org/obo/RO_0002176> <http://purl.obolibrary.org/obo/UBERON_0003221>) (of class uk.ac.manc
hester.cs.owl.owlapi.OWLObjectMinCardinalityImpl)
at org.geneontology.jena.OWLtoRules$.org$geneontology$jena$OWLtoRules$$translateExpression(OWLtoRules.scala:264)
oddly, I can't replicate this with a smaller test example.
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.