spacer spacer spacer
spacer spacer spacer
spacer
NASA Jet Propulsion Laboratory, California Institute of Technology + View the NASA Portal

+ NASA en Español

+ Contact NASA
Search the API    

Design

This document covers the design of the Catalog and Archive Management components. The focus of this document is mainly with the Catalog and Archive Service (CAS) component.

Task and Rule Handling

This section describes the task and rule handling features of the CAS. The CAS provides the capability of executing user developed tasks as the result of a successful product registration. Each task may also have a number of user developed rules which determine whether the associated task should be executed. The associations between the datasets (product types), tasks and rules are captured in the CAS policy definition. For more information on policy definition see the Policy Definition section of the CAS Developer Guide . For more information on task and rule development see the Task/Rule Development section of the CAS Developer Guide . The following sequence diagram details the interactions between the main classes involved in task and rule handling:

Task and Rule Handling Sequence

The following sub-sections provide more detail with regard to the activities performed during task and rule control. Please excuse my liberal use of activity diagram components to essentially generate UML looking flowcharts. Many of the decision points in the activity diagrams below illustrate how the user defined policy dictates work flow. In an effort to produce diagrams without clutter, only one side of the desicion point has been labeled and it is usually the side that keeps processing from going forward. The assumption here is that the other side of the decision point represents the opposite condition. More detail on the decision point criteria can be found in the descriptions that follow the diagrams.

Task Control

This section provides some insight into the Task Control object represented in the sequence diagram above. A task or tasks may be executed as part of a product registration event or they may be sent directly to the queue. Sending tasks directly to the queue enables prioritization of task execution based on defined queue priorities.

Event Based

The following activity diagram details the steps and logic involved when controlling event-based task execution:

Task Control (Event) Activity

The following table describes each of the above activities and decision points:

Activity Description
Retrieve Tasks The tasks associated with the given dataset are retrieved from the dataset_task_relation table in the database.
If the event_exec_flag for the current task is set to Y , the rules associated with the task are evaluated, otherwise if set to Q , N or I , the task is skipped. If the flag is set to N , th e task is essentially dropped on the floor.
Queue Task The task information is inserted into the task_queue table in the database. Once in the queue, the task will be evaluated for possible execution each time the queue is poked.
Ignore Task The task information is inserted into the task_ignore table in the database. This table allows the CAS to keep track of ignored tasks and enables them to be moved to the queue in the future for possible execution.
Evaluate Rules See the Rule Control section for details of this activity.
If the rules are satisfied, execute the task, otherwise if a rule was not satisfied, queue the task.
Execute Task The task information is inserted into the task_exec table in the database, the task class specified in the policy is instantiated and the run() method is executed.
If the task is executed successfully, indicated by the object returning without exception, update the task status and continue on to see if there are more tasks to execute, otherwise if the task failed to execute, indicated by the object throwing an exception, update the task status and continue to the next decision point.
Update Status Update the status for the task accordingly in the task_exec table in the database.
If the event_fail_flag for the current task is set to N , continue on to see if there are more tasks to execute, otherwise if set to Y , return to the calling object indicating that a task failed to execute.
If there are more tasks to execute, do so, otherwise return to the calling object indicating that all tasks were executed successfully.

Queue Based

The following activity diagram details the steps and logic involved when controlling queue-based task execution:

Task Control (Queue) Activity

The following table describes each of the above activities and decision points:

