Rules Help

PPDM Rules Help


Q: Are the rules designed for the PPDM data model?

Answer: No, the rules are designed for the E&P business. The rule Statement is a logical expression of an expected condition from a business perspective. Each rule needs to be correctly coded for use in a particular database. The coding examples usually have table and column names from the PPDM data model; these examples support our members but do not restrict how the rule may be applied.

Q: How can I find a rule by using its ID number?

Answer: On the Search page, enter the number in the search field. Or on the Browse or Search page, click the rule ID column header to sort by ID. Another approach to finding by rule ID is to export a set of rules and search/sort within your spreadsheet.

Q: When i search using a rule ID and set the limit to "Deprecated", why do i get some rules that do not have deprecated status

Answer: If you search by rule ID the search function will ignore all the search filtering rules applied

Q: When I sort all the rules by ID number, why are some missing from the numeric sequence?

Answer: Every rule gets a system-assigned ID when it is created. Some rules don't get beyond the submission or review stage. A few published rules are deprecated (removed) but these can be found by searching with the "deprecated" filter.

Q: Why can't I sort the search results by subject area?

Answer: You can, but it may be tricky to "click for sort". Move the mouse pointer until it turns into a finger. If it doesn't happen when you hover over the text of the column heading, try moving slightly to one side.

Q: Where do I find rules that are open for review?

Answer: Go the Search page and select the button to limit the search to "In Review". If the result is zero, there are no rules under review at the moment. However, we also welcome your discussion on any published rule. Select the rule and use the Discussion tab to post your comment.

Q: Why don't I see anyone's identity on the rule metadata or on the Discussion page?

Answer: Contributors are anonymous, except to the rules administrator and reviewers, for several reasons including the following. A rule may be adapted by the editor from several similar contributions. If two rules are duplicates, only one is published. Some contributors must be anonymous by corporate policy. The value in a rule is in its validity with respect to your business, not in its authorship.

Q: What is a deprecated rule?

Answer: It's a published rule that has been deleted. It remains in the database. A few published rules were found to be wrong or duplicated. Ideally, these would be screened out at the review stage but, once published, we must preserve them. If you used a rule and it was subsequently deprecated, you will want to know why. When we deprecate a rule, we note the reason in the Discussion. For example: Rule 79 says "Duplicate of 80 - deprecated."

Q: When I search using a rule ID and set the Limit to "Deprecated", why do I get some rules that do not have deprecated status?

Answer: If you search by rule ID, the search function ignores the other limits and filters.

Q: Why did I get more published rules in my export file than I see on the display page?

Answer: The export file includes published rules and rules that were deleted (deprecated) after publication. These deprecated rules have status = 6 in the export list.

Q: I downloaded some rules last month. How can I know if any of these rules have changed?

Answer: On the Search page, filter using "Updated Since". Enter the date of your download and the search will find all rules that have been modified since then. This modification could be a comment (Discussion), an edit to the Statement or supporting information, or a change in Status.

Q: Should there be rules about the content of "version" tables, e.g. WELL_VERSION, FIELD_VERSION?

Answer: No, rules should target the primary tables only. That's where the "best" values are stored.

Q: Should there be rules about the active indicator values? PPDM 3.9 has ACTIVE_IND in most tables.

Answer: That depends on how the active indicator is used in your database. The intention of the developers of the PPDM model was that ACTIVE_IND shows that the data row is live". However, there seems to be some divergence in how the PPDM model is implemented for ACTIVE_IND. Some use it to mean that the business object is "active" (not cancelled, sold, dismantled, superseded, etc.). For this reason, PPDM has not written rules about ACTIVE_IND. That does not mean that such rules could not be valuable in your database.

Q: Why are the coding examples incomplete for most rules?

Answer: The main purpose of the coding example is to help you understand the logical statement. To apply the rule to your database, your must know your data structure and have the skills for coding. Consider rule 8: “Rig release date is less than production volume date”. The coding example is WELL.RIG_RELEASE_DATE is less than PDEN_VOL_SUMMARY.VOLUME_DATE. This coding fragment uses the PPDM 3.9 data model but the rules are intended for any relational database. Even with the PPDM model, your volumes may not be in the table PDEN_VOL_SUMMARY. Whatever language you use, your code must deal with the primary and foreign keys and the relevant PDEN_SUBTYPE (well), and link or subquery to find which well is associated with the production. This is far beyond what can be offered in our coding example.

Many rules are dependent on certain conditions that must be evaluated to isolate the attribute being tested. These conditions are often coded with “if…then” logic. For example, rule 1075 is “In a contract, the national currency conversion rate must have the unit of measure.” First, find the rows with a currency conversion factor, then check for the UOM:


Q: The export file has fields for Entity and Attribute. Why are they missing from the Rule Viewer page?

Answer: Many rules involve more than one entity or attribute, especially rules with if...then logic. However, because each rule tests only one attribute, the value in the attribute field of the database could be misleading. To know which attribute is to be tested, it's best to study the Rule statement and the coding example. In most cases, you can use the desired attribute to search on the Rule statement.