array( 'service' => array('type' => 'int', 'not null' => true, 'description' => 'service where relationship happens'), 'subscriber' => array('type' => 'int', 'size' => 'big', 'not null' => true, 'description' => 'subscriber on foreign service'), 'subscribed' => array('type' => 'int', 'size' => 'big', 'not null' => true, 'description' => 'subscribed user'), 'created' => array('type' => 'datetime', 'not null' => true, 'description' => 'date this record was created'), ), 'primary key' => array('service', 'subscriber', 'subscribed'), 'foreign keys' => array( 'foreign_subscription_service_fkey' => array('foreign_service', array('service' => 'id')), 'foreign_subscription_subscriber_fkey' => array('foreign_user', array('subscriber' => 'id', 'service' => 'service')), 'foreign_subscription_subscribed_fkey' => array('foreign_user', array('subscribed' => 'id', 'service' => 'service')), ), 'indexes' => array( 'foreign_subscription_subscriber_idx' => array('service', 'subscriber'), 'foreign_subscription_subscribed_idx' => array('service', 'subscribed'), ), ); } }