<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://www.ormfoundation.org/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Developers</title><link>http://www.ormfoundation.org/forums/35.aspx</link><description>For discussing development aspects of the NORMA tool. This includes developer requirements and C# and  XML structures.   </description><dc:language>en</dc:language><generator>CommunityServer 2007.1 (Build: 20917.1142)</generator><item><title>Re: Missing Relational View Table?</title><link>http://www.ormfoundation.org/forums/thread/3154.aspx</link><pubDate>Thu, 29 Nov 2012 22:30:06 GMT</pubDate><guid isPermaLink="false">9d039735-a311-4a8d-9c49-a0bb2572af9e:3154</guid><dc:creator>Clifford Heath</dc:creator><slash:comments>0</slash:comments><comments>http://www.ormfoundation.org/forums/thread/3154.aspx</comments><wfw:commentRss>http://www.ormfoundation.org/forums/commentrss.aspx?SectionID=35&amp;PostID=3154</wfw:commentRss><description>&lt;p&gt;The one truly stable identifier that a building has is not a name or an artificially-allocated ID, but a location. Buildings don&amp;#39;t tend to wander around. You could assign a stable identifier using GPS coordinates, and then add human names and IDs as non-preferred identifiers, and even include time-relevance to indicate current and past usage. It all depends on the cost of using a stable but uncommonly-used identifier, versus the cost of changing an identifier to track common usage.&lt;/p&gt;

&lt;p&gt;Personally I lean towards needing to support identifier change, including propagation to foreign keys. When my databases need to do this, I use delayed FK enforcement if available, otherwise a stored procedure that  suspends enforcement, makes changes and re-applies FK enforcement, all in a transaction. The only real difficulty is with the technologies at play, there&amp;#39;s no conceptual difficulty here.&lt;/p&gt;

