]> gitweb.michael.orlitzky.com - dead/htsn-import.git/blobdiff - src/Main.hs
Add a TSN.News module and get it to compile.
[dead/htsn-import.git] / src / Main.hs
index e1f40267889c9e4a8a4609cb0a7e7bf9c3b47b95..9730f5e33fd9caf28fd69f2013a32cc7e74f3a1c 100644 (file)
@@ -23,7 +23,6 @@ import System.IO.Error ( catchIOError )
 import Text.XML.HXT.Core (
   ArrowXml,
   IOStateArrow,
-  SysConfigList,
   XmlPickler,
   XmlTree,
   (>>>),
@@ -31,16 +30,10 @@ import Text.XML.HXT.Core (
   getAttrl,
   getText,
   hasName,
-  no,
   readDocument,
   runX,
   unpickleDoc,
-  withPreserveComment,
-  withRemoveWS,
-  withSubstDTDEntities,
-  withValidate,
-  xpickle,
-  yes )
+  xpickle )
 
 import Backend ( Backend(..) )
 import CommandLine ( get_args )
@@ -61,22 +54,8 @@ import qualified TSN.InjuriesDetail as InjuriesDetail (
   Listing ( player_listings ),
   Message ( listings ),
   PlayerListing )
-
-
-
--- | A list of options passed to 'readDocument' when we parse an XML
---   document. We don't validate because the DTDs from TSN are
---   wrong. As a result, we don't want to keep useless DTDs
---   areound. Thus we disable 'withSubstDTDEntities' which, when
---   combined with "withValidate no", prevents HXT from trying to read
---   the DTD at all.
---
-parse_opts :: SysConfigList
-parse_opts =
-  [ withPreserveComment no,
-    withRemoveWS yes,
-    withSubstDTDEntities no,
-    withValidate no ]
+import qualified TSN.News as News
+import Xml ( parse_opts )
 
 
 -- | We put the 'Configuration' and 'XmlTree' arguments last so that
@@ -113,6 +92,10 @@ import_generic dummy g cfg xml
 
 
 
+-- | Import TSN.News from an 'XmlTree'.
+import_news :: Configuration -> XmlTree -> IO (Maybe Int)
+import_news = undefined
+
 -- | Import TSN.Injuries from an 'XmlTree'.
 import_injuries :: Configuration -> XmlTree -> IO (Maybe Int)
 import_injuries =
@@ -176,6 +159,7 @@ import_file cfg path = do
     import_with_dtd (dtd,xml)
       | dtd == "injuriesxml.dtd" = import_injuries cfg xml
       | dtd == "Injuries_Detail_XML.dtd" = import_injuries_detail cfg xml
+      | dtd == "newsxml.dtd" = import_news cfg xml
       | otherwise = do
           report_info $ "Unrecognized DTD in " ++ path ++ ": " ++ dtd ++ "."
           return Nothing