diff --git a/Data/Bson.hs b/Data/Bson.hs
--- a/Data/Bson.hs
+++ b/Data/Bson.hs
@@ -5,7 +5,8 @@
 {-# LANGUAGE OverloadedStrings, TypeSynonymInstances, FlexibleInstances, DeriveDataTypeable, RankNTypes, OverlappingInstances, IncoherentInstances, ScopedTypeVariables, ForeignFunctionInterface #-}
 
 module Data.Bson (
-	UString,
+	-- * UTF-8 String
+	module Data.UString,
 	-- * Document
 	Document, look, lookup, valueAt, at, include, exclude, merge,
 	-- * Field
@@ -25,7 +26,7 @@
 import Data.Typeable hiding (cast)
 import Data.Int
 import Data.Word
-import Data.UString (UString, u, unpack)
+import Data.UString (UString, u, unpack)  -- plus Show and IsString instances
 import Data.Time.Clock (UTCTime)
 import Data.Time.Clock.POSIX
 import Data.Time.Format ()  -- for Show and Read instances of UTCTime
diff --git a/Data/UString.hs b/Data/UString.hs
--- a/Data/UString.hs
+++ b/Data/UString.hs
@@ -4,9 +4,11 @@
 
 module Data.UString (
 	UString, u,
-	module Data.CompactString.UTF8
+	module Data.CompactString.UTF8,
+	module Data.CompactString
 ) where
 
+import Data.CompactString ()  -- Show and IsString instances
 import Data.CompactString.UTF8
 import qualified Data.CompactString as S
 import qualified Data.CompactString.Encodings as E
diff --git a/bson.cabal b/bson.cabal
--- a/bson.cabal
+++ b/bson.cabal
@@ -1,5 +1,5 @@
 Name: bson
-Version: 0.1.1
+Version: 0.1.2
 Synopsis: BSON documents are JSON-like objects with a standard binary encoding
 Description: A BSON Document is an untyped (dynamically type-checked) record. I.e. it is a list of name-value pairs, where a Value is a single sum type with constructors for basic types (Bool, Int, Float, String, and Time), compound types (List, and (embedded) Document), and special types (Binary, Javascript, ObjectId, RegEx, and a few others).
 	.