&lt;p&gt;In regard to the identity of a university, we had a change here a decade or so back where many of our institutions were broken into bits and the bits re-assembled into fewer new institutions, mostly with new names. How do you define identity in the face of change like that? I mean, almost none of the tertiary institutions had the same make-up as before, even though some of the names were carried forward. The real world is complicated. We only ever model enough of it to suit our perceived needs&lt;/p&gt;</description></item><item><title>Re: Missing Relational View Table?</title><link>http://www.ormfoundation.org/forums/thread/3149.aspx</link><pubDate>Thu, 29 Nov 2012 04:44:00 GMT</pubDate><guid isPermaLink="false">9d039735-a311-4a8d-9c49-a0bb2572af9e:3149</guid><dc:creator>Ken Evans</dc:creator><slash:comments>0</slash:comments><comments>http://www.ormfoundation.org/forums/thread/3149.aspx</comments><wfw:commentRss>http://www.ormfoundation.org/forums/commentrss.aspx?SectionID=35&amp;PostID=3149</wfw:commentRss><description>&lt;p&gt;Richard,&lt;/p&gt;&lt;p&gt;Hope this helps.&lt;br /&gt;&lt;br /&gt;Ken&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;Data in flat files and spreadsheets&lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;Even
though it is not immediately apparent, such data represents propositions that
can be stated in language.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;For example:&lt;/span&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;span style="font-size:10pt;"&gt;Student
(.nr) achieved Score ( ) in Test (.code) on Date ()&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;span style="font-size:10pt;"&gt;So your
first task is to study the flat files and spreadsheets and extract the fact
types. Then you can put the fact types into NORMA using the CSDP.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;Student Understanding &lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;I’m
having a debate about similar matters in a discussion forum hosted by Professor
Dan McFarland at Stanford University. My conclusion is that one must begin with
some very fundamental stuff that is rarely if ever challenged by academics and managers at
Universities.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;span style="font-size:10pt;"&gt;For
example, exactly what is “understanding” and how can it be measured? People
often say things like “We have to ensure that students understand (insert
subject name)”. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;But when you question
these folks they often define one set of words with another set of words. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;span style="font-size:10pt;"&gt;My
position on this is that you have to define things by providing a set of binary
propositions for which evidence can be provided to test whether the propositions
are either true or false. I’ll give an example from my piloting experience:&lt;/span&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;The student&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt; &lt;b style="mso-bidi-font-weight:normal;"&gt;understands&lt;/b&gt; how to perform a steep turn
&lt;b style="mso-bidi-font-weight:normal;"&gt;when the following propositions are all true:&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p style="margin-left:36pt;"&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;P1:&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt; The steep turn starts
and ends on the same heading.&lt;br /&gt;
&lt;b style="mso-bidi-font-weight:normal;"&gt;P2:&lt;/b&gt; After entering the turn, the
aircraft maintains a constant 60 degree angle of bank (plus or minus one
degree) until the roll-out manoeuvre starts.&lt;br /&gt;
&lt;b style="mso-bidi-font-weight:normal;"&gt;P3:&lt;/b&gt; The aircraft maintains a
constant altitude (plus or minus 20 feet) between the start of the turn until
the roll-out has been completed.&lt;br /&gt;
&lt;b style="mso-bidi-font-weight:normal;"&gt;P4:&lt;/b&gt; Throughout the turn, the aircraft
maintains a constant speed (plus or minus 2 knots) &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;"&gt;In other
words, it seems to me that the only way that you can measure “understanding” is
by measuring some kind of observable behaviour. (Same thing goes for “knowledge”)
&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;Generating Reports&lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;As
you say, if you get the schema right then you can generate any kind of report
that you like.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;"&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;Getting insight into how you can improve
the education process. &lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;This
is related to the scope of the model (and by inference the scope of the database).
You have to begin by defining the metrics (indicators in business speak). This
has nothing whatsoever to do with ORM.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;
&lt;/span&gt;Either you know what you have to measure to monitor the performance of
the “education process” or you don’t. I’d say that a good place to start is to
define what you mean by “the education process” &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;You said: “It is difficult to anticipate
questions”&lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;Maybe
I misunderstand you but I must say that I don’t see what the problem is. If you
have implemented a database then you can use SQL to ask any question that you
like so you don’t have to “anticipate questions”, you just have to be good at
writing SQL queries. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;Adding new types of data&lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;Again
I don’t see the problem. If you want to change your schema than the procedure
is to begin by changing your object-role model, then you generate a new schema
and then you move the existing data from the “old” schema to the “new” schema.
Don’t see what “flexibility” has to do with it.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;“Similar, yet different, ways of looking at
the UoD”&lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;Yes
it is sometimes the case that you can model a UoD in several different ways.
However, the acid test is whether the domain experts agree with the fact types
in each different model. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;Limiting the UoD to a single academic
institution&lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;Well,
I just used that as an example of to highlight the relationship between an
atomic fact and a given UoD. It was not my intention to “recommend” that you
limited the scope of your model to a single University. If you need to model a
UoD with multiple Universities then that’s what you have to do (Don’t forget to
follow the CSDP) &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;“I am wondering if that decision was
correct…”&lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;Well,
at some stage you have to make a decision about the scope of the UoD that you
want to model. I don’t see that the concept of “correctness” enters into it. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;“The choice of reference modes seemed
inconsistent with the real world…there is a finite, albeit extremely small,
possibility that this notice can change for whatever reason, even though the
room itself does not change.”&lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;Again,
you just have to make up your mind about what you want to model. According to Dr
Graeme Simsion’s work, data modeling is a creative act not a descriptive act. (See
the research page) &lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;“The
same notice may actually appear on doors to rooms in different buildings.” &lt;/b&gt;Then
you model it by defining a fact type that uses Building (.name) and Room (.code)
in a way that means that uniqueness is related to the combination of building
and room. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;(Same for Campus (.name) and University (.name))&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;"&gt;This is
all about figuring out the nature of the “atomic” facts in your UoD.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;Name change for a state university&lt;br /&gt;
&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;I
can think of two ways to handle this. &lt;br /&gt;
(a) You accept that whatever name is in the database is “true today” and put
good procedures in place to update the appropriate columns.&lt;br /&gt;
(b) Add “temporal” fact types such as:&lt;br /&gt;
&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;“University (.nr) has Name () from Date ()
to Date () &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:10pt;"&gt;The problem of changing names and
identifiers is especially true for buildings. &lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:10pt;"&gt;You can treat the
changes of building names in the same way as I have suggested that you can
change University names. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;"&gt;&lt;br /&gt;
&lt;b style="mso-bidi-font-weight:normal;"&gt;There exists a building (or room, or
campus, etc.) That building may have one or more names. It also has one or more
codes/identifiers that appear in various documents, such as class schedules,
maps, etc. to represent the building…Searching for a way to model the
distinction between an actual room and the notice on its door.&lt;/b&gt; &lt;br /&gt;
However you model it, I recommend that you do &lt;i style="mso-bidi-font-style:normal;"&gt;NOT&lt;/i&gt; use an “ID” (i.e. a GUID) because GUID’s are definitely not
related to a conceptual model. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;"&gt;I
recommend that you use an identifier that you can write down on a piece of
paper and give to someone with the instruction “Please go to this room” (You
could not do that with a GUID)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt;"&gt;&lt;br /&gt;
&lt;b style="mso-bidi-font-weight:normal;"&gt;Previous work (before the year 2000)
indicated that our facilities management organization had assigned identifiers
to rooms (not the same as the notices on the door)……&lt;br /&gt;
&lt;/b&gt;Yes, it seems to be the case that very few organisations have got a grip on
the “data management” problem. Many organisations that I have seen have the “departmentalitis”
&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;disease.
In other words, departments behave as though they are independent and assign
their own “identifiers” to all sorts of things. This is just a costly way of
creating an expensive mess!&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;/p&gt;</description></item><item><title>Re: Missing Relational View Table?</title><link>http://www.ormfoundation.org/forums/thread/3148.aspx</link><pubDate>Thu, 29 Nov 2012 01:17:26 GMT</pubDate><guid isPermaLink="false">9d039735-a311-4a8d-9c49-a0bb2572af9e:3148</guid><dc:creator>neutrino0112</dc:creator><slash:comments>0</slash:comments><comments>http://www.ormfoundation.org/forums/thread/3148.aspx</comments><wfw:commentRss>http://www.ormfoundation.org/forums/commentrss.aspx?SectionID=35&amp;PostID=3148</wfw:commentRss><description>&lt;p&gt;Ken,&lt;/p&gt;&lt;p&gt;Good points.&lt;br /&gt;Let me give you a little background on this project. As a semi-retired computer/communications&lt;br /&gt;system engineer with a longstanding interest in education and in physics, I&lt;br /&gt;became interested in the work being done by the physics education research&lt;br /&gt;group at the University of Minnesota.&lt;/p&gt;&lt;p&gt;One aspect of our research is the measurement of conceptual understanding of physics&lt;br /&gt;principles by students taking introductory physics courses. To that end, we administer&lt;br /&gt;tests (e.g., the Force Concept Inventory, etc.) and surveys at the beginning&lt;br /&gt;and end of each academic term. We have data that goes back to the mid-1990s; however,&lt;br /&gt;it is not well organized (e.g., in flat files and spreadsheets).&lt;/p&gt;&lt;p&gt;I am trying to create a database that will organize this data, along with data related to&lt;br /&gt;courses, classes, people, grades, pedagogy, textbooks and anything else that we&lt;br /&gt;can think of which might affect student understanding. Currently, I have two&lt;br /&gt;objectives for the database - first, to be able to generate reports for&lt;br /&gt;distribution to faculty and second, to be able to extract information that&lt;br /&gt;might provide insight into how we can improve the education process. The first&lt;br /&gt;objective is easier to achieve because reports can be generated&lt;br /&gt;algorithmically. The second objective is more problematic because it is&lt;br /&gt;difficult to anticipate what questions might be asked of the data. In addition,&lt;br /&gt;the database design must be flexible enough to add new types of data that might&lt;br /&gt;be of interest. That is why it is important to get a good conceptual model of&lt;br /&gt;the UoD from the beginning.&lt;/p&gt;&lt;p&gt;What you have seen is only a small fragment of the total model. However, it is one that&lt;br /&gt;has caused me a lot of problems because I have found several similar, yet&lt;br /&gt;different, ways of looking at the UoD when there are constraints on when a&lt;br /&gt;class is held and where it is held. This, in turn, affects how the conceptual model&lt;br /&gt;is developed. I&amp;#39;ve been working on this for a while and have already taken some&lt;br /&gt;of your recommendations into consideration. For example, I have limited the UoD&lt;br /&gt;to a single academic institution which, in our case, physically spans more than&lt;br /&gt;one campus. Now, I am wondering if that decision was correct since other&lt;br /&gt;institutions have expressed some interest in this project.&lt;/p&gt;&lt;p&gt;Actually, I started out by modeling as:&lt;/p&gt;&lt;p&gt;&lt;em&gt;Room(.code) is in Building(.name) on Campus(.name)&lt;/em&gt;&lt;em&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;However, the choice of reference modes seemed inconsistent with the real world situation. Following&lt;br /&gt;your example, when I stand outside my office, I see a notice on the door that&lt;br /&gt;says &amp;quot;161B&amp;quot;. However, there is a finite, albeit extremely small, possibility&lt;br /&gt;that this notice can change for whatever reason, even though the room itself&lt;br /&gt;does not change. Another problem with higher probability is that the same&lt;br /&gt;notice may actually appear on doors to rooms in different buildings. Similar&lt;br /&gt;arguments can be made for Campus(.name), Campus(.id), even University(.name). A&lt;br /&gt;few years ago, we saw a name change for a state university from Mankato State&lt;br /&gt;University to Minnesota State University - Mankato. &lt;/p&gt;&lt;p&gt;The problem of changing names and identifiers is especially true for buildings. We have a situation in the real world that we&lt;br /&gt;are trying to accurately and consistently represent in out conceptual model.&lt;br /&gt;There exists a building (or room, or campus, etc.) That building may have one&lt;br /&gt;or more names. It also has one or more codes/identifiers that appear in various&lt;br /&gt;documents, such as class schedules, maps, etc. to represent the building. For&lt;br /&gt;example:&lt;/p&gt;&lt;p&gt;Building&amp;nbsp;&amp;nbsp;&amp;nbsp; Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Identifier&lt;/p&gt;&lt;p&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Electrical Engineering/Computer Science&amp;nbsp;&amp;nbsp; EECsci&lt;/p&gt;&lt;p&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Nils Hasselmoe Hall&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NHH&amp;nbsp;&lt;/p&gt;&lt;p&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Physics&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Phys&lt;/p&gt;&lt;p&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Tate Laboratory of Physics&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Phys&lt;/p&gt;&lt;p&gt;Consequently, I began searching for a way to model the distinction between an actual room and&lt;br /&gt;the notice on its door. One possibility was to use an identifier (i.e., .id).&lt;br /&gt;Previous work (before the year 2000) indicated that our facilities management&lt;br /&gt;organization had assigned identifiers to rooms (not the same as the notices on&lt;br /&gt;the door), buildings and campuses within the University of Minnesota system. While&lt;br /&gt;I was tempted to use these assignments, after careful reflection, I realized&lt;br /&gt;that this approach may not be generalized since those in other institutions may&lt;br /&gt;not have access to the equivalent information. The only alternative I could&lt;br /&gt;conceive was to use a number (.nr) or system generated identifier (.id) to&lt;br /&gt;assure uniqueness and to draw the distinction.&lt;/p&gt;&lt;p&gt;In essence, this is the problem I am trying to model with this fragment. Any suggestions&lt;br /&gt;would be appreciated. I think at this point that we are discussing more of an&lt;br /&gt;ORM issue than a NORMA issue.&lt;/p&gt;&lt;p&gt;Richard&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;</description></item><item><title>Re: Missing Relational View Table?</title><link>http://www.ormfoundation.org/forums/thread/3145.aspx</link><pubDate>Sat, 24 Nov 2012 19:30:56 GMT</pubDate><guid isPermaLink="false">9d039735-a311-4a8d-9c49-a0bb2572af9e:3145</guid><dc:creator>Ken Evans</dc:creator><slash:comments>0</slash:comments><comments>http://www.ormfoundation.org/forums/thread/3145.aspx</comments><wfw:commentRss>http://www.ormfoundation.org/forums/commentrss.aspx?SectionID=35&amp;PostID=3145</wfw:commentRss><description>&lt;p&gt;Hi Richard,&lt;/p&gt;&lt;p&gt;I&amp;#39;m glad that you found the examples to be helpful.&lt;/p&gt;&lt;p&gt;Regarding reference modes. As a matter of principle, I use &amp;quot;real world&amp;quot; reference modes wherever possible.&lt;br /&gt;So&amp;nbsp;in my earlier example, if you stand outside&amp;nbsp;room MB1023 you will see a notice on the door that says &amp;quot;MB1023&amp;quot;.&lt;br /&gt;However, I have used &amp;quot;.nr&amp;quot; for address because in the &amp;quot;real world&amp;quot; there isn&amp;#39;t a&amp;nbsp; single column reference for each address so I made one up. &lt;/p&gt;&lt;p&gt;One other thing that I should have pointed out is that what we call an &amp;quot;Atomic&amp;quot; or &amp;quot;Elementary&amp;quot;&amp;nbsp;fact type is one that cannot have a smaller number of object types without loosing information. (i.e. the arity of a fact type has semantic significance.)&lt;/p&gt;&lt;p&gt;So, in my&amp;nbsp;example, one of the fact types has an arity of 4. (Has&amp;nbsp;four &amp;quot;holes&amp;quot; for object types)&lt;/p&gt;&lt;p&gt;However, as an object-role&amp;nbsp;modeler you need to be very mindful of&amp;nbsp;the scope of the Universe Of Discourse (UoD) because the scope is defined by the context of the model. For example, if you have been asked to make a model for just&amp;nbsp;one university, then &lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;this arity 4 fact type:&lt;/em&gt;&lt;/strong&gt; &lt;em&gt;Room(.code) is in Building(.name) on Campus(.name) of University(.name)&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;reduces to this arity 3 fact type:&lt;/em&gt;&lt;/strong&gt;&amp;nbsp;&lt;em&gt;Room(.code) is in Building(.name) on Campus(.name)&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Why is that?&lt;/p&gt;&lt;p&gt;Well it is because the property of &amp;quot;atomicity&amp;quot; is related to&amp;nbsp;the scope of the UoD.&lt;/p&gt;&lt;p&gt;If your model is for just&amp;nbsp;one university, then the object-type &amp;quot;University(.name)&amp;quot; is not needed because all of the fact types in your model will refer to the same university - which is implicit in the predefined scope and thus is redundant.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Regarding additional reading:&lt;/strong&gt; Firstly, I recommend that you &lt;strong&gt;thoroughly&lt;/strong&gt; go through the BBB before looking at other stuff. You might also look up some of the papers that are referenced in the &amp;quot;ORM Events&amp;quot; section of the Library.&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Over the years, I have read and accumulated dozens of books on data modeling but&amp;nbsp;the term&amp;nbsp;&amp;quot;modeling in general&amp;quot; -&amp;nbsp;probably includes thousands of books and many more scientific papers.&amp;nbsp;&lt;/p&gt;&lt;p&gt;Probably the easiest way to find some of them&amp;nbsp;is to go to Amazon and search for &amp;quot;Data modeling&amp;quot;.&lt;/p&gt;&lt;p&gt;My suggestion is that you pose a more precise question and I&amp;#39;ll see what&amp;nbsp;I can come up with.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;And when you are thinking about your &amp;quot;more precise question&amp;quot;, may I suggest that you begin by asking yourself the question &amp;quot;What problem am I trying to solve.&amp;quot;&amp;nbsp; (Hint: A problem is something that prevents you from achieving an objective.)&lt;/p&gt;&lt;p&gt;i.e. Where are you trying to get to and what&amp;#39;s in the way?&amp;nbsp;&lt;/p&gt;&lt;p&gt;Ken&amp;nbsp;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Re: Missing Relational View Table?</title><link>http://www.ormfoundation.org/forums/thread/3144.aspx</link><pubDate>Sat, 24 Nov 2012 18:12:27 GMT</pubDate><guid isPermaLink="false">9d039735-a311-4a8d-9c49-a0bb2572af9e:3144</guid><dc:creator>neutrino0112</dc:creator><slash:comments>0</slash:comments><comments>http://www.ormfoundation.org/forums/thread/3144.aspx</comments><wfw:commentRss>http://www.ormfoundation.org/forums/commentrss.aspx?SectionID=35&amp;PostID=3144</wfw:commentRss><description>&lt;p&gt;Ken,&lt;/p&gt;&lt;p&gt;&amp;nbsp;Aha - Insight! I think that I am beginning to see a glimmer of light in what you and Matt are emphasizing. Your examples are most useful; although, I need to ponder them more. Please correct me if I&amp;#39;m wrong, but the first thought is that when considering reference modes, I should be thinking about using ones that make sense in the real world -&amp;nbsp;Rooms have numbers that might be thought of as codes, Buildings are most often referred to by their names, as are Campuses and Institutions. The next thought is that, while I have considered internal uniqueness constraints, I may need to reevaluate them and, moreso, pay attention to external uniqueness constraints. Furthermore, and this is something that has received almost no attention, I need to look at mandatory role constraints.&lt;/p&gt;&lt;p&gt;Thanks to both you and Matt. That said, I pose the same question to you that I asked of Matt&amp;nbsp;&lt;span style="font-size:11pt;mso-fareast-font-family:Calibri;mso-fareast-theme-font:minor-latin;mso-ascii-theme-font:minor-latin;mso-hansi-theme-font:minor-latin;mso-bidi-theme-font:minor-bidi;mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;– any advice on additional reading
(books, online sources, etc.) about&amp;nbsp;modeling in general and/or ORM – beyond the
Big Brown Book?&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:11pt;mso-fareast-font-family:Calibri;mso-fareast-theme-font:minor-latin;mso-ascii-theme-font:minor-latin;mso-hansi-theme-font:minor-latin;mso-bidi-theme-font:minor-bidi;mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&amp;nbsp;:-)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:11pt;mso-fareast-font-family:Calibri;mso-fareast-theme-font:minor-latin;mso-ascii-theme-font:minor-latin;mso-hansi-theme-font:minor-latin;mso-bidi-theme-font:minor-bidi;mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;Richard&lt;/span&gt;&lt;/p&gt;</description></item><item><title>Re: Missing Relational View Table?</title><link>http://www.ormfoundation.org/forums/thread/3143.aspx</link><pubDate>Sat, 24 Nov 2012 09:55:25 GMT</pubDate><guid isPermaLink="false">9d039735-a311-4a8d-9c49-a0bb2572af9e:3143</guid><dc:creator>Ken Evans</dc:creator><slash:comments>0</slash:comments><comments>http://www.ormfoundation.org/forums/thread/3143.aspx</comments><wfw:commentRss>http://www.ormfoundation.org/forums/commentrss.aspx?SectionID=35&amp;PostID=3143</wfw:commentRss><description>&lt;p&gt;Hello Richard,&lt;/p&gt;&lt;p&gt;Here is my 2 cents worth which I hope will be of help.&lt;/p&gt;&lt;p&gt;I&amp;#39;ll pick up on what&amp;nbsp;Matt said &amp;quot;get your model conceptually correct first&amp;quot; and use room number as an example, &lt;/p&gt;&lt;p&gt;It is true that all rooms in the world are unique. Thus, some people&amp;nbsp;might argue that this means that using&amp;nbsp;a GUID or an integer to &amp;quot;identify&amp;quot; a room is OK. However, it is not the case that a domain expert would recognise a link between the GUID or the integer and the room because these are not &amp;quot;conceptual &amp;quot; identifiers.&amp;quot;&amp;nbsp;&lt;/p&gt;&lt;p&gt;One way of finding a conceptual identifier for a room is to ask some one who uses the room (aka a domain expert) to make statements about the room and its location. &amp;nbsp;Thus, someone might say, &amp;quot;The room on the left at the top of the&amp;nbsp;stairs to the first floor in the Science building. &amp;quot; They might also say &amp;quot;Room MB1023&amp;quot; or room &amp;quot;BL1107.&amp;quot;&lt;/p&gt;&lt;p&gt;Now it is the case that rooms MB1023 and BL1107 do exist. However the room numbers are what might be called &amp;quot;local&amp;quot; names because they refer to rooms on the campus of the University of Lincoln in the UK. Room MB1023 is in the &amp;quot;Main Building on the first floor&amp;quot; and&amp;nbsp;Room BL1107 &amp;nbsp;is in the building with the name &amp;quot;Business and Law&amp;quot;&lt;/p&gt;&lt;p&gt;Now suppose you met someone by chance whilst you were a passenger on&amp;nbsp;a plane and in the conversation the person said, &amp;quot;My most recent&amp;nbsp;lesson was in room MB1023&amp;quot; .&amp;nbsp; Being curious, you might ask, &amp;quot;Where is that?&amp;quot; and you might get the response &amp;quot;It&amp;#39;s on the first flloor of the Main Building.&amp;quot; You might follow&amp;nbsp;up with &amp;quot;Which Main Building is that?&amp;quot; and so on.&lt;/p&gt;&lt;p&gt;Eventually you would end up with a UK postal address and a description of the layout of the buildings and rooms on one of the campuses of the University of Lincoln.&lt;/p&gt;&lt;p&gt;From this, you might get the following fact types:&lt;/p&gt;&lt;p&gt;Room(.code) is in Building(.name) on Campus(.name) of University(.name)&lt;/p&gt;&lt;p&gt;University(.name) is at Address(.nr)&lt;/p&gt;&lt;p&gt;Address(.nr) is in Country(.code)&amp;nbsp; and so on...&lt;/p&gt;&lt;p&gt;This is an example of what Matt meant by &amp;quot;get your model conceptually correct first&amp;quot;.&lt;/p&gt;&lt;p&gt;Ken&lt;/p&gt;</description></item><item><title>Re: Missing Relational View Table?</title><link>http://www.ormfoundation.org/forums/thread/3142.aspx</link><pubDate>Fri, 23 Nov 2012 21:21:23 GMT</pubDate><guid isPermaLink="false">9d039735-a311-4a8d-9c49-a0bb2572af9e:3142</guid><dc:creator>neutrino0112</dc:creator><slash:comments>0</slash:comments><comments>http://www.ormfoundation.org/forums/thread/3142.aspx</comments><wfw:commentRss>http://www.ormfoundation.org/forums/commentrss.aspx?SectionID=35&amp;PostID=3142</wfw:commentRss><description>&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;Matt,&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;Thanks for the
critique of my model. The advanced database design course I took from Gordon
Everest in the spring of 2010 introduced me to ORM and NORMA. I was instantly
sold on it because it filled a nagging discomfort with diving directly into an
ER model. ORM provided &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;the ability to
verbally express the physical situations I am trying to model. Now, I am faced
with a real project with the Physics Education Research Group at the University
of Minnesota. There has also been some interest by certain members of the
University of St. Thomas physics department. This leaves me with a dilemma
since I am venturing into new territory with limited experience. Since you have
probably seen model fragments for many of these situations, any advice to
improve the model is appreciated.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;Now, let’s turn
to the model. I agree with your observation about the overuse of the .nr
reference mode. When I first thought about the appropriate reference mode for
Room, Building and Campus objects, I ran into several dilemma. For the Building
object, .name reference mode didn’t fit because in the real world, building names
change. For example, the UofM Electrical Engineering/Computer Science building
was renamed a few years ago to Nils Hasslemo Hall and the Physics building is
also known as the Tate Laboratory of Physics. A similar problem exists with the
.id reference mode. While the first corresponding building identifier changed
from EE/CSci to NHH, the second corresponding identifier has always been Phys. This
still leaves the problem of selecting an appropriate reference mode that
satisfies the requirement for a 1:1 association. (In this context, I use the
word “association” rather than “relationship” because the latter might be
confusing since it is also use in ER modeling with a different connotation.)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;&lt;font size="3"&gt;Since, there
is a 1:n association between the actual building and its name and/or identifier
values and I wanted to provide for their values in the model, I introduced the value
objects &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;RoomIdentifier, BuildingName,
BuildingIdentifier, CampusName and CampusIdentifier. The distinction here is
that these are simply values that are associated with one or more of the
objects with which they are associated. I’m not sure whether this makes sense –
perhaps an example will illustrate the distinction I am trying to convey.
Assume we have an ORM object called Room(.id). The .id values referred to here
have a 1:1 association with a room. They might be some identifier values from a
facilities management organization or they might be assigned by a numeric auto
counter. There is also a RoomIdentifier value object with values that are the
room numbers appearing outside the door to a room. These values can be in a n:1
association.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;As you
mentioned, using a preferred external uniqueness constraint makes sense between&amp;nbsp;the
Building role of &amp;#39;Room is located in Building&amp;#39; and the RoomNumber role of &amp;#39;Room
has RoomNumber&amp;#39;. I need to think about a similar constraint between Building
and Campus, or perhaps all three. I’m not sure since the internal uniqueness
constraints are different.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;As a newbie
to ORM, you might have guessed that I am struggling, so I appreciate any help
you can provide. I will be refocusing on the verbalizations and internal
uniqueness constraints rather than the resulting relational model created by
NORMA. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;One question – any advice on
additional reading (books, online sources, etc.) about ORM and modeling in
general – beyond the Big Brown Book. I don’t like to reinvent the wheel and I’m
always looking for good examples&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;ORM
fragments that may have addressed some of the issues related the model I am working
on. I suspect that these are issues that have already been addressed by other
modelers.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;&lt;/font&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;:-)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p style="margin:0in 0in 0pt;" class="MsoNormal"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;Richard&amp;nbsp;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;font size="3" face="Times New Roman"&gt;

