The swish package
Swish is a framework, written in the purely functional programming language Haskell, for performing deductions in RDF data using a variety of techniques. Swish is conceived as a toolkit for experimenting with RDF inference, and for implementing stand-alone RDF file processors (usable in similar style to CWM, but with a view to being extensible in declarative style through added Haskell function and data value declarations). It explores Haskell as "a scripting language for the Semantic Web".
Swish is a work-in-progress, and currently incorporates:
Turtle, Notation3 and NTriples input and output. The N3 support is incomplete (no handling of @forAll).
RDF graph isomorphism testing and merging.
Display of differences between RDF graphs.
Inference operations in forward chaining, backward chaining and proof-checking modes.
Simple Horn-style rule implementations, extendable through variable binding modifiers and filters.
Class restriction rule implementation, primarily for datatype inferences.
RDF formal semantics entailment rule implementation.
Complete, ready-to-run, command-line and script-driven programs.
Changes in version 0.9.0.2:
Updated the upper bound on the polyparse dependency.
Changes in version 0.9.0.1:
Updated the upper bound on the semigroup dependency (thanks to Leif Warner).
Changes in version 0.9.0.0:
Updated to support hashable-1.2 series; although this should *not* change the API from the 0.8 series, I have decided to bump up the version to 0.9 just in case.
Fix failing test on 64-bit GHC (no change to the library).
Changes in previous versions can be found at https://bitbucket.org/doug_burke/swish/src/tip/CHANGES.
|Versions||0.2.1, 0.3.0.0, 0.3.0.1, 0.3.0.2, 0.3.0.3, 0.3.1.0, 0.3.1.1, 0.3.1.2, 0.3.2.0, 0.3.2.1, 0.4.0.0, 0.5.0.0, 0.5.0.1, 0.5.0.2, 0.5.0.3, 0.6.0.0, 0.6.0.1, 0.6.1.0, 0.6.1.1, 0.6.1.2, 0.6.2.1, 0.6.3.0, 0.6.4.0, 0.6.5.0, 0.6.5.1, 0.6.5.2, 0.7.0.0, 0.7.0.1, 0.7.0.2, 0.8.0.0, 0.8.0.2, 0.8.0.3, 0.9.0.0, 0.9.0.1, 0.9.0.2|
|Dependencies||base (≥3 & <5), containers (≥0.4 & <0.6), filepath (≥1.1 & <1.4), hashable (≥1.1 & <1.3), mtl (2.*), network (≥2.2 & <2.5), old-locale (1.0.*), polyparse (≥1.6 & ≤1.9), semigroups (≥0.5 & <0.10), text (0.11.*), time (≥1.1 & <1.5)|
|Copyright||(c) 2003, 2004 G. Klyne; 2009 Vasili I Galchin; 2011, 2012 Doug Burke; All rights reserved.|
|Author||Graham Klyne - GK@ninebynine.org|
|Source repository||hg clone https://bitbucket.org/doug_burke/swish|
|Upload date||Fri May 17 15:43:33 UTC 2013|