<xml>
	<database name="infodancer" 
				 jdbcDriver="" 
				 jdbcURL="" 
				 jdbcUser="" 
				 jdbcPassword="" >
		<table name="WEBLOG" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<!-- The default URL for this weblog -->
			<field name="URL" class="org.infodancer.db.WebLink" />
			<!-- The human-readable name for this weblog -->
			<field name="NAME" class="org.infodancer.db.WebString" />
			<field name="OWNER" class="org.infodancer.db.Owner" />
			<field name="DESCRIPTION" class="org.infodancer.db.WebHTMLText" rows="25" />
			<field name="CREATED" class="org.infodancer.db.Created" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" />
		</table>
		<table name="WEBLOG" class="org.infodancer.webapp.weblog.WeblogTable" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="NAME" class="org.infodancer.db.WebString" />
			<field name="SERVERNAME" class="org.infodancer.db.WebString" />
			<field name="TOP" class="org.infodancer.db.WebHTMLText" rows="25" />
			<field name="LEFT" class="org.infodancer.db.WebHTMLText" rows="25" />
			<field name="RIGHT" class="org.infodancer.db.WebHTMLText" rows="25" />
			<field name="BOTTOM" class="org.infodancer.db.WebHTMLText" rows="25" />
			<field name="ALLOW_COMMENTS" class="org.infodancer.db.WebBoolean" defaultValue="true" />
			<field name="ALLOW_TRACKBACKS" class="org.infodancer.db.WebBoolean" defaultValue="true" />
			<field name="OWNER" class="org.infodancer.db.Owner" />
			<field name="CREATED" class="org.infodancer.db.Created" indexed="true" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" indexed="true" />
		</table>
		<table name="WEBLOG_ENTRY" class="org.infodancer.webapp.weblog.EntryTable"
				 urlPrefix="http://localhost:8080/weblog/" administrator="root@example.com" 
				 index="SUMMARY,COMMENT,HEADLINE,KEYWORDS" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="HEADLINE" class="org.infodancer.db.WebString" allowNull="false" />
			<field name="URL" class="org.infodancer.db.WebLink" />
			<field name="URL_STATUS" class="org.infodancer.db.WebInteger" />
			<field name="TRACKBACK_URL" class="org.infodancer.db.WebLink" />
			<field name="SUMMARY" class="org.infodancer.webapp.weblog.WeblogArticleText" rows="15" columns="64" />
			<field name="COMMENT" class="org.infodancer.webapp.weblog.WeblogArticleText" rows="15" columns="64" />
			<field name="COMMENTS" class="org.infodancer.db.WebBoolean" defaultValue="true" />
			<field name="KEYWORDS" class="org.infodancer.db.WebString" />
			<field name="APPROVED" class="org.infodancer.db.WebDate" indexed="true" />
			<field name="REGISTER" class="org.infodancer.db.WebBoolean" defaultValue="false" />
			<field name="PINNED" class="org.infodancer.db.WebBoolean" indexed="true" defaultValue="false" />
			<field name="OWNER" class="org.infodancer.db.Owner" />
			<field name="ROLE" class="org.infodancer.db.Role" />
			<field name="CREATED" class="org.infodancer.db.Created" indexed="true" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" indexed="true" />
			<!-- Below this line are EntryGroup table keys, which are designed to be modified by the user -->
			<field name="WEBLOG_CATEGORY" class="org.infodancer.db.IntegerForeignKey" foreignTable="WEBLOG_CATEGORY" indexed="true" />
			<field name="WEBLOG_REGION" class="org.infodancer.db.IntegerForeignKey" foreignTable="WEBLOG_REGION" indexed="true" />
			<field name="WEBLOG_TYPE" class="org.infodancer.db.IntegerForeignKey" foreignTable="WEBLOG_TYPE" indexed="true" />
		</table>
		<table name="WEBLOG_SUBSCRIPTION" class="org.infodancer.webapp.weblog.SubscriptionTable" displayName="Subscription" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="EMAIL" class="org.infodancer.db.WebEmail" allowNull="false" />
			<field name="STATUS" class="org.infodancer.db.WebBoolean" allowNull="false" />
			<field name="IPADDRESS" class="org.infodancer.db.WebString" allowNull="false" />
			<field name="GROUPNAME" class="org.infodancer.db.WebString" allowNull="false" />
			<field name="GROUP_ID" class="org.infodancer.db.WebInteger" allowNull="false" />
			<field name="CREATED" class="org.infodancer.db.Created" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" />
		</table>
		<table name="WEBLOG_TYPE" class="org.infodancer.webapp.weblog.EntryGroupTable" displayName="Type" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="PARENT" class="org.infodancer.db.IntegerHeirarchyKey" foreignTable="WEBLOG_TYPE" />
			<field name="NAME" class="org.infodancer.db.WebString" />
			<field name="HIDDEN" class="org.infodancer.db.WebBoolean" />
			<field name="CLOSED" class="org.infodancer.db.WebBoolean" />
			<field name="DESCRIPTION" class="org.infodancer.db.WebHTMLText" rows="25" />
			<field name="OWNER" class="org.infodancer.db.Owner" />
			<field name="ROLE" class="org.infodancer.db.Role" />
			<field name="KEYWORDS" class="org.infodancer.db.WebString" />
			<field name="CREATED" class="org.infodancer.db.Created" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" />
		</table>
		<table name="WEBLOG_REGION" class="org.infodancer.webapp.weblog.EntryGroupTable" displayName="Region" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="PARENT" class="org.infodancer.db.IntegerHeirarchyKey" foreignTable="WEBLOG_REGION" />
			<field name="NAME" class="org.infodancer.db.WebString" allowNull="true" />
			<field name="HIDDEN" class="org.infodancer.db.WebBoolean" allowNull="true" />
			<field name="CLOSED" class="org.infodancer.db.WebBoolean" allowNull="true" />
			<field name="DESCRIPTION" class="org.infodancer.db.WebHTMLText" allowNull="true" rows="25" />
			<field name="OWNER" class="org.infodancer.db.Owner" />
			<field name="ROLE" class="org.infodancer.db.Role" />
			<field name="KEYWORDS" class="org.infodancer.db.WebString" />
			<field name="CREATED" class="org.infodancer.db.Created" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" />
		</table>
		<table name="WEBLOG_CATEGORY" class="org.infodancer.webapp.weblog.EntryGroupTable" displayName="Category" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="PARENT" class="org.infodancer.db.IntegerHeirarchyKey" foreignTable="WEBLOG_CATEGORY" />
			<field name="NAME" class="org.infodancer.db.WebString" />
			<field name="KEYWORDS" class="org.infodancer.db.WebString" />
			<field name="HIDDEN" class="org.infodancer.db.WebBoolean" />
			<field name="CLOSED" class="org.infodancer.db.WebBoolean" />
			<field name="DESCRIPTION" class="org.infodancer.db.WebHTMLText" rows="25" />
			<field name="OWNER" class="org.infodancer.db.Owner" />
			<field name="ROLE" class="org.infodancer.db.Role" />
			<field name="CREATED" class="org.infodancer.db.Created" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" />
		</table>
		<table name="WEBLOG_COMMENT" class="org.infodancer.webapp.weblog.CommentTable" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="IPADDRESS" class="org.infodancer.db.WebRemoteAddress" />
			<field name="URL" class="org.infodancer.db.WebLink" allowNull="true" />
			<field name="NAME" class="org.infodancer.db.WebString" allowNull="false" />
			<field name="EMAIL" class="org.infodancer.db.WebEmail" allowNull="true" />
			<field name="RATING" class="org.infodancer.db.WebInteger" />
			<field name="SUBJECT" class="org.infodancer.db.WebString" allowNull="false" />
			<field name="COMMENT" class="org.infodancer.db.WebHTMLText" allowNull="false" />
			<field name="SUBSCRIBE" class="org.infodancer.db.WebBoolean" allowNull="true" />
			<field name="ENTRY_ID" class="org.infodancer.db.IntegerForeignKey" foreignTable="WEBLOG_ENTRY" allowNull="false"/>
			<field name="OWNER" class="org.infodancer.db.Owner" />
			<field name="CREATED" class="org.infodancer.db.Created" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" />
		</table>
		<table name="WEBLOG_ENTRY_FILE" class="org.infodancer.webapp.weblog.EntryFileTable" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="DATA" class="org.infodancer.db.WebBinaryFile" directory="weblog_entry_files" />
			<field name="TITLE" class="org.infodancer.db.WebString" allowNull="true" />
			<field name="ENTRY_ID" class="org.infodancer.db.IntegerForeignKey" foreignTable="WEBLOG_ENTRY" />
		</table>
		<table name="WEBLOG_ENTRY_LINK" class="org.infodancer.webapp.weblog.EntryLinkTable" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="URL" class="org.infodancer.db.WebLink" allowNull="true" />
			<field name="TITLE" class="org.infodancer.db.WebString" allowNull="true" />
			<field name="ENTRY_ID" class="org.infodancer.db.IntegerForeignKey" foreignTable="WEBLOG_ENTRY" />
			<field name="OWNER" class="org.infodancer.db.Owner" />
			<field name="ROLE" class="org.infodancer.db.Role" />
		</table>
		<table name="WEBLOG_ENTRY_TRACKBACK" class="org.infodancer.webapp.weblog.TrackbackTable" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="IPADDRESS" class="org.infodancer.db.WebRemoteAddress" />
			<field name="URL" class="org.infodancer.db.WebLink" allowNull="true" />
			<field name="TITLE" class="org.infodancer.db.WebString" allowNull="true" />
			<field name="BLOG_NAME" class="org.infodancer.db.WebString" allowNull="true" />
			<field name="EXCERPT" class="org.infodancer.db.WebHTMLText" allowNull="true" />
			<field name="ENTRY_ID" class="org.infodancer.db.IntegerForeignKey" foreignTable="WEBLOG_ENTRY" />
			<field name="CREATED" class="org.infodancer.db.Created" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" />
		</table>
		<table name="WEBLOG_ENTRY_TRACKING" class="org.infodancer.webapp.weblog.EntryTrackingTable" 
			surbl="rbl.infodancer.org"	>
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="IPADDRESS" class="org.infodancer.db.WebRemoteAddress" />
			<field name="LOGIN" class="org.infodancer.db.WebString" allowNull="true" />
			<field name="REFERRER" class="org.infodancer.db.WebString" allowNull="true" />
			<field name="ENTRY_ID" class="org.infodancer.db.IntegerForeignKey" foreignTable="WEBLOG_ENTRY" />
			<field name="CREATED" class="org.infodancer.db.Created" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" />
		</table>
		<table name="WEBLOG_LINK" class="org.infodancer.db.WebTable" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="URL" class="org.infodancer.db.WebLink" allowNull="true" />
			<field name="NAME" class="org.infodancer.db.WebString" allowNull="true" />
		</table>
		<table name="WEBLOG_PING" class="org.infodancer.db.WebTable" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="URL" class="org.infodancer.db.WebLink" allowNull="false" />
			<field name="NAME" class="org.infodancer.db.WebString" allowNull="false" />
		</table>
		<table name="USERS" class="org.infodancer.webapp.user.UserTable" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="LOGIN" class="org.infodancer.db.WebString" allowNull="false" />
			<field name="PASSWORD" class="org.infodancer.db.WebPassword" allowNull="true" />
			<field name="PUBLIC_KEY" class="org.infodancer.db.WebText" allowNull="true" />
			<field name="VERIFIED" class="org.infodancer.db.WebBoolean" defaultValue="false" />
			<field name="OPTOUT" class="org.infodancer.db.WebBoolean" defaultValue="false" />
			<field name="CREATED" class="org.infodancer.db.Created" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" />
		</table>
		<table name="USER_ROLES" class="org.infodancer.webapp.user.UserRoleTable" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="LOGIN" class="org.infodancer.db.WebString" allowNull="false" />
			<field name="ROLENAME" class="org.infodancer.db.WebString" allowNull="true" />
			<field name="CREATED" class="org.infodancer.db.Created" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" />
		</table>
		<table name="USER_ATTRIBUTES" class="org.infodancer.webapp.user.UserAttributeTable" >
			<field name="ID" class="org.infodancer.db.IntegerPrimaryKey" />
			<field name="LOGIN" class="org.infodancer.db.WebString" allowNull="false" />
			<field name="NAME" class="org.infodancer.db.WebString" allowNull="true" />
			<field name="VALUE" class="org.infodancer.db.WebString" allowNull="true" />
			<field name="CREATED" class="org.infodancer.db.Created" />
			<field name="MODIFIED" class="org.infodancer.db.Modified" />
		</table>
	</database>
</xml>
