{-------------------------------------------------------------- - - Creating the DBLP database - Download dblp.xml.gz from http://dblp.uni-trier.de/xml/ - and uncompress it in the data directory. - Programmer: Leonidas Fegaras (fegaras@cse.uta.edu) - Date: 02/01/2009 - ---------------------------------------------------------------} {-# LANGUAGE TemplateHaskell #-} module Main where import Text.XML.HXQ.XQuery import System.IO main = do db <- connect "hxq" exists <- isSchema db "d" ans <- if exists then do putStr $ "The DBLP database already exists. Do you want to rebuild it? [y/n] " hFlush stdout line <- getLine return $ line == "y" else return True if ans then do putStrLn "Generating the relational schema for the DBPL database using hybrid inlining." -- ignore the HTML tags , , , and genSchema db "data/dblp.xml" "d" ["i","sub","sup","tt"] putStrLn "Populating the DBPL database (will insert about 5M tuples)." shred db "data/dblp.xml" "d" putStrLn "Creating an index on author name." createIndex db "d" "author" else return ()