diff --git a/aeson-schema.cabal b/aeson-schema.cabal
--- a/aeson-schema.cabal
+++ b/aeson-schema.cabal
@@ -1,5 +1,5 @@
 name:                aeson-schema
-version:             0.3.0.2
+version:             0.3.0.3
 synopsis:            Haskell JSON schema validator and parser generator
 -- description:         
 homepage:            https://github.com/timjb/aeson-schema
@@ -12,6 +12,7 @@
 cabal-version:       >=1.8
 data-files:          test/test-suite/tests/draft3/optional/*.json,
                      test/test-suite/tests/draft3/*.json
+                     examples/schema.json
 
 source-repository head
   type:                git
diff --git a/examples/schema.json b/examples/schema.json
new file mode 100644
--- /dev/null
+++ b/examples/schema.json
@@ -0,0 +1,137 @@
+{
+	"id" : "http://json-schema.org/schema#",
+	"type" : ["object","string"],
+	"format": "uri",
+	
+	"properties" : {
+		"type" : {
+			"type" : ["string", "array"],
+			"items" : {
+				"type" : ["string", { "$ref" : "#" }]
+			},
+			"uniqueItems" : true,
+			"default" : "any"
+		},
+		
+		"properties" : {
+			"type" : "object",
+			"additionalProperties" : { "$ref" : "#" },
+			"default" : {}
+		},
+		
+		"items" : {
+			"type" : [{ "$ref" : "#" }, "array"],
+			"items" : { "$ref" : "#" },
+			"default" : {}
+		},
+		
+		"required" : {
+			"type" : "boolean",
+			"default" : false
+		},
+		
+		"additionalProperties" : {
+			"type" : [{ "$ref" : "#" }, "boolean"],
+			"default" : {}
+		},
+		"additionalItems" : {
+			"type" : [{ "$ref" : "#" }, "boolean"],
+			"default" : {}
+		},
+		
+		"requires" : {
+			"type" : ["string", { "$ref" : "#" }]
+		},
+		
+		"minimum" : {
+			"type" : "number"
+		},
+		
+		"maximum" : {
+			"type" : "number"
+		},
+		
+		"exclusiveMinimum" : {
+			"type" : "number"
+		},
+		
+		"exclusiveMaximum" : {
+			"type" : "number"
+		},
+		
+		"minItems" : {
+			"type" : "integer",
+			"minimum" : 0,
+			"default" : 0
+		},
+		
+		"maxItems" : {
+			"type" : "integer"
+		},
+		
+		"uniqueItems" : {
+			"type" : "boolean",
+			"default" : false
+		},
+		
+		"pattern" : {
+			"type" : "string",
+			"format" : "regex"
+		},
+		
+		"minLength" : {
+			"type" : "integer",
+			"minimum" : 0,
+			"default" : 0
+		},
+		
+		"maxLength" : {
+			"type" : "integer"
+		},
+		
+		"enum" : {
+			"type" : "array",
+			"minItems" : 1,
+			"uniqueItems" : true
+		},
+		
+		"title" : {
+			"type" : "string"
+		},
+		
+		"description" : {
+			"type" : "string"
+		},
+		
+		"format" : {
+			"type" : "string"
+		},
+				
+		"maxDecimal" : {
+			"type" : "number",
+			"minimum" : 0
+		},
+		
+		"disallow" : {
+			"type" : ["string", "array", { "$ref" : "#" }],
+			"items" : {
+				"type" : ["string", { "$ref" : "#" }]
+			},
+			"uniqueItems" : true
+		},
+		
+		"extends" : {
+			"type" : [{ "$ref" : "#" }, "array"],
+			"items" : { "$ref" : "#" },
+			"default" : {}
+		}
+	},
+	"links" : [
+		{
+			"href" : "{id}",
+			"rel" : "self"
+		}
+	],
+	
+	"default" : {}
+}
diff --git a/test/Data/Aeson/Schema/Types/Tests.hs b/test/Data/Aeson/Schema/Types/Tests.hs
--- a/test/Data/Aeson/Schema/Types/Tests.hs
+++ b/test/Data/Aeson/Schema/Types/Tests.hs
@@ -15,6 +15,8 @@
 import           Data.Aeson.Schema
 import           Data.Aeson.Schema.Choice
 
+import           Paths_aeson_schema             (getDataFileName)
+
 data TestFunctor a = TestFunctor Int a
 
 instance Functor TestFunctor where
@@ -23,7 +25,8 @@
 tests :: [Test]
 tests =
   [ testCase "parse schema.json" $ do
-      schemaBS <- L.readFile "examples/schema.json"
+      schemaJson <- getDataFileName "examples/schema.json"
+      schemaBS <- L.readFile schemaJson
       case decode schemaBS :: Maybe Value of
         Nothing -> HU.assertFailure "JSON syntax error"
         Just val -> case fromJSON val :: Result (Schema Text) of