Activity Description
Retrieve Tasks The tasks are retrieved from the task_queue table in the database, ordered by their queue priority.
If the exec_flag is set to Y and the wait_time value has expired or the retry_flag is set to Y , continue to the next decision point, otherwise if the exec_flag is set to N or the wait_time value has not expired or the retry_flag is set to N , the task is skipped. The exec_flag defaults to Y and the retry_flag defaults to N , both are intended to be used as override mechanisms. The execution flag can be set to N if the user would like to indefinitely hold off on executing a certain task that resides in the queue. The retry flag can be set to Y if the user would like to attempt to execute a certain task the next time the queue is poked.
If the queue_exec_flag for the current task is set to Y , the rules associated with the task are evaluated, otherwise if set to N , the task is skipped.
Evaluate Rules See the Rule Control section for details of this activity.
If the rules are satisfied, execute the task, otherwise if a rule was not satisfied, determine the next step based on the value of rule_type . If set to Mandatory , continue to the next decision point, otherwise if set to Optional or Retry , update the rule information.
If the wait_length value is zero or the wait_time value has expired, ignore the task, otherwise if the wait_length value is greater than zero and the wait_time value has not expired, update the rule information.
Ignore Task The task information is inserted into the task_ignore table in the database. This table allows the CAS to keep track of ignored tasks and enables them to be moved to the queue in the future for possible execution.
Update Rule Info Update the rule information for the task in the task_queue table in the database. The rule information includes the identifier of the rule that was not satisfied and the revised wait time based on the rule's wait length.
Execute Task The task information is inserted into the task_exec table in the database, the task class specified in the policy is instantiated and the run() method is executed.
If the task is executed successfully, indicated by the object returning without exception, update the task status and continue on to see if there are more tasks to execute, otherwise if the task failed to execute, indicated by the object throwing an exception, update the task status and continue on to see if there are more tasks to execute. Essentially a task failing to execute from the queue has no bearing on the rest of the tasks in the queue.
Update Status Update the status for the task accordingly in the task_exec table in the database.
If there are more tasks to execute, do so, otherwise return to the calling object indicating that all tasks were executed successfully.

Rule Control

This section provides some insight into the Rule Control object represented in the sequence diagram above. The following activity diagram details the steps and logic involved when controlling a rule execution:

Rule Control Activity

The following table describes each of the above activities and decision points:

Activity Description
Retrieve Rules The rules associated with the given dataset and task are retrieved from the dataset_task_rule_relation table in the database.
If the rule_exec_flag for the current rule is set to Y , the rule is executed, otherwise if set to N , the rule is skipped. Skipping a rule is equivalent to the rule being satisfied upon execution.
Execute Rule The rule class specified in the policy is instantiated and the run() method is executed.
If the rule is satisfied, indicated by the object returning true , continue on to see if there are more rules to execute, otherwise if not satisfied, indicated by the object returning false , continue to the next decision point.
If the rule_type for the current rule is set to OPTIONAL and the wait_length time value associated with the task has expired, continue on to see if there are more rules to execute, otherwise if any other rule type encountered or if the task wait time has not expired, return to the calling object indicating that a rule was not satisfied.
If there are more rules to execute, do so, otherwise return to the calling object indicating that all rules were satisfied.

Database Schema

This section describes the CAS database schema. Data types used in the column descriptions are specific to the Oracle Database Management System (DBMS). The following table describes the column identifiers used in the Entity-Relationship diagrams:

Identifier Description
PK The primary key for the table. This column or combination of columns will uniquely identify a row.
Un A unique key for the table. This column or combination of columns will uniquely identify a row as well.
FKn A foreign key to another table. A value in this column must exist in the referenced table's related column.
bold type A column name in bold type indicates that a value is mandatory, meaning not null.

Dataset and Data Element Policy Tables

The dataset and data element policy tables are utilized by the CAS for determining the types of products to be registered and the content of the metadata that describes those products. The tables are shown in the following diagram:

Dataset and Data Element Policy Tables

dataset_policy

This table stores information regarding the types of products to be registered with the CAS. This table consists of the following columns:

  • dataset_id
    The generated identifier for the dataset. This column is the primary key for the table. Data type: NUMBER(10).
  • dataset_name
    The name of the dataset. This column is constrained for unique values and is indexed. Data type: VARCHAR2(80).
  • product_metadata_table
    The name of the product table where metadata is stored for products registered with this dataset. Data type: VARCHAR2(30).
  • product_reference_table
    The name of the product table where references to product items are stored for products registered with this dataset. Data type: VARCHAR2(30).
  • repository
    The path of the repository for files registered with this dataset. Data type: VARCHAR2(255).
  • description
    The description of the dataset. Data type: VARCHAR2(255).

