FORMATS: TABULAR HIERARCHICAL

Footprints Data Model
Subject Area
Subject Area
Name Definition Table
00 - Very High Level Domain Model A high-level Domain model indicating the logical concepts used to design both the Data Model and the persistent Object Model. The Definition is a key abstract class used to define dynamic objects that can be customized and published. Gray Objects indicate Logical Only concepts that do not correspond to unique tables but are stored in other tables. Child tables may be stored in a hierarchy, or template tables may be generated as multiple concrete tables.
01 - High Level Domain Model A high level Domain model indicating the logical concepts used to design both the Data Model and the persistent Object Model. This diagram has all of the main concepts needed to describe FootPrints 12. It was prepared by aggregating and summarizing 50 Logical Data Models prepared from analysis of some 700+ FootPrints 11 screen shots and associated functional descriptions of the new system. It is refined into physical tables in this model.
10 - Translation This model provides for translation of all strings necessary in FootPrints Java. Much of FootPrints is customizable, and much of that customization can been used internally in the form of application strings, delivered Data Templates, and customer data entry. The process of defining the need for a string and obtaining the string and not losing association with the string is important. This model uses the idea of namespaces and identifiers to uniquely identify strings. Much of the UI code uses the actual English string as the unique identifier.
40 - Container The Container is an important abstraction of the FootPrints concepts of Workspace, Address Book, CMDB, and others. The idea is that the Container has specific settings that apply to the Items that can be defined to the Container. So the Container Type allows certain Item Types. It also means that new Container Types such as Knowledge Base, Survey can be defined without having to describe them as Workspaces.
41 - Definition Detail A detailed look at the tables needed to store a definition. The idea is that all dynamic objects can share the functionality of having versions, being published, and participating in relationships with other definitions. A new definition type can be added to the Java code without affecting the database storage.
46 - Workspace Item Assignment The concept of assignment of Workspace Item to Team or Application User or an external party.
47 - Workspace Time Tracking Information about the time spent viewing and editing a workspace item.
48 - Item Field Journaling Any field with journaling turned on will have a collection of historical values in this table, in addition to the current value in the dynamic Item.
50 - Item Relationship A generic table that stores a relationship between two dynamic items. Since the dynamic items might be in different containers, all relationships are stored in a single generic table. Partitioned indexes might be designed on this table if performance becomes a problem, using one or both definition ids as partition keys.
51 - Item Field Collection This shows the table for multi-select fields.
60 - Role Shows the different types of FootPrints Roles and the relationship to Application User types and Use Profiles. There is some redundancy of function in the Perl FootPrints security model that is the subject of design here.
65 - Configuration Setting The intent of the model is to provide for documentation, implementation, localization, and business behavior for the large amount and variety of Configuration Data in FootPrints. The Configuration is broken into Categories which are independently designed and developed. The information needed for the Administration UI, the developer, and query access are all facilitated. The same Definition object can be used at Design Time, Install Time, and Runtime. The actual properties of the Definition objects are stored as Configuration Setting Values, with a reference to a Configuration Setting. The Configuration Setting names are defined in Java code with annotations, and are bound to the database by the same name. So all possible names for Configuration Settings are known and stored via code scanning in the Configuration Setting table. The goal of this pattern is to quickly allow new metadata properties to be defined in code, to have these properties existence and possible values known in the database, to enable query optimization by holding a cache of long strings vs. lengthy names in name/value pairs, and to make it impossible to have errors in the binding of database values and coding values. Database views can be defined that will simplify the display of these properties.
70 - User The agent or customer application user and types.
71 - Team Describe the Team of Agent Application Users and the Relationship to Assignment.
80 - User Profile The user profile contains user preferences. This subject area shows the various types of profiles that are defined.
96 - Email Notification The email notification system uses table to manage processing of items.
101 - Data Access System These tables define the physical database structure of the dynamic items for all types of containers. The data access layer uses these tables for SQL generation.
102 - Data Access Scripts Any component that requires the generation of SQL DDL scripts that are based on dynamic item definitions can use this facility. When a container or item is published, these tables are checked for scripts related to the item type and subtype and are used to generate schema and table specific views and stored procedures.
110 - Id Generation The id generator table.
120 - Job Scheduler The tables used to define the job scheduler instance and template for job configuration. Quartz is used to execute the background jobs.
140 - Workspace Calendar and Operation Schedule The tables used to define the Workspace Calendar aka the Work Schedule. The work schedule is stored as an iCal availability item, and it can be shared across workspaces. These tables simplify the data for reporting.
141 - Calendar Appointments and Items The tables used to define the Workspace Calendar and associated appointments as iCal items. These tables are accessed exclusively through the Calendar service API.
142 - Calendar Sync Tables used to sync the calendar appointments with a device that supports a calendar.
160 - Templating Tables for notification template messaging and substitution of item field values inside messages.
170 - Knowledge Base Tables to add on to knowledge base items regarding user comments on usefulness.
190 - Password Reset Tables to support self help Password Reset functionality.
210 - Audit Trail Tables to support an audit trail of changes to the database and also audit messages formed with a template message and substitution arguments.
230 - Rules Statistics on Rule usage.
240 - File Storage Tables that describe attachments stored in the file system.
250 - Apache Jack Rabbit JCR FootPrints uses Apache Jackrabbit to name and store attachments. Use the API instead of direct access.
262 - Import Items and Users Tables for importing data to dynamic items.
280 - Session and Locking Tables to support the FootPrints session and dynamic item pessimistic locking.
290 - Security Security tables used to store XACML permissions.
300 - Ticket Data Mart Tables that support the Ticket Data Mart used in reporting.
305 - Data Mart Load Tables that control the Full and Incremental load process of the Data Mart.
310 - Auxiliary Tables Internal use tables.
320 - Report Tables that define the existence and configuration of Reports in the UI.
332 - Change Management Voting Tables that control Change Management voting.
340 - Search Tables that defined saved searches and help with query generation and results presentation.
350 - Chat Tables that support the Chat communication feature.
360 - Survey Additional tables used to support surveys.
370 - Deployment Tables to control deployment to the database.
380 - Portal Tables that define console, portal, and widget objects in the UI.
390 - Business Process Template Tables that hold definition templates for one or more container that constitute a Business Process Template.
400 - Asset Management Asset Management integration tables.
410 - Publishing Tables that control container and item publishing.
430 - UI Component State Tables that define the UI state of UI components so that they preserve user configurations and layout.
900 To Be Deleted A list of tables that can be deleted because they are not used. Others are referenced in Java code that must be removed before table deletion.
901 - Tables Added Tables added since the last release.
902 - Columns Added Columns added since the last release.
903 - Tables Deleted Tables dropped since the last release.  
904 - Columns Deleted Columns dropped since the last release.  
Legend  
Table(s) of " 00 - Very High Level Domain Model" Subject Area
Name Definition UDP
Address Book Container A list of contacts that can be used to define customers. An address book can be used to define customers in a single workspace, and it can be shared among other workspaces. The fields of the Address Book can be customized. Data for the address book can be imported or exported. This address book can be associated with multiple workspaces. These relationships willl be shown inside the definition relationship tables.  
Application Element The identity and name of an element in the application implementation. An element can be one of many types, and can contain other elements. Example Application Elements include: a screen, a form, a dialog box, a text box, the Home Page, an Architecture Component, the Item Status field, the system values of the Item Status field. The Application Element is not the full implementation of the element, but is a key and nametag for the element. In many cases, a well-known algorithm can be used to locate the correct Application Element from the Application Element implementation. In other cases, an association to the Application Element Id must be recorded as part of the implementation.  
Application Element String A string resource that is needed in English and other translations. The string is associated with an Application Element and a Usage, for example the Label , the Tooltip, etc.  
Application Role A User Security Role within Footprints. This includes Agent Users and Customer Users, and includes Role settings at the Instance and Container level. Workspace Role and CMDB Role may both be implemented as Container Role. The Role has associated Rights and Permissions, and is a way of granting Roles and Permissions to a User. There is some conceptual overlap between the User Profile and the Role. The User is assigned a single Role as part of the User Profile, and a User can only have one System Role and one Workspace Role. The User Profile can have property settings that override the Role Settings.  
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Application User Profile Link The link between the application user and the user profile.  
Appointment A calendar appointment at a specific time for specific parties. This is logical, the actual appointment is stored in the Calendering tables that support iCal interchange.  
Audit Trail A listing of all changes made to information stored in the FootPrints system. This includes but is not necessarily limited to database column changes. All tables potentially have changes to them recorded here, so those relationships via a generic foreign key are not shown.  
CMDB Container A Configuration Management Database (CMDB) class of container. The CMDB container implements ITIL CMDB special features beyond the capabilities of the generic Container. The CMDB acts as a repository of Configuration Items and supports population, synchronization, and refererencing of items within it.  
Configuration Item A specialization of Item contained in a CMDB container. A Configuration Item (CI) in the Configuration Management Data Base (CMDB). A Configuration Item is a repository item representing a software, hardware, or service item. There are important relationships to other items both within the CMDB but also externally to the CMDB. The CI has the ability to store fields as defined based on its CI Type. Current Footprints creates a table for the CI type named with the CMDB sequence identifier and the CI Type sequence identifier.  
Configuration Setting A configuration variable that can be identified in programming code and which has an atomic value that affects the behavior of the application. Configuration values are either scalars, or are supported by value lists that also can be programmatically identified. They have localized labels and value choices, and are categorized to support organization and separation in programming namespaces and configuration screens. They support the concept of Built-In Values, Default Values, and Customized Values. Configuration should be supported by an Audit Trail, and should be able to determine if configuration has changed by level, category, and for the individual value in order to support cacheing. A configuration value has a definition to identify its usage, and a enum that identifies if a change will require a restart and what level of restart is required if the value changes. If a restart is required, both the currently running value and the value after restart should be accessible. This means that historical values of the Configuration Settings should be accessible.  
Contact Item A contact that belongs to the FootPrints address book. This could be implemented as a specialization of Item which has the needed features of flexible schema, and data mapping adapters.  
Container The highest abstract level of Runtime Object. The Runtime object has a cooresponding definition that acts as a catalog of the Runtime Table. There is a hierarchy or composition concept in the Runtime Entity, but it may not be necessary to actually have navigable properties.  
Container Definition The definition of a Container and the associated Configuration_Settings at the container level. This would include the collection of Item Definitions. The Container_Definition will have a Container Class identifier (Workspace, CMDB, Address Book) and may have specializations such as Workspace_Container_Definition. As much as possible, the Container Definition will suffice to describe any Container Type. There will be an association to a default Container Template, as well as more application specific Container Templates that can be chosen to initially populate the Container Template. There will also be Container Group Definition, and Container Group Templates. See the database views v_cntnr_defn, v_cntnr_defn_active.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Relationship All relationships between definitions are stored in this table in order to make the model able to handle new relationships without changes to tables.  
Definition Version A version of a Definition with a version identifier that changes when data changes are made to the template. The definition version will suffice to store the current state of the FootPrints Configuration. A full copy of the definition tree is versioned when a container is published. See the database views v_defn_ver_active, v_cntnr_item_field.  
Field Definition The definition of a Field, including persistence information and default UI information. Some fields will be defined as database fields, and other fields will be defined as calculated fields. The field will have data types and associations to business rule definitions. Some fields are built-in, some are defaults from templates, and some are custom fields. See the database view v_cntnr_item_field.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Item Definition The definition of an Item, which includes the Item Name and localizations and the collection of Item Fields. It also includes customizations and localizations of string resources for Item Names, and Item Field names.  
Item Field Definition Item Field Definition is an association between the Item Definition entity and the Field Definition entity. This association contains a distinct value for each of the intersection points between the two entities.  
Item Relationship An Item Relationship is a relationship between instances contained in two Dynamic Object generated Tables. For example, the following. A Configuration Item Type ("Computer") related to an Workspace Item ("Incident"). An Address Book Entry ("Contact") related to another Address Book Entry ("Master Contact"). A Dynamic Link between an Incident in Workspace 1 ("Current Tickets") and Workspace 3 ("Archive Workspace"). A Dynamic Link between an Incident in Workspace 1 ("Current Tickets") and Workspace 5 ("Change Management"). There are no foreign keys defined.  
Item Relationship Definition The definition of a Relationship type within the Container Definition. This has important Configuration_Settings and Application Element Identifier values that clarify the meaning of the Relationship to programming code.  
Locale A language and locale used to identify a specific dialect. It is used to determine variable forms of words, idioms, numeric format, date format, images, colors, etc. "en-US" for example is United States English, "es-LA" for Latin American Spanish.  
Schedule A personal or workspace calendar in Footprints. It is used to provide easy access to work hours and settings for appointment scheduling and metric reporting. The Calendar Service maintains the system of record tables for the schedule, but those tables are too difficult and time consuming to query for trend reporting.  
String Resource Value The translated value of the resource.  
Template A template for a Definition, consisting of a set of properties, values and Configuration Settings. The Template has a name and other properties, and contains a reference to a Definition.  
Tenant Partition A partition of the FootPrints product that is isolated from other partitions in both data security and design definition and configuration. The Tenant Partition is the global layer above the Container which hosts the Definitions and the implementations of the Containers, and hosts system level information such as the Users and Roles. In current Footprints, this is the root folder and the installed schema for the database tables.  
Ticket Item A specialization of Item contained in a Workspace container. Workspace Items are tracked for resolution and closure, and have parties that are awaiting resolution and closure, and responsible parties that perform work against them.  
User Profile A container for Permissions and Settings (the composite parts are the associated Role and the User Preferences). The permissions for a User to access a particular container according to the capabilities defined. In most cases this will be more defined in a subcategory. Example: Shared User Profile This profile will be shared between multiple users that access the system with the same User ID.  
Workspace Activity Data Mart A summarized data store of Workspace Activity metric calculations used to support the Executive Dashboard Trend Reporting feature in an upcoming FootPrints release. There is a version of this for both the FootPrints Monet (Perl) and Renoir (Java) releases. The data mart tables conform to a very specific star-schema design and must be populated using history data and an incremental feed. The Star Schema structure must be able to use custom Workspace Item Fields, so the design must be coordinated with the implementation of Workspace Item.  
Workspace Container A workspace is the principle architectural structure in Numara FootPrints for storing and tracking information. A Workspace is a separate sub-database or work area within the system with its own fields, forms, options, workflow, settings and users. Most of the behaviour of the Workspace comes from the Container Abstract class, and only things that are specific to the Workspace are implemented here. For Example, Current FootPrints allows a single CMDB to be referenced from a Workspace, and a single Address book, yet these are listed as features for improvement. So convenience methods that get and set Container Group Relationship might be appropriate.  
Table(s) of " 01 - High Level Domain Model" Subject Area
Name Definition UDP
Activity Definition The definition of a task that must take place in order to fulfill an operation contract.  
Address Book Container A list of contacts that can be used to define customers. An address book can be used to define customers in a single workspace, and it can be shared among other workspaces. The fields of the Address Book can be customized. Data for the address book can be imported or exported. This address book can be associated with multiple workspaces. These relationships willl be shown inside the definition relationship tables.  
Agent a user authorized to use the FootPrints agent functions, which enable the agent to provide services to the customer. These include the ability to edit, escalate, and close tickets.  
Application Element The identity and name of an element in the application implementation. An element can be one of many types, and can contain other elements. Example Application Elements include: a screen, a form, a dialog box, a text box, the Home Page, an Architecture Component, the Item Status field, the system values of the Item Status field. The Application Element is not the full implementation of the element, but is a key and nametag for the element. In many cases, a well-known algorithm can be used to locate the correct Application Element from the Application Element implementation. In other cases, an association to the Application Element Id must be recorded as part of the implementation.  
Application Element String A string resource that is needed in English and other translations. The string is associated with an Application Element and a Usage, for example the Label , the Tooltip, etc.  
Application Role A User Security Role within Footprints. This includes Agent Users and Customer Users, and includes Role settings at the Instance and Container level. Workspace Role and CMDB Role may both be implemented as Container Role. The Role has associated Rights and Permissions, and is a way of granting Roles and Permissions to a User. There is some conceptual overlap between the User Profile and the Role. The User is assigned a single Role as part of the User Profile, and a User can only have one System Role and one Workspace Role. The User Profile can have property settings that override the Role Settings.  
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Appointment A calendar appointment at a specific time for specific parties. This is logical, the actual appointment is stored in the Calendering tables that support iCal interchange.  
Asset Item    
Attachment A binary or text file attachment that can be related to various entities that accept attachments, such as Issue or Emails.  
Audit Trail A listing of all changes made to information stored in the FootPrints system. This includes but is not necessarily limited to database column changes. All tables potentially have changes to them recorded here, so those relationships via a generic foreign key are not shown.  
Audit Transaction A change made to information stored in the FootPrints system. This includes but is not necessarily limited to database column changes. All table potentially have changes to them recorded  
Business Rule Definition A Business rule is a statement that defines or constrains some aspect of the business. It is intended to assert business structure or to control or influence the behavior of the business.  
CMDB Container A Configuration Management Database (CMDB) class of container. The CMDB container implements ITIL CMDB special features beyond the capabilities of the generic Container. The CMDB acts as a repository of Configuration Items and supports population, synchronization, and refererencing of items within it.  
Configuration Item A specialization of Item contained in a CMDB container. A Configuration Item (CI) in the Configuration Management Data Base (CMDB). A Configuration Item is a repository item representing a software, hardware, or service item. There are important relationships to other items both within the CMDB but also externally to the CMDB. The CI has the ability to store fields as defined based on its CI Type. Current Footprints creates a table for the CI type named with the CMDB sequence identifier and the CI Type sequence identifier.  
Configuration Setting A configuration variable that can be identified in programming code and which has an atomic value that affects the behavior of the application. Configuration values are either scalars, or are supported by value lists that also can be programmatically identified. They have localized labels and value choices, and are categorized to support organization and separation in programming namespaces and configuration screens. They support the concept of Built-In Values, Default Values, and Customized Values. Configuration should be supported by an Audit Trail, and should be able to determine if configuration has changed by level, category, and for the individual value in order to support cacheing. A configuration value has a definition to identify its usage, and a enum that identifies if a change will require a restart and what level of restart is required if the value changes. If a restart is required, both the currently running value and the value after restart should be accessible. This means that historical values of the Configuration Settings should be accessible.  
Configuration Setting Value Configuration Setting Value is an association between the Configuration Setting entity and a container entity (i.e. User Profile, Role, and Definition). This association contains a distinct value for each of the intersection points between the two entities.  
Contact Item A contact that belongs to the FootPrints address book. This could be implemented as a specialization of Item which has the needed features of flexible schema, and data mapping adapters.  
Container The highest abstract level of Runtime Object. The Runtime object has a cooresponding definition that acts as a catalog of the Runtime Table. There is a hierarchy or composition concept in the Runtime Entity, but it may not be necessary to actually have navigable properties.  
Container Definition The definition of a Container and the associated Configuration_Settings at the container level. This would include the collection of Item Definitions. The Container_Definition will have a Container Class identifier (Workspace, CMDB, Address Book) and may have specializations such as Workspace_Container_Definition. As much as possible, the Container Definition will suffice to describe any Container Type. There will be an association to a default Container Template, as well as more application specific Container Templates that can be chosen to initially populate the Container Template. There will also be Container Group Definition, and Container Group Templates. See the database views v_cntnr_defn, v_cntnr_defn_active.  
Container Group Definition The definition of a Group Container and the associated Configuration_Settings at the container level. This would include the reason for the grouping and the types of containers in the group.  
Container Group Relationship The container group may exist in the runtime environment. It may suffice to have the Definition of the container group.  
Container Home Page The homepage is the URL or local file that automatically loads when a web browser starts or when the browser's "home" button is pressed.  
Customer a user authorized to use the FootPrints customer functions. This includes the ability to enter requests, and interact with requests as they are worked by Agents.  
Database Object Database objects are the components that save and query information. A database contains several objects that are used to provide storage and display large, relational data. The main objects of a database are tables, stored procedures, views, users and functions.  
Database Object Definition The database definition object that links to configuration settings and properties to determine the functionality of a database item. Database objects are the components that save and query information. A database contains several objects that are used to provide storage and display large, relational data. The main objects of a database are tables, stored procedures, views, users and functions.  
Default Rule A default rule is a statement that defines or constrains some aspect of the business. It is intended to assert business structure or to control or influence the behavior of the business.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Subtype The subtype of the definition used as a discriminator for the class of definition. Each subtype will have different configuration settings and associated definitions. These include associated built-in field definitions for item subtypes. See the database view v_defn_subtype.  
Definition Type The scope of the Template chosen from Instance, Container Group, Container, Item, Field.  
Definition Version A version of a Definition with a version identifier that changes when data changes are made to the template. The definition version will suffice to store the current state of the FootPrints Configuration. A full copy of the definition tree is versioned when a container is published. See the database views v_defn_ver_active, v_cntnr_item_field.  
Event An event is an action that is usually initiated outside the FootPrints application and that is handled by a piece of code inside the program.  
External Data Source Definition The abstraction of the structural and behaviaral source information that is configuarable by the system designer and/or the end user at definition time that specifies the file or other data source used for input or archiving.  
Field Datatype The type of field (i.e. a custom field that the users have defined).  
Field Definition The definition of a Field, including persistence information and default UI information. Some fields will be defined as database fields, and other fields will be defined as calculated fields. The field will have data types and associations to business rule definitions. Some fields are built-in, some are defaults from templates, and some are custom fields. See the database view v_cntnr_item_field.  
Field Dependency Rule A field dependency rule constrains some aspect of the associated field. It is intended to assert business structure or to control or influence the behavior of the business.  
Inbound Email A record of an email received by Footprints via a configured account. Generally, the email is deleted from the email system after successful processing.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Item Definition The definition of an Item, which includes the Item Name and localizations and the collection of Item Fields. It also includes customizations and localizations of string resources for Item Names, and Item Field names.  
Item Field A place related to a specific item that stores or displays data.  
Item Field Definition Item Field Definition is an association between the Item Definition entity and the Field Definition entity. This association contains a distinct value for each of the intersection points between the two entities.  
Item Relationship An Item Relationship is a relationship between instances contained in two Dynamic Object generated Tables. For example, the following. A Configuration Item Type ("Computer") related to an Workspace Item ("Incident"). An Address Book Entry ("Contact") related to another Address Book Entry ("Master Contact"). A Dynamic Link between an Incident in Workspace 1 ("Current Tickets") and Workspace 3 ("Archive Workspace"). A Dynamic Link between an Incident in Workspace 1 ("Current Tickets") and Workspace 5 ("Change Management"). There are no foreign keys defined.  
Item Vote The record of a vote on a specific item. The current effective vote is maintained here, history of conflicting changes is in the Audit Trail.  
Knowledge Base Container A container for knowledge base information.  
License Type A lookup table for the type of FootPrints license. Must be secure from tampering.  
Locale A language and locale used to identify a specific dialect. It is used to determine variable forms of words, idioms, numeric format, date format, images, colors, etc. "en-US" for example is United States English, "es-LA" for Latin American Spanish.  
Localized Column (Not used, but referenced in Java code that must be removed before table deletion.) (Not currently used. Data localization is implemented in Configuration Setting Value. May be retired in the future). A Database Column name used in the Transparent Database Localization pattern. The data in the column is the original data for which a translated value can exist. In the case of English, this is a little strange because the English translation can be different than the original data.  
Localized Column Value (Not used, but referenced in Java code that must be removed before table deletion.) (Not currently used. Data localization is implemented in Configuration Setting Value. May be retired in the future). A data value from a column and row in a Localized table. The initial english value is obtained from the table, but may be modified for visual display purposes. The Primary Key identifier of the source table is used along with the table name to establish the row identity.  
Master Contact Item A contact that belongs to the FootPrints address book. This could be implemented as a specialization of Item which has the needed features of flexible schema, and data mapping adapters.  
Metric Definition The definition of the level of service in the service level agreement.  
Metric Threshold The agreed upon levels of service.  
Notification An automated email sent as a result of system activity and notification settings.  
Operation Pertaining to a process or series of actions for achieving a result.  
Operation Visibility Whether or not a user can see the operation.  
Outbound Email A record of an email sent by Footprints via a configured account.  
Presentation Mode A code representing the logical mode of UI presentation. The code is used to categorize UI Element size and capabilities. Examples include: "Full View", "Quick View", "Mobile View".  
Product Version Information on the exact software version of the Numara products installed on the system.  
Request For Change Item An item that allows input or display of information regarding a request for change.  
Schedule A personal or workspace calendar in Footprints. It is used to provide easy access to work hours and settings for appointment scheduling and metric reporting. The Calendar Service maintains the system of record tables for the schedule, but those tables are too difficult and time consuming to query for trend reporting.  
Search Filter A set of search criteria that is used to find and display a subset of issues, or is used to define business rules. It consists of query method and criteria, and information on result set columns.  
Security Permission Authorization granted to access a system resource.  
Security Right Rights granted to access a system resource.  
Service Item A Service Item in a Service Portfolio container. An item representing a provided or available software service or functionality.  
Service Level Agreement A service level agreement (frequently abbreviated as SLA) is a part of a service contract where the level of service is formally defined.  
Service Level Target Item A Service Level Target Item in a Service Portfolio container.  
Service Portfolio Container A catalog of services that an IT user can use on service requests. This is a type of Configuration Item.  
Solution Item An item that stores the solution information for a particular issue.  
String Resource Value The translated value of the resource.  
Survey Item An item that allows input or display of survey information.  
System Environment The System Environment layer represents information about the hardware and software environment which hosts one or more Tenant Partitions. It would be used in Use Cases such as installation, moving Tenant Partitions, finding and connecting to an Tenant Partition, and performance monitoring and Tenant maintenance.  
System Log Information Logged by various system components for the purpose of debugging. Generally, this information is not stored in the database because the database may not be available during error conditions.  
System Manufacturer The System Manufacturer is the term given to the Independent Software Vendor for the FootPrints software. There is one instance of this entity. We need a term that does not include our company name or our product name so that renaming is not necessary in the event of changes. Numara Software is always the System Manufacturer, so we don't need very information much at the Instance level other than localizations. The System Manufacturer it is relevant to interfaces with the Manufacturer's other systems.  
System Provider The System Provider is a business entity that provides the hosted FootPrints application to Tenants in a multi-tenant sense. The System Provider is in the business of providing FootPrints application setup and configuration services so that the Tenant can access a live working system.  
Template A template for a Definition, consisting of a set of properties, values and Configuration Settings. The Template has a name and other properties, and contains a reference to a Definition.  
Tenant The Tenant is an owner of one or more FootPrints Tenant Partitions that are configured and maintained by a System Provider. A customer that purchase FootPrints is a tenant in the sense of multi-tenant architecture, even if the Tenant does not use Numara SaaS hosting and installs and maintains the system themselves.  
Tenant Partition A partition of the FootPrints product that is isolated from other partitions in both data security and design definition and configuration. The Tenant Partition is the global layer above the Container which hosts the Definitions and the implementations of the Containers, and hosts system level information such as the Users and Roles. In current Footprints, this is the root folder and the installed schema for the database tables.  
Tenant Partition Definition The Root Node definition object that links to configuration settings and properties and the instance level, and also has the collection of Container Definitions below it.  
Ticket Item A specialization of Item contained in a Workspace container. Workspace Items are tracked for resolution and closure, and have parties that are awaiting resolution and closure, and responsible parties that perform work against them.  
UI Element The name and identity of an Application Element that appears in the User Interface.  
UI Element Definition The UI element definition object that links to configuration settings and properties and the instance level to determine the functionality and display of a UI item.  
UI Field The name and identity of an application field element that appears in the User Interface.  
UI Field Definition The field UI element definition object that links to configuration settings and properties and the instance level to determine it's functionality and display.  
UI Form The name and identity of an application form element that appears in the User Interface.  
UI Form Definition The form UI element definition object that links to configuration settings and properties and the instance level to determine it's functionality and display.  
UI Tab The name and identity of an application tab element that appears in the User Interface.  
UI Tab Definition The tab UI element definition object that links to configuration settings and properties and the instance level to determine it's functionality and display.  
User Preference Definition The abstraction of the structural and behaviaral preference information that is configuarable by the system designer and/or the end user at definition time.  
User Profile A container for Permissions and Settings (the composite parts are the associated Role and the User Preferences). The permissions for a User to access a particular container according to the capabilities defined. In most cases this will be more defined in a subcategory. Example: Shared User Profile This profile will be shared between multiple users that access the system with the same User ID.  
Valid Values Rule A valid values rule constrains some aspect of the Footprints application to a set or range of values. It is intended to assert business structure or to control or influence the behavior of the business.  
Validation Rule A valdation rule constrains some aspect of the associated field. It is intended to assert business structure or to control or influence the behavior of the business.  
Workflow Action A workflow action that Footprints can take in response to Change Management activity or escalations or other system features that trigger actions. The change to a phase action for Approval, Disapproval, or Expiration can trigger any of these actions.  
Workflow Process Definition The management of steps in a business processes. A workflow specifies what tasks need to be done, in what order (sometimes linearly, sometimes in parallel), and who has permission to perform each task. Most tasks are performed by humans but they can also be automated processes.  
Workspace Activity Data Mart A summarized data store of Workspace Activity metric calculations used to support the Executive Dashboard Trend Reporting feature in an upcoming FootPrints release. There is a version of this for both the FootPrints Monet (Perl) and Renoir (Java) releases. The data mart tables conform to a very specific star-schema design and must be populated using history data and an incremental feed. The Star Schema structure must be able to use custom Workspace Item Fields, so the design must be coordinated with the implementation of Workspace Item.  
Workspace Container A workspace is the principle architectural structure in Numara FootPrints for storing and tracking information. A Workspace is a separate sub-database or work area within the system with its own fields, forms, options, workflow, settings and users. Most of the behaviour of the Workspace comes from the Container Abstract class, and only things that are specific to the Workspace are implemented here. For Example, Current FootPrints allows a single CMDB to be referenced from a Workspace, and a single Address book, yet these are listed as features for improvement. So convenience methods that get and set Container Group Relationship might be appropriate.  
WorkTarget Item A Work Target Item in a Service Portfolio container.  
Table(s) of " 10 - Translation" Subject Area
Name Definition UDP
Application Element The identity and name of an element in the application implementation. An element can be one of many types, and can contain other elements. Example Application Elements include: a screen, a form, a dialog box, a text box, the Home Page, an Architecture Component, the Item Status field, the system values of the Item Status field. The Application Element is not the full implementation of the element, but is a key and nametag for the element. In many cases, a well-known algorithm can be used to locate the correct Application Element from the Application Element implementation. In other cases, an association to the Application Element Id must be recorded as part of the implementation.  
Application Element Namespace A string that best describes the namespace of the Element Name. For example "FootPrints.UserInterface.Item.MaintenanceForm". These are maintained in a picklist so that consistency can be managed. There may be a hierarchy in the name, but the components of the hierarchy will not be enforced or maintained.  
Application Element String A string resource that is needed in English and other translations. The string is associated with an Application Element and a Usage, for example the Label , the Tooltip, etc.  
Application Element String Usage The collection of String Usage types that are valid for use with an Application Element type. This is used for Internal systems to validate entry and control the edit interface.  
Application Element Type The class subtype indicator for Application Element, used in an inheritance pattern. Types include UI Element, Error Code, Localized Column, etc. There may need to be further subtypes, for example of UI Element. The subtypes will share common Finder methods and key construction methods and metadata for identification.  
Internal Identifier Type There are identifiers that are created by Numara Software that are used internally to uniquely identify elements. These are serial ids that will never change. There are also types of serial ids that may be used for configuration data, picklist data, etc. This Type provides a different domain of values for those keys. There may also be different domains of values provided by our partners or Professional Services. Primarily, Engineering will provide internal ids.  
Locale A language and locale used to identify a specific dialect. It is used to determine variable forms of words, idioms, numeric format, date format, images, colors, etc. "en-US" for example is United States English, "es-LA" for Latin American Spanish.  
String Resource Value The translated value of the resource.  
String Usage Type The Usage Type of a String Resource by an an Application Element , for example Label, ToolTip, Accessibility, Help Text, Data Display Value, etc. The types may be appropriate by Application Element Type.  
Table(s) of " 40 - Container" Subject Area
Name Definition UDP
Address Book Container A list of contacts that can be used to define customers. An address book can be used to define customers in a single workspace, and it can be shared among other workspaces. The fields of the Address Book can be customized. Data for the address book can be imported or exported. This address book can be associated with multiple workspaces. These relationships willl be shown inside the definition relationship tables.  
CMDB Container A Configuration Management Database (CMDB) class of container. The CMDB container implements ITIL CMDB special features beyond the capabilities of the generic Container. The CMDB acts as a repository of Configuration Items and supports population, synchronization, and refererencing of items within it.  
Container The highest abstract level of Runtime Object. The Runtime object has a cooresponding definition that acts as a catalog of the Runtime Table. There is a hierarchy or composition concept in the Runtime Entity, but it may not be necessary to actually have navigable properties.  
Container Definition The definition of a Container and the associated Configuration_Settings at the container level. This would include the collection of Item Definitions. The Container_Definition will have a Container Class identifier (Workspace, CMDB, Address Book) and may have specializations such as Workspace_Container_Definition. As much as possible, the Container Definition will suffice to describe any Container Type. There will be an association to a default Container Template, as well as more application specific Container Templates that can be chosen to initially populate the Container Template. There will also be Container Group Definition, and Container Group Templates. See the database views v_cntnr_defn, v_cntnr_defn_active.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Field Definition The definition of a Field, including persistence information and default UI information. Some fields will be defined as database fields, and other fields will be defined as calculated fields. The field will have data types and associations to business rule definitions. Some fields are built-in, some are defaults from templates, and some are custom fields. See the database view v_cntnr_item_field.  
Workspace Container A workspace is the principle architectural structure in Numara FootPrints for storing and tracking information. A Workspace is a separate sub-database or work area within the system with its own fields, forms, options, workflow, settings and users. Most of the behaviour of the Workspace comes from the Container Abstract class, and only things that are specific to the Workspace are implemented here. For Example, Current FootPrints allows a single CMDB to be referenced from a Workspace, and a single Address book, yet these are listed as features for improvement. So convenience methods that get and set Container Group Relationship might be appropriate.  
Table(s) of " 41 - Definition Detail" Subject Area
Name Definition UDP
Association Type    
Container Definition The definition of a Container and the associated Configuration_Settings at the container level. This would include the collection of Item Definitions. The Container_Definition will have a Container Class identifier (Workspace, CMDB, Address Book) and may have specializations such as Workspace_Container_Definition. As much as possible, the Container Definition will suffice to describe any Container Type. There will be an association to a default Container Template, as well as more application specific Container Templates that can be chosen to initially populate the Container Template. There will also be Container Group Definition, and Container Group Templates. See the database views v_cntnr_defn, v_cntnr_defn_active.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Relationship All relationships between definitions are stored in this table in order to make the model able to handle new relationships without changes to tables.  
Definition Relationship Type The Definition Relationship Type entity depicts a set of relationships that a Definition instance in the system can have with another Definition instance(i.e. parent_child indicatesto a hierarchical relationship) . This specific relationship is further clarified when combined with the Definition Relationship Member Type entity.  
Definition Subtype The subtype of the definition used as a discriminator for the class of definition. Each subtype will have different configuration settings and associated definitions. These include associated built-in field definitions for item subtypes. See the database view v_defn_subtype.  
Definition Type The scope of the Template chosen from Instance, Container Group, Container, Item, Field.  
Definition Version A version of a Definition with a version identifier that changes when data changes are made to the template. The definition version will suffice to store the current state of the FootPrints Configuration. A full copy of the definition tree is versioned when a container is published. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Version Association    
Definition Version Status The attribute of the definition version entity that tells what state the definition instance is in. The word "Published" in this context means a change being commited or made ready for runtime. Currently the available status options are: Draft Dirty - the entity instance is being created or changed, but has not yet been published, so is not yet valid for runtime. Published Active - the entity instance has been published, and is available for runtime. Published Outdated - the entity instance has been previously published, but has been replaced with a newer version of itself in runtime.  
Field Datatype The type of field (i.e. a custom field that the users have defined).  
Field Definition The definition of a Field, including persistence information and default UI information. Some fields will be defined as database fields, and other fields will be defined as calculated fields. The field will have data types and associations to business rule definitions. Some fields are built-in, some are defaults from templates, and some are custom fields. See the database view v_cntnr_item_field.  
Item Definition The definition of an Item, which includes the Item Name and localizations and the collection of Item Fields. It also includes customizations and localizations of string resources for Item Names, and Item Field names.  
Item Field Definition Item Field Definition is an association between the Item Definition entity and the Field Definition entity. This association contains a distinct value for each of the intersection points between the two entities.  
Tenant Partition Definition The Root Node definition object that links to configuration settings and properties and the instance level, and also has the collection of Container Definitions below it.  
Table(s) of " 46 - Workspace Item Assignment" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Assignment The current state and historical record of responsibility for a ticket. Regular assignments involve all parties that share responsibility for the ticket and are interested potentially in notifications. Primary Assignments additionally indicate that one and only one userid is responsible for the ticket for a span of time. A userid will have a span of Primary Assignment that is within the boundaries of his regular non-Primary Assignment. It is expected that an individual would have a single large span of time, possibly the life of the ticket, as a regular assignment. The individual may have zero, one, or more periods of PrimaryAssignment, stored as additional records.  
Assignment Type The assignment type indicates the notification level of the assignment. The current types consist of the following: Regular Assignment, CC Assignment, Primary Assignment .  
Configuration Item A specialization of Item contained in a CMDB container. A Configuration Item (CI) in the Configuration Management Data Base (CMDB). A Configuration Item is a repository item representing a software, hardware, or service item. There are important relationships to other items both within the CMDB but also externally to the CMDB. The CI has the ability to store fields as defined based on its CI Type. Current Footprints creates a table for the CI type named with the CMDB sequence identifier and the CI Type sequence identifier.  
Contact Item A contact that belongs to the FootPrints address book. This could be implemented as a specialization of Item which has the needed features of flexible schema, and data mapping adapters.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Item Field A place related to a specific item that stores or displays data.  
Team A team is a group of application users that can be used in Team level assignments.  
Ticket Item A specialization of Item contained in a Workspace container. Workspace Items are tracked for resolution and closure, and have parties that are awaiting resolution and closure, and responsible parties that perform work against them.  
Table(s) of " 47 - Workspace Time Tracking" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Time Tracking A table of time tracking entries used to accumulate a log of time spent on ticket editing and viewing.  
Time Tracking Type The type of time tracking entry. Values include AUTOMATIC, MANUAL_DURATION, MANUAL_RANGE.  
Table(s) of " 48 - Item Field Journaling" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Item Definition The definition of an Item, which includes the Item Name and localizations and the collection of Item Fields. It also includes customizations and localizations of string resources for Item Names, and Item Field names.  
Item Field A place related to a specific item that stores or displays data.  
Item Field Definition Item Field Definition is an association between the Item Definition entity and the Field Definition entity. This association contains a distinct value for each of the intersection points between the two entities.  
Item Field Journal Holds a collection of field values for strings, each of which has create information for the current state of the field. Used when an Item has a multi-line edit field with the journaling feature turned on.  
Ticket Item A specialization of Item contained in a Workspace container. Workspace Items are tracked for resolution and closure, and have parties that are awaiting resolution and closure, and responsible parties that perform work against them.  
Table(s) of " 50 - Item Relationship" Subject Area
Name Definition UDP
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Item Definition The definition of an Item, which includes the Item Name and localizations and the collection of Item Fields. It also includes customizations and localizations of string resources for Item Names, and Item Field names.  
Item Relationship An Item Relationship is a relationship between instances contained in two Dynamic Object generated Tables. For example, the following. A Configuration Item Type ("Computer") related to an Workspace Item ("Incident"). An Address Book Entry ("Contact") related to another Address Book Entry ("Master Contact"). A Dynamic Link between an Incident in Workspace 1 ("Current Tickets") and Workspace 3 ("Archive Workspace"). A Dynamic Link between an Incident in Workspace 1 ("Current Tickets") and Workspace 5 ("Change Management"). There are no foreign keys defined.  
Item Relationship Definition The definition of a Relationship type within the Container Definition. This has important Configuration_Settings and Application Element Identifier values that clarify the meaning of the Relationship to programming code.  
Link Type Definition Version A definition version instance that describes the link properties. This design allows the link properties to be dynamically defined by configuration settings. That way links can add behavior in the future without affecting existing data.  
Table(s) of " 51 - Item Field Collection" Subject Area
Name Definition UDP
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Item Definition The definition of an Item, which includes the Item Name and localizations and the collection of Item Fields. It also includes customizations and localizations of string resources for Item Names, and Item Field names.  
Item Field A place related to a specific item that stores or displays data.  
Item Field Collection Holds an unordered collection of string field values for an Item. Used for picklists and multiple selections. All multiselect fields are stored here. This table can be implemented as a global system table, container-level table, or item-level table. Currently it is a system level table.  
Item Field Definition Item Field Definition is an association between the Item Definition entity and the Field Definition entity. This association contains a distinct value for each of the intersection points between the two entities.  
Table(s) of " 60 - Role" Subject Area
Name Definition UDP
Administrator CMDB Role An Administrator CMDB Role.  
Administrator Type The administrator type indicates whether the instance is a system role or not. This is important, since certain preferences cannot be changed on the system administrator role. Values include SYSTEM, WORKSPACE, AGENT.  
Agent Role A role that identifies a user as an agent, and also provides more specific information about the application behavior for the agent.  
Application Role A User Security Role within Footprints. This includes Agent Users and Customer Users, and includes Role settings at the Instance and Container level. Workspace Role and CMDB Role may both be implemented as Container Role. The Role has associated Rights and Permissions, and is a way of granting Roles and Permissions to a User. There is some conceptual overlap between the User Profile and the Role. The User is assigned a single Role as part of the User Profile, and a User can only have one System Role and one Workspace Role. The User Profile can have property settings that override the Role Settings.  
CMDB Role A role in the CMBD container  
Configuration Setting Value Configuration Setting Value is an association between the Configuration Setting entity and a container entity (i.e. User Profile, Role, and Definition). This association contains a distinct value for each of the intersection points between the two entities.  
Create Edit CMDB Role A Create Edit CMDB Role  
Custom CMDB Role A custom CMBD role.  
Customer Read Knowledge Base and Requests Role A built in role that identifies a user as a customer, and also provides more specific information about the application behavior for the customer. Generally it specifically grants authorization for certain functions.  
Customer Read Knowledge Base Role A built in role that identifies a user as a customer, and also provides more specific information about the application behavior for the customer. Generally it specifically grants authorization for certain functions.  
Customer Read/Submit Role A built in role that identifies a user as a customer, and also provides more specific information about the application behavior for the customer. Generally it specifically grants authorization for certain functions.  
Customer Read/Submit/Edit Role A built in role that identifies a user as a customer, and also provides more specific information about the application behavior for the customer. Generally it specifically grants authorization for certain functions.  
Customer Role A role that identifies a user as a customer, and also provides more specific information about the application behavior for the customer.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Subtype The subtype of the definition used as a discriminator for the class of definition. Each subtype will have different configuration settings and associated definitions. These include associated built-in field definitions for item subtypes. See the database view v_defn_subtype.  
Read Only CMDB Role A Read Only CMDB Role.  
Role Group (Not used, but referenced in Java code that must be removed before table deletion.) The role group will contain the roles that the user has for each of the workspaces that the user has access. The user will always have a role group even if the administrator chooses the Perl Footprints functionality.  
Role Group Role (Not used, but referenced in Java code that must be removed before table deletion.) an association table that resolves the many to many relationship between the Role Group and the Role entities.  
System Administrator Role A built in role that identifies a user as a system administrator, and also provides more specific information about the application behavior for the agent.  
Template Application Role The role template will function as a system preedefined role that can then be linked to workspace roles. Changes made to the system role will be refclected at the workspace level until the connection is broken. This system role's connection to the workspace role will be in effect until any change is made to the workspace role. It then gets copied over as a stand alone role. 12/8/2011 The Role Template will be implemented as a subtype of role.  
User Defined Agent Role A role that identifies a user as an agent in the FootPrints system, and also provides more specific information about the application behavior for the agent. This is configured by the user or is a copy of a pre-existing role.  
User Defined Customer Role A role that identifies a user as a customer in the FootPrints system, and also provides more specific information about the application behavior for the agent. This is configured by the user or is a copy of a pre-existing customer role.  
User Profile A container for Permissions and Settings (the composite parts are the associated Role and the User Preferences). The permissions for a User to access a particular container according to the capabilities defined. In most cases this will be more defined in a subcategory. Example: Shared User Profile This profile will be shared between multiple users that access the system with the same User ID.  
User Type Indicates whether this entity is of an agent type or a customer type. Also CMDB and GUEST.  
Workspace Administrator Role A built in role that identifies a user as a workspace administrator, and also provides more specific information about the application behavior for the agent.  
Table(s) of " 65 - Configuration Setting" Subject Area
Name Definition UDP
Application Role A User Security Role within Footprints. This includes Agent Users and Customer Users, and includes Role settings at the Instance and Container level. Workspace Role and CMDB Role may both be implemented as Container Role. The Role has associated Rights and Permissions, and is a way of granting Roles and Permissions to a User. There is some conceptual overlap between the User Profile and the Role. The User is assigned a single Role as part of the User Profile, and a User can only have one System Role and one Workspace Role. The User Profile can have property settings that override the Role Settings.  
Configuration Allowed Value A Configuration Allowed Value represents a member of a list of possible values.  
Configuration Area Type The lookup table for the high level area of Configuration. Values include APPLICATION BUSINESS, CORE, DEPLOYMENT, INFRASTRUCTURE, TOOL  
Configuration Category A Category of Configuration, which corresponds to the namespace and name of an object that defines and contains the associated Configuration Settings. The intent is that the Category provides both a logical and physical grouping of configuration data so that developers working on different components do not have to compete with each other to check out the same files to define configuration, and do not have to merge changes.  
Configuration Category Type The category of configuration lookup table. The category is like a namespace, it identifies where a setting is defined, and can be used to retrieve groups of settings via the API. The categories are defined in the Java code, but they are replicated to the Database for data integrity of the settings. They also serve to identify all possible categories, whether or not configuration settings are stored for them. Examples of the 70+ values include APPLICATION_HELP, BUSINESS_ADMIN_PIM_SYNCING, BUSINESS_ANALYTICS.  
Configuration List Type The type of list used for valid values and value lists of Configuration Settings. A single valued list, a list with X dimension, and a list with XY dimension are possible values. The Dimensions are used to construct the dynamic list based on dynamic key parts such as the Item Field Name, Item Status, Template Name, etc.  
Configuration Object A configuration object holds configuration settings but is not versioned and published like a definition and definition version.  
Configuration Setting A configuration variable that can be identified in programming code and which has an atomic value that affects the behavior of the application. Configuration values are either scalars, or are supported by value lists that also can be programmatically identified. They have localized labels and value choices, and are categorized to support organization and separation in programming namespaces and configuration screens. They support the concept of Built-In Values, Default Values, and Customized Values. Configuration should be supported by an Audit Trail, and should be able to determine if configuration has changed by level, category, and for the individual value in order to support cacheing. A configuration value has a definition to identify its usage, and a enum that identifies if a change will require a restart and what level of restart is required if the value changes. If a restart is required, both the currently running value and the value after restart should be accessible. This means that historical values of the Configuration Settings should be accessible.  
Configuration Setting Owner Type A lookup table for Owner Types of Configuration Setting Values. Values include: APPLICATION_USER, DEFINITION, IMPORTS, ROLE, SIMPLE_CONFIGURABLE_OBJECT, USER_PROFILE.  
Configuration Setting Value Configuration Setting Value is an association between the Configuration Setting entity and a container entity (i.e. User Profile, Role, and Definition). This association contains a distinct value for each of the intersection points between the two entities.  
Configuration Value List The Configuration Value List is a class that represents a set of values. It is meant to be inherited by a sub category with the structure of the set of values more concretely defined in the lower entity. Example: Configuration Dynamic List The Configuration Dynamic List inherits from the Configuration Value List but maps the values into a linear list so that the values can be identified by their position in the overall list of values.  
Default Configuration Setting Value    
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Version A version of a Definition with a version identifier that changes when data changes are made to the template. The definition version will suffice to store the current state of the FootPrints Configuration. A full copy of the definition tree is versioned when a container is published. See the database views v_defn_ver_active, v_cntnr_item_field.  
tmp_cfg_setting_val    
User Profile A container for Permissions and Settings (the composite parts are the associated Role and the User Preferences). The permissions for a User to access a particular container according to the capabilities defined. In most cases this will be more defined in a subcategory. Example: Shared User Profile This profile will be shared between multiple users that access the system with the same User ID.  
Value Type Code A lookup table for the data value type discriminator. Many tables share this discriminator for name value pair datatypes. Values include: B Boolean D Timestamp - Date + Time I Integer L Long R Real Number S String T Text - long string  
Table(s) of " 70 - User" Subject Area
Name Definition UDP
Agent a user authorized to use the FootPrints agent functions, which enable the agent to provide services to the customer. These include the ability to edit, escalate, and close tickets.  
Anonymous Customer a generic guest user account for users that do not have a unique identity in the system. Typically, this user has read only access to browse the knowledge base.  
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Application User Profile Link The link between the application user and the user profile.  
Customer a user authorized to use the FootPrints customer functions. This includes the ability to enter requests, and interact with requests as they are worked by Agents.  
Customer Login Type A lookup table for the customer login type. It identifies the method of authenticating customer users.  
License Type A lookup table for the type of FootPrints license. Must be secure from tampering.  
Shared Customer A shared customer does not have a unique identity at login, but uses a customer account with permissions according to this shared customer identity.  
Unique Customer A unique customer has a unique identity in the system either before identification or once authentication is performed.  
User Profile A container for Permissions and Settings (the composite parts are the associated Role and the User Preferences). The permissions for a User to access a particular container according to the capabilities defined. In most cases this will be more defined in a subcategory. Example: Shared User Profile This profile will be shared between multiple users that access the system with the same User ID.  
Table(s) of " 71 - Team" Subject Area
Name Definition UDP
Agent Team The list of Agent team members for a given team.  
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Assignment The current state and historical record of responsibility for a ticket. Regular assignments involve all parties that share responsibility for the ticket and are interested potentially in notifications. Primary Assignments additionally indicate that one and only one userid is responsible for the ticket for a span of time. A userid will have a span of Primary Assignment that is within the boundaries of his regular non-Primary Assignment. It is expected that an individual would have a single large span of time, possibly the life of the ticket, as a regular assignment. The individual may have zero, one, or more periods of PrimaryAssignment, stored as additional records.  
Assignment Type The assignment type indicates the notification level of the assignment. The current types consist of the following: Regular Assignment, CC Assignment, Primary Assignment .  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Team A team is a group of application users that can be used in Team level assignments.  
Team Email Notification Type When Issues are assigned to this team, all members of the team will Receive email notifications for all activity on the Issue: Always Only when no individual agents are assigned Never (Note that email to members will follow the workspace preferences for assignees defined on the Mail Preferences page. Also, any individual assignees will receive mail according to the workspace preferences regardless of what teams are assigned.)  
Team Item Association This contains the association between the team, the team assignment method and the item types. This is new functionality, as oposed to the current application that sets the assignment method directly on the team. The change was due to the new concept of multiple items in a workspace.  
Table(s) of " 80 - User Profile" Subject Area
Name Definition UDP
Agent Authentication Type An indicator to distinguish whether this profile is for an agent (including the workspace administartor) or a system administrator.  
Agent Profile Agent profiles are different from the customer profiles by the choice of the preference and role that is chosen.  
Anonymous Customer Profile A type of workspace user profile that is used for the Anonymous Customer feature. Customers have read only access to the Knowledgebase and Solutions via the customer portal. This is required, but can be an empty profile specifying no anonymous access.  
Application Role A User Security Role within Footprints. This includes Agent Users and Customer Users, and includes Role settings at the Instance and Container level. Workspace Role and CMDB Role may both be implemented as Container Role. The Role has associated Rights and Permissions, and is a way of granting Roles and Permissions to a User. There is some conceptual overlap between the User Profile and the Role. The User is assigned a single Role as part of the User Profile, and a User can only have one System Role and one Workspace Role. The User Profile can have property settings that override the Role Settings.  
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Application User Profile Link The link between the application user and the user profile.  
Auto Add Customer Profile A type of user profile that is used for the Auto Add Customer feature. An assignment of roles to workspaces that applies to a customer based on administrator assignment or criteria available from the Customer Authentication method (such as LDAP).  
Customer Authentication Type An indicator to distinguish whether this profile is for a unique customer profile (including the specific customer profile) or if it requires a special authentication technique (i.e. Anonymous Customer Profile has read only access to the knowledge base without having to be authenticated).  
Customer Profile Customer profiles are different from the agent profiles by the choice of the preference and role that is chosen.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Subtype The subtype of the definition used as a discriminator for the class of definition. Each subtype will have different configuration settings and associated definitions. These include associated built-in field definitions for item subtypes. See the database view v_defn_subtype.  
Definition Type The scope of the Template chosen from Instance, Container Group, Container, Item, Field.  
Role Group (Not used, but referenced in Java code that must be removed before table deletion.) The role group will contain the roles that the user has for each of the workspaces that the user has access. The user will always have a role group even if the administrator chooses the Perl Footprints functionality.  
Shared Customer Profile A user profile that is shared among a group of many users. It is used for shared customer authentication.  
Standard Agent Profile Permissions for a User to access a workspace according to the capabilities defined in the role. Also, configuration settings for the User in that workspace. This is no more than a default built in profile with the name of "Workspace Administrator" which can be changed later by the System Administrator.  
System Administration Profile Permissions for a User to access the FootPrints system according to the capabilities defined in the role. Also, configuration settings for the User.  
Unique Customer Profile A user profile for a single unique user. This profile can be created by an administrator for agents and customers. It also can be created via auto-add for customers only.  
User Profile A container for Permissions and Settings (the composite parts are the associated Role and the User Preferences). The permissions for a User to access a particular container according to the capabilities defined. In most cases this will be more defined in a subcategory. Example: Shared User Profile This profile will be shared between multiple users that access the system with the same User ID.  
User Type Indicates whether this entity is of an agent type or a customer type. Also CMDB and GUEST.  
Workspace Administration Profile Permissions for a User to access a workspace according to the capabilities defined in the role. Also, configuration settings for the User in that workspace. This is no more than a default built in profile with the name of "Workspace Administrator" which can be changed later by the System Administrator.  
Table(s) of " 96 - Email Notification" Subject Area
Name Definition UDP
Email Notification An email notification entry.  
Email Notification Attachment A link to an email attachment used for a notification email.  
Email Notification Type    
Table(s) of "101 - Data Access System" Subject Area
Name Definition UDP
Database Data Type The physical database types associated with a logical database type, used in DDL generation and also database DML access.  
Dynamic Column Constraint Specification A database constraint associated with a column.  
Dynamic Column Specification The list of column specifications for the Dynamic Table Specification. A column will be added or modified to align with the column specification.  
Dynamic Table Index A physical database index associated with a dynamically generated table. Different DBMS can have different number and types of these indexes. An index specification will be generated to the database.  
Dynamic Table Index Column The collection of index column specifications for an index.  
Dynamic Table Specification The table specifications for a physical database table associated with a dynamic item. A table will be created or altered to match this specification.  
Index Type The type of index. Values include: Primary, Unique, Full-Text, Regular, Reverse Key, Computed Reverse Key  
Logical Data Type A reference table for logical data type. The logical type maps to the database type in DDL generation.  
Target DBMS A lookup table for the Target Database Management System types. Values include: SQLServer, PostgreSQL, MySQL, Oracle.  
Table(s) of "102 - Data Access Scripts" Subject Area
Name Definition UDP
Container Definition The definition of a Container and the associated Configuration_Settings at the container level. This would include the collection of Item Definitions. The Container_Definition will have a Container Class identifier (Workspace, CMDB, Address Book) and may have specializations such as Workspace_Container_Definition. As much as possible, the Container Definition will suffice to describe any Container Type. There will be an association to a default Container Template, as well as more application specific Container Templates that can be chosen to initially populate the Container Template. There will also be Container Group Definition, and Container Group Templates. See the database views v_cntnr_defn, v_cntnr_defn_active.  
Definition Subtype The subtype of the definition used as a discriminator for the class of definition. Each subtype will have different configuration settings and associated definitions. These include associated built-in field definitions for item subtypes. See the database view v_defn_subtype.  
Dynamic Table Script A DDL script with substitution parameters that is executed by Data Access during the publish process. It contains data structures that must be created along with the tables that are generated for the dynamic item. Parameters may include: a) schema name b) item name prefix (derived from the item name, possibly exactly equal to it) c) container id d) item definition Id Generally, the scripts can be run post level (container, Item) creation using the Type Order and then the Script Order. If the script is changed in the directory then it is reloaded and gets a new identifier. This will cause it to re-run. Scripts must be fundamentally re-runnable.  
Dynamic Table Script History Records the successful execution of the Dynamic Table Script for a Container and/or Dynamic Item. This is used to control re-execution of scripts when the script version changes, or when a new script is added.  
Dynamic Table Script Type The type of Dynamic Table script, which is important for locating and re-running the script if need be. Examples include: Activity Data Mart Creation, Status Change Data Mart Creation. Generally, the scripts can be run post level (container, Item) creation using the Type Order and then the Script Order.  
Item Definition The definition of an Item, which includes the Item Name and localizations and the collection of Item Fields. It also includes customizations and localizations of string resources for Item Names, and Item Field names.  
Target DBMS A lookup table for the Target Database Management System types. Values include: SQLServer, PostgreSQL, MySQL, Oracle.  
Table(s) of "110 - Id Generation" Subject Area
Name Definition UDP
Id Generator A table of incremental ids used as table primary keys and object identifiers.  
Table(s) of "120 - Job Scheduler" Subject Area
Name Definition UDP
Job Configuration Detail The job configuration details that will be used to create jobs on the job scheduler.  
Job Scheduler Configuration An instance of job scheduler used for background job execution. Currently, the Quartz job scheduler is used. Usually one instance is sufficient.  
Table(s) of "140 - Workspace Calendar and Operation Schedule" Subject Area
Name Definition UDP
Agent a user authorized to use the FootPrints agent functions, which enable the agent to provide services to the customer. These include the ability to edit, escalate, and close tickets.  
Calendar Item The main calendar item table for the calender service. This table is populated and maintained by the Calendar Service API. It is not very suitable for database query outside of the API. The calendar item can be a personal or workspace calendar, or an appointment within the calendar. The calendar item can be synched using the iCal format.  
Calendar Schedule The association between the FootPrints calendar instance, and the implementation of the calendar schedule and appointments. This enables the reuse of a schedule between workspaces, but it does not require it.  
Calendar Type The type of Calendar, Workspace or Personal  
Schedule A personal or workspace calendar in Footprints. It is used to provide easy access to work hours and settings for appointment scheduling and metric reporting. The Calendar Service maintains the system of record tables for the schedule, but those tables are too difficult and time consuming to query for trend reporting.  
Schedule Actual Period Given the definitions of the standard work periods and holidays, these are the work periods. If overlapping shift work periods are defined, the time ranges here represent all shifts. This makes it easier to do math against working hours. The data in this table is time zone accurate for the schedule in the time zone of the workspace. Each minute within the begin and end date of the actual period must be a work minute. The master copy of the schedule is an iCal availability item stored in the Calendar service Calendar Item tables via the API. The data is redundantly and more conveniently stored so that the dashboard can use the information in the calculation of work hours elapsed.  
Time Zone Local Hour A bridge table that provides the UTC begin and End Hour datetimes for a local hour in an Olson timezone region. This table is used in Trend Reporting to give a high performance date calculation so that local hours and days can be used on graph axes and report heading with calculated totals. It is also used to load the summary tables using the local time dimension. High speed correct database-side time zone conversions are made by joining to this table.  
Time Zone Region A region of the world defined in the Olson time zone database. Only the entries actually used by a FootPrints instance will be stored. The localized name of the region is provided by the Java.Util.Timezone getDisplayName() method. Only the java class can be used to determine the time zone offset from GMT, which varies historically and in the future. See the Time Zone Local Hour table. Take aspirin as needed.  
Workspace Container A workspace is the principle architectural structure in Numara FootPrints for storing and tracking information. A Workspace is a separate sub-database or work area within the system with its own fields, forms, options, workflow, settings and users. Most of the behaviour of the Workspace comes from the Container Abstract class, and only things that are specific to the Workspace are implemented here. For Example, Current FootPrints allows a single CMDB to be referenced from a Workspace, and a single Address book, yet these are listed as features for improvement. So convenience methods that get and set Container Group Relationship might be appropriate.  
Table(s) of "141 - Calendar Appointments and Items" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Calendar Collection Item Holds calendar item collection relationships  
Calendar Container Item The Container Item that is related to the Calendar Appointment Item. For Workspaces, the Workspace default calendar will have appointments between Issue Assignee agents and the Customer Contact in order to resolve the Issue/Workspace Item. It is called Container Item in case there is a capability to relate the appointment to a CMDB item or Knowledgebase Item.  
Calendar Content Data Binary Large Objects (BLOBs) linked to an appointment item.  
Calendar Event Stamp A log of calendar service events. A stamp associates a related set of properties/attributes/methods to an Calendar Item. Event Stamp contains properties and apis relating to an iCal event.  
Calendar Field A name/value data field value for a calendar item. Calendar Item has a map of Attribute objects, indexed by a QName . An Attribute can be associated to a single Item . QName is a composite key that represents a qualified name (namespace and local name). There are several Attribute implementations (String, Binary, Integer, etc) that are used to store different types of values. The polymorphic mapping allows any number of and any mix of Attribute implementations to be associated to an item.  
Calendar Field Dictionary Value Stores dictionary values for a calendar item. May not be used.  
Calendar Field Multistring Value Stores multiple string values for a calendar item. May not be used.  
Calendar Item The main calendar item table for the calender service. This table is populated and maintained by the Calendar Service API. It is not very suitable for database query outside of the API. The calendar item can be a personal or workspace calendar, or an appointment within the calendar. The calendar item can be synched using the iCal format.  
Calendar Schedule The association between the FootPrints calendar instance, and the implementation of the calendar schedule and appointments. This enables the reuse of a schedule between workspaces, but it does not require it.  
Calendar Stamp Calendar Item has a set of Calendar Stamp objects. A Calendar stamp can be associated to a single Calendar Item . A stamp associates a related set of properties/attributes/methods to an Calendar Item. This is different from Calendar Attribute , which generally represents a single value. For example Event Stamp , contains properties and apis relating to an event and MessageStamp contains properties related to an email message. The stamp model allows items to be stamped and unstamped with these related sets of properties throughout its life-cycle.  
Calendar Subscription A Calendar Subscription contains a ticket key and a collection uid. It is a way to associate a collection that is not owned by the user to the user. The ticket key provides the necessary authentication to access the collection. Not used.  
Calendar Ticket This is unrelated and different than an ITSM ticket. See the Calendar Container Item table for ITSM tickets. A calendar ticket is an authorization object that grants some level of access to a calendar item and its descendents based on a unique ticket key. If a client has this key, then the client can gain access to the item and its descendants with the ticket key. May not be used in the FootPrints integration of calendaring code, because the calendar permissions are subordinate to the application security model.  
Calendar Ticket Privilege (Not used, but referenced in Java code that must be removed before table deletion.) A permission granted via a calendar ticket. May not be used in the FootPrints integration of calendaring code.  
Calendar Workspace The association of a workspace to a calendar. The workspace definition is associated with the Calendar Item that is the root entry for a recurring schedule item in the calender service tables. The workspace can have one default work schedule, and it may have a second shift.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Table(s) of "142 - Calendar Sync" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Calendar Item The main calendar item table for the calender service. This table is populated and maintained by the Calendar Service API. It is not very suitable for database query outside of the API. The calendar item can be a personal or workspace calendar, or an appointment within the calendar. The calendar item can be synched using the iCal format.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
PIM Appointment Information Information about calendar appointment synchronization with external calendars in a Personal Information Manager (PIM) such as a computer or phone calendar system.  
PIM Record Information Information about calendar appointment data (such as the workspace and ticket number) synchronization with external calendars in a Personal Information Manager (PIM) such as a computer or phone calendar system.  
Syncing Job Detail A table used to control syncing of Calendar Items with a computer or phone calendar system.  
Table(s) of "160 - Templating" Subject Area
Name Definition UDP
Application Element The identity and name of an element in the application implementation. An element can be one of many types, and can contain other elements. Example Application Elements include: a screen, a form, a dialog box, a text box, the Home Page, an Architecture Component, the Item Status field, the system values of the Item Status field. The Application Element is not the full implementation of the element, but is a key and nametag for the element. In many cases, a well-known algorithm can be used to locate the correct Application Element from the Application Element implementation. In other cases, an association to the Application Element Id must be recorded as part of the implementation.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Item Field Definition Item Field Definition is an association between the Item Definition entity and the Field Definition entity. This association contains a distinct value for each of the intersection points between the two entities.  
Template Attribute Definition A list of substitution attributes that can be used in an email template.  
Template Category A category of template, for example Email Template Definition.  
Template Content Type A lookup table for the type of template content. Values include: PLAINTEXT, HTML.  
Template Definition A template used for notifications or description content with substitution attributes.  
Template Definition Attribute The collection of template attributes associated with an instance of template definition.  
Template Group A group of templates.  
Table(s) of "170 - Knowledge Base" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Item Definition The definition of an Item, which includes the Item Name and localizations and the collection of Item Fields. It also includes customizations and localizations of string resources for Item Names, and Item Field names.  
Item Useful Detail An entry from an agent or customer classifying the quality and usefulness of an knowledgebase item or other item.  
Item Useful Summary A standalone table holding a summary count of the usefulness of an Item, computed by summing the detail.  
Solution Item An item that stores the solution information for a particular issue.  
Useful Code A lookup table for the useful code used in grading solutions. Examples include: I - Yes, but inaccurate, N - No, Y - Yes  
Table(s) of "190 - Password Reset" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Password Reset Question Questions, once they've been saved, can only be disabled (deactivated). Users who have already used those questions as part of their password reset registration will still be able to use the disabled questions.  
Password Reset Question Answer This table holds the users' answers to the system questions set by the administrators and the Id to the actual question. Users can answer questions even after the administrator has disabled them, as long as they were available when the user first registered the answer.  
Password Reset Registered Account This holds LDAP information.  
Table(s) of "210 - Audit Trail" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Audit Event Type A discriminator indicating the type of Audit Log Entry. Values include Audit Log Note, Audit Log Data Change, and Audit Log Data Version  
Audit Field Configuration Configuration values for the Audit that determine if a dynamic item should be audited. If only Dynamic Items are supported, then auditing may be something that cannot be turned off? Configuration Setting Values are used for the audit indicator. Within the Java code, automatic logging of classes can be turned on.  
Audit Log The main Audit Log table which uses a serial key to establish the order of Audit Trail entries as committed to the system. It has subordinate notes and data values which are considered unordered within the Audit Log. It is possible and desirable that multiple Audit Log entries would have the same transaction id.  
Audit Message Template A template message that is generated from the application with string substitution parameters. Only string variables are supported, because the eventual usage is just string presentation, and localization of the parameters is not supported.  
Audit Property Change A data change record indicating the Inserted or Updated value. Deleted Values are not recorded here.  
Audit Property Dimension A dimension table that holds every combination of Object Name, Property Name, Insert Update Delete Code, etc. that has been used in the Audit Trail. The purpose of this data design is to compress the repeated information in the Audit Trail, reducing data and speeding up indexed queries.  
Audit Transaction A record of the Principal and create time of the start of the commit time of a logical transaction. In many cases multiple Audit Log entries will use the same transaction.  
Item Field Definition Item Field Definition is an association between the Item Definition entity and the Field Definition entity. This association contains a distinct value for each of the intersection points between the two entities.  
System Component A lookup table for System Component. System Component is used to identify an area of the system. The primary use is when a component is updating system information with a transaction that is not initiated from a customer or agent.  
Value Type Code A lookup table for the data value type discriminator. Many tables share this discriminator for name value pair datatypes. Values include: B Boolean D Timestamp - Date + Time I Integer L Long R Real Number S String T Text - long string  
Table(s) of "230 - Rules" Subject Area
Name Definition UDP
Rule Usage Statistic A table that records statistics on rule usage.  
Table(s) of "240 - File Storage" Subject Area
Name Definition UDP
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
File Information The URI in this table is a unique string identifier that points to the file stored in the jackrabbit tables. This table is intended to be stand alone, and the application code will use the URI to actually do a lookup of the things that are attached to this file.  
Item Attachment The link between a file stored in jackrabbit and a container item.  
Table(s) of "250 - Apache Jack Rabbit JCR" Subject Area
Name Definition UDP
Default Binval Apache JackRabbit Content Repository Table. Access via JCR API.  
Default Bundle Apache JackRabbit Content Repository Table. Access via JCR API.  
Default Names Apache JackRabbit Content Repository Table. Access via JCR API.  
Default Refs Apache JackRabbit Content Repository Table. Access via JCR API.  
Security Binval Apache JackRabbit Content Repository Table. Access via JCR API.  
Security Bundle Apache JackRabbit Content Repository Table. Access via JCR API.  
Security Names Apache JackRabbit Content Repository Table. Access via JCR API.  
Security Refs Apache JackRabbit Content Repository Table. Access via JCR API.  
Table(s) of "262 - Import Items and Users" Subject Area
Name Definition UDP
Application Role A User Security Role within Footprints. This includes Agent Users and Customer Users, and includes Role settings at the Instance and Container level. Workspace Role and CMDB Role may both be implemented as Container Role. The Role has associated Rights and Permissions, and is a way of granting Roles and Permissions to a User. There is some conceptual overlap between the User Profile and the Role. The User is assigned a single Role as part of the User Profile, and a User can only have one System Role and one Workspace Role. The User Profile can have property settings that override the Role Settings.  
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Import    
Import Assignment The default assignment details for an Import Job.  
Import Definition Rule This table contains the information necessary for the application to do a conditional flow in the processing based on a text string (defn value).  
Import Error Result A list of errors that occured during the execution of the import.  
Import Execution Record A log of the execution of an import.  
Import Scheduled Task The import scheduled task is an association between the import and the scheduled task. Import specific information can be placed here. This was added when the scheduled task service was refactored to treat different schedule types with the same core code.  
Import User Workspace Role An association between an Import and a role.  
Scheduled Task A scheduled task that may include recurrence. This is all of the information needed to provide the scheduler with data to execute a task. It is used for Reports, but is intended to be generic for other scheduled tasks. This is the root object. Report specific information will go in an association table.  
Scheduled Task Notification The collection of notification recipients for the Scheduled Task. Having true references here will make it easier to maintain changes to user's information such as LDAP lookup, name changes, and user deletion or replacement use cases.  
Team A team is a group of application users that can be used in Team level assignments.  
Table(s) of "280 - Session and Locking" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Container Definition The definition of a Container and the associated Configuration_Settings at the container level. This would include the collection of Item Definitions. The Container_Definition will have a Container Class identifier (Workspace, CMDB, Address Book) and may have specializations such as Workspace_Container_Definition. As much as possible, the Container Definition will suffice to describe any Container Type. There will be an association to a default Container Template, as well as more application specific Container Templates that can be chosen to initially populate the Container Template. There will also be Container Group Definition, and Container Group Templates. See the database views v_cntnr_defn, v_cntnr_defn_active.  
Definition Lock A pessimitic lock of a definition. The lock helps implement single session editing. It is intended to be used for container definitions, but may be used by other definitions as well. This is not a table it is implemented with configuration settings.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Item Definition The definition of an Item, which includes the Item Name and localizations and the collection of Item Fields. It also includes customizations and localizations of string resources for Item Names, and Item Field names.  
Item Lock A pessimitic lock of a dynamic item instance. The lock helps implement single session editing of an ticket item , cmdb item, solution item, or any other item in the system.  
System Session A table that holds records for currently logged in application users. It is not used for component sessions, and the last accessed time is not updated because of performance issues.  
Table(s) of "290 - Security" Subject Area
Name Definition UDP
Security Policy    
Target Match    
Target Match Type A lookup table for the XACML target match type. Values include ACTION, RESOURCE, SUBJECT  
Table(s) of "300 - Ticket Data Mart" Subject Area
Name Definition UDP
:Item_Shortname Balance A summary table to make calculation of hourly balances fast. The date range is a range of whole hours that identifies the period during which the ticket is unclosed at the end of the whole hour. The flags can be summed, and they indicated further whether the ticket was activated or resolved at the end of the hour. This table is only used for unclosed balance metrics, and is designed to be joined with the TIME DIMENSION. Summary higher than hour is possible just by joining the higher granularity time dimension with the date range. Interpolation below the hour can be done for the first or last hour of the ranges using the hard date time in the TICKET EVENT SUMMARY table.  
:item_shortname Event Sum The fact table for Ticket Event Summary. The date and time of lifecycle events is stored here, along with calculations for the elapsed work hours and clock hours. There are separate calculations that begin at ticket creation and ticket activation. Resolution Time and Closed Time are two different events. The data in this table is maintained by data mart stored procedures. The name of the table is qualified by the container schema and includes the item short name. In addition to the built-in reporting, this table can be used in any dimensional BI tool to produce useful reports.  
:item_shortname Status The configuration settings for the item status and item lifecycle flags are maintained in this table for performance and history reasons. They are replicated here at the beginning of the data mart load process. Even a retired status will be in this table in order to support historical entries. :item_shortname will be substituted at publish.  
:item_shortname Transition A dimension table that records the details of a state transition, including the from and to state names, and the number of hops that are taken in the transition. This allows the precalculation of transitive states, so the transition from A to D via the path A>b>c>D would be recorded with a hopCt of 3.  
:item_shortname Transition Sum The fact table for state transitions. It holds all transitions, whether they are transitive or not. Transitions with a hop count of 1 are traditional transitions. There can be multiple cycles between two states for a single ticket. The Is Longest Hop can be used to identify the distinct longest paths. Work Hours and Clock Hours are calculated for all transitions. In addition to the built-in reporting, this table can be used in any dimensional BI tool to produce useful reports.  
Life Cycle Event This may come into play for the "First Contact" which is defined as: From Ursula Strahm (3/23/2012) First Call from the Executive Dashboard SRS: First Call.- The elapsed time between the From and To Event is 0 for the current Widget configuration. Examples of this are: i. The Issue is created in the “To Event” status. In this case, the Issue will always show in the First Call bucket. ii. Issue went from Created to “To Event” status outside of working hours and the Widget is configured to display “Work Hours” iii. Issue was Created in a “does not count for time” status and it stay in “does not count for time status” until it reached the to “To Event” and the Widget is configured to “only account for time spent in statuses included in the Issue Lifecycle Time Measurements”  
Previous Timing A table with a generic timestamp. The timestamp is used to give the timestamps of previous and second previous timestamps according to a step as specified in the choices the user has for comparison reports.  
Time Dimension A table with a generic timestamp. The timestamp is broken up into the specific pieces that the reports need to slice the information according to the user specifications.  
Time Zone Local Hour A bridge table that provides the UTC begin and End Hour datetimes for a local hour in an Olson timezone region. This table is used in Trend Reporting to give a high performance date calculation so that local hours and days can be used on graph axes and report heading with calculated totals. It is also used to load the summary tables using the local time dimension. High speed correct database-side time zone conversions are made by joining to this table.  
Time Zone Region A region of the world defined in the Olson time zone database. Only the entries actually used by a FootPrints instance will be stored. The localized name of the region is provided by the Java.Util.Timezone getDisplayName() method. Only the java class can be used to determine the time zone offset from GMT, which varies historically and in the future. See the Time Zone Local Hour table. Take aspirin as needed.  
Table(s) of "305 - Data Mart Load" Subject Area
Name Definition UDP
Audit Transaction A record of the Principal and create time of the start of the commit time of a logical transaction. In many cases multiple Audit Log entries will use the same transaction.  
Data Load Type A lookup table for the load type. Values include: FULL_LOAD Full deletion and re-adding of item data in the data mart INCR_LOAD Incremental deletion and re-adding of item data changed in the data mart.  
Data Mart Load History The history of data mart full and incremental loads. A full load is chunked into 10K row batches and is restartable and re-runnable. An incremental load processes all the activity since the previous run, which is assumed to be a short duration. This table holds an Audit Transaction Id reference to the Audit tables, which identify the last transaction processed. This table is designed to handle many types of data marts in multiple different containers. Currently, only two Ticket data marts are defined and run. If a new data mart fact table were defined, and stored procedures written for the full and incremental load, and all entries defined in the request tables, the data mart java process should manage the loading.  
Data Mart Load Lock A pessimistic lock table designed to prevent multiple loads from running against the same item. It is also used to count and throttle the number of simultaneous loads. Both the full and incremental loads drop and create tables so that faster non-logged database operations can be used (Select * INTO..., CREATE TABLE AS SELECT *...) The tables have item specific names, so they must single thread.  
Data Mart Request History A history table detailing the results of Data Mart request execution. It is also used to report the last run of the data mart on data mart reports. It may need to be purged from time to time as each request is logged even if no updates occur, and the frequency defaults to 10 minutes.  
Data Mart Request Queue The queue of active data mart load requests. An entry in this table will be picked up by the Java Data Mart manager and used to initiate and then maintain state of the request. The FootPrints UI controls data mart execution by creating and updating rows in this table. During upgrade, a request to update all data marts is added, and once the system comes up, Data Marts are updated in round robin fashion.  
Data Mart Request State A lookup table for the state of data mart request processing. Values include: PENDING, CANCEL_REQUEST, IN_PROCESS, DONE, FAILED, CANCELED.  
Data Mart Request Type A lookup table for the data mart load request type. Values include: FULL_LOAD, SCHEDULED_INC_LOAD, REQUESTED_INC_LOAD, FULL_LOAD_WITH_SCHD_UPDATE, REBUILD_ALL_DATAMARTS.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Table(s) of "310 - Auxiliary Tables" Subject Area
Name Definition UDP
Configuration File Repository Now during publishing, new dynamic HBM files will be stored in DB and fetched during session restart. Configuration files are also stored here. Design Notes: Identify all configuration files that application (Renoir) need for startup, and running. - Very important that we identify all the files that application is using today. This will help us with #5. a. Examples; Hibernate Configuration Files, and .Properties files. This does not include Spring Specific files. /application/src/main/resources/footprints-email-incoming.properties /business/src/main/resources/ical4j.properties /business/src/main/resources/assetcore-searchdevice-one-result-response.xml /business/src/main/resources/cosmo.version.txt /business/src/main/resources/jeclicense /business/src/main/resources/privkeystore /business/src/main/resources/timezone.alias /core/src/main/resources/mappings/*.* /core/src/main/resources/footprints-external-data.properties /core/src/main/conf/mysql/*.* /core/src/main/conf/oracle/*.* /core/src/main/conf/postgres/*.* /core/src/main/conf/sqlserver/*.* /infrastructure/src/main/resources/dbschema/*.* /infrastructure/src/main/conf/*.properties /web/src/main/conf/footprints-application-key.properties /build/src/main/deployment/log4j.properties 2. Where to store the configuration files (file data store) - This is a. Database of File Storage We plan doing this as more general file Repository interface that will allow us to select any specific implementation. But in our case we decided to use DB. 3. How to retrieve the files from file data store - Store them in blob format of DB and on demand transform into ByteArrayInputStream.  
External System Certificate Holds information about external system certificates.  
Table(s) of "320 - Report" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Version A version of a Definition with a version identifier that changes when data changes are made to the template. The definition version will suffice to store the current state of the FootPrints Configuration. A full copy of the definition tree is versioned when a container is published. See the database views v_defn_ver_active, v_cntnr_item_field.  
Recur Period Type The recurrence type. Choices include No Recurrance, Daily, Weekly, Monthly. This is an enum table that must be kept in sync with the application code. It explains the values for database queries only, and is not mapped for application access.  
Recur Schedule Type The Schedule type. Choices include IMMEDIATELY/SCHEDULED_ONCE/MANUAL_ONLY. This is an enum table that must be kept in sync with the application code. It explains the values for database queries only, and is not mapped for application access.  
Report A dashboard report definition. The report information is used with the Logi Analytics embedded reporting engine to render reports in the UI.  
Report Configuration Configuration data values associated with a dashboard report.  
Report Format Report Format such as PDF, EXCEL.  
Report Scheduled Task The report schedule is association between a report and the scheduled task. Report schedule specific information can also be placed here.  
Report Visibility Type A lookup table for report visibility type. Values include: Private, Shared.  
Schedule Task Run Statistic An individual statistic item for a run. This has a compound key so it can be mapped as a simple key value map.  
Scheduled Task A scheduled task that may include recurrence. This is all of the information needed to provide the scheduler with data to execute a task. It is used for Reports, but is intended to be generic for other scheduled tasks. This is the root object. Report specific information will go in an association table.  
Scheduled Task Notification The collection of notification recipients for the Scheduled Task. Having true references here will make it easier to maintain changes to user's information such as LDAP lookup, name changes, and user deletion or replacement use cases.  
Scheduled Task Run An instance of a run for a schedule task used for last run and previous run information. The run date and the status of the run are kept here. There is only one row per run, so the time of each status change is not known.  
Scheduled Task Statistic A named statistic that can be associated with a run. This allows free form name value statistics to be dynamically associated with the run.  
Scheduled Task Status The run status enumeration. Choices include Scheduled, In Progress, Completed, Completed with Errors.  
Scheduled Task Type A lookup table for the Scheduled Task Type that must be kept in sync with an enumeration in the Java. Values include: IMPORT_USER, MASSS_EMAIL, REPORT_SCHEDULE etc.  
Value Type Code A lookup table for the data value type discriminator. Many tables share this discriminator for name value pair datatypes. Values include: B Boolean D Timestamp - Date + Time I Integer L Long R Real Number S String T Text - long string  
Table(s) of "332 - Change Management Voting" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Vote The vote of a single approver on a single item.  
Vote History The history of votes in the case that voting changes.  
Voting Result The root voting result entry for a ticket item that requires voting approval.  
Table(s) of "340 - Search" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Version A version of a Definition with a version identifier that changes when data changes are made to the template. The definition version will suffice to store the current state of the FootPrints Configuration. A full copy of the definition tree is versioned when a container is published. See the database views v_defn_ver_active, v_cntnr_item_field.  
Logical Data Type A reference table for logical data type. The logical type maps to the database type in DDL generation.  
Search Column The number and order of search result columns returned when the search is executed.  
Search Condition The set of logical search conditions for the query. This is rendered into the actual SQL or filtering code.  
Search Constraint Type A lookup table for the various operators that can be used in a search condition. These are logical operators.  
Search Item Query Identifies the specific item definitions associated with the search query to aid in visibility and permissions.  
Search Query The root table for saved searches. It names the search, and indicates the visibility in various parts of the application. The search is saved in an implementation neutral format so that it can be used in many different layers.  
Search View The UI details of the default view of the saved search.  
Table(s) of "350 - Chat" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Broadcast Alert A broadcast alert message.  
Chat Channel A chat channel.  
Chat Channel Subscriber A subscriber to a chat channel.  
Chat Message A message broadcast on a chat channel.  
Chat Status A lookup table for chat status. Values include: AVAILABLE AWAY INVISIBLE_TO_CUSTOMERS INVISIBLE BUSY OFFLINE  
Chat User Status The current chat status of an agent or customer application user.  
Table(s) of "360 - Survey" Subject Area
Name Definition UDP
Definition Version A version of a Definition with a version identifier that changes when data changes are made to the template. The definition version will suffice to store the current state of the FootPrints Configuration. A full copy of the definition tree is versioned when a container is published. See the database views v_defn_ver_active, v_cntnr_item_field.  
Survey Sent A record of a survey sent to an application user.  
Table(s) of "370 - Deployment" Subject Area
Name Definition UDP
Deployment Update A log of updates to the database structure performed by the installation deployment. This log ensures that the correct scripts are run in order, and prevents the re-rerunning of scripts.  
Table(s) of "380 - Portal" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Console A console in the FootPrints 12 User Interface. A console can contain other consoles, for example the Home Page.  
Portal A portal in the FootPrints 12 User Interface.  
Portal Console The association between a Console and a Portal.  
Widget A widget. A root widget contains subordinate widgets. Widget Types include: ACTION_PANE ADMINISTRATION ALL_ITEMS CALENDAR CHART NEW_ITEM ROOT SAVED_SEARCH_WIDGET TAB_PANE URL WIDGET_PANE  
Table(s) of "390 - Business Process Template" Subject Area
Name Definition UDP
Business Process A business process is a set of containers, items, business rules, etc created from a business process template.  
Business Process Definition The collection of definitions associated with a business process that was created as a result of using a business process template to create a business process.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Subtype The subtype of the definition used as a discriminator for the class of definition. Each subtype will have different configuration settings and associated definitions. These include associated built-in field definitions for item subtypes. See the database view v_defn_subtype.  
Template Package A template specification that can be used to create an Item, Container, or Group of Containers.  
Template Package Type A lookup table for the Template Package Type. Values include: BUSINESS_PROCESS, CONTAINER, ITEM  
Table(s) of "400 - Asset Management" Subject Area
Name Definition UDP
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Pending Advanced Action An advanced action to be taken by integration with Asset Core.  
Table(s) of "410 - Publishing" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Publish Error An error that occurred during publishing.  
Publish Log A log of container and item publish actions. The definitions are used to create schema, table, view, stored procedure, and index objects in the relational database in order to store dynamically defined information.  
Table(s) of "430 - UI Component State" Subject Area
Name Definition UDP
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
UI Component State The EXTJS grid has the ability to store it's state allowing the preservation of grid layout properties. This table supports that. It might also be used for other UI control objects.  
Table(s) of "900 To Be Deleted" Subject Area
Name Definition UDP
Calendar Ticket Privilege (Not used, but referenced in Java code that must be removed before table deletion.) A permission granted via a calendar ticket. May not be used in the FootPrints integration of calendaring code.  
Localized Column (Not used, but referenced in Java code that must be removed before table deletion.) (Not currently used. Data localization is implemented in Configuration Setting Value. May be retired in the future). A Database Column name used in the Transparent Database Localization pattern. The data in the column is the original data for which a translated value can exist. In the case of English, this is a little strange because the English translation can be different than the original data.  
Localized Column Value (Not used, but referenced in Java code that must be removed before table deletion.) (Not currently used. Data localization is implemented in Configuration Setting Value. May be retired in the future). A data value from a column and row in a Localized table. The initial english value is obtained from the table, but may be modified for visual display purposes. The Primary Key identifier of the source table is used along with the table name to establish the row identity.  
Role Group (Not used, but referenced in Java code that must be removed before table deletion.) The role group will contain the roles that the user has for each of the workspaces that the user has access. The user will always have a role group even if the administrator chooses the Perl Footprints functionality.  
Role Group Role (Not used, but referenced in Java code that must be removed before table deletion.) an association table that resolves the many to many relationship between the Role Group and the Role entities.  
vt$item_fld_defn_NetworkAdapter    
vt$item_fld_NetworkAdapter$changes    
Table(s) of "901 - Tables Added" Subject Area
Name Definition UDP
Email Notification Type    
Table(s) of "902 - Columns Added" Subject Area
Name Definition UDP
Email Notification An email notification entry.  
Table(s) of "9930 - SaaS/MSP and Multi-Tenant" Subject Area
Name Definition UDP
Address Book Container A list of contacts that can be used to define customers. An address book can be used to define customers in a single workspace, and it can be shared among other workspaces. The fields of the Address Book can be customized. Data for the address book can be imported or exported. This address book can be associated with multiple workspaces. These relationships willl be shown inside the definition relationship tables.  
Application Role A User Security Role within Footprints. This includes Agent Users and Customer Users, and includes Role settings at the Instance and Container level. Workspace Role and CMDB Role may both be implemented as Container Role. The Role has associated Rights and Permissions, and is a way of granting Roles and Permissions to a User. There is some conceptual overlap between the User Profile and the Role. The User is assigned a single Role as part of the User Profile, and a User can only have one System Role and one Workspace Role. The User Profile can have property settings that override the Role Settings.  
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
CMDB Container A Configuration Management Database (CMDB) class of container. The CMDB container implements ITIL CMDB special features beyond the capabilities of the generic Container. The CMDB acts as a repository of Configuration Items and supports population, synchronization, and refererencing of items within it.  
Configuration Setting A configuration variable that can be identified in programming code and which has an atomic value that affects the behavior of the application. Configuration values are either scalars, or are supported by value lists that also can be programmatically identified. They have localized labels and value choices, and are categorized to support organization and separation in programming namespaces and configuration screens. They support the concept of Built-In Values, Default Values, and Customized Values. Configuration should be supported by an Audit Trail, and should be able to determine if configuration has changed by level, category, and for the individual value in order to support cacheing. A configuration value has a definition to identify its usage, and a enum that identifies if a change will require a restart and what level of restart is required if the value changes. If a restart is required, both the currently running value and the value after restart should be accessible. This means that historical values of the Configuration Settings should be accessible.  
Container The highest abstract level of Runtime Object. The Runtime object has a cooresponding definition that acts as a catalog of the Runtime Table. There is a hierarchy or composition concept in the Runtime Entity, but it may not be necessary to actually have navigable properties.  
Container Definition The definition of a Container and the associated Configuration_Settings at the container level. This would include the collection of Item Definitions. The Container_Definition will have a Container Class identifier (Workspace, CMDB, Address Book) and may have specializations such as Workspace_Container_Definition. As much as possible, the Container Definition will suffice to describe any Container Type. There will be an association to a default Container Template, as well as more application specific Container Templates that can be chosen to initially populate the Container Template. There will also be Container Group Definition, and Container Group Templates. See the database views v_cntnr_defn, v_cntnr_defn_active.  
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Type The scope of the Template chosen from Instance, Container Group, Container, Item, Field.  
Global Container A container for Global Items at the Instance level. This would be a place to store cross-container Item Relationships and User Roles information etc. It is possible that a Container would be stored in a separate Database Schema to provide namespace and security isolation. It is unclear if having an Instance Schema would suffice for instance-level tables, or whether the added semantics of an Instance Container is helpful. This Global Container is one of the Containers related to the Instance. It is unclear if the Instance itself is a subtype of Container. Perhaps a Container Storage class would be defined in the UML Domain model.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
System Environment The System Environment layer represents information about the hardware and software environment which hosts one or more Tenant Partitions. It would be used in Use Cases such as installation, moving Tenant Partitions, finding and connecting to an Tenant Partition, and performance monitoring and Tenant maintenance.  
System Manufacturer The System Manufacturer is the term given to the Independent Software Vendor for the FootPrints software. There is one instance of this entity. We need a term that does not include our company name or our product name so that renaming is not necessary in the event of changes. Numara Software is always the System Manufacturer, so we don't need very information much at the Instance level other than localizations. The System Manufacturer it is relevant to interfaces with the Manufacturer's other systems.  
System Provider The System Provider is a business entity that provides the hosted FootPrints application to Tenants in a multi-tenant sense. The System Provider is in the business of providing FootPrints application setup and configuration services so that the Tenant can access a live working system.  
Tenant The Tenant is an owner of one or more FootPrints Tenant Partitions that are configured and maintained by a System Provider. A customer that purchase FootPrints is a tenant in the sense of multi-tenant architecture, even if the Tenant does not use Numara SaaS hosting and installs and maintains the system themselves.  
Tenant Partition A partition of the FootPrints product that is isolated from other partitions in both data security and design definition and configuration. The Tenant Partition is the global layer above the Container which hosts the Definitions and the implementations of the Containers, and hosts system level information such as the Users and Roles. In current Footprints, this is the root folder and the installed schema for the database tables.  
Tenant Partition Definition The Root Node definition object that links to configuration settings and properties and the instance level, and also has the collection of Container Definitions below it.  
Workspace Activity Data Mart A summarized data store of Workspace Activity metric calculations used to support the Executive Dashboard Trend Reporting feature in an upcoming FootPrints release. There is a version of this for both the FootPrints Monet (Perl) and Renoir (Java) releases. The data mart tables conform to a very specific star-schema design and must be populated using history data and an incremental feed. The Star Schema structure must be able to use custom Workspace Item Fields, so the design must be coordinated with the implementation of Workspace Item.  
Workspace Container A workspace is the principle architectural structure in Numara FootPrints for storing and tracking information. A Workspace is a separate sub-database or work area within the system with its own fields, forms, options, workflow, settings and users. Most of the behaviour of the Workspace comes from the Container Abstract class, and only things that are specific to the Workspace are implemented here. For Example, Current FootPrints allows a single CMDB to be referenced from a Workspace, and a single Address book, yet these are listed as features for improvement. So convenience methods that get and set Container Group Relationship might be appropriate.  
Table(s) of "9931 - System Provider Subtypes" Subject Area
Name Definition UDP
BMC SaaS System Customer A customer that uses BMC SaaS to supply needed software functionality.  
BMC SaaS System Provider A BMC service provider that delivers footprints through the web. The BMC provider delivers service based on set license and delivery models that have purposely been made more flexible than the standard approach ot SaaS.  
External SaaS System Customer A customer that uses SaaS to supply needed software functionality.  
External SaaS System Provider An external service provider that delivers software services through the web. This provider delivers service based on set license and delivery models.  
Managed Service Provider A service provider that manages the day to day administration of software.  
Managed Service Provider Customer A customer that uses software services that are managed by a separate provider.  
On Site System Customer A customer that is co-located with the provider of software services.  
On Site System Provider A System Provider that is co-located with the customer.  
System Environment The System Environment layer represents information about the hardware and software environment which hosts one or more Tenant Partitions. It would be used in Use Cases such as installation, moving Tenant Partitions, finding and connecting to an Tenant Partition, and performance monitoring and Tenant maintenance.  
System Manufacturer The System Manufacturer is the term given to the Independent Software Vendor for the FootPrints software. There is one instance of this entity. We need a term that does not include our company name or our product name so that renaming is not necessary in the event of changes. Numara Software is always the System Manufacturer, so we don't need very information much at the Instance level other than localizations. The System Manufacturer it is relevant to interfaces with the Manufacturer's other systems.  
System Provider The System Provider is a business entity that provides the hosted FootPrints application to Tenants in a multi-tenant sense. The System Provider is in the business of providing FootPrints application setup and configuration services so that the Tenant can access a live working system.  
Tenant The Tenant is an owner of one or more FootPrints Tenant Partitions that are configured and maintained by a System Provider. A customer that purchase FootPrints is a tenant in the sense of multi-tenant architecture, even if the Tenant does not use Numara SaaS hosting and installs and maintains the system themselves.  
Tenant Partition A partition of the FootPrints product that is isolated from other partitions in both data security and design definition and configuration. The Tenant Partition is the global layer above the Container which hosts the Definitions and the implementations of the Containers, and hosts system level information such as the Users and Roles. In current Footprints, this is the root folder and the installed schema for the database tables.  
Table(s) of "99420 - Twitter" Subject Area
Name Definition UDP
External Feed Last Run The last run date and time of an external feed.(Table created but not yet in use)  
Last Run The last run of the twitter sync process.(Table created but not yet in use)  
Tweet A twitter tweet returned from a query.(Table created but not yet in use)  
Tweet Twitter Query The association between a twitter query and the tweets returned.(Table created but not yet in use)  
Twitter Query A full text query sent to Twitter to obtain a list of tweets. (Table created but not yet in use)  
Table(s) of "9955 - Preference" Subject Area
Name Definition UDP
Application Role A User Security Role within Footprints. This includes Agent Users and Customer Users, and includes Role settings at the Instance and Container level. Workspace Role and CMDB Role may both be implemented as Container Role. The Role has associated Rights and Permissions, and is a way of granting Roles and Permissions to a User. There is some conceptual overlap between the User Profile and the Role. The User is assigned a single Role as part of the User Profile, and a User can only have one System Role and one Workspace Role. The User Profile can have property settings that override the Role Settings.  
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Application User Profile Link The link between the application user and the user profile.  
Configuration Category A Category of Configuration, which corresponds to the namespace and name of an object that defines and contains the associated Configuration Settings. The intent is that the Category provides both a logical and physical grouping of configuration data so that developers working on different components do not have to compete with each other to check out the same files to define configuration, and do not have to merge changes.  
Configuration Setting A configuration variable that can be identified in programming code and which has an atomic value that affects the behavior of the application. Configuration values are either scalars, or are supported by value lists that also can be programmatically identified. They have localized labels and value choices, and are categorized to support organization and separation in programming namespaces and configuration screens. They support the concept of Built-In Values, Default Values, and Customized Values. Configuration should be supported by an Audit Trail, and should be able to determine if configuration has changed by level, category, and for the individual value in order to support cacheing. A configuration value has a definition to identify its usage, and a enum that identifies if a change will require a restart and what level of restart is required if the value changes. If a restart is required, both the currently running value and the value after restart should be accessible. This means that historical values of the Configuration Settings should be accessible.  
Configuration Setting Value Configuration Setting Value is an association between the Configuration Setting entity and a container entity (i.e. User Profile, Role, and Definition). This association contains a distinct value for each of the intersection points between the two entities.  
Template Application Role The role template will function as a system preedefined role that can then be linked to workspace roles. Changes made to the system role will be refclected at the workspace level until the connection is broken. This system role's connection to the workspace role will be in effect until any change is made to the workspace role. It then gets copied over as a stand alone role. 12/8/2011 The Role Template will be implemented as a subtype of role.  
User Profile A container for Permissions and Settings (the composite parts are the associated Role and the User Preferences). The permissions for a User to access a particular container according to the capabilities defined. In most cases this will be more defined in a subcategory. Example: Shared User Profile This profile will be shared between multiple users that access the system with the same User ID.  
Table(s) of "996 - Generated - SA Static" Subject Area
Name Definition UDP
Data Load Type A lookup table for the load type. Values include: FULL_LOAD Full deletion and re-adding of item data in the data mart INCR_LOAD Incremental deletion and re-adding of item data changed in the data mart.  
Data Mart Load History The history of data mart full and incremental loads. A full load is chunked into 10K row batches and is restartable and re-runnable. An incremental load processes all the activity since the previous run, which is assumed to be a short duration. This table holds an Audit Transaction Id reference to the Audit tables, which identify the last transaction processed. This table is designed to handle many types of data marts in multiple different containers. Currently, only two Ticket data marts are defined and run. If a new data mart fact table were defined, and stored procedures written for the full and incremental load, and all entries defined in the request tables, the data mart java process should manage the loading.  
Data Mart Load Lock A pessimistic lock table designed to prevent multiple loads from running against the same item. It is also used to count and throttle the number of simultaneous loads. Both the full and incremental loads drop and create tables so that faster non-logged database operations can be used (Select * INTO..., CREATE TABLE AS SELECT *...) The tables have item specific names, so they must single thread.  
Data Mart Request History A history table detailing the results of Data Mart request execution. It is also used to report the last run of the data mart on data mart reports. It may need to be purged from time to time as each request is logged even if no updates occur, and the frequency defaults to 10 minutes.  
Data Mart Request Queue The queue of active data mart load requests. An entry in this table will be picked up by the Java Data Mart manager and used to initiate and then maintain state of the request. The FootPrints UI controls data mart execution by creating and updating rows in this table. During upgrade, a request to update all data marts is added, and once the system comes up, Data Marts are updated in round robin fashion.  
Data Mart Request State A lookup table for the state of data mart request processing. Values include: PENDING, CANCEL_REQUEST, IN_PROCESS, DONE, FAILED, CANCELED.  
Data Mart Request Type A lookup table for the data mart load request type. Values include: FULL_LOAD, SCHEDULED_INC_LOAD, REQUESTED_INC_LOAD, FULL_LOAD_WITH_SCHD_UPDATE, REBUILD_ALL_DATAMARTS.  
Life Cycle Event This may come into play for the "First Contact" which is defined as: From Ursula Strahm (3/23/2012) First Call from the Executive Dashboard SRS: First Call.- The elapsed time between the From and To Event is 0 for the current Widget configuration. Examples of this are: i. The Issue is created in the “To Event” status. In this case, the Issue will always show in the First Call bucket. ii. Issue went from Created to “To Event” status outside of working hours and the Widget is configured to display “Work Hours” iii. Issue was Created in a “does not count for time” status and it stay in “does not count for time status” until it reached the to “To Event” and the Widget is configured to “only account for time spent in statuses included in the Issue Lifecycle Time Measurements”  
Previous Timing A table with a generic timestamp. The timestamp is used to give the timestamps of previous and second previous timestamps according to a step as specified in the choices the user has for comparison reports.  
Schedule Actual Period Given the definitions of the standard work periods and holidays, these are the work periods. If overlapping shift work periods are defined, the time ranges here represent all shifts. This makes it easier to do math against working hours. The data in this table is time zone accurate for the schedule in the time zone of the workspace. Each minute within the begin and end date of the actual period must be a work minute. The master copy of the schedule is an iCal availability item stored in the Calendar service Calendar Item tables via the API. The data is redundantly and more conveniently stored so that the dashboard can use the information in the calculation of work hours elapsed.  
Time Dimension A table with a generic timestamp. The timestamp is broken up into the specific pieces that the reports need to slice the information according to the user specifications.  
Time Zone Local Hour A bridge table that provides the UTC begin and End Hour datetimes for a local hour in an Olson timezone region. This table is used in Trend Reporting to give a high performance date calculation so that local hours and days can be used on graph axes and report heading with calculated totals. It is also used to load the summary tables using the local time dimension. High speed correct database-side time zone conversions are made by joining to this table.  
Table(s) of "997 - Generated - Container" Subject Area
Name Definition UDP
Assignment The current state and historical record of responsibility for a ticket. Regular assignments involve all parties that share responsibility for the ticket and are interested potentially in notifications. Primary Assignments additionally indicate that one and only one userid is responsible for the ticket for a span of time. A userid will have a span of Primary Assignment that is within the boundaries of his regular non-Primary Assignment. It is expected that an individual would have a single large span of time, possibly the life of the ticket, as a regular assignment. The individual may have zero, one, or more periods of PrimaryAssignment, stored as additional records.  
Item Field Collection Holds an unordered collection of string field values for an Item. Used for picklists and multiple selections. All multiselect fields are stored here. This table can be implemented as a global system table, container-level table, or item-level table. Currently it is a system level table.  
Item Field Journal Holds a collection of field values for strings, each of which has create information for the current state of the field. Used when an Item has a multi-line edit field with the journaling feature turned on.  
Table(s) of "998 - Generated - Dynamic" Subject Area
Name Definition UDP
:Item_Shortname Balance A summary table to make calculation of hourly balances fast. The date range is a range of whole hours that identifies the period during which the ticket is unclosed at the end of the whole hour. The flags can be summed, and they indicated further whether the ticket was activated or resolved at the end of the hour. This table is only used for unclosed balance metrics, and is designed to be joined with the TIME DIMENSION. Summary higher than hour is possible just by joining the higher granularity time dimension with the date range. Interpolation below the hour can be done for the first or last hour of the ranges using the hard date time in the TICKET EVENT SUMMARY table.  
:item_shortname Event Sum The fact table for Ticket Event Summary. The date and time of lifecycle events is stored here, along with calculations for the elapsed work hours and clock hours. There are separate calculations that begin at ticket creation and ticket activation. Resolution Time and Closed Time are two different events. The data in this table is maintained by data mart stored procedures. The name of the table is qualified by the container schema and includes the item short name. In addition to the built-in reporting, this table can be used in any dimensional BI tool to produce useful reports.  
:item_shortname Status The configuration settings for the item status and item lifecycle flags are maintained in this table for performance and history reasons. They are replicated here at the beginning of the data mart load process. Even a retired status will be in this table in order to support historical entries. :item_shortname will be substituted at publish.  
:item_shortname Transition A dimension table that records the details of a state transition, including the from and to state names, and the number of hops that are taken in the transition. This allows the precalculation of transitive states, so the transition from A to D via the path A>b>c>D would be recorded with a hopCt of 3.  
:item_shortname Transition Sum The fact table for state transitions. It holds all transitions, whether they are transitive or not. Transitions with a hop count of 1 are traditional transitions. There can be multiple cycles between two states for a single ticket. The Is Longest Hop can be used to identify the distinct longest paths. Work Hours and Clock Hours are calculated for all transitions. In addition to the built-in reporting, this table can be used in any dimensional BI tool to produce useful reports.  
Table(s) of "999 - Generated - System Level" Subject Area
Name Definition UDP
Administrator Type The administrator type indicates whether the instance is a system role or not. This is important, since certain preferences cannot be changed on the system administrator role. Values include SYSTEM, WORKSPACE, AGENT.  
Agent Authentication Type An indicator to distinguish whether this profile is for an agent (including the workspace administartor) or a system administrator.  
Agent Team The list of Agent team members for a given team.  
Application Element The identity and name of an element in the application implementation. An element can be one of many types, and can contain other elements. Example Application Elements include: a screen, a form, a dialog box, a text box, the Home Page, an Architecture Component, the Item Status field, the system values of the Item Status field. The Application Element is not the full implementation of the element, but is a key and nametag for the element. In many cases, a well-known algorithm can be used to locate the correct Application Element from the Application Element implementation. In other cases, an association to the Application Element Id must be recorded as part of the implementation.  
Application Element Namespace A string that best describes the namespace of the Element Name. For example "FootPrints.UserInterface.Item.MaintenanceForm". These are maintained in a picklist so that consistency can be managed. There may be a hierarchy in the name, but the components of the hierarchy will not be enforced or maintained.  
Application Element String A string resource that is needed in English and other translations. The string is associated with an Application Element and a Usage, for example the Label , the Tooltip, etc.  
Application Element String Usage The collection of String Usage types that are valid for use with an Application Element type. This is used for Internal systems to validate entry and control the edit interface.  
Application Element Type The class subtype indicator for Application Element, used in an inheritance pattern. Types include UI Element, Error Code, Localized Column, etc. There may need to be further subtypes, for example of UI Element. The subtypes will share common Finder methods and key construction methods and metadata for identification.  
Application Role A User Security Role within Footprints. This includes Agent Users and Customer Users, and includes Role settings at the Instance and Container level. Workspace Role and CMDB Role may both be implemented as Container Role. The Role has associated Rights and Permissions, and is a way of granting Roles and Permissions to a User. There is some conceptual overlap between the User Profile and the Role. The User is assigned a single Role as part of the User Profile, and a User can only have one System Role and one Workspace Role. The User Profile can have property settings that override the Role Settings.  
Application User A user authorized to use the FootPrints system. The user is either a Customer User or an Agent User. The application user holds the minimum information needed to identify the user and associate the user with a user profile, where user settings are stored. A contact is not necessarily an application user. An application user entry is required in order for the user to access any online functions.  
Application User Profile Link The link between the application user and the user profile.  
Assignment Type The assignment type indicates the notification level of the assignment. The current types consist of the following: Regular Assignment, CC Assignment, Primary Assignment .  
Audit Event Type A discriminator indicating the type of Audit Log Entry. Values include Audit Log Note, Audit Log Data Change, and Audit Log Data Version  
Audit Field Configuration Configuration values for the Audit that determine if a dynamic item should be audited. If only Dynamic Items are supported, then auditing may be something that cannot be turned off? Configuration Setting Values are used for the audit indicator. Within the Java code, automatic logging of classes can be turned on.  
Audit Log The main Audit Log table which uses a serial key to establish the order of Audit Trail entries as committed to the system. It has subordinate notes and data values which are considered unordered within the Audit Log. It is possible and desirable that multiple Audit Log entries would have the same transaction id.  
Audit Message Template A template message that is generated from the application with string substitution parameters. Only string variables are supported, because the eventual usage is just string presentation, and localization of the parameters is not supported.  
Audit Property Change A data change record indicating the Inserted or Updated value. Deleted Values are not recorded here.  
Audit Property Dimension A dimension table that holds every combination of Object Name, Property Name, Insert Update Delete Code, etc. that has been used in the Audit Trail. The purpose of this data design is to compress the repeated information in the Audit Trail, reducing data and speeding up indexed queries.  
Audit Transaction A record of the Principal and create time of the start of the commit time of a logical transaction. In many cases multiple Audit Log entries will use the same transaction.  
Broadcast Alert A broadcast alert message.  
Built_in_level    
Business Process A business process is a set of containers, items, business rules, etc created from a business process template.  
Business Process Definition The collection of definitions associated with a business process that was created as a result of using a business process template to create a business process.  
Calendar Collection Item Holds calendar item collection relationships  
Calendar Container Item The Container Item that is related to the Calendar Appointment Item. For Workspaces, the Workspace default calendar will have appointments between Issue Assignee agents and the Customer Contact in order to resolve the Issue/Workspace Item. It is called Container Item in case there is a capability to relate the appointment to a CMDB item or Knowledgebase Item.  
Calendar Content Data Binary Large Objects (BLOBs) linked to an appointment item.  
Calendar Event Stamp A log of calendar service events. A stamp associates a related set of properties/attributes/methods to an Calendar Item. Event Stamp contains properties and apis relating to an iCal event.  
Calendar Field A name/value data field value for a calendar item. Calendar Item has a map of Attribute objects, indexed by a QName . An Attribute can be associated to a single Item . QName is a composite key that represents a qualified name (namespace and local name). There are several Attribute implementations (String, Binary, Integer, etc) that are used to store different types of values. The polymorphic mapping allows any number of and any mix of Attribute implementations to be associated to an item.  
Calendar Field Dictionary Value Stores dictionary values for a calendar item. May not be used.  
Calendar Field Multistring Value Stores multiple string values for a calendar item. May not be used.  
Calendar Item The main calendar item table for the calender service. This table is populated and maintained by the Calendar Service API. It is not very suitable for database query outside of the API. The calendar item can be a personal or workspace calendar, or an appointment within the calendar. The calendar item can be synched using the iCal format.  
Calendar Schedule The association between the FootPrints calendar instance, and the implementation of the calendar schedule and appointments. This enables the reuse of a schedule between workspaces, but it does not require it.  
Calendar Stamp Calendar Item has a set of Calendar Stamp objects. A Calendar stamp can be associated to a single Calendar Item . A stamp associates a related set of properties/attributes/methods to an Calendar Item. This is different from Calendar Attribute , which generally represents a single value. For example Event Stamp , contains properties and apis relating to an event and MessageStamp contains properties related to an email message. The stamp model allows items to be stamped and unstamped with these related sets of properties throughout its life-cycle.  
Calendar Subscription A Calendar Subscription contains a ticket key and a collection uid. It is a way to associate a collection that is not owned by the user to the user. The ticket key provides the necessary authentication to access the collection. Not used.  
Calendar Ticket This is unrelated and different than an ITSM ticket. See the Calendar Container Item table for ITSM tickets. A calendar ticket is an authorization object that grants some level of access to a calendar item and its descendents based on a unique ticket key. If a client has this key, then the client can gain access to the item and its descendants with the ticket key. May not be used in the FootPrints integration of calendaring code, because the calendar permissions are subordinate to the application security model.  
Calendar Ticket Privilege (Not used, but referenced in Java code that must be removed before table deletion.) A permission granted via a calendar ticket. May not be used in the FootPrints integration of calendaring code.  
Calendar Type The type of Calendar, Workspace or Personal  
Calendar Workspace The association of a workspace to a calendar. The workspace definition is associated with the Calendar Item that is the root entry for a recurring schedule item in the calender service tables. The workspace can have one default work schedule, and it may have a second shift.  
Chat Channel A chat channel.  
Chat Channel Subscriber A subscriber to a chat channel.  
Chat Message A message broadcast on a chat channel.  
Chat Status A lookup table for chat status. Values include: AVAILABLE AWAY INVISIBLE_TO_CUSTOMERS INVISIBLE BUSY OFFLINE  
Chat User Status The current chat status of an agent or customer application user.  
Configuration Allowed Value A Configuration Allowed Value represents a member of a list of possible values.  
Configuration Area Type The lookup table for the high level area of Configuration. Values include APPLICATION BUSINESS, CORE, DEPLOYMENT, INFRASTRUCTURE, TOOL  
Configuration Category A Category of Configuration, which corresponds to the namespace and name of an object that defines and contains the associated Configuration Settings. The intent is that the Category provides both a logical and physical grouping of configuration data so that developers working on different components do not have to compete with each other to check out the same files to define configuration, and do not have to merge changes.  
Configuration Category Type The category of configuration lookup table. The category is like a namespace, it identifies where a setting is defined, and can be used to retrieve groups of settings via the API. The categories are defined in the Java code, but they are replicated to the Database for data integrity of the settings. They also serve to identify all possible categories, whether or not configuration settings are stored for them. Examples of the 70+ values include APPLICATION_HELP, BUSINESS_ADMIN_PIM_SYNCING, BUSINESS_ANALYTICS.  
Configuration File Repository Now during publishing, new dynamic HBM files will be stored in DB and fetched during session restart. Configuration files are also stored here. Design Notes: Identify all configuration files that application (Renoir) need for startup, and running. - Very important that we identify all the files that application is using today. This will help us with #5. a. Examples; Hibernate Configuration Files, and .Properties files. This does not include Spring Specific files. /application/src/main/resources/footprints-email-incoming.properties /business/src/main/resources/ical4j.properties /business/src/main/resources/assetcore-searchdevice-one-result-response.xml /business/src/main/resources/cosmo.version.txt /business/src/main/resources/jeclicense /business/src/main/resources/privkeystore /business/src/main/resources/timezone.alias /core/src/main/resources/mappings/*.* /core/src/main/resources/footprints-external-data.properties /core/src/main/conf/mysql/*.* /core/src/main/conf/oracle/*.* /core/src/main/conf/postgres/*.* /core/src/main/conf/sqlserver/*.* /infrastructure/src/main/resources/dbschema/*.* /infrastructure/src/main/conf/*.properties /web/src/main/conf/footprints-application-key.properties /build/src/main/deployment/log4j.properties 2. Where to store the configuration files (file data store) - This is a. Database of File Storage We plan doing this as more general file Repository interface that will allow us to select any specific implementation. But in our case we decided to use DB. 3. How to retrieve the files from file data store - Store them in blob format of DB and on demand transform into ByteArrayInputStream.  
Configuration List Type The type of list used for valid values and value lists of Configuration Settings. A single valued list, a list with X dimension, and a list with XY dimension are possible values. The Dimensions are used to construct the dynamic list based on dynamic key parts such as the Item Field Name, Item Status, Template Name, etc.  
Configuration Object A configuration object holds configuration settings but is not versioned and published like a definition and definition version.  
Configuration Setting A configuration variable that can be identified in programming code and which has an atomic value that affects the behavior of the application. Configuration values are either scalars, or are supported by value lists that also can be programmatically identified. They have localized labels and value choices, and are categorized to support organization and separation in programming namespaces and configuration screens. They support the concept of Built-In Values, Default Values, and Customized Values. Configuration should be supported by an Audit Trail, and should be able to determine if configuration has changed by level, category, and for the individual value in order to support cacheing. A configuration value has a definition to identify its usage, and a enum that identifies if a change will require a restart and what level of restart is required if the value changes. If a restart is required, both the currently running value and the value after restart should be accessible. This means that historical values of the Configuration Settings should be accessible.  
Configuration Setting Owner Type A lookup table for Owner Types of Configuration Setting Values. Values include: APPLICATION_USER, DEFINITION, IMPORTS, ROLE, SIMPLE_CONFIGURABLE_OBJECT, USER_PROFILE.  
Configuration Setting Value Configuration Setting Value is an association between the Configuration Setting entity and a container entity (i.e. User Profile, Role, and Definition). This association contains a distinct value for each of the intersection points between the two entities.  
Configuration Value List The Configuration Value List is a class that represents a set of values. It is meant to be inherited by a sub category with the structure of the set of values more concretely defined in the lower entity. Example: Configuration Dynamic List The Configuration Dynamic List inherits from the Configuration Value List but maps the values into a linear list so that the values can be identified by their position in the overall list of values.  
Console A console in the FootPrints 12 User Interface. A console can contain other consoles, for example the Home Page.  
Customer Authentication Type An indicator to distinguish whether this profile is for a unique customer profile (including the specific customer profile) or if it requires a special authentication technique (i.e. Anonymous Customer Profile has read only access to the knowledge base without having to be authenticated).  
Customer Login Type A lookup table for the customer login type. It identifies the method of authenticating customer users.  
Database Data Type The physical database types associated with a logical database type, used in DDL generation and also database DML access.  
Default Configuration Setting Value    
Definition A definition holds the structural and behavioral information needed for an application element that is configuarable by the system designer and/or the end user at definition time. Current Footrpints uses a combination of directories, files, tables, and programming code to represent this information. The new FootPrints will provide all of the same information within the definition. The definition can be persisted in a structure that is isolated at the Instance Level. The data for the definition will be stored as Configuration Settings associated with the Definition Version. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Relationship All relationships between definitions are stored in this table in order to make the model able to handle new relationships without changes to tables.  
Definition Relationship Type The Definition Relationship Type entity depicts a set of relationships that a Definition instance in the system can have with another Definition instance(i.e. parent_child indicatesto a hierarchical relationship) . This specific relationship is further clarified when combined with the Definition Relationship Member Type entity.  
Definition Subtype The subtype of the definition used as a discriminator for the class of definition. Each subtype will have different configuration settings and associated definitions. These include associated built-in field definitions for item subtypes. See the database view v_defn_subtype.  
Definition Type The scope of the Template chosen from Instance, Container Group, Container, Item, Field.  
Definition Version A version of a Definition with a version identifier that changes when data changes are made to the template. The definition version will suffice to store the current state of the FootPrints Configuration. A full copy of the definition tree is versioned when a container is published. See the database views v_defn_ver_active, v_cntnr_item_field.  
Definition Version Status The attribute of the definition version entity that tells what state the definition instance is in. The word "Published" in this context means a change being commited or made ready for runtime. Currently the available status options are: Draft Dirty - the entity instance is being created or changed, but has not yet been published, so is not yet valid for runtime. Published Active - the entity instance has been published, and is available for runtime. Published Outdated - the entity instance has been previously published, but has been replaced with a newer version of itself in runtime.  
Deployment Update A log of updates to the database structure performed by the installation deployment. This log ensures that the correct scripts are run in order, and prevents the re-rerunning of scripts.  
Dynamic Column Constraint Specification A database constraint associated with a column.  
Dynamic Column Specification The list of column specifications for the Dynamic Table Specification. A column will be added or modified to align with the column specification.  
Dynamic Table Index A physical database index associated with a dynamically generated table. Different DBMS can have different number and types of these indexes. An index specification will be generated to the database.  
Dynamic Table Index Column The collection of index column specifications for an index.  
Dynamic Table Script A DDL script with substitution parameters that is executed by Data Access during the publish process. It contains data structures that must be created along with the tables that are generated for the dynamic item. Parameters may include: a) schema name b) item name prefix (derived from the item name, possibly exactly equal to it) c) container id d) item definition Id Generally, the scripts can be run post level (container, Item) creation using the Type Order and then the Script Order. If the script is changed in the directory then it is reloaded and gets a new identifier. This will cause it to re-run. Scripts must be fundamentally re-runnable.  
Dynamic Table Script History Records the successful execution of the Dynamic Table Script for a Container and/or Dynamic Item. This is used to control re-execution of scripts when the script version changes, or when a new script is added.  
Dynamic Table Script Type The type of Dynamic Table script, which is important for locating and re-running the script if need be. Examples include: Activity Data Mart Creation, Status Change Data Mart Creation. Generally, the scripts can be run post level (container, Item) creation using the Type Order and then the Script Order.  
Dynamic Table Specification The table specifications for a physical database table associated with a dynamic item. A table will be created or altered to match this specification.  
Email Notification An email notification entry.  
Email Notification Attachment A link to an email attachment used for a notification email.  
External Feed Last Run The last run date and time of an external feed.(Table created but not yet in use)  
External System Certificate Holds information about external system certificates.  
Field Datatype The type of field (i.e. a custom field that the users have defined).  
Field Definition The definition of a Field, including persistence information and default UI information. Some fields will be defined as database fields, and other fields will be defined as calculated fields. The field will have data types and associations to business rule definitions. Some fields are built-in, some are defaults from templates, and some are custom fields. See the database view v_cntnr_item_field.  
File Information The URI in this table is a unique string identifier that points to the file stored in the jackrabbit tables. This table is intended to be stand alone, and the application code will use the URI to actually do a lookup of the things that are attached to this file.  
Id Generator A table of incremental ids used as table primary keys and object identifiers.  
Import    
Import Definition Rule This table contains the information necessary for the application to do a conditional flow in the processing based on a text string (defn value).  
Import Error Result A list of errors that occured during the execution of the import.  
Import Execution Record A log of the execution of an import.  
Import User Workspace Role An association between an Import and a role.  
Index Type The type of index. Values include: Primary, Unique, Full-Text, Regular, Reverse Key, Computed Reverse Key  
Internal Identifier Type There are identifiers that are created by Numara Software that are used internally to uniquely identify elements. These are serial ids that will never change. There are also types of serial ids that may be used for configuration data, picklist data, etc. This Type provides a different domain of values for those keys. There may also be different domains of values provided by our partners or Professional Services. Primarily, Engineering will provide internal ids.  
Item Attachment The link between a file stored in jackrabbit and a container item.  
Item Definition The definition of an Item, which includes the Item Name and localizations and the collection of Item Fields. It also includes customizations and localizations of string resources for Item Names, and Item Field names.  
Item Field Definition Item Field Definition is an association between the Item Definition entity and the Field Definition entity. This association contains a distinct value for each of the intersection points between the two entities.  
Item Relationship A Relationship among Items of various types. The Relationship Members include any type of Item. Current FP has many different relationship tables for CI relationships, Issue Relationships (Global/Local) and (Static/Dynamic), Quick Issues, Address Book Entries, CI Issue Links. The Relationship has a collection of 1 or more members vs. having a strict binary definition.  
Item Relationship An Item Relationship is a relationship between instances contained in two Dynamic Object generated Tables. For example, the following. A Configuration Item Type ("Computer") related to an Workspace Item ("Incident"). An Address Book Entry ("Contact") related to another Address Book Entry ("Master Contact"). A Dynamic Link between an Incident in Workspace 1 ("Current Tickets") and Workspace 3 ("Archive Workspace"). A Dynamic Link between an Incident in Workspace 1 ("Current Tickets") and Workspace 5 ("Change Management"). There are no foreign keys defined.  
Item Useful Detail An entry from an agent or customer classifying the quality and usefulness of an knowledgebase item or other item.  
Item Useful Summary A standalone table holding a summary count of the usefulness of an Item, computed by summing the detail.  
Job Configuration Detail The job configuration details that will be used to create jobs on the job scheduler.  
Job Scheduler Configuration An instance of job scheduler used for background job execution. Currently, the Quartz job scheduler is used. Usually one instance is sufficient.  
Last Run The last run of the twitter sync process.(Table created but not yet in use)  
License Type A lookup table for the type of FootPrints license. Must be secure from tampering.  
Locale A language and locale used to identify a specific dialect. It is used to determine variable forms of words, idioms, numeric format, date format, images, colors, etc. "en-US" for example is United States English, "es-LA" for Latin American Spanish.  
Localized Column (Not used, but referenced in Java code that must be removed before table deletion.) (Not currently used. Data localization is implemented in Configuration Setting Value. May be retired in the future). A Database Column name used in the Transparent Database Localization pattern. The data in the column is the original data for which a translated value can exist. In the case of English, this is a little strange because the English translation can be different than the original data.  
Localized Column Value (Not used, but referenced in Java code that must be removed before table deletion.) (Not currently used. Data localization is implemented in Configuration Setting Value. May be retired in the future). A data value from a column and row in a Localized table. The initial english value is obtained from the table, but may be modified for visual display purposes. The Primary Key identifier of the source table is used along with the table name to establish the row identity.  
Logical Data Type A reference table for logical data type. The logical type maps to the database type in DDL generation.  
Part Of Speech A picklist table for the English Part of speech that best describes the resource. e.g. Verb, Noun, Sentence  
Password Reset Question Questions, once they've been saved, can only be disabled (deactivated). Users who have already used those questions as part of their password reset registration will still be able to use the disabled questions.  
Password Reset Question Answer This table holds the users' answers to the system questions set by the administrators and the Id to the actual question. Users can answer questions even after the administrator has disabled them, as long as they were available when the user first registered the answer.  
Password Reset Registered Account This holds LDAP information.  
Pending Advanced Action An advanced action to be taken by integration with Asset Core.  
PIM Appointment Information Information about calendar appointment synchronization with external calendars in a Personal Information Manager (PIM) such as a computer or phone calendar system.  
PIM Record Information Information about calendar appointment data (such as the workspace and ticket number) synchronization with external calendars in a Personal Information Manager (PIM) such as a computer or phone calendar system.  
Portal A portal in the FootPrints 12 User Interface.  
Portal Console The association between a Console and a Portal.  
Product Release The information describing the particulars of the release of the product (i.e. date).  
Publish Error An error that occurred during publishing.  
Publish Log A log of container and item publish actions. The definitions are used to create schema, table, view, stored procedure, and index objects in the relational database in order to store dynamically defined information.  
Report A dashboard report definition. The report information is used with the Logi Analytics embedded reporting engine to render reports in the UI.  
Report Configuration Configuration data values associated with a dashboard report.  
Report Visibility Type A lookup table for report visibility type. Values include: Private, Shared.  
Role Container This represents the association (link) between the role and the container. Example: Role and Workspace If the Workspace Administrator role has an association with the Service Desk workspace, this would contain the identification information for both showing this link.  
Role Group (Not used, but referenced in Java code that must be removed before table deletion.) The role group will contain the roles that the user has for each of the workspaces that the user has access. The user will always have a role group even if the administrator chooses the Perl Footprints functionality.  
Role Group Role (Not used, but referenced in Java code that must be removed before table deletion.) an association table that resolves the many to many relationship between the Role Group and the Role entities.  
Rule Usage Statistic A table that records statistics on rule usage.  
Schedule A personal or workspace calendar in Footprints. It is used to provide easy access to work hours and settings for appointment scheduling and metric reporting. The Calendar Service maintains the system of record tables for the schedule, but those tables are too difficult and time consuming to query for trend reporting.  
Search Column The number and order of search result columns returned when the search is executed.  
Search Condition The set of logical search conditions for the query. This is rendered into the actual SQL or filtering code.  
Search Constraint Type A lookup table for the various operators that can be used in a search condition. These are logical operators.  
Search Item Query Identifies the specific item definitions associated with the search query to aid in visibility and permissions.  
Search Query The root table for saved searches. It names the search, and indicates the visibility in various parts of the application. The search is saved in an implementation neutral format so that it can be used in many different layers.  
Search View The UI details of the default view of the saved search.  
Security Policy    
String Resource Value The translated value of the resource.  
String Usage Type The Usage Type of a String Resource by an an Application Element , for example Label, ToolTip, Accessibility, Help Text, Data Display Value, etc. The types may be appropriate by Application Element Type.  
Substitution Variable System Level Customization Email : _USERNAME_ User's name _ADMINEMAIL_ Workspace administrator's email _PROJNAME_ Workspace name _FROMNAME_ Email "from" name (if different than "FootPrints") Workspace Level Customization Email Header and Footer: _WHONAME_ : Name of user who created/edited Issue _WHOMAIL_ : Email address of user who created/edited Issue _WORKSPACENAME_ : Workspace Name _ENTRYTITLE_ : Title of Issue _ENTRYNUMBER_ : Issue number Workspace Level Data Keywords - Subject Line: Field Keyword Workspace Name %%ATTRIB__PROJECT_NAME%% Workspace ID %%ATTRIB__PROJID%% Title %%ATTRIB__TITLE%% Issue Number %%ATTRIB__NUMBER%% Last Edit Date %%ATTRIB__LAST_DATE%% Last Edit Time %%ATTRIB__LAST_TIME%% Priority %%ATTRIB__PRIORITY%% Status %%ATTRIB__STATUS%% Creation Date %%ATTRIB__CREATION_DATE%% Creation Time %%ATTRIB__CREATION_TIME%% Creator %%ATTRIB__CREATOR%% Assignees %%ATTRIB__ASSIGNEES%% CC's %%ATTRIB__CC%% Linked CI %%ATTRIB__CI%% Problem Type %%PROBLEM-TYPE%% Field1 %%FIELD1%% Field2 %%FIELD2%% Category %%CATEGORY%% Symptom %%SYMPTOM%% Error Message %%ERROR-MESSAGE%% Platform %%PLATFORM%% Root Cause %%ROOT-CAUSE%% Respond By Date %%RESPOND-BY-DATE%% Scheduled Work Date %%SCHEDULED-WORK-DATE%% Due Date %%DUE-DATE%% If OTHER please specify %%IF-OTHER-PLEASE-SPECIFY%% SLA Due Date %%SLA-DUE-DATE%% SLA Response Time %%SLA-RESPONSE-TIME%% Part1Price %%PART1PRICE%% Part1Quantity %%PART1QUANTITY%% Part1Total %%PART1TOTAL%% Part2Price %%PART2PRICE%% Part2Quantity %%PART2QUANTITY%% Part2Total %%PART2TOTAL%% Grand Total %%GRAND-TOTAL%% Dan's Test Field %%DAN-S-TEST-FIELD%% Submitted By %%SUBMITTED-BY%% Last Name %%LAST-NAME%% First Name %%FIRST-NAME%% Email Address %%EMAIL-ADDRESS%% User ID %%USER-ID%% Phone %%PHONE%% Site %%SITE%% Department %%DEPARTMENT%% Service Level %%SERVICE-LEVEL%% Supervisor %%SUPERVISOR%% Employee Title %%EMPLOYEE-TITLE%% Employee Number %%EMPLOYEE-NUMBER%% SLA Expiration Date %%SLA-EXPIRATION-DATE%% Workspace Level Data Keywords - Custom Fomrmatting : Field Keyword Short list of what just changed %%ATTRIB__LAST_CHANGE%% Workspace Name %%ATTRIB__PROJECT_NAME%% Workspace ID %%ATTRIB__PROJID%% Title %%ATTRIB__TITLE%% Issue Number %%ATTRIB__NUMBER%% Link to Details Page %%ATTRIB__LINK_TO_DETAILS%% Last Edit Date %%ATTRIB__LAST_DATE%% Last Edit Time %%ATTRIB__LAST_TIME%% Priority %%ATTRIB__PRIORITY%% Status %%ATTRIB__STATUS%% Creation Date %%ATTRIB__CREATION_DATE%% Creation Time %%ATTRIB__CREATION_TIME%% Creator %%ATTRIB__CREATOR%% Show Subtask or Global Issue relationship %%ATTRIB__SUBTASKGLOBALTICKETLINK%% First Description entered %%ATTRIB__FIRST_DESCRIPTION%% All Descriptions %%ATTRIB__ALL_DESCRIPTIONS%% Most Recent Description %%ATTRIB__MOST_RECENT_DESCRIPTION%% Description %%ATTRIB__DESCRIPTION%% Assignees %%ATTRIB__ASSIGNEES%% CC's %%ATTRIB__CC%% Issue Information %%ATTRIB__PROJFIELDS%% Address Book Fields %%ATTRIB__ABFIELDS%% Linked CI %%ATTRIB__CI%% List attached files %%ATTRIB__ATTACHED_FILE_LIST%% Complete Issue History %%ATTRIB__HISTORY%% Problem Type %%PROBLEM-TYPE%% Field1 %%FIELD1%% Field2 %%FIELD2%% Category %%CATEGORY%% Symptom %%SYMPTOM%% Error Message %%ERROR-MESSAGE%% Platform %%PLATFORM%% Root Cause %%ROOT-CAUSE%% Respond By Date %%RESPOND-BY-DATE%% Scheduled Work Date %%SCHEDULED-WORK-DATE%% Due Date %%DUE-DATE%% Resolution %%RESOLUTION%% If OTHER please specify %%IF-OTHER-PLEASE-SPECIFY%% SLA Due Date %%SLA-DUE-DATE%% SLA Response Time %%SLA-RESPONSE-TIME%% Part1Price %%PART1PRICE%% Part1Quantity %%PART1QUANTITY%% Part1Total %%PART1TOTAL%% Part2Price %%PART2PRICE%% Part2Quantity %%PART2QUANTITY%% Part2Total %%PART2TOTAL%% Grand Total %%GRAND-TOTAL%% Dan's Test Field %%DAN-S-TEST-FIELD%% Submitted By %%SUBMITTED-BY%% Last Name %%LAST-NAME%% First Name %%FIRST-NAME%% Email Address %%EMAIL-ADDRESS%% User ID %%USER-ID%% Phone %%PHONE%% Site %%SITE%% Department %%DEPARTMENT%% Service Level %%SERVICE-LEVEL%% Supervisor %%SUPERVISOR%% Employee Title %%EMPLOYEE-TITLE%% Employee Number %%EMPLOYEE-NUMBER%% SLA Expiration Date %%SLA-EXPIRATION-DATE%%  
Substitution Variable Type    
Survey Sent A record of a survey sent to an application user.  
Syncing Job Detail A table used to control syncing of Calendar Items with a computer or phone calendar system.  
System Component A lookup table for System Component. System Component is used to identify an area of the system. The primary use is when a component is updating system information with a transaction that is not initiated from a customer or agent.  
System Session A table that holds records for currently logged in application users. It is not used for component sessions, and the last accessed time is not updated because of performance issues.  
Target DBMS A lookup table for the Target Database Management System types. Values include: SQLServer, PostgreSQL, MySQL, Oracle.  
Target Match    
Target Match Type A lookup table for the XACML target match type. Values include ACTION, RESOURCE, SUBJECT  
Team A team is a group of application users that can be used in Team level assignments.  
Team Email Notification Type When Issues are assigned to this team, all members of the team will Receive email notifications for all activity on the Issue: Always Only when no individual agents are assigned Never (Note that email to members will follow the workspace preferences for assignees defined on the Mail Preferences page. Also, any individual assignees will receive mail according to the workspace preferences regardless of what teams are assigned.)  
Team Item Association This contains the association between the team, the team assignment method and the item types. This is new functionality, as oposed to the current application that sets the assignment method directly on the team. The change was due to the new concept of multiple items in a workspace.  
Template Application Role The role template will function as a system preedefined role that can then be linked to workspace roles. Changes made to the system role will be refclected at the workspace level until the connection is broken. This system role's connection to the workspace role will be in effect until any change is made to the workspace role. It then gets copied over as a stand alone role. 12/8/2011 The Role Template will be implemented as a subtype of role.  
Template Attribute Definition A list of substitution attributes that can be used in an email template.  
Template Category A category of template, for example Email Template Definition.  
Template Content Type A lookup table for the type of template content. Values include: PLAINTEXT, HTML.  
Template Definition A template used for notifications or description content with substitution attributes.  
Template Definition Attribute The collection of template attributes associated with an instance of template definition.  
Template Group A group of templates.  
Template Package A template specification that can be used to create an Item, Container, or Group of Containers.  
Template Package Type A lookup table for the Template Package Type. Values include: BUSINESS_PROCESS, CONTAINER, ITEM  
Time Tracking A table of time tracking entries used to accumulate a log of time spent on ticket editing and viewing.  
Time Tracking Type The type of time tracking entry. Values include AUTOMATIC, MANUAL_DURATION, MANUAL_RANGE.  
Time Zone Region A region of the world defined in the Olson time zone database. Only the entries actually used by a FootPrints instance will be stored. The localized name of the region is provided by the Java.Util.Timezone getDisplayName() method. Only the java class can be used to determine the time zone offset from GMT, which varies historically and in the future. See the Time Zone Local Hour table. Take aspirin as needed.  
Tweet A twitter tweet returned from a query.(Table created but not yet in use)  
Tweet Twitter Query The association between a twitter query and the tweets returned.(Table created but not yet in use)  
Twitter Query A full text query sent to Twitter to obtain a list of tweets. (Table created but not yet in use)  
UI Component State The EXTJS grid has the ability to store it's state allowing the preservation of grid layout properties. This table supports that. It might also be used for other UI control objects.  
Useful Code A lookup table for the useful code used in grading solutions. Examples include: I - Yes, but inaccurate, N - No, Y - Yes  
User Profile A container for Permissions and Settings (the composite parts are the associated Role and the User Preferences). The permissions for a User to access a particular container according to the capabilities defined. In most cases this will be more defined in a subcategory. Example: Shared User Profile This profile will be shared between multiple users that access the system with the same User ID.  
User Type Indicates whether this entity is of an agent type or a customer type. Also CMDB and GUEST.  
Value Type Code A lookup table for the data value type discriminator. Many tables share this discriminator for name value pair datatypes. Values include: B Boolean D Timestamp - Date + Time I Integer L Long R Real Number S String T Text - long string  
Vote The vote of a single approver on a single item.  
Vote History The history of votes in the case that voting changes.  
Voting Result The root voting result entry for a ticket item that requires voting approval.  
Widget A widget. A root widget contains subordinate widgets. Widget Types include: ACTION_PANE ADMINISTRATION ALL_ITEMS CALENDAR CHART NEW_ITEM ROOT SAVED_SEARCH_WIDGET TAB_PANE URL WIDGET_PANE  
Table(s) of "9990 - Authentication" Subject Area
Name Definition UDP
Authentication Method One of several procedures for verifying the identity of a peer, such as a challenge password or a digital certificate.  
Authentication Method Type The type of authentication. FootPrints for Windows supports four modes of user/password authentication. You have the option of using FootPrints internal encryption techniques, where FootPrints will maintain its own database of users and passwords. Alternatively, FootPrints can let the web server perform the authentication, or FootPrints can authenticate by interfacing with either an LDAP directory server or the Windows user list.  
Configuration Setting Value Configuration Setting Value is an association between the Configuration Setting entity and a container entity (i.e. User Profile, Role, and Definition). This association contains a distinct value for each of the intersection points between the two entities.  
FootPrints Internal This method details how FootPrints will maintain its own database of users and passwords.  
LDAP The Lightweight Directory Access Protocol, or LDAP , is an application protocol for querying and modifying data using directory services running over TCP/IP. In LDAP, authentication is supplied in the "bind" operation.  
Primary Authentication The primary authenticaion designation. Each FootPrints user may be assigned either the primary or secondary authentication method. Only the assigned method will be attempted when a user tries to authenticate.  
Secondary Authentication The secondary authenticaion designation. Each FootPrints user may be assigned either the primary or secondary authentication method. Only the assigned method will be attempted when a user tries to authenticate.  
Web Server This method details how the web server's authentication is used to authenticate FootPrints users.  
Windows The native MicroSoft Wdows authentication. The Windows operating systems implements a default set of authentication protocols—Kerberos, NTLM, TLS/SSL, Digest, and PKU2U—as part of an extensible architecture. In addition, some protocols are combined into authentication packages such as the Credential Security Service Provider (CredSSP), Negotiate, and Negotiate Extensions. These protocols and packages enable authentication of users, computers, and services; the authentication process, in turn, enables authorized users and services to access resources in a secure manner.  
Table(s) of "9995 - Address Book" Subject Area
Name Definition UDP
Address Book Container A list of contacts that can be used to define customers. An address book can be used to define customers in a single workspace, and it can be shared among other workspaces. The fields of the Address Book can be customized. Data for the address book can be imported or exported. This address book can be associated with multiple workspaces. These relationships willl be shown inside the definition relationship tables.  
Address Book Option These are specific address book configuration variables. They will be handled by the existing cfg setting data pattern.  
Address Book Permission Type This indicates the fields permission type that determines the visibility scope. Currently the application supports two values: public and internal.  
Address Book Type You may change your address book type to the following type(s): Dynamic LDAP Address Book Link, Dynamic SQL Address Book Link (SQL Server, Oracle, MySQL, DB2, PostgreSQL, Sybase or Access), Salesnet Address Book Link, Salesforce.com Address Book Link. This will be mapped as a list of allowed values in the current cfg setting data pattern.  
Address Field    
Address Field Type This would indicate a value out of a set that includes: Character (single line), Supervisor, Character (multiple line), Integer, Real Number, Date, Dropdown, Multi-Select, Checkbox, Web Site, FTP File/Site, E-mail Address, Add Tab/Section.  
Address Field Type Option This contains the options for the different types of fields. These options will be contained within the current cfg setting data pattern.  
Contact Item A contact that belongs to the FootPrints address book. This could be implemented as a specialization of Item which has the needed features of flexible schema, and data mapping adapters.  
Horizontal Alignment Gives the basic horizontal reference values: Right, Center, Left.  
Item The Item is the abstract class for Issue, Configuration Item, Address Book entry, and other information items that are the main information entities in FootPrints. The Item structure and behavior is defined by its Definition. The Item is namespaced, identified by, and logically stored in the single parent container. It can be referenced in the same manner both inside and outside the container. The Item is the storage model and the implementation for the Item Definition. There are many important specializations of the Item class, and there even more Template definitions of Container/Item that provide an end-user application experience to the End-User. The Item implementation must implement flexible schema in an easy to manage, well engineered, and high performing way. The item can store user-defined and user-named fields defined in its definition. The Item could implement the nice-to-have features such as an inheritance model for Item subtypes, and have the ability to represent collections of subordinate items. The Item data can be imported, exported, or synchronized with external data sources. The Item data can be linked and synchronized with other items in the same Instance.  
Item Relationship An Item Relationship is a relationship between instances contained in two Dynamic Object generated Tables. For example, the following. A Configuration Item Type ("Computer") related to an Workspace Item ("Incident"). An Address Book Entry ("Contact") related to another Address Book Entry ("Master Contact"). A Dynamic Link between an Incident in Workspace 1 ("Current Tickets") and Workspace 3 ("Archive Workspace"). A Dynamic Link between an Incident in Workspace 1 ("Current Tickets") and Workspace 5 ("Change Management"). There are no foreign keys defined.  
Ticket Item A specialization of Item contained in a Workspace container. Workspace Items are tracked for resolution and closure, and have parties that are awaiting resolution and closure, and responsible parties that perform work against them.  
Table(s) of "9997 - Email Incoming" Subject Area
Name Definition UDP
Email Incoming History This table is to support the requirement from the SRS concerning a possible email loop. FFR-01. The system must be able to manage "Email loops". This refers to when an automatic response triggers another automatic response. This may be triggered by "Vacation" emails, email bounce messages, delivery replies, read receipts, etc. Currently the System manages this by blocking a sender if 5 of the last 15 emails from this sender have the same Subject and same first 50 characters of the body. This has been taken out of this particular feature. Rob Accardi 11/8/11  
Table(s) of "Legend" Subject Area
Name Definition UDP
Added Column    
Added Table    
Configuration Setting A configuration variable that can be identified in programming code and which has an atomic value that affects the behavior of the application. Configuration values are either scalars, or are supported by value lists that also can be programmatically identified. They have localized labels and value choices, and are categorized to support organization and separation in programming namespaces and configuration screens. They support the concept of Built-In Values, Default Values, and Customized Values. Configuration should be supported by an Audit Trail, and should be able to determine if configuration has changed by level, category, and for the individual value in order to support cacheing. A configuration value has a definition to identify its usage, and a enum that identifies if a change will require a restart and what level of restart is required if the value changes. If a restart is required, both the currently running value and the value after restart should be accessible. This means that historical values of the Configuration Settings should be accessible.  
Configuration Setting Owner Type A lookup table for Owner Types of Configuration Setting Values. Values include: APPLICATION_USER, DEFINITION, IMPORTS, ROLE, SIMPLE_CONFIGURABLE_OBJECT, USER_PROFILE.  
Delete Entry    
Deleted Column    
Deleted Table    
Item Definition The definition of an Item, which includes the Item Name and localizations and the collection of Item Fields. It also includes customizations and localizations of string resources for Item Names, and Item Field names.  
Subtype    
Subtype    
Subtype    
Supertype    
To    
To    
To    
To    
To One Table    
To One or More Entities    
To Zero or More Entities    
To Zero or One Table