Project

General

Profile

Actions

Bug #1023

closed

Need a pile of business rules written down in one place

Added by Michael Lee over 21 years ago. Updated over 18 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
misc
Target version:
Start date:
03/29/2003
Due date:
% Done:

0%

Estimated time:
Bugzilla-Id:
1023

Description

We need a list of our business rules so that we can know a) if we are enforcing
them and b) let users know about them...

So here's a first cut (as some fields become non-required in the database)
1) If you are submitting a plot that is confidential (plot.confidentialityStatus
<> 0 [public]), you must give a reason in the plot.confidentialityReason field.

2) You must give us your plot size (area) unless it is a plotless releve.

3) You must give us your stratum method if you used strata
4) You must give us your cover method if you used cover classes
4a) you must only use percentages in taxonObservation that match a
coverIndex.coverPercent value for your coverMethod, unless you used percents
directly.

5) you must fill in autoTaxonCover if you used had cover.

---the following have mostly to deal with swimming upstream from a record in a
table---- (foreign keys can be required "downstream", but there is no database
structure which requires a table to reference every PK in a table).

6) at least one classContributor record must be supplied for each commclass record.
6a) at least one commInterpretation record must be supplied for each commclass
record

7) at least one observation must be supplied for each plot
8) at least one observation must be supplied for each project

9) at least one observationContributor must be supplied for each observation (?)
10) at least one projectContributor must be supplied for each project?

11) at least one plant/comm-Status must be supplied for each plant/comm-Concept
12) at least one plant/comm-Usage must be supplied for each plant/comm-Status
13) at least one stratumComposition must be supplied for each stratum record (?)


Related issues

Blocked by VegBank - Bug #793: Build validation package:Default values for some fields (if null)NewMichael Lee11/13/2002

Actions
Actions #1

Updated by Michael Lee about 21 years ago

duplicate stratumMethod_ID - stratumIndex records should not be allowed in
stratumType.

duplicate coverMethod_ID - coverCode records should not be allowed in coverIndex.

Actions #2

Updated by Michael Lee over 20 years ago

Bob emailed on Sun 11 April 2004 and agreed with these business rules as they
are listed so far.

Actions #3

Updated by Michael Lee about 20 years ago

#1 in description (confidentialityReason) is now handled in the embargo table,
as confidentialityReason is a reqd field.

Actions #4

Updated by Michael Lee about 20 years ago

fields with default values (plot,obs,*name.defaultValue) should never be null.
some denorm fields should never be null, after update (*usage.*concept_ID)

Actions #5

Updated by Michael Lee about 20 years ago

business rules are now not completely enforced, but the current status of their
being obeyed is listed here:
http://aldo.vegbank.org/vegbank/forms/businessrules.jsp

This is easily extended to new business rules, as the controller for this is
XML/XSL system, referencing SQLStore and sometimes Database VIEWS (when the SQL
is complex).

Actions #6

Updated by Michael Lee almost 20 years ago

changed from components that are to be deleted to "misc" so that bugs don't get
deleted with component. Sorry for all the email.

Actions #7

Updated by Redmine Admin over 11 years ago

Original Bugzilla ID was 1023

Actions

Also available in: Atom PDF