element_policy

This table stores information regarding the data elements used for metadata to describe products registered with the CAS. This table consists of the following columns :

  • element_id
    The generated identifier for the data element. This column is the primary key for the table. Data type: NUMBER(10).
  • element_name
    The name of the data element. This column is constrained for unique values and is indexed. Data type: VARCHAR2(30).
  • product_metadata_column
    The name of the column for this data element in a product metadata table. May be the same as element_name if that value only contains characters, numbers or under scores. The bottom line is that it must be a valid column name for the target database. Data type: VARCHAR2(30).
  • data_type
    The type of data the data element value will contain. This column is a foreign key to the data_type table. Data type: VARCHAR2(20).
  • core_flag
    A flag indicating whether this element is one of the internal core elements. Valid values: Y or N . Default: N . Data Type: CHAR(1).
  • dc_element
    The Dublin Core element name that this element will be mapped to for incoming queries and profile population. Data type: VARCHAR2(30).
  • length
    The amount of characters or numbers the value may contain. Valid for the STRING data type. Should be set to NULL for all other data types. Data type: NUMBER(5).
  • scale
    The amount of numbers to the r ight of the decimal point. Should be set to NULL for all data types. Data type: NUMBER(5). Not supported.
  • min_value
    The minimum value allowed. Valid for the INTEGER data type. Data type: NUMBER(10). Not supported.
  • max_value
    The maximum value allowed. Valid for the INTEGER data type. Data type: NUMBER(10). Not supported.
  • description
    The description of the data element. Data type: VARCHAR2(255).

dataset_element_relation

This table stores the relationship between datasets and their associated data elements. This table consists of the following columns:

  • dataset_id
    The identifier for the dataset. This column is part of the primary key for the table and is a foreign key to the dataset_policy table. Data type: NUMBER(10).
  • element_id
    The identifier for the data element. This column is part of the primary key for the table and is a foreign key to the element_policy table. Data type: NUMBER(10).
  • mandatory_flag
    A flag indicating whether this element may be missing or the element value may be NULL in the metadata. Valid values: Y or N . Default: N . Data Type: CHAR(1). Not fully supported.
  • index_flag
    A flag indicating whether an index will be created for this column in the product metadata table. Valid values: Y or N . Default: N . Data Type: CHAR(1).

data_type

This table stores information regarding the types of data stored for a metadata element and how it maps to a database data type. This table consists of the following columns:

  • data_type
    The type of data the data element value will contain. This column is the primary key for the table. Valid values: DATETIME , DOUBLE , INTEGER , LONG , REAL and STRING . Data type: VARCHAR2(20).
  • database_type
    The database type that maps to the data type. This column will contain the Oracle, Sybase or PostgreSQL data type. Data type: VARCHAR2(20).
  • profile_type
    The profile type that maps to the data type. This column will contain the profile element data type which is used when generating a Profile. Data type: VARCHAR2(20).
  • format
    The format for date/time related data types. Data type: VARCHAR2(30). Not supported.
  • description
    The description of the data type. Data type: VARCHAR2(255).

Task and Rule Policy Tables

The task and rule policy tables are utilized by the CAS for determining the tasks to be executed when produ cts are registered. The tables are shown in the following diagram with the dataset_policy table included for enabling foreign key identification:

Task and Rule Policy Tables

task_policy

This table stores information regarding the tasks that can be executed by the CAS for a given product registration. This table consists of the following columns:

  • task_id
    The generated identifier for the task. This column is the primary key for the table. Data type: NUMBER(10).
  • task_name
    The class specification for the task. This column is constrained for unique values and is indexed. Data type: VARCHAR2(255).
  • description
    The description of the task. Data type: VARCHAR2(255).

