diff --git a/Text/CSL/Input/Identifier/Internal.hs b/Text/CSL/Input/Identifier/Internal.hs
--- a/Text/CSL/Input/Identifier/Internal.hs
+++ b/Text/CSL/Input/Identifier/Internal.hs
@@ -15,7 +15,7 @@
 import           Data.Char (toLower)
 import           Data.List (span)
 import qualified Data.Text as Text
-import qualified Data.String.Utils as String (replace) 
+import qualified Data.String.Utils as String (replace)
 import           Database.Persist
 import           Database.Persist.TH
 import           Database.Persist.Sqlite
@@ -90,7 +90,7 @@
 
 -- | Multi-purpose reference ID resolver. Resolve 'String' starting
 -- with "arXiv:", "isbn:", "doi:" to 'Reference' .
--- 
+--
 -- >>> (==) <$> readArXiv "1204.4779" <*>  readID "arXiv:1204.4779"
 -- True
 -- >>> (==) <$> readDOI "10.1088/1749-4699/5/1/015003" <*> readID "doi:10.1088/1749-4699/5/1/015003"
@@ -101,19 +101,20 @@
 
 
 readID :: Resolver Reference
-readID str 
-  | idId == "arxiv" = readArXiv addr
-  | idId == "doi"   = readDOI addr
-  | idId == "isbn"  = readISBN addr
-  | otherwise       = return $ Left $ "Unknown identifier type: " ++ str
+readID str
+  | idId == "arxiv"   = readArXiv addr
+  | idId == "bibcode" = readBibcode addr
+  | idId == "doi"     = readDOI addr
+  | idId == "isbn"    = readISBN addr
+  | otherwise         = return $ Left $ "Unknown identifier type: " ++ str
   where
     (h,t) = span (/=':') str
     idId = map toLower h
     addr = drop 1 t
-    
 
 
 
+
 -- | resolve a DOI to a 'Reference'.
 --
 -- >>> ref <- forceEither <$> readDOI "10.1088/1749-4699/5/1/015003"
@@ -138,7 +139,7 @@
 
 -- | resolve an arXiv ID to a 'Reference'. If it's a referred journal paper, it can also resolve
 --   the refereed version of the paper.
--- 
+--
 -- >>>  ref <- forceEither <$> readArXiv "1204.4779"
 -- >>> title ref
 -- "Paraiso: an automated tuning framework for explicit solvers of partial differential equations"
@@ -159,8 +160,8 @@
 
 
 
--- | resolve an Bibcode ID to a 'Reference'. 
--- 
+-- | resolve an Bibcode ID to a 'Reference'.
+--
 -- >>>  ref <- forceEither <$> readBibcode " 2012CS&D....5a5003M"
 -- >>> title ref
 -- "Paraiso: an automated tuning framework for explicit solvers of partial differential equations"
diff --git a/citation-resolve.cabal b/citation-resolve.cabal
--- a/citation-resolve.cabal
+++ b/citation-resolve.cabal
@@ -2,7 +2,7 @@
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                citation-resolve
-version:             0.2.1
+version:             0.2.2
 synopsis:            convert document IDs such as DOI, ISBN, arXiv ID to bibliographic reference.
 description:         
   This modules provides a way to convert document identifiers, such
