diff --git a/Text/Pandoc/Lens.hs b/Text/Pandoc/Lens.hs
--- a/Text/Pandoc/Lens.hs
+++ b/Text/Pandoc/Lens.hs
@@ -62,6 +62,9 @@
     , _MetaBlocks
       -- * Attributes
     , HasAttr(..)
+    , attrIdentifier
+    , attrClasses
+    , attrs
     ) where
 
 import Control.Applicative
@@ -84,6 +87,15 @@
     type Unwrapped Meta = Map String MetaValue
     _Wrapped' = iso unMeta Meta
 
+type instance Index Meta = String
+type instance IxValue Meta = MetaValue
+
+instance Ixed Meta where
+  ix k = _Wrapped' . ix k
+
+instance At Meta where
+  at k = _Wrapped' . at k
+
 -- | A prism on a 'Plain' 'Block'
 _Plain :: Prism' Block [Inline]
 _Plain = prism' Plain f
@@ -389,3 +401,15 @@
     attributes f (Code a s) = fmap (\a'->Code a' s) (f a)
     attributes f (Span a s) = fmap (\a'->Span a' s) (f a)
     attributes _ x = pure x
+
+-- | A lens onto identifier of an 'Attr'
+attrIdentifier :: Lens' Attr String
+attrIdentifier = _1
+
+-- | A lens onto classes of an 'Attr'
+attrClasses :: Lens' Attr [String]
+attrClasses = _2
+
+-- | A lens onto the key-value pairs of an 'Attr'
+attrs :: Lens' Attr [(String, String)]
+attrs = _3
diff --git a/pandoc-lens.cabal b/pandoc-lens.cabal
--- a/pandoc-lens.cabal
+++ b/pandoc-lens.cabal
@@ -1,5 +1,5 @@
 name:                pandoc-lens
-version:             0.4.0
+version:             0.4.1
 synopsis:            Lenses for Pandoc documents
 description:         Lenses for Pandoc documents
 homepage:            http://github.com/bgamari/pandoc-lens
