On Wed, Nov 17, 2004 at 08:18:38PM -0600, path wrote:
> It is useful to create example for each fact then you can get reading such
> as:
> Application Setting "Back Color" has Setting "Blue"
> User "1" overrides Application Setting "Back Color" as "Yellow"
> This is a ternary sentence with the (IU)
> constraints over User and Application Setting
> That is a user can override the setting only once.
If I were to write out that constraint, would it look something like the
following:
C1 User has at most one Application Setting
> The application could then see if the user has an overriding entry for the
> same application + application setting.
This is important!
> Always use examples while modeling. It makes it easier. It also makes it
> easier to present the model to others.
Good point that I'm quickly learning. See my recent message to Andy
which has some examples.
> The tool also will analyze examples and do the (IU) constraint for
> you.
I presume you mean visio when you say "tool". I'm using paper and pencil
for speed since I'm working mostly by myself.
> These sentences would allow you to add new settings without changing the
> database. It is a generalization of the specific sentences. There are a
> couple of possible other facts. Application has Application Setting.
Would I need the "Application has ApplicationSetting" fact if this is
only for a single application?
> You may want to indicate that the Application Setting can be
> overridden by the user or not.
> That would only be true if some application settings are not changeable.
Yes, that's exactly what I was trying to grasp in the message I just
wrote to Andy. I'm not sure how to write this though. Would it be a fact
or a constraint?
Let me try rewriting the reference scheme given your examples (please
revise as you see fit):
Reference schemes: ApplicationSetting(Code), OptionSetting(Code), User(Id)
Base fact types: F1 ApplicationSetting "PrintStatementHeading" has
OptionSetting "True"
F2 User "c1" overrides ApplicationSetting
"PrintStatementHeading" as OptionSetting "False"
Constraints: C1 User has at most one Application Setting
Derivation Rules: none
> Keep going you are doing well.
Thanks for your tips and support,
William
--
Knowmad Services Inc.
http://www.knowmad.com