rule_policy

This table stores information regarding the rules that can be executed by the CAS for a given product registration and associated task. This table consists of the following columns:

  • rule_id
    The generated identifier for the rule. This column is the primary key for the table. Data type: NUMBER(10).
  • rule_name
    The class specification for the rule. This column is constrained for unique values and is indexed. Data type: VARCHAR2(255).
  • description
    The description of the rule. Data type: VARCHAR2(255).

dataset_task_relation

This table stores the relationship between datasets and their associated tasks. This table consists of the following columns:

  • dataset_id
    The identifier for the dataset. This column is part of the primary key for the table and is a foreign key to the dataset_policy table. Data type: NUMBER(10).
  • task_id
    The identifier for the task. This column is part of the primary key for the table and is a foreign key to the task_policy table. Data type: NUMBER(10).
  • event_exec_flag
    A flag indicating whether this task will be executed, not executed, ignored or queued as a result of an add event. Valid values: Y , N , I or Q . Default: N . Data Type: CHAR(1).
  • event_priority
    The priority for task execution if executed as a result of an add event. If more than one task has been defined for a dataset, this value will determine the order of execution. Data type: NUMBER(5).
  • event_fail_flag
    A flag indicating whether failure of this task will cause the associated add event to fail. Valid values: Y or N . Default: N . Data Type: CHAR(1).
  • queue_exec_flag
    A flag indicating whether this task will be executed or remain in the queue as a result of a queue event. Valid values: Y or N . Default: N . Data Type: CHAR(1).
  • queue_priority
    The priority for task execution if executed as a result of a queue event. If more than one task is retrieved from the queue, this value will determine the order of execution. Data type: NUMBER(5).
  • wait_length
    The maximum amount of time in minutes that a task will wait in the queue for MANDATORY and OPTIONAL rules that are not satisfied. Data type: NUMBER(5).

dataset_task_rule_relation

This table stores the relationship between datasets, tasks and their associated rules. This table consists of the following columns:

  • dataset_id
    The identifier for the dataset. This column is part of the primary key for the table and is a foreign key to the dataset_policy table. Data type: NUMBER(10).
  • task_id
    The identifier for the task. This column is part of the primary key for the table and is a foreign key to the task_policy table. Data type: NUMBER(10).
  • rule_id
    The identifier for the rule. This column is part of the primary key for the table and is a foreign key to the rule_policy table. Data type: NUMBER(10).
  • rule_exec_flag
    A flag ind icating whether this rule will be executed. Valid values: Y or N . Default: N . Data Type: CHAR(1).
  • rule_priority
    The priority for rule execution. If more than one rule has been defined for a task associated with a dataset, this value will determine the order of execution. Data type: NUMBER(5).
  • rule_type
    The type of rule which indicates how the rule is handled when the rule is not satisfied. Valid values: MANDATORY , OPTIONAL and RETRY . Data type: VARCHAR2(20).
    • MANDATORY
      This type indicates that the associated task will be removed from the queue in the case where the rule is not satisfied and the wait time has expired.
    • OPTIONAL
      This type indicates that the associated task will be executed in the case where the rule is not satisfied and the wait time has expired.
    • RETRY
      This type indicates that the associated task will remain in the queue and the wait time extended in the case where the rule is not satisfied.
  • wait_length
    The amount of time in minutes that an associated task will wait in the queue if this rule is not satisfied. Data type: NUMBER(5).

Product Instance Tables

The product instance tables are utilized by the CAS for tracking registered products. The tables are shown in the following diagram:

Product Instance Tables

product_metadata_ < dataset_id >

