once:radix open source downloads | once:radix open source documentation
once:technologies
  • Home
  • Software
  • Services
  • News
  • Testimonials
  • Contact
 

once:radix Documentation

  • once:radix
    • Overview
    • Getting started
    • Fundamentals
    • oADMIN
    • oCLI
    • oED
    • Database
    • Scripting
    • Models
    • Directories
    • Technical Notes

Models

A Database is a collection of data, arranged for ease of access. once:radix is based on PostgreSQL, the world's most advanced open source database. There are several excellent texts written about PostgreSQL, so this section will focus only on issues that are specific to the once:radix platform.

The standard deployment of the database is assigned default settings. Refer to the files ../Tomcat/webapps/once/config/configuration.dat and ../pgsql/data/postgresql.conf in the server for more details.

The database is pre-loaded with tables and fields that are critically important for the operation of once:radix. You may add additional fields to these tables but do not remove fields or change their properties as this could render the security system inoperable.

The database is referenced through a set of files found in ../Tomcat/webapps/once/models/*.met and ../Tomcat/webapps/once/models/data/*.mdl. Metamodels define the relationships that join the database tables. Models define the tables. The default metamodels, models, schema, tables and fields are listed below:

Metamodel admin  
Relationship group  
Model Alias Schema.Table.Field
security_group primary security.group.primary
  Group_Name security.group.groupname
  Notes security.group.notes
  Owner_Organization security.group.ownerorganisation
Relationship seqnumber  
Model Alias Schema.Table.Field
admin_seqnumber primary admin.seqnumber.primary
  Next_Number admin.seqnumber.nextnumber
  Model_Name admin.seqnumber.model
  Owner_Organization admin.seqnumber.ownerorganisation
  Alias admin.seqnumber.alias
Relationship securityblock  
Model Alias Schema.Table.Field
security_securityblock primary security.securityblock.primary
  Block security.securityblock.block
  fk_group security.securityblock.fkgroup
  Parent security.securityblock.parent
  Owner_Organization security.securityblock.ownerorganisation
  Modify security.securityblock.modify
  Write security.securityblock.write
  Read security.securityblock.read
  Delete security.securityblock.delete
Relationship securitytable  
Model Alias Schema.Table.Field
security_securitytable primary security.securitytable.primary
  fk_group security.securitytable.fkgroup
  Table security.securitytable.table
  Read_Restrictions security.securitytable.readrestrictions
  Delete_Restrictions security.securitytable.deletrestrictions
  Owner_Organization security.securitytable.ownerorganisation
  Write security.securitytable.write
  Delete security.securitytable.delete
  Write_Restrictions security.securitytable.writerestrictions
  Security_Update security.securitytable.securityupdate
  Modify_Restrictions security.securitytable.modifyrestrictions
  Modify security.securitytable.modify
  Read security.securitytable.read
Relationship opensessions  
join = security_loginhistory INNER JOIN security_usersecurity
ON (security_loginhistory.fk_usersecurity = security_usersecurity.primary
Model Alias Schema.Table.Field
security_loginhistory fk_dateformat security.loginhistory.fkdateformat
primary security.loginhistory.primary
fk_usersecurity security.loginhistory.fkusersecurity
fk_timeformat security.loginhistory.fktimeformat
fk_location security.loginhistory.fklocation
Local_Date_as_Date security.loginhistory.datetime
Local_Date security.loginhistory.localdate
fk_personmember security.loginhistory.fkpersonmember
Session_Closed security.loginhistory.sessionclosed
Owner_Organization security.loginhistory.ownerorganisation
IP security.loginhistory.ip
SessionKey security.loginhistory.sessionkey
security_usersecurity primary security.usersecurity.primary
Client security.usersecurity.client
Marquee_Each security.usersecurity.marqueeeach
Page_Border security.usersecurity.pageborder
End_Time security.usersecurity.loginend
Last_Logged_In security.usersecurity.lastloggedin
Owner_Organization security.usersecurity.ownerorganisation
fk_lastloggedlocation security.usersecurity.fklastloggedlocation
Start_Time security.usersecurity.loginstart
fk_person security.usersecurity.fkperson
Password security.usersecurity.password
Resize security.usersecurity.resize
Editor security.usersecurity.editor
Marquee_Whole security.usersecurity.marqueewhole
Admin security.usersecurity.admin
Username security.usersecurity.username
Relationship person  
join = admin_loginperson INNER JOIN security_usersecurity ON (admin_loginperson.primary
= security_usersecurity.fk_person) INNER JOIN admin_personmember ON (admin_loginperson.primary
= admin_personmember.fk_person) LEFT OUTER JOIN contacts_levelstructure ON (contacts_levelstructure.primary = admin_personmember.fk_level) INNER JOIN contacts_organization ON (contacts_organization.primary = contacts_levelstructure.fk_organization) INNER JOIN contacts_branch ON (contacts_organization.primary = contacts_branch.fk_organization AND contacts_branch.primary = contacts_levelstructure.fk_branch)
Model Alias Schema.Table.Field
admin_loginperson primary contacts.person.primary
Surname contacts.person.lastname
Position contacts.person.jobPosition
Title contacts.person.title
Owner_Organization contacts.person.ownerorganisation
First_Name contacts.person.firstname
security_usersecurity primary security.usersecurity.primary
Client security.usersecurity.client
Marquee_Each security.usersecurity.marqueeeach
Page_Border security.usersecurity.pageborder
End_Time security.usersecurity.loginend
Last_Logged_In security.usersecurity.lastloggedin
Owner_Organization security.usersecurity.ownerorganisation
fk_lastloggedlocation security.usersecurity.fklastloggedlocation
Start_Time security.usersecurity.loginstart
fk_person security.usersecurity.fkperson
Password security.usersecurity.password
Resize security.usersecurity.resize
Editor security.usersecurity.editor
Marquee_Whole security.usersecurity.marqueewhole
Admin security.usersecurity.admin
Username security.usersecurity.username
admin_personmember fk_person contacts.personmember.fkperson
primary contacts.personmember.primary
Temp contacts.personmember.temp
fk_level contacts.personmember.fklevel
Owner_Organization contacts.personmember.ownerorganisation
contacts_branch Type contacts.organisationallevel.type
primary contacts.organisationallevel.primary
Branch contacts.organisationallevel.name
Owner_Organization contacts.organisationallevel.ownerorganisation
fk_organization contacts.organisationallevel.fkorganisation
contacts_organization Org_number contacts.organisation.orgnumber
primary contacts.organisation.primary
Homepage contacts.organisation.homepage
Org_Code contacts.organisation.orgcode
Organization contacts.organisation.organisation
Class contacts.organisation.class
Notes contacts.organisation.notes
Owner_Organization contacts.organisation.ownerorganisation
contacts_levelstructure primary contacts.levelstructure.primary
fk_branch contacts.levelstructure.fkbranch
Owner_Organization contacts.levelstructure.ownerorganisation
fk_organization contacts.levelstructure.fkorganisation
Relationship personmembergroup  
join = security_personmembergroup INNER JOIN contacts_personmember
ON (contacts_personmember.primary = security_personmembergroup.fk_personmember)
INNER JOIN admin_loginperson ON (admin_loginperson.primary = contacts_personmember.fk_person)
Model Alias Schema.Table.Field
contacts_personmember fk_person contacts.personmember.fkperson
primary contacts.personmember.primary
Fax contacts.personmember.fax
Mobile contacts.personmember.mobile
fk_addressdefault contacts.personmember.fkaddressdefault
fk_level contacts.personmember.fklevel
Telephone contacts.personmember.phone
Class contacts.personmember.class
After_Hours contacts.personmember.afterhrs
Owner_Organization contacts.personmember.ownerorganisation
Email_Address contacts.personmember.email
security_personmembergroup primary security.personmembergroup.primary
fk_personmember security.personmembergroup.fkpersonmember
fk_group security.personmembergroup.fkgroup
Owner_Organization security.personmembergroup.ownerorganisation
admin_loginperson primary contacts.person.primary
Surname contacts.person.lastname
Position contacts.person.jobPosition
Title contacts.person.title
Owner_Organization contacts.person.ownerorganisation
First_Name contacts.person.firstname
Relationship usersecurity  
Model Alias Schema.Table.Field
security_usersecurity primary security.usersecurity.primary
Client security.usersecurity.client
Marquee_Each security.usersecurity.marqueeeach
Page_Border security.usersecurity.pageborder
End_Time security.usersecurity.loginend
Last_Logged_In security.usersecurity.lastloggedin
Owner_Organization security.usersecurity.ownerorganisation
fk_lastloggedlocation security.usersecurity.fklastloggedlocation
Start_Time security.usersecurity.loginstart
fk_person security.usersecurity.fkperson
Password security.usersecurity.password
Resize security.usersecurity.resize
Editor security.usersecurity.editor
Marquee_Whole security.usersecurity.marqueewhole
Admin security.usersecurity.admin
Username security.usersecurity.username
Metamodel block_permissions  
Relationship new_permissions  
Model Alias Schema.Table.Field
security_securityblock primary security.securityblock.primary
Block security.securityblock.block
fk_group security.securityblock.fkgroup
Parent security.securityblock.parent
Owner_Organization security.securityblock.ownerorganisation
Modify security.securityblock.modify
Write security.securityblock.write
Read security.securityblock.read
Delete security.securityblock.delete
Relationship groups  
Model Alias Schema.Table.Field
security_group primary security.group.primary
Group_Name security.group.groupname
Notes security.group.notes
Owner_Organization security.group.ownerorganisation
Relationship permissions  
condition=(security_securityblock.fkGroup = security_group.primary)
Model Alias Schema.Table.Field
security_group primary security.group.primary
Group_Name security.group.groupname
Notes security.group.notes
Owner_Organization security.group.ownerorganisation
security_securityblock primary security.securityblock.primary
Block security.securityblock.block
fk_group security.securityblock.fkgroup
Parent security.securityblock.parent
Owner_Organization security.securityblock.ownerorganisation
Modify security.securityblock.modify
Write security.securityblock.write
Read security.securityblock.read
Delete security.securityblock.delete
Relationship session_to_block  
condition=(contacts_personmember.primary = security_personmembergroup.fkPersonMember
AND security_personmembergroup.fkGroup = security_group.primary
AND security_group.primary = security_securityblock.fkGroup
AND contacts_personmember.primary = security_loginhistory.fkPersonMember)
Model Alias Schema.Table.Field
security_securityblock primary security.securityblock.primary
Block security.securityblock.block
fk_group security.securityblock.fkgroup
Parent security.securityblock.parent
Owner_Organization security.securityblock.ownerorganisation
Modify security.securityblock.modify
Write security.securityblock.write
Read security.securityblock.read
Delete security.securityblock.delete
contacts_personmember fk_person contacts.personmember.fkperson
primary contacts.personmember.primary
Fax contacts.personmember.fax
Mobile contacts.personmember.mobile
fk_addressdefault contacts.personmember.fkaddressdefault
fk_level contacts.personmember.fklevel
Telephone contacts.personmember.phone
Class contacts.personmember.class
After_Hours contacts.personmember.afterhrs
Owner_Organization contacts.personmember.ownerorganisation
Email_Address contacts.personmember.email
security_personmembergroup primary security.personmembergroup.primary
fk_personmember security.personmembergroup.fkpersonmember
fk_group security.personmembergroup.fkgroup
Owner_Organization security.personmembergroup.ownerorganisation
security_group primary security.group.primary
Group_Name security.group.groupname
Notes security.group.notes
Owner_Organization security.group.ownerorganisation
security_loginhistory fk_dateformat security.loginhistory.fkdateformat
primary security.loginhistory.primary
fk_usersecurity security.loginhistory.fkusersecurity
fk_timeformat security.loginhistory.fktimeformat
fk_location security.loginhistory.fklocation
Local_Date_as_Date security.loginhistory.datetime
Local_Date security.loginhistory.localdate
fk_personmember security.loginhistory.fkpersonmember
Session_Closed security.loginhistory.sessionclosed
Owner_Organization security.loginhistory.ownerorganisation
IP security.loginhistory.ip
SessionKey security.loginhistory.sessionkey
Metamodel contacts  
join = contacts_levelstructure INNER JOIN contacts_branch
ON (contacts_levelstructure.fk_branch = contacts_branch.primary)
Relationship branch  
Model Alias Schema.Table.Field
contacts_levelstructure primary contacts.levelstructure.primary
fk_branch contacts.levelstructure.fkbranch
Owner_Organization contacts.levelstructure.ownerorganisation
fk_organization contacts.levelstructure.fkorganisation
contacts_branch Type contacts.organisationallevel.type
primary contacts.organisationallevel.primary
Branch contacts.organisationallevel.name
Owner_Organization contacts.organisationallevel.ownerorganisation
fk_organization contacts.organisationallevel.fkorganisation
Relationship address  
Model Alias Schema.Table.Field
contacts_address fk_person contacts.address.fkperson
primary contacts.address.primary
Address_Line_1 contacts.address.address1
State contacts.address.state
Notes contacts.address.notes
Country contacts.address.country
Postcode contacts.address.postcode
City contacts.address.city
Address_Line_2 contacts.address.address2
Title contacts.address.addresstitle
Owner_Organization contacts.address.ownerorganisation
Relationship communication  
Model Alias Schema.Table.Field
contacts_communication primary contacts.communication.primary
Comm_Value contacts.communication.commvalue
Owner_Organization contacts.communication.ownerorganisation
Comm_Title contacts.communication.commtitle
Relationship personal  
join = contacts_personmember INNER JOIN contacts_person
ON (contacts_person.primary = contacts_personmember.fk_person)
LEFT OUTER JOIN contacts_address ON (contacts_person.primary = contacts_address.fk_person
AND contacts_address.primary = contacts_personmember.fk_addressdefault) LEFT OUTER JOIN contacts_levelstructure ON (contacts_levelstructure.primary = contacts_personmember.fk_level)
LEFT OUTER JOIN contacts_organization ON (contacts_organization.primary
= contacts_levelstructure.fk_organization) LEFT OUTER JOIN contacts_branch
ON (contacts_organization.primary = contacts_branch.fk_organization
AND contacts_branch.primary = contacts_levelstructure.fk_branch)
Model Alias Schema.Table.Field
contacts_branch Type contacts.organisationallevel.type
primary contacts.organisationallevel.primary
Branch contacts.organisationallevel.name
Owner_Organization contacts.organisationallevel.ownerorganisation
fk_organization contacts.organisationallevel.fkorganisation
contacts_organization Org_number contacts.organisation.orgnumber
primary contacts.organisation.primary
Homepage contacts.organisation.homepage
Org_Code contacts.organisation.orgcode
Organization contacts.organisation.organisation
Class contacts.organisation.class
Notes contacts.organisation.notes
Owner_Organization contacts.organisation.ownerorganisation
contacts_levelstructure primary contacts.levelstructure.primary
fk_branch contacts.levelstructure.fkbranch
Owner_Organization contacts.levelstructure.ownerorganisation
fk_organization contacts.levelstructure.fkorganisation
contacts_person primary contacts.person.primary
Surname contacts.person.lastname
D_O_B contacts.person.dob
Notes contacts.person.notes
Preferred_Name contacts.person.preferredname
Position contacts.person.jobPosition
Title contacts.person.title
Owner_Organization contacts.person.ownerorganisation
First_Name contacts.person.firstname
contacts_address fk_person contacts.address.fkperson
primary contacts.address.primary
Address_Line_1 contacts.address.address1
State contacts.address.state
Notes contacts.address.notes
Country contacts.address.country
Postcode contacts.address.postcode
City contacts.address.city
Address_Line_2 contacts.address.address2
Title contacts.address.addresstitle
Owner_Organization contacts.address.ownerorganisation
contacts_personmember fk_person contacts.personmember.fkperson
primary contacts.personmember.primary
Fax contacts.personmember.fax
Mobile contacts.personmember.mobile
fk_addressdefault contacts.personmember.fkaddressdefault
fk_level contacts.personmember.fklevel
Telephone contacts.personmember.phone
Class contacts.personmember.class
After_Hours contacts.personmember.afterhrs
Owner_Organization contacts.personmember.ownerorganisation
Email_Address contacts.personmember.email
Relationship organization  
Model Alias Schema.Table.Field
contacts_organization Org_number contacts.organisation.orgnumber
primary contacts.organisation.primary
Homepage contacts.organisation.homepage
Org_Code contacts.organisation.orgcode
Organization contacts.organisation.organisation
Class contacts.organisation.class
Notes contacts.organisation.notes
Owner_Organization contacts.organisation.ownerorganisation
Metamodel login_details  
Relationship locale  
Model Alias Schema.Table.Field
security_timezone code security.timezone.code
primary security.timezone.primary
gmtoffset security.timezone.gmtoffset
End_Summer_Time security.timezone.endsummertime
Start_Summer_Time security.timezone.startsummertime
Owner_Organization security.timezone.ownerorganisation
Relationship userperson  
join = contacts_personmember INNER JOIN contacts_person ON (contacts_person.primary
= contacts_personmember.fk_person) LEFT OUTER JOIN contacts_levelstructure
ON (contacts_levelstructure.primary = contacts_personmember.fk_level) LEFT OUTER JOIN contacts_organization ON (contacts_organization.primary = contacts_levelstructure.fk_organization) LEFT OUTER JOIN contacts_branch ON (contacts_branch.primary = contacts_levelstructure.fk_branch) INNER JOIN security_usersecurity ON (contacts_person.primary = security_usersecurity.fk_person)
Model Alias Schema.Table.Field
contacts_branch Type contacts.organisationallevel.type
primary contacts.organisationallevel.primary
Branch contacts.organisationallevel.name
Owner_Organization contacts.organisationallevel.ownerorganisation
fk_organization contacts.organisationallevel.fkorganisation
contacts_organization Org_number contacts.organisation.orgnumber
primary contacts.organisation.primary
Homepage contacts.organisation.homepage
Org_Code contacts.organisation.orgcode
Organization contacts.organisation.organisation
Class contacts.organisation.class
Notes contacts.organisation.notes
Owner_Organization contacts.organisation.ownerorganisation
contacts_levelstructure primary contacts.levelstructure.primary
fk_branch contacts.levelstructure.fkbranch
Owner_Organization contacts.levelstructure.ownerorganisation
fk_organization contacts.levelstructure.fkorganisation
contacts_person primary contacts.person.primary
Surname contacts.person.lastname
D_O_B contacts.person.dob
Notes contacts.person.notes
Preferred_Name contacts.person.preferredname
Position contacts.person.jobPosition
Title contacts.person.title
Owner_Organization contacts.person.ownerorganisation
First_Name contacts.person.firstname
contacts_personmember fk_person contacts.personmember.fkperson
primary contacts.personmember.primary
Fax contacts.personmember.fax
Mobile contacts.personmember.mobile
fk_addressdefault contacts.personmember.fkaddressdefault
fk_level contacts.personmember.fklevel
Telephone contacts.personmember.phone
Class contacts.personmember.class
After_Hours contacts.personmember.afterhrs
Owner_Organization contacts.personmember.ownerorganisation
Email_Address contacts.personmember.email
security_usersecurity primary security.usersecurity.primary
Client security.usersecurity.client
Marquee_Each security.usersecurity.marqueeeach
Page_Border security.usersecurity.pageborder
End_Time security.usersecurity.loginend
Last_Logged_In security.usersecurity.lastloggedin
Owner_Organization security.usersecurity.ownerorganisation
fk_lastloggedlocation security.usersecurity.fklastloggedlocation
Start_Time security.usersecurity.loginstart
fk_person security.usersecurity.fkperson
Password security.usersecurity.password
Resize security.usersecurity.resize
Editor security.usersecurity.editor
Marquee_Whole security.usersecurity.marqueewhole
Admin security.usersecurity.admin
Username security.usersecurity.username
Metamodel block_permissions  
Relationship new_permissions  
Model Alias Schema.Table.Field
security_securityblock primary security.securityblock.primary
Block security.securityblock.block
fk_group security.securityblock.fkgroup
Parent security.securityblock.parent
Owner_Organization security.securityblock.ownerorganisation
Modify security.securityblock.modify
Write security.securityblock.write
Read security.securityblock.read
Delete security.securityblock.delete
Relationship groups  
Model Alias Schema.Table.Field
security_group primary security.group.primary
Group_Name security.group.groupname
Notes security.group.notes
Owner_Organization security.group.ownerorganisation
Relationship permissions  
condition = (security_securityblock.fkGroup = security_group.primary)
Model Alias Schema.Table.Field
security_group primary security.group.primary
Group_Name security.group.groupname
Notes security.group.notes
Owner_Organization security.group.ownerorganisation
security_securityblock primary security.securityblock.primary
Block security.securityblock.block
fk_group security.securityblock.fkgroup
Parent security.securityblock.parent
Owner_Organization security.securityblock.ownerorganisation
Modify security.securityblock.modify
Write security.securityblock.write
Read security.securityblock.read
Delete security.securityblock.delete
Relationship session_to_block  
condition=(contacts_personmember.primary = security_personmembergroup.fkPersonMember
AND security_personmembergroup.fkGroup = security_group.primary AND security_group.primary
= security_securityblock.fkGroup AND contacts_personmember.primary
= security_loginhistory.fkPersonMember)
Model Alias Schema.Table.Field
security_securityblock primary security.securityblock.primary
Block security.securityblock.block
fk_group security.securityblock.fkgroup
Parent security.securityblock.parent
Owner_Organization security.securityblock.ownerorganisation
Modify security.securityblock.modify
Write security.securityblock.write
Read security.securityblock.read
Delete security.securityblock.delete
contacts_personmember fk_person contacts.personmember.fkperson
primary contacts.personmember.primary
Fax contacts.personmember.fax
Mobile contacts.personmember.mobile
fk_addressdefault contacts.personmember.fkaddressdefault
fk_level contacts.personmember.fklevel
Telephone contacts.personmember.phone
Class contacts.personmember.class
After_Hours contacts.personmember.afterhrs
Owner_Organization contacts.personmember.ownerorganisation
Email_Address contacts.personmember.email
security_personmembergroup primary security.personmembergroup.primary
fk_personmember security.personmembergroup.fkpersonmember
fk_group security.personmembergroup.fkgroup
Owner_Organization security.personmembergroup.ownerorganisation
security_group primary security.group.primary
Group_Name security.group.groupname
Notes security.group.notes
Owner_Organization security.group.ownerorganisation
security_loginhistory fk_dateformat security.loginhistory.fkdateformat
primary security.loginhistory.primary
fk_usersecurity security.loginhistory.fkusersecurity
fk_timeformat security.loginhistory.fktimeformat
fk_location security.loginhistory.fklocation
Local_Date_as_Date security.loginhistory.datetime
Local_Date security.loginhistory.localdate
fk_personmember security.loginhistory.fkpersonmember
Session_Closed security.loginhistory.sessionclosed
Owner_Organization security.loginhistory.ownerorganisation
IP security.loginhistory.ip
SessionKey security.loginhistory.sessionkey
Metamodel login_details  
Relationship locale  
Model Alias Schema.Table.Field
security_timezone code security.timezone.code
primary security.timezone.primary
gmtoffset security.timezone.gmtoffset
End_Summer_Time security.timezone.endsummertime
Start_Summer_Time security.timezone.startsummertime
Owner_Organization security.timezone.ownerorganisation
© 2006 once:technologies Pty Ltd
46 Roseneath St, North Geelong VIC 3215 Australia
Phone: + 61 3 5278 6699, Fax: + 61 3 5278 6166
Privacy policy | Terms of use | Site Map