--- /dev/null
+.TH htsn-import 1
+
+.SH NAME
+htsn-import \- Import XML files from The Sports Network into an RDBMS.
+
+.SH SYNOPSIS
+
+\fBhtsn-import\fR [OPTIONS] [FILES]
+
+.SH DESCRIPTION
+
+.SH DATABASE SCHEMA
+.P
+At the top level, we have one table for each of the XML document types
+that we import. For example, the documents corresponding to
+\fInewsxml.dtd\fR will have a table called \(dqnews\(dq.
+.P
+These top-level tables will often have children. For example, each
+news item has zero or more locations associated with it. The child
+table will be named <parent>_<children>, which in this case
+corresponsds to \(dqnews_locations\(dq.
+.P
+To relate the two, a third table exists with name <parent
+table>__<child table>. Note the two underscores. This prevents
+ambiguity when the child table itself contains underscores. As long we
+never go more than one level down, this system should suffice. The
+table joining \(dqnews\(dq with \(dqnews_locations\(dq is thus called
+\(dqnews__news_locations\(dq.
+.P
+Wherever possible, children are kept unique to prevent pointless
+duplication. This slows down inserts, and speeds up reads (which we
+assume are much more frequent). The current rate at which the feed
+transmits XML is much too slow to cause problems inserting.