This table stores information regarding instances of products registered with the CAS. One of these tables should be created for each dataset stored in the dataset_policy table. For more information regarding creation of these tables see the Create Product Tables section of the Installation Guide . This table consists of the following columns:

  • product_id
    The generated identifier for the product. This column is the primary key for the table. Data type: NUMBER(10).
  • product_name
    The name of the product. This column combined with the product_version column is constrained for unique values and is indexed. Data type: VARCHAR2(255).
  • product_version
    The version of the product. This column combined with the product_name column is constrained for unique values and is indexed. Data type: NUMBER(10).
  • product_status_type
    The status of the product. This column is a foreign key to the product_status_type table. Data type: VARCHAR2(20).
  • product_received_time
    The date/time value representing when the product was inserted into the table. A value in this column must be in the ISO 8601 format: YYYY-MM-DDThh:mm:ss.SSS[Z|[+|- ] hh:mm ] . Data type: VARCHAR2(30).
  • product_owner
    The user name of the account that registered the product. Data type: VARCHAR2(30). Not supported.
  • < dataset elements >
    A column for each data element listed in the dataset_element_relation table for the given dataset. The data type for each of these columns is specified in the element_policy table for the given data element.

product_reference_ < dataset_id >

This table stores information regarding instances of product items registered with the CAS. One of these tables should be created for each dataset stored in the dataset_policy table. For more information regarding creation of these tables see the Create Product Tables section of the Installation Guide . This table consists of the following columns:

  • product_id
    The identifier for the product. This column combined with the product_reference column is constrained for unique values and is indexed. Data type: NUMBER(10).
  • product_reference_type
    The reference type of the product item. This column is a foreign key to the product_reference_type table. Data type: VARCHAR2(20).
  • product_reference
    The original reference to the product item. A value in this column must be in the format of an Universal Resource Locator (URL). Example value: file:///home/user/test.xml or http://cas.jpl.nasa.gov/dtd/metadata.dtd . This column combined with the product_id column is constrained for unique values and is indexed. Data type: VARCHAR2(255).
  • archive_reference
    The reference to the product item in the CAS repository. Valid for FILE_METADATA and FILE_DATA_LOCAL product reference types. A value in this column must be in the format of an Universal Resource Locator (URL). Example value: file:///usr/local/cas/var/archive/product_1/Test/1/test.xml . Data type: VARCHAR2(255).
  • product_length
    The length of a product item in the CAS repository. The length is represented in bytes. Data type: NUMBER(10).

product_status_type

This table stores information regarding the types of status values for a product instance. This table consists of the following columns:

  • product_status_type
    The type of status a product instance may have. This column is the primary key for the table. Valid values: ADD_IN_PROGRESS , DELETE_IN_PROGRESS , CORRUPT and NORMAL . Data type: VARCHAR2(20).
  • description
    The description of the product status type. Data type: VARCHAR2(255).

product_reference_type

This table stores information regarding the types of reference values for a product item instance. This table consists of the following columns:

  • product_reference_type
    The type of reference a product item instance may have. This column is the primary key for the table. Valid values: FILE_METADATA , FILE_DATA_LOCAL and FILE_DATA_REMOTE . Data type: VARCHAR2(20).
    • FILE_METADATA
      This type specifies a metadata file to be stored in the CAS repository. A file with this type will be parsed for metadata content. An example product reference would be file:///home/user/Test.xml .
    • FILE_DATA_LOCAL
      This type specifies a file to be stored in the Archive Service repository. An example product reference would be file:///home/user/Test.dat .
    • FILE_DATA_REMOTE
      This type specifies a file to be referenced remotely. The file will not be transferred to the CAS. An example product reference would be file://edm.jpl.nasa.gov/home/user/Test.dat .
  • description
    The description of the product reference type. Data type: VARCHAR2(255).

Task Instance Tables

The task instance tables are utilized by the CAS for tracking tasks th at are associated with registered products. Although each of these tables have foreign key dependencies on the dataset_policy , task_policy and rule_policy tables, these tables have been excluded from the following diagram:

Task Instance Tables

