oracle8.1.6
select c.constraint_id, c.constraint_name, c.rel_side,
s.segment_id, s.segment_name, s.rel_type, acs_group.name(s.group_id) as group_name,
s2.segment_id as req_segment_id, s2.segment_name as req_segment_name,
s2.rel_type as req_rel_type, acs_group.name(s2.group_id) as req_group_name
from application_group_segments s, application_group_segments s2,
rel_constraints c
where s.segment_id = c.rel_segment
and s2.segment_id = c.required_rel_segment
and c.constraint_id = :constraint_id
and s.package_id = :package_id
and s2.package_id = :package_id
select role1.role as role_one,
nvl(role1.pretty_name,'Object on side one') as role_one_pretty_name,
nvl(role1.pretty_plural,'Objects on side one') as role_one_pretty_plural,
role2.role as role_two,
nvl(role2.pretty_name,'Object on side two') as role_two_pretty_name,
nvl(role2.pretty_plural,'Objects on side two') as role_two_pretty_plural,
acs_object_type.pretty_name(rel.rel_type) as rel_type_pretty_name
from acs_rel_types rel, acs_rel_roles role1, acs_rel_roles role2
where rel.rel_type = :rel_type
and rel.role_one = role1.role(+)
and rel.role_two = role2.role(+)
select role1.role as role_one,
nvl(role1.pretty_name,'Object on side one') as role_one_pretty_name,
nvl(role1.pretty_plural,'Objects on side one') as role_one_pretty_plural,
role2.role as role_two,
nvl(role2.pretty_name,'Object on side two') as role_two_pretty_name,
nvl(role2.pretty_plural,'Objects on side two') as role_two_pretty_plural,
acs_object_type.pretty_name(rel.rel_type) as rel_type_pretty_name
from acs_rel_types rel, acs_rel_roles role1, acs_rel_roles role2
where rel.rel_type = :rel_type
and rel.role_one = role1.role(+)
and rel.role_two = role2.role(+)