
epp-erd-20030122
================

This package contains database definitions of a database backend
suitable for the Apache EPP Server Project (with the current EPP
draft mappings in mind). Project information is available at
http://sf.net/projects/aepps/. 

WARNING: Consider this package to be pre-alpha. Definitions of Tables,
Columns und their links may change. Database definitions where made 
to store data related to the 05/07 EPP draft. There may be redundancies
as well as missing links. Billing related tables are currently out of 
scope.

If you think something should be changed, don't hesitate to contact the
author:

Alexander Mayrhofer
axelm@nic.at
+43.14095576 44

Feedback is very appreciated!


Files
-----

epp-domain.dia: Contains the original database design information. 
It can be viewed/edited using DIA (available at 
http://www.gnome.org/gnome-office/dia.shtml).

epp-domain-pg.sql: Contains SQL statements to create the database,
suitable for PostgreSQL. This file can be re-created from the
above file (see below).

Installation on PostgreSQL
--------------------------

To create the database, issue the following commands (assumes that your
database server is up & running, you have created a user named "registry", 
and you're using the "psql" command line utility):

1) create database

$ createdb -U postgres registry

2) load definitions

$ cat epp-domain-pg.sql | psql -U registry registry

Recreate the SQL file
---------------------

You can always recreate the SQL file from the Diagram file using 
'tedia2sql' (http://tedia2sql.tigris.org/). The original SQL file
has been created using

$ tedia2sql -i epp-domain.dia -o epp-domain-pg.sql

Tables
------

dom: contains local part of domain name, points to tld, client, authinfo
dom_tld_list: contains a list of tld's for which this registry is 
  authoritative (e.g. ".example"). Is linked to table 'dom'
dom2state: provides n:m relation between 'dom' and it's states
dom_state_list: lists possible domain object states as defined in draft.

dom2contact: provides n:m relation between 'dom' and 'contact' plus role
contact_role_list: lists possible contact roles
dom2host: provides n:m relation between 'dom' and 'host'

contact: holds data of contact object, links to "sub"-data
contact_postalinfo: holds data of a contact's postalInfo subtree
contact2state: associates states to a contact
contact_state_list: lists contact states as defined in draft.

host: holds data of a host object
hostip: holds a host's ip addresses

client: holds data about the server's clients

epplog: stores commands plus responses.


License
-------

Assume this package to be licensed under an Apache style license.
More details will be available in the next release.