&lt;/font&gt;</description></item><item><title>Re: Missing Relational View Table?</title><link>http://www.ormfoundation.org/forums/thread/3141.aspx</link><pubDate>Wed, 21 Nov 2012 18:23:07 GMT</pubDate><guid isPermaLink="false">9d039735-a311-4a8d-9c49-a0bb2572af9e:3141</guid><dc:creator>Matthew Curland</dc:creator><slash:comments>0</slash:comments><comments>http://www.ormfoundation.org/forums/thread/3141.aspx</comments><wfw:commentRss>http://www.ormfoundation.org/forums/commentrss.aspx?SectionID=35&amp;PostID=3141</wfw:commentRss><description>&lt;p&gt;Campus plays no functional roles (single-column&amp;nbsp;uniqueness constraint on a role played by Campus) outside of its identifier and no mandatory roles at all. You won&amp;#39;t get a table in this case unless you mark Campus as IsIndepdent.&lt;/p&gt;
&lt;p&gt;There are&amp;nbsp; alot of ways to improve you model. I think you are way overusing a .Nr reference mode. In fact, I don&amp;#39;t think there is any use of .Nr here that is worthwhile. For example, room has a number, but it cannot be the number displayed beside the room because it must be unique for all rooms. A room is generally identified by its number and the building it is located it, which would mean using a preferred&amp;nbsp;external uniqueness constraint from&amp;nbsp;the Building role of &amp;#39;Room is located in Building&amp;#39; and the RoomNumber role of &amp;#39;Room has RoomNumber&amp;#39;.&lt;/p&gt;
&lt;p&gt;Once you&amp;#39;ve established these conceptual identifiers, you may want to add surrogate keys using&amp;nbsp;a .id reference mode, but get your model conceptually correct first.&lt;/p&gt;
&lt;p&gt;General, something called &amp;#39;identifier&amp;#39; will be one-to-one with the thing it identifies. Currently you have one many-to-one identifier (for room) and two one-to-many identifiers (for campus and building).&lt;/p&gt;
&lt;p&gt;There are other oddities as well, such as BuildingName applying to at most one building. This means that you can&amp;#39;t have a &amp;#39;Student Union&amp;#39; or &amp;#39;Physics Hall&amp;#39; on more than one campus.&lt;/p&gt;
&lt;p&gt;The bottom line here is that your relational model doesn&amp;#39;t look like what you&amp;#39;re expecting because the constraints in the conceptual model don&amp;#39;t match the domain you&amp;#39;re modelling. I&amp;#39;d recommend going over all of the verbalizations--especially those pertaining to your reference modes and internal uniqueness constraints. Also verif with some sample populations, then worry about the relational model.&lt;/p&gt;
&lt;p&gt;-Matt&lt;/p&gt;</description></item><item><title>Missing Relational View Table?</title><link>http://www.ormfoundation.org/forums/thread/3140.aspx</link><pubDate>Wed, 21 Nov 2012 17:06:39 GMT</pubDate><guid isPermaLink="false">9d039735-a311-4a8d-9c49-a0bb2572af9e:3140</guid><dc:creator>neutrino0112</dc:creator><slash:comments>0</slash:comments><comments>http://www.ormfoundation.org/forums/thread/3140.aspx</comments><wfw:commentRss>http://www.ormfoundation.org/forums/commentrss.aspx?SectionID=35&amp;PostID=3140</wfw:commentRss><description>&lt;p&gt;I&amp;#39;ve been using NORMA_VS2008_2012-04CTP Build 1487 to model university class meeting patterns for a physics education research database. The attached, zipped&amp;nbsp;.orm and .docx files show the tables generated in the relational view. It seems that there may be a missing table that should be called Campus. The verbalization seems to imply that it should be there. The Building, CampusName and CampusIdentifier tables all have entries (i.e., CampusNr) that, while not specifically identified as such,&amp;nbsp;could possibly be identified as foreign keys. Am I wrong about this, or is something actually missing?&lt;/p&gt;&lt;p&gt;:-)&lt;/p&gt;&lt;p&gt;Richard&lt;/p&gt;</description></item></channel></rss>