| ||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||
Description | ||||||||||||||||||||||||||||||||||||||||||||||
HXQ is a fast and space-efficient compiler from XQuery (the standard query language for XML) to embedded Haskell code. The translation is based on Haskell templates. It also provides an interpreter for evaluating ad-hoc XQueries read from input or from files and database connectivity using HDBC. For more information, look at http://lambda.uta.edu/HXQ/. | ||||||||||||||||||||||||||||||||||||||||||||||
Synopsis | ||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||
The XML Data Representation | ||||||||||||||||||||||||||||||||||||||||||||||
data XTree | ||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||
type XSeq = [XTree] | ||||||||||||||||||||||||||||||||||||||||||||||
type Tag = String | ||||||||||||||||||||||||||||||||||||||||||||||
type AttList = [(Name, String)] | ||||||||||||||||||||||||||||||||||||||||||||||
putXSeq :: XSeq -> IO () | ||||||||||||||||||||||||||||||||||||||||||||||
Print the XQuery result (which is a sequence of XML fragments) without buffering. | ||||||||||||||||||||||||||||||||||||||||||||||
The XQuery Compiler | ||||||||||||||||||||||||||||||||||||||||||||||
xq :: String -> Q Exp | ||||||||||||||||||||||||||||||||||||||||||||||
Run an XQuery that reads XML documents. When evaluated, it returns IO XSeq. | ||||||||||||||||||||||||||||||||||||||||||||||
xe :: String -> Q Exp | ||||||||||||||||||||||||||||||||||||||||||||||
Run an XQuery expression that does not read XML documents. When evaluated, it returns XSeq. | ||||||||||||||||||||||||||||||||||||||||||||||
The XQuery Interpreter | ||||||||||||||||||||||||||||||||||||||||||||||
xquery :: String -> IO XSeq | ||||||||||||||||||||||||||||||||||||||||||||||
Evaluate the XQuery using the interpreter. | ||||||||||||||||||||||||||||||||||||||||||||||
xfile :: String -> IO XSeq | ||||||||||||||||||||||||||||||||||||||||||||||
Read an XQuery from a file and run it using the interpreter. | ||||||||||||||||||||||||||||||||||||||||||||||
The XQuery Compiler with Database Connectivity | ||||||||||||||||||||||||||||||||||||||||||||||
xqdb :: String -> Q Exp | ||||||||||||||||||||||||||||||||||||||||||||||
Run an XQuery that reads XML documents and queries databases. When evaluated, it returns (IConnection conn) => conn -> IO XSeq. | ||||||||||||||||||||||||||||||||||||||||||||||
connect :: FilePath -> IO Connection | ||||||||||||||||||||||||||||||||||||||||||||||
Connect to the relational database in filepath using the HDBC Sqlite3 driver | ||||||||||||||||||||||||||||||||||||||||||||||
prepareSQL :: IConnection conn => conn -> String -> IO Statement | ||||||||||||||||||||||||||||||||||||||||||||||
executeSQL :: Statement -> XSeq -> IO XSeq | ||||||||||||||||||||||||||||||||||||||||||||||
The XQuery Interpreter with Database Connectivity | ||||||||||||||||||||||||||||||||||||||||||||||
xqueryDB :: IConnection conn => String -> conn -> IO XSeq | ||||||||||||||||||||||||||||||||||||||||||||||
Evaluate the XQuery with database connectivity using the interpreter. | ||||||||||||||||||||||||||||||||||||||||||||||
xfileDB :: IConnection conn => String -> conn -> IO XSeq | ||||||||||||||||||||||||||||||||||||||||||||||
Read an XQuery with database connectivity from a file and run it using the interpreter. | ||||||||||||||||||||||||||||||||||||||||||||||
Shredding and Publishing XML Documents Using a Relational Database | ||||||||||||||||||||||||||||||||||||||||||||||
shred :: IConnection conn => conn -> String -> String -> IO () | ||||||||||||||||||||||||||||||||||||||||||||||
Store an XML document into the database under the given name. | ||||||||||||||||||||||||||||||||||||||||||||||
createIndex :: IConnection conn => conn -> String -> String -> IO () | ||||||||||||||||||||||||||||||||||||||||||||||
Create a secondary index on tagname for the shredded document under the given name.. | ||||||||||||||||||||||||||||||||||||||||||||||
Produced by Haddock version 2.1.0 |