Re: ORM Compound Reference Scheme Problem

From: Scot A. Becker <scot_at_orthogonalsoftware.com>
Date: Sat, 15 Jun 2002 00:50:27 GMT
Message-ID: <nbwO8.7897$mp1.208059_at_twister.rdc-kc.rr.com>


Hi Chris,

> If only I'd looked at the sample populations in my original posting I'd
have
> seen that my comment below re uniqueness over the first role of the
ternary
> was wrong!

I provide training in ORM, and the course relies heavily on providing sample data. Inevitably, a student will ask if I _always_ use sample data to verify _every_ fact/constraint in my model.

I used to hate that question, because of the whole practice-what-you-preach comeback. After all, in UoDs I am familiar with or with patterns I have seen before, I sometimes skip that step.

But then I realized a better answer: No, I don't always use sample data. However, everytime I have screwed up a model, sample data discovered the error and would have kept me from making the mistake in the first time. <s>

> So I still have the problem of showing graphically the combination of two
> occurrences of the same fact to derive the compound reference.

Do you mean graphically showing the example data? If so, Visio does not support this per se, however, you could always add text above the predicate. In so doing, your previous post had a good way of doing this by using brackets to contain the multiple elements that make up the reference mode of the object ala:

OSGridRef SomeData
------------- ----------
<219, 729> SomeValue

If you meant how to form the facts and show the compound reference mode:

  1. Add the two facts: OSGridRef is partially identified by Easting Value(), OSGridRef is partially identified by NorthingValue()
  2. Make the OSGridRef role of both facts unique and mandatory.
  3. Highlight both predicates, right click, and select "Add Constraints"
  4. Select "Uniqueness" in the drop down list, click on both the Easting Value and Northing Value roles
  5. Select "Primary"
  6. Click Accept/OK.

You'll note that an external uniquness constraint is now formed between the two roles selected above. Furthermore, this constraint is annotated with a "P", indicating that it is the primary reference mode of the OSGridRef.

Hope that helps,
Scot.



Scot A. Becker

Software Consultant & Founder
Orthogonal Software Corporation
http://www.orthogonalsoftware.com Received on Sat Jun 15 2002 - 02:50:27 CEST

Original text of this message