Showing posts with label ontology. Show all posts
Showing posts with label ontology. Show all posts

Tuesday, January 3, 2012

How Many Attributes Do I Have?

Characteristics of a concept - its attributes - are central to definitions.  But to what extent should the characteristics of a concept be listed in its definition?  Should it be few, or some, or as many as possible?  As a step in beginning to answer that question, I think that we need to ask if we can reliably determine all the characteristics that a concept possesesses.  And I now intend to see if I can answer that question by finding out if I can list all the attributes that I possess.

I am aware that I am an instance and not a concept (at least a general concept).  However, I would submit that there is a prima facie case that I should be able to provide a list of my attributes.   If such a list could be produced, then we couldn see if the attributes apply to the concept I am an instance of (humans).  We could then move on to figuring out what attributes should or should not be included in a definition.  But, if I cannot even reliably figure out what attributes I have, then I may have difficulties I have not yet recognized in the method I have chosen to get answers to the questions I am posing.

It is easy to start listing out all the physical characteristics I possess: height, weight, eye color, and so on.  I could add some non-material ones too, such as age, and IQ score.  However, from my experience as a data modeler and developer, these seem rather trivial.  I have come across many examples of database tables such as Customer, where I could conceivably be represented by a record.  These tables have columns (representing attributes) for e.g. Customer Lifetime Value, Customer Sales Year to Date, Customer Average Order Size, and so on.  I would guess that every company for which I am a customer maintains such attributes to describe me. 

Actually, I am guessing.  I know I possess a height, weight, eye color, etc, because I know what these attibutes are and I know I possess them.  However, when it comes to a company of which I am a customer, say, Big Box Super Store, it is not so clear.  Specifically: (a) I do not really know what attributes Big Box Super Store considers I have; and (b) I do not know how Big Box Super Store defines each of these attributes. 

Many of the Customer tables I have seen have had hundreds of columns (attributes).  Some have had thousands.  At this scale, even when working with these tables it is difficult to keep track of all the attributes they are representing.  Admittedly, the tables were not always designed well, and included columns that represented attributes that were not truly part of Customer.  But even allowing for this, the scale is still great.  Furthermore, Big Box Super Store is not the only company I buy from.  I probably have a similar relationship with about 50 other companies.  So the total number of attributes I have as a result of these relationships is certainly in the thousands, maybe in the tens of thousands.

It could be argued that many of these attributes are really the same.  Suppose Big Box Super Store calculates Customer Lifetime Value the same way as Hardbitten Liquors (of which I am also a customer).  Then, are we talking about one attribute or two?  As a practical problem, however, I cannot give an answer to this because I do not know how each company is calculating the attribute each calls "Customer Lifetime Value", or how each defines this attribute.

What I strongly suspect is that I carry around with me a vast burden of attributes that companies, government agencies, educational institutions, and other organizations have heaped on me, mainly without my consent, and certainly without my knowing what they are.  Not as many as the grains of sand on the seashore, or stars in the night sky, but enough to wonder at.

So the answer to the question posed in the title is that I cannot reliably say how many attributes I have, but it must be a vast number, and some of them are likely to be outside my range of understanding.  Does this present an issue for definition work?  I think it does.  It suggests some kind of need for scoping.  It also suggests that I appear in different ontologies, and that my definition in each may vary.  But the Muse of Blogging now decrees an end to the current post, so these topics will have to be taken up when Her inspiration returns.       

Thursday, December 15, 2011

One Term, Many Meanings - Why Are We Surprised?

David Eddy kindly supplied me with the following military tale:

A true story heard around the Pentagon goes like this:

One reason the services have trouble operating jointly is that they don't speak the same language.

"secure a building" has been found to have the following meanings...
  • Navy would turn off the lights and lock the doors.
  • Army would occupy the building so no one could enter. 
  • Marines would assault the building, capture it, and defend it with suppressive fire and close combat. 
  • Air Force, on the other hand, would take out a three-year lease with an option to buy.

I think that we can all appreciate the humor in this, but must recognize that there is something deep and important about it.  But what is the moral in this tale?

The story shows that "secure a building" means different things to four different groups.  In each case the term refers to a different concept.  And in each case the concept is clearly defined.  The concepts are all very distinct - there is no chance of confusing them.

However, the four groups are all part of the same overall organization - the Armed Forces of the United States.  It is a common assumption that one organization is a monolithic semantic community.   The reality is that enterprises are often mosaics of different subcultures, who each see the enterprise through a different ontology.  At least, this is my observation.  I would like to find some research material on it, rather than anecdotes like the one quoted above.

The view that that enterprises are mosaics of subcultures also goes against the idea that there is a single data model - a "single reality", or a "single version of the truth" - that must underlie every enterprise.

Saying that the services "don't speak the same language" is a telling statement.  Rather than suggest that each service has its own view of the world - its own ontology - the fundamental difference is attributed to language.  This brings us back to the idea of the primacy of language over conception, and Wittgenstein's notion that language is the mirror of reality.  I believe these views are invalid, and that we need to "make our ideas clear" as Peirce said, and that language can as easily trick us as inform us. 

Perhaps the lesson for an analyst is not to be surprised when the same term is used to mean different things in the same enterprise.  Indeed, the analyst should be on guard for it when technical or unusual terms are used.  Homonyms can also indicate the existence of different concept systems, or ontologies.