import Text.XML.HXT.Core (
ArrowXml,
IOStateArrow,
- SysConfigList,
XmlPickler,
XmlTree,
(>>>),
getAttrl,
getText,
hasName,
- no,
readDocument,
runX,
unpickleDoc,
- withPreserveComment,
- withRemoveWS,
- withSubstDTDEntities,
- withValidate,
- xpickle,
- yes )
+ xpickle )
import Backend ( Backend(..) )
import CommandLine ( get_args )
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
+-- | 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 =
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