swish-0.8.0.2: swish.cabal
Name: swish
Version: 0.8.0.2
Stability: experimental
License: LGPL
License-file: LICENSE
Author: Graham Klyne - GK@ninebynine.org
Copyright: (c) 2003, 2004 G. Klyne; 2009 Vasili I Galchin; 2011, 2012 Doug Burke; All rights reserved.
Maintainer: dburke@cfa.harvard.edu
Category: Semantic Web
Synopsis: A semantic web toolkit.
Tested-With: GHC==7.4.2
Cabal-Version: >= 1.9.2
Homepage: https://bitbucket.org/doug_burke/swish/wiki/Home
Bug-reports: https://bitbucket.org/doug_burke/swish/issues
Description:
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.8.0.2@:
.
* Restrict @hashable@ since tests fail with @1.1.2.5@
(this is a hack).
.
* Updated @directory@ constraint to include @1.2@ on ghc 7.6.
.
Changes in version @0.8.0.1@:
.
* Internal changes to Turtle/N3 formatting. No user-visible changes.
.
Changes in version @0.8.0.0@:
.
* The @LDGraph@ class now uses @Set (Arc lb)@, rather than @[Arc lb]@,
for @setArcs@, @getArcs@, and @update@. Several data types - e.g.
@NSGraph@ - now use sets rather than lists. There are a number of API tweaks -
e.g. the addition of Ord constraints and the removal of Functor, Foldable,
and Traversable instances. Not all list of Arcs have been converted
since a review is needed to see where it makes sense and where it does not.
This definitely speeds up some operations but
a full analysis has not been attempted.
.
* Replaced used of @Data.LookupMap@ with @Data.Map.Map@. This has led to the
removal of a number of language extensions from some modules.
.
* Added @Network.URI.Ord@ to provide an ordering for URIs.
.
* A few other minor changes have been made: the removal of @subset@ and
@equiv@ from
@Swish.Utils.ListHelpers@; the ordering used for @RDFLabel@ values has
changed; added a @Monoid@ instance for @VarBinding@; added @Ord@
instances for a number of containers; removed some un-needed constraints;
added @Network.URI.Ord@.
.
* The containers upper limit has been increased to support version 0.5.
.
Changes in previous versions can be found at <https://bitbucket.org/doug_burke/swish/src/tip/CHANGES>.
.
References:
.
- <http://www.ninebynine.org/RDFNotes/Swish/Intro.html>
.
- <http://www.ninebynine.org/Software/swish-0.2.1.html>
.
- CWM: <http://www.w3.org/2000/10/swap/doc/cwm.html>
.
Build-Type: Simple
Data-Files: README
scripts/*.ss
Source-repository head
type: mercurial
location: https://bitbucket.org/doug_burke/swish
Flag developer
Description: Turn on developer flags
Default: False
-- Flag hpc
-- Description: Use Hpc for the tests
-- Default: False
Library
Build-Depends:
base >=3 && < 5,
binary == 0.5.*,
containers >= 0.4 && < 0.6,
filepath >= 1.1 && < 1.4,
-- hashable == 1.1.*,
hashable >= 1.1 && < 1.1.2.4,
mtl >= 2 && < 3,
network >= 2.2 && < 2.4,
old-locale == 1.0.*,
polyparse >= 1.6 && < 1.9,
semigroups >= 0.5 && < 0.9,
text == 0.11.*,
time >= 1.1 && < 1.5
if impl(ghc < 7.4.0)
Build-Depends: intern == 0.8
if impl(ghc >= 7.4.0)
Build-Depends: intern >= 0.8 && < 1.0
if impl(ghc < 7.6.0)
Build-Depends: directory >= 1.0 && < 1.2
if impl(ghc >= 7.6.0)
Build-Depends: directory >= 1.0 && < 1.3
Hs-Source-Dirs: src/
Other-Modules: Swish.RDF.Formatter.Internal
Exposed-Modules:
Data.Interned.URI
Data.Ord.Partial
Data.String.ShowLines
Network.URI.Ord
Swish
Swish.Commands
Swish.Datatype
Swish.GraphClass
Swish.GraphMatch
Swish.GraphMem
Swish.GraphPartition
Swish.Monad
Swish.Namespace
Swish.Proof
Swish.QName
Swish.RDF
Swish.RDF.BuiltIn
Swish.RDF.BuiltIn.Datatypes
Swish.RDF.BuiltIn.Rules
Swish.RDF.ClassRestrictionRule
Swish.RDF.Datatype
Swish.RDF.Datatype.XSD.Decimal
Swish.RDF.Datatype.XSD.Integer
Swish.RDF.Datatype.XSD.MapDecimal
Swish.RDF.Datatype.XSD.MapInteger
Swish.RDF.Datatype.XSD.String
Swish.RDF.Formatter.NTriples
Swish.RDF.Formatter.N3
Swish.RDF.Formatter.Turtle
Swish.RDF.Graph
Swish.RDF.GraphShowLines
Swish.RDF.Parser.NTriples
Swish.RDF.Parser.N3
Swish.RDF.Parser.Turtle
Swish.RDF.Parser.Utils
Swish.RDF.Proof
Swish.RDF.ProofContext
Swish.RDF.Query
Swish.RDF.Ruleset
Swish.RDF.VarBinding
Swish.RDF.Vocabulary
Swish.RDF.Vocabulary.DublinCore
Swish.RDF.Vocabulary.FOAF
Swish.RDF.Vocabulary.Geo
Swish.RDF.Vocabulary.OWL
Swish.RDF.Vocabulary.Provenance
Swish.RDF.Vocabulary.RDF
Swish.RDF.Vocabulary.SIOC
Swish.RDF.Vocabulary.XSD
Swish.Rule
Swish.Ruleset
Swish.Script
Swish.Utils.ListHelpers
Swish.VarBinding
ghc-options:
-Wall -fno-warn-orphans
if flag(developer)
ghc-options: -Werror
ghc-prof-options: -auto-all
Test-Suite test-builtinmap
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: BuiltInMapTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit == 1.2.*,
swish
Test-Suite test-graphpartition
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: GraphPartitionTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
semigroups,
swish
Test-Suite test-graph
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: GraphTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
swish
Test-Suite test-nt
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: NTTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
swish,
text
Test-Suite test-n3parser
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: N3ParserTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
network,
swish,
text
Test-Suite test-n3formatter
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: N3FormatterTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
network,
swish,
text
Test-Suite test-rdfdatatypexsdinteger
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: RDFDatatypeXsdIntegerTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
network,
swish,
text
Test-Suite test-rdfgraph
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: RDFGraphTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
network,
old-locale,
swish,
text,
time
Test-Suite test-rdfproofcontext
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: RDFProofContextTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
network,
swish,
text
Test-Suite test-rdfproof
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: RDFProofTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
network,
swish,
text
Test-Suite test-rdfquery
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: RDFQueryTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
network,
swish,
text
Test-Suite test-rdfruleset
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: RDFRulesetTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
network,
swish,
text
Test-Suite test-varbinding
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: VarBindingTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
swish
Test-Suite test-qname
type: exitcode-stdio-1.0
Hs-Source-Dirs: tests/
Main-Is: QNameTest.hs
Other-Modules: TestHelpers
ghc-options:
-Wall -fno-warn-orphans
Build-Depends:
base,
containers,
HUnit,
network,
swish,
text
-- we do not have the data files to run this test
Executable SwishTest
Main-Is: tests/SwishTest.hs
-- How can we include data files that are only used for
-- benchmark/tests and do not get installed?
Benchmark bench-ntriples
Type: exitcode-stdio-1.0
Hs-Source-Dirs: bench/
Other-Modules: Paths_swish
Main-Is: NTriples.hs
Build-Depends: base,
criterion,
deepseq,
network,
swish,
text
ghc-options: -Wall -fno-warn-orphans
Executable Swish
Main-Is: SwishApp.hs
Hs-Source-Dirs: app/
Other-Modules: Paths_swish
ghc-options:
-Wall -fno-warn-orphans
if flag(developer)
ghc-options: -Werror
ghc-prof-options: -auto-all
Build-Depends:
base,
swish