diff --git a/Swish/RDF/ClassRestrictionRule.hs b/Swish/RDF/ClassRestrictionRule.hs
--- a/Swish/RDF/ClassRestrictionRule.hs
+++ b/Swish/RDF/ClassRestrictionRule.hs
@@ -67,7 +67,7 @@
 import Control.Monad (liftM)
 
 import Data.Monoid (Monoid (..))
-import Data.Maybe (isJust, fromJust, fromMaybe, mapMaybe)
+import Data.Maybe (fromJust, fromMaybe, mapMaybe)
 import Data.List (delete, nub, (\\))
 
 import qualified Data.Text.Lazy.Builder as B
@@ -199,8 +199,8 @@
     ClassRestriction -> RDFLabel -> [RDFLabel] -> [Int] -> [RDFGraph]
     -> [RDFGraph]
 fwdApplyRestriction restriction cls props cs antgrs =
-    if isJust newgrs then concat $ fromJust newgrs else [falseGraph]
-    where
+    maybe [falseGraph] concat newgrs
+      where
         -- Instances of the named class in the graph:
         ris = nub $ rdfFindValSubj resRdfType cls antgr
         --  Merge antecedent graphs into one (with bnode renaming):
diff --git a/swish.cabal b/swish.cabal
--- a/swish.cabal
+++ b/swish.cabal
@@ -1,5 +1,5 @@
 Name:               swish
-Version:            0.6.1.1
+Version:            0.6.1.2
 Stability:          experimental
 License:            LGPL
 License-file:       LICENSE 
@@ -46,6 +46,9 @@
   .
   Changes:
   .
+  [Version 0.6.1.2] Corrected minimum mtl constraint from 1 to 2 and updated
+  the maximum time version to 1.4 from 1.3.
+  .
   [Version 0.6.1.1] Minor improvement to the error message produced by the
   Turtle, Ntriples, and N3 parsers: a fragment of the remaining text is
   included to provide some context (still lacking compared to the information
@@ -184,8 +187,8 @@
       array == 0.3.*,
       polyparse >= 1.6 && < 1.8,
       old-locale == 1.0.*, 
-      time >= 1.1 && < 1.4,
-      mtl >= 1 && < 3,
+      time >= 1.1 && < 1.5,
+      mtl >= 2 && < 3,
       network >= 2.2 && < 2.4,
       directory >= 1.0 && < 1.2,
       filepath >= 1.1 && < 1.3,
