diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,9 @@
 # Revision history for schematic
 
+## 0.4.1.0 -- 2017-11-05
+
+Convenience isomorphisms: txt, num, opt, bln etc
+
 ## 0.4.1.0 -- 2017-11-01
 
 flens and fget now use type application syntax
diff --git a/schematic.cabal b/schematic.cabal
--- a/schematic.cabal
+++ b/schematic.cabal
@@ -1,5 +1,5 @@
 name:                schematic
-version:             0.4.1.0
+version:             0.4.2.0
 synopsis:            JSON-biased spec and validation tool
 license:             BSD3
 license-file:        LICENSE
diff --git a/src/Data/Schematic/Lens.hs b/src/Data/Schematic/Lens.hs
--- a/src/Data/Schematic/Lens.hs
+++ b/src/Data/Schematic/Lens.hs
@@ -10,6 +10,11 @@
   , FSubset(..)
   , obj
   , arr
+  , uni
+  , txt
+  , num
+  , opt
+  , bln
   , textRepr
   , numberRepr
   , boolRepr
@@ -23,6 +28,7 @@
 import Data.Scientific
 import Data.Singletons
 import Data.Text
+import Data.Union
 import Data.Vector as V
 import Data.Vinyl
 import Data.Vinyl.Functor
@@ -179,10 +185,35 @@
   => Iso' (FieldRepr '(fn, ('SchemaOptional schema))) (Maybe (JsonRepr schema))
 optionalRepr = iso (\(FieldRepr (ReprOptional r)) -> r) (FieldRepr . ReprOptional)
 
-obj :: (SingI fields) => Iso' (JsonRepr ('SchemaObject fields)) (Rec FieldRepr fields)
+obj
+  :: SingI fields
+  => Iso' (JsonRepr ('SchemaObject fields)) (Rec FieldRepr fields)
 obj = iso (\(ReprObject r) -> r) ReprObject
 
 arr
   :: (SingI schema)
   => Iso' (JsonRepr ('SchemaArray cs schema)) (V.Vector (JsonRepr schema))
 arr = iso (\(ReprArray r) -> r) ReprArray
+
+uni
+  :: SingI (h ': tl)
+  => Iso' (JsonRepr ('SchemaUnion (h ': tl))) (Union JsonRepr (h ': tl))
+uni = iso (\(ReprUnion u) -> u) ReprUnion
+
+txt
+  :: SingI cs
+  => Iso' (JsonRepr ('SchemaText cs)) Text
+txt = iso (\(ReprText t) -> t) ReprText
+
+num
+  :: SingI cs
+  => Iso' (JsonRepr ('SchemaNumber cs)) Scientific
+num = iso (\(ReprNumber t) -> t) ReprNumber
+
+bln :: Iso' (JsonRepr 'SchemaBoolean) Bool
+bln = iso (\(ReprBoolean b) -> b) ReprBoolean
+
+opt
+  :: SingI schema
+  => Iso' (JsonRepr ('SchemaOptional schema)) (Maybe (JsonRepr schema))
+opt = iso (\(ReprOptional o) -> o) ReprOptional
