The swish package

[Tags: lgpl, library, program]

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:

Changes in version 0.9.0.12:

Changes in version 0.9.0.11:

Changes in version 0.9.0.10:

Changes in version 0.9.0.9:

Changes in version 0.9.0.8:

Changes in version 0.9.0.7:

Changes in version 0.9.0.6:

Changes in version 0.9.0.5:

Changes in version 0.9.0.4:

Changes in version 0.9.0.3:

Changes in version 0.9.0.2:

Changes in version 0.9.0.1:

Changes in version 0.9.0.0:

Changes in previous versions can be found at https://bitbucket.org/doug_burke/swish/src/tip/CHANGELOG.

References:


[Skip to ReadMe]

Properties

Versions0.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, 0.9.0.3, 0.9.0.4, 0.9.0.5, 0.9.0.6, 0.9.0.7, 0.9.0.8, 0.9.0.9, 0.9.0.10, 0.9.0.11, 0.9.0.12, 0.9.0.13, 0.9.0.14, 0.9.0.15, 0.9.1.0, 0.9.1.1, 0.9.1.2, 0.9.1.3
Change logCHANGELOG
Dependenciesbase (>=3 && <5), containers (>=0.4 && <0.6), directory, filepath (>=1.1 && <1.4), hashable (==1.1.* || >=1.2.0.6 && <1.3), intern (>=0.8 && <1.0), mtl (==2.*), network (>=2.2 && <2.5), old-locale (==1.0.*), polyparse (>=1.6 && <=1.9), semigroups (>=0.5 && <0.13), swish, text (>=0.11 && <1.2), time (>=1.1 && <1.5) [details]
LicenseLGPL
Copyright(c) 2003, 2004 G. Klyne; 2009 Vasili I Galchin; 2011, 2012, 2013 Doug Burke; All rights reserved.
AuthorGraham Klyne - GK@ninebynine.org
Maintainerdburke@cfa.harvard.edu
Stabilityexperimental
CategorySemantic Web
Home pagehttps://bitbucket.org/doug_burke/swish/wiki/Home
Bug trackerhttps://bitbucket.org/doug_burke/swish/issues
Source repositoryhead: hg clone https://bitbucket.org/doug_burke/swish
Executablesrunw3ctests, Swish
UploadedFri Jan 10 03:15:51 UTC 2014 by DouglasBurke
DistributionsDebian:0.9.1.3, NixOS:0.9.1.3
Downloads6561 total (510 in last 30 days)
Votes
0 []
StatusDocs available [build log]
Successful builds reported [all 1 reports]

Modules

[Index]

Flags

NameDescriptionDefault
developerTurn on developer flagsDisabled
w3ctestsBuild the RunW3CTests applicationDisabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainers' corner

For package maintainers and hackage trustees

Readme for swish-0.9.0.12

# Introduction

Swish - which stands for Semantic Web Inference Scripting in Haskell -
was written by Graham Klyne as a framework, written in the purely
functional programming language Haskell, for performing deductions in
RDF data using a variety of techniques. Swish wass 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). One of the aims was to
explore Haskell as "a scripting language for the Semantic Web"
(http://www.ninebynine.org/RDFNotes/Swish/Intro.html).

It was updated from version 0.2.1 by Vasili I Galchin so that it would
build with recent version of GHC
(http://hackage.haskell.org/package/swish-0.2.1).

Since then it has been updated to take advantage of recent
developments in the Haskell ecosystem, add support for the NTriples
and Turtle serialisation formats, and a number of convenience
functions. Development is done at
https://bitbucket.org/doug_burke/swish/.

# Aim

Current development is based on my own needs, which are more about
using this as a RDF library for I/O with limited querying rather than
for inferencing or use as a flexible graph-processing library
(e.g. for extensions to non-RDF models).

# Copyright

(c) 2003, 2004 G. Klyne
(c) 2009 Vasili I Galchin
(c) 2011, 2012, 2013 Doug Burke

All rights reserved.

# License

GPL V2

# Haskell and the Semantic Web 

Other Haskell packages for RDF support include

 * rdf4h http://hackage.haskell.org/package/rdf4h
 * hsparql http://hackage.haskell.org/package/hsparql
 * hasparql-client http://hackage.haskell.org/package/hasparql-client

# Installation

Install a recent version of the Haskell platform (http://hackage.haskell.org/platform/)
and then try

    % cabal update
    % cabal install swish

This will install a command-line tool `Swish` along with the modules
in the `Swish` namespace; documentation can be found at
http://hackage.haskell.org/package/swish .