ImportResult(..),
run_dbmigrate )
import TSN.Parse (
+ ParseError,
parse_message,
parse_xmlfid,
parse_xml_time_stamp )
"CBASK_FGPctXML.dtd",
"CBASK_FoulsXML.dtd",
"CBASK_FTPctXML.dtd",
+ "Cbask_Indv_No_Avg_XML.dtd",
"Cbask_Indv_Scoring_XML.dtd",
+ "Cbask_Indv_Shooting_XML.dtd",
"CBASK_MinutesXML.dtd",
"Cbask_Polls_XML.dtd",
"CBASK_ReboundsXML.dtd",
"CBASK_ScoringLeadersXML.dtd",
+ "Cbask_Team_Scoring_Rebound_Margin_XML.dtd",
+ "Cbask_Team_Scoring_XML.dtd",
+ "Cbask_Team_Shooting_Pct_XML.dtd",
"Cbask_Team_ThreePT_Made_XML.dtd",
"Cbask_Team_ThreePT_PCT_XML.dtd",
"Cbask_Team_Win_Pct_XML.dtd",
"NCAA_Conference_Schedule_XML.dtd",
"nflfirstdownxml.dtd",
"NFLFumbleLeaderXML.dtd",
+ "NFLGrassTurfDomeOutsideXML.dtd",
"NFLGiveTakeXML.dtd",
"NFLInside20XML.dtd",
+ "NFLInterceptionLeadersXML.dtd",
"NFLKickoffsXML.dtd",
"NFLMondayNightXML.dtd",
+ "NFLPassingLeadersXML.dtd",
"NFLPassLeadXML.dtd",
"NFLQBStartsXML.dtd",
+ "NFLReceivingLeadersXML.dtd",
+ "NFLRushingLeadersXML.dtd",
"NFLSackLeadersXML.dtd",
"nflstandxml.dtd",
+ "NFLTackleFFLeadersXML.dtd",
"NFLTeamRankingsXML.dtd",
+ "NFLTopKickoffReturnXML.dtd",
"NFLTopPerformanceXML.dtd",
+ "NFLTopPuntReturnXML.dtd",
"NFLTotalYardageXML.dtd",
+ "NFLYardsXML.dtd",
"NFL_KickingLeaders_XML.dtd",
"NFL_NBA_Draft_XML.dtd",
+ "NFL_PuntingLeaders_XML.dtd",
"NFL_Roster_XML.dtd",
"NFL_Team_Stats_XML.dtd",
"Transactions_XML.dtd",
-- | Attempt to parse a 'SportInfo' from an 'XmlTree'. If we cannot,
-- we fail with an error message.
--
-parse_xml :: String -> XmlTree -> Either String SportInfo
+parse_xml :: String -> XmlTree -> Either ParseError SportInfo
parse_xml dtdname xmltree = do
xmlfid <- parse_xmlfid xmltree
timestamp <- parse_xml_time_stamp xmltree
message <- parse_message xmltree
- return $ SportInfo dtdname (fromInteger xmlfid) timestamp (xshow [message])
+ return $ SportInfo dtdname xmlfid timestamp (xshow [message])
--
--
mkPersist defaultCodegenConfig [groundhog|
- entity: SportInfo
+ dbName: sport_info
constructors:
- name: SportInfo
uniques:
let a2 = xml_file_id t
let ex2 = 2011
let a3 = show $ time_stamp t
- let ex3 = "2009-09-28 00:50:00 UTC"
+ let ex3 = "2009-09-27 19:50:00 UTC"
let a4 = take 9 (xml t)
let ex4 = "<message>"
let actual = (a1,a2,a3,a4)