diff --git a/dhscanner-ast.cabal b/dhscanner-ast.cabal
--- a/dhscanner-ast.cabal
+++ b/dhscanner-ast.cabal
@@ -22,7 +22,7 @@
     and models both of them as plain sequential code blocks. Every file has exactly one ast that represents it.
     Non Haskell parogrammers note: The ast is /immutable/ (like everything else in Haskell ...)
 
-version:            1.0.9
+version:            1.0.10
 license:            GPL-3.0-only
 license-file:       LICENSE
 author:             OrenGitHub
diff --git a/src/Location.hs b/src/Location.hs
--- a/src/Location.hs
+++ b/src/Location.hs
@@ -33,7 +33,11 @@
 import Data.Aeson
 import GHC.Generics
 
--- | Lines and columns are 1-based, like in most IDEs.
+-- |
+-- Lines and columns are 1-based, for compatability with
+-- [Sarif](https://docs.oasis-open.org/sarif/sarif/v2.1.0/errata01/os/sarif-v2.1.0-errata01-os-complete.html#_Toc141790937).
+--
+-- > The line number of the first line in a text artifact SHALL be 1.
 data Location =
      Location
      {
@@ -43,4 +47,4 @@
          colStart  :: Word,
          colEnd    :: Word
      }
-     deriving ( Show, Eq, Generic, ToJSON, FromJSON, Ord )
+     deriving ( Show, Read, Eq, Generic, ToJSON, FromJSON, Ord )
