alanruttenberg / lsw2 Goto Github PK
View Code? Open in Web Editor NEWOWL and Semantic Web toolkit for Common Lisp, used for construction and reasoning over ontologies and ontology-structured data
OWL and Semantic Web toolkit for Common Lisp, used for construction and reasoning over ontologies and ontology-structured data
New: You can build a virtual machine with everything LSW needs using docker. Short version: Clone the repository and make the image. ``` git clone https://github.com/alanruttenberg/lsw2-virtual-machine.git cd lsw2-virtual-machine make docker-lsw ``` Run LSW2 ``` docker run -it lsw/lisp ``` More documentation at https://github.com/alanruttenberg/lsw2-virtual-machine ---- In the below, <lsw2 trunk> is the checked out trunk directory for lsw2 <repositories> is the directory where you keep checked out working copies I assume you are using emacs. These instructions were only tested on OSX and are intended for developers familiar with JAVA, ABCL. As of 2019-10-11 they may be out of date due to upgrade in versions of MacOSX. To get going: - Set up ABCL: -- Have Java 8 -- Get a recent Armed Bear Common Lisp, git clone http://github.com/alanruttenberg/abcl Note: LSW currently assumes that abcl and lsw2 ("<lsw2 trunk>" below) directories have the same parent directory. Some people put them both in ~ to satisfy that requirement. -- Build ABCL "all in one" jar by running: ant abcl-aio.jar in the abcl directory Check out the current version of slime from github cd <repositories> git clone https://github.com/alanruttenberg/slime.git Then add to your .emacs (add-to-list 'load-path "<repositories>/slime") (set-language-environment "UTF-8") (setq slime-net-coding-system 'utf-8-unix) (require 'slime-autoloads) (setq slime-contribs '(slime-repl slime-fancy slime-asdf)) (setq slime-lisp-implementations '((lsw ("<lsw2 trunk>/bin/lsw") :init slime-init-command) (abcl ("<lsw2 trunk>/bin/abcl --noinit") :init slime-init-command))) The slime contribs settings are documented at http://common-lisp.net/project/slime/doc/html/Loading-Contribs.html To start LSW, start emacs and then M-x slime <ret> You should be placed into a buffer where you can execute code. To verify the kit's working do (show-classtree "http://purl.obolibrary.org/obo/bfo.owl") You should get a window with an interactive treemap explorer to wander around the BFO ontology. Click on one of the labels. To develop, you'll probably want to read about slime: http://common-lisp.net/project/slime/doc/html/index.html, which is your emacs-based IDE. Lisp code I author is licensed with the 3 clause BSD license. https://opensource.org/licenses/BSD-3-Clause License information for other's code used in this project is documented in that code.
Is it possible to run LSW over SBLC or CCL instead of depending upon Java?
This issue was caused when I loaded our r21 system that we are using for dental
ontology work.
What steps will reproduce the problem?
1. Start lsw in a terminal window using the command line:
lsw -r4096 -b64 --eval "(asdf::oos 'asdf::load-op 'r21)"
2. Load the r21 system:
(asdf::oos 'asdf::load-op 'r21)
3. Load the ontology:
(setq o (load-ontology
"~/Repositories/ohd-ontology/src/ontology/pitt-ub-ohsu-r21/r21-top.owl"))
4. Instantiate the reasoner:
(instantiate-reasoner o :pellet-sparql)
5. Run sparql query:
(sparql '(:select (?s) (:count t) (?s :a !owl:Thing)) :use-reasoner :pellet :kb
o)
This fails with error:
#<THREAD "interpreter" {2A384D34}>: Debugger invoked on condition of
type PACKAGE-ERROR
Package "!OWL" not found.
To work around, simple start with lsw without the "--eval" option.
i.e.: lsw -r4096 -b64
Original issue reported on code.google.com by [email protected]
on 27 Mar 2012 at 7:35
What steps will reproduce the problem?
1. Check out revision 138 of branches/bona:
https://lsw2.googlecode.com/svn/branches/bona
2. In bin/abcl, comment out the line @args =
($ram,$stack,$bits,@profileargs,"-cp", $libjar, @dock);
and uncomment the line
#@args = ($ram,$stack,$bits,@profileargs,"-Xbootclasspath/a:$libjar",@dock);
3. Load LSW
What is the expected output? What do you see instead?
Rather than loading normally, loading fails with the message "Don't know how to
REQUIRE JSS"
In revision 108, /trunk/bin/abcl was changed from using the "-cp" switch to
using "-Xbootclasspath":
#@args = ($ram,$stack,$bits,@profileargs,"-cp", $libjar, @dock);
@args = ($ram,$stack,$bits,@profileargs,"-Xbootclasspath/a:$libjar",@dock);
However, this does not currently work in combination with the new JSS, which is
loaded from lib/abcl-contrib.jar (see revision 138 of
https://lsw2.googlecode.com/svn/branches/bona ). In particular,
scripts/system-registry.lisp fails to load when it reaches (require :jss):
Armed Bear Common Lisp 1.0.1-svn-13750-13751
Java 1.6.0_31 Apple Inc.
Java HotSpot(TM) Server VM
Low-level initialization completed in 0.549 seconds.
Startup completed in 1.364 seconds.
; Loading /Users/jonathanbona/quicklisp/setup.lisp ...
; Loading
jar:file:/Users/jonathanbona/lsw/lsw2/lib/abcl.jar!/org/armedbear/lisp/loop.abcl
...
; Loaded
jar:file:/Users/jonathanbona/lsw/lsw2/lib/abcl.jar!/org/armedbear/lisp/loop.abcl
(0.134 seconds)
; Loaded /Users/jonathanbona/quicklisp/setup.lisp (4.252 seconds)
Loading /Users/jonathanbona/.abclrc completed in 6.047 seconds.
; Loading
jar:file:/Users/jonathanbona/lsw/lsw2/lib/abcl.jar!/org/armedbear/lisp/abcl-cont
rib.abcl ...
; Loaded
jar:file:/Users/jonathanbona/lsw/lsw2/lib/abcl.jar!/org/armedbear/lisp/abcl-cont
rib.abcl (0.0050 seconds)
Error loading /Users/jonathanbona/lsw/lsw2/scripts/system-registry.lisp at line
42 (offset 1216)
#<THREAD "interpreter" {55EDA6}>: Debugger invoked on condition of type
SIMPLE-ERROR
Don't know how to REQUIRE JSS.
Original issue reported on code.google.com by [email protected]
on 23 Apr 2012 at 7:35
Sorry if I have missed this, but do you have API documentation somewhere so that a potential user could identify what forms of OWL reasoning are supported by LSW2?
Thanks!
Please tag project with CommonLisp label.
Original issue reported on code.google.com by [email protected]
on 5 Jul 2010 at 1:32
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.