task_exec

This table stores information regarding instances of tasks associated with products registered with the CAS. This table specifically stores tasks that have been executed. This table consists of the following columns:

  • exec_id
    The generated identifier for the task instance. This column is the primary key for the table. Data type: NUMBER(10).
  • dataset_id
    The identifier for the dataset. This column is a foreign key to the dataset_policy table. Data type: NUMBER(10).
  • product_id
    The identifier for the product. This column is a foreign key to the product_metadata_ < dataset_id > table. Data type: NUMBER(10).
  • task_id
    The identifier for the task. This column is a foreign key to the task_policy table. Data type: NUMBER(10).
  • received_time
    The date/time value representing when the task was inserted into the table. A value in this column must be in the ISO 8601 format: YYYY-MM-DDThh:mm:ss.SS S[Z|[+|- ] hh:mm ] . Data type: VARCHAR2(30).
  • task_status_type
    The type of status a task instance may have. Valid values: INITIATED , EXECUTED and FAILED . Data type: VARCHAR2(20).
  • task_status_time
    The date/time value representing when the task status was last updated. A value in this column must be in the ISO 8601 format: YYYY-MM-DDThh:mm:ss.SSS[Z|[+|- ] hh:mm ] . Data type: VARCHAR2(30).

task_queue

This table stores information regarding instances of tasks associated with products registered with the CAS. This table specifically stores tasks that are waiting to be executed. This table consists of the following columns:

  • exec_id
    The generated identifier for the task instance. This column is the primary key for the table. Data type: NUMBER(10).
  • dataset_id
    The identifier for the dataset. This column is a foreign key to the dataset_policy table. Data type: NUMBER(10).
  • product_id
    The identifier for the product. This column is a foreign key to the product_metadata_ < dataset_id > table. Data type: NUMBER(10).
  • task_id
    The identifier for the task. This column is a foreign key to the task_policy table. Data type: NUMBER(10).
  • received_time
    The date/time value representing when the task was inserted into the table. A value in this column must be in the ISO 8601 format: YYYY-MM-DDThh:mm:ss.SSS[Z|[+|- ] hh:mm ] . Data type: VARCHAR2(30).
  • wait_time
    The date/time value representing when this task may be attempted. This value is determined by the dataset_task_rule_relation.wait_length column for the rule identified by the rule_id column. A value in this column must be in the ISO 8601 format: YYYY-MM-DDThh:mm:ss.SSS[Z|[+|- ] hh:mm ] . Data type: VARCHAR2(30).
  • rule_id
    The identifier for the last rule that was not satisfied. A value of 0 indicates that the task was inserted into the table as a result of the dataset_task_relation.event_exec_flag column for this task being set to Q . Data type: NUMBER(10).
  • retry_flag
    A flag indicating whether this task will be attempted the next time the queue is processed. This flag will override the wait_time column. Valid values: Y or N . Default: N . Data Type: CHAR(1).
  • exec_flag
    A flag indicating whether this task will be executed. When the value is set to N , this flag will override the wait_time and retry_flag columns. Valid values: Y or N . Default: Y . Data Type: CHAR(1).

task_ignore

This table stores information regarding instances of tasks associated with products registered with the CAS. This table specifically stores tasks that have been ignored, meaning execution was turned off or a mandatory rule was not satisfied. This table consists of the following columns:

  • exec_id
    The generated identifier for the task instance. This column is the primary key for the table. Data type: NUMBER(10).
  • dataset_id
    The identifier for the dataset. This column is a foreign key to the dataset_policy table. Data type: NUMBER(10).
  • product_id
    The identifier for the product. This column is a foreign key to the product_metadata_ < dataset_id > table. Data type: NUMBER(10).
  • task_id
    The identifier for the task. This column is a foreign key to the task_policy table. Data type: NUMBER(10).
  • received_time
    The date/time value representing when the task was inserted into the table. A value in this column must be in the ISO 8601 format: YYYY-MM-DDThh:mm:ss.SSS[Z|[+|- ] hh:mm ] . Data type: VARCHAR2(30).
  • rule_id
    The identifier for the last rule that was not satisfied. A value of 0 indicates that the task was inserted into the table as a result of the dataset_task_relation.event_exec_flag column for this task being set to N . This column is a foreign key to the rule_policy table. Data type: NUMBER(10).

Identifier Tables

The identifier tables are used to generate unique identifiers. The tables are shown in the following diagram:

Identifier Tables

next_audit_id

This table is used to store the last audit identifier used in either the dataset_policy_audit or element_policy_audit tables. This table consists of the following column:

  • audit_id
    The last audit identifier used. Data type: NUMBER(10).

next_dataset_id

This table is used to store the last dataset identifier used in the dataset_policy table. This table consists of the following column:

  • dataset_id
    The last dataset identifier used. Data type: NUMBER(10).

next_element_id

This table is used to store the last element identifier used in the element_policy table. This table consists of the following column:

  • element_id
    The last element identifier used. Data type: NUMBER(10).

next_exec_id

This table is used to store the last execution id entifier used in either the task_exec , task_queue or task_ignore tables. This table consists of the following column:

  • exec_id
    The last exec identifier used. Data type: NUMBER(10).

next_product_id

This table is used to store the last product identifier used in any of the product_metadata_ < dataset_id > tables. This table consists of the following column:

  • product_id
    The last product identifier used. Data type: NUMBER(10).

next_rule_id

This table is used to store the last rule identifier used in the rule_policy table. This table consists of the following column:

  • rule_id
    The last rule identifier used. Data type: NUMBER(10).

next_task_id

This table is used to store the last task identifier used in the task_policy table. This table consists of the following column:

  • task_id
    The last task identifier used. Data type: NUMBER(10).

Audit Tables

The audit tables are used to track changes in policy. At this point in time only the dataset and data element policy tables are audited. The tables are shown in the following diagram:

Audit Tables

dataset_policy_audit

This table stores auditing information for all modifications that occur in the dataset_policy table. This table consists of the following columns:

  • audit_id
    The generated identifier for the audit record. This column is the primary key for the table. Data type: NUMBER(10).
  • audit_timestamp
    The DBMS specific date/time value representing when the audit record was inserted into the table. Data type: DATE.
  • audit_username
    The DBMS user name for the account that performed the modification. Data type: VARCHAR2(30).
  • audit_operation
    A flag indicating the type of modification that occurred. Valid values: I , U and D . Data type: VARCHAR2(1).
    • I - This value indicates an insert occurred.
    • U - This value indicates an update occurred.
    • D - This value indicates a deletion occurred.
  • All columns in the dataset_policy table except the description column.

element_policy_audit

This table stores auditing information for all modifications that occur in the element_policy table. This table consists of the following columns:

  • audit_id
    The generated identifier for the audit record. This column is the primary key for the table. Data type: NUMBER(10).
  • audit_timestamp
    The DBMS specific date/time value representing when the audit record was inserted into the table. Data type: DATE.
  • audit_username
    The DBMS user name for the account that performed the modification. Data type: VARCHAR2(30).
  • audit_operation
    A flag indicating the type of modification that occurred. Valid values: I , U and D . Data type: VARCHAR2(1).
    • I - This value indicates an insert occurred.
    • U - This value indicates an update occurred.
    • D - This value indicates a deletion occurred.
  • All columns in the element_policy table except the description column.
FirstGov - Your First Click to the US Governmnet

+ Freedom of Information Act

+ NASA Privacy Statement, Disclaimer,

and Accessibility Certification


+ Freedom to Manage
NASA

Editor: Sean Kelly

NASA Official: Dan Crichton

Last Published: 08 December 2005

+ Contact NASA
spacer
spacer spacer spacer
spacer spacer spacer