From W3C Wiki
Jump to: navigation, search

Questions on HL7/RIM

Please enter your questions on this page.

  • Questioner's Name: Question 1 comes here...

Dan Russler: Question 1--I'll ask Vipul's question...What do instance identifiers represent in the UML diagram?

Answer: This answer is best addressed by first referencing the semantic (semiotic) triangle in the presentation where each concept "in the mind's eye" corresponds (in the case of a physical object) to a specific mass (atoms, molecules, etc) in the world, which represents the second corner of the instance of the semantic triangle. The third corner represents the multiple symbols for the instance of the semantic triangle. These symbols can be words, codes, pictures, UML models, XML structures, conceptual graphs, RDF triples, database records, etc.

Returning to the concept of instance identifiers...We can examine the semantic triangle for opportunities to explore instance identifiers. Of course, the concept "in the mind's eye" is really just a set of neurons firing in the brain. There are no instance identifiers to attach to a set of neurons firing in the brain. In the second corner of the semantic triagle, the mass is an instance of a kind of mass in the physical world, but few objects with mass have identifiers incorporated into the physical mass. Of course, there are exceptions: a number tatooed on the skin of an animal; a number stamped into the steel of an engine. In most cases, the only instance identifiers we have are instance identifiers incorporated into symbols in the semiotic triangles. We can associate instance identifiers with UML pictures, database records, vocabulary items, etc.

The question is, are the instance identifiers associated with a specific symbol unique only within the local system, or are they unique in the world? In other words, if the instance identifier is placed on the web, can the instance identifier be uniquely tied to a specific symbol or might the single instance identifier be used to link to multiple symbols?

Three examples of attempts to create unique instance identifiers can be sited: UUID; GUID; OID. Readers can explore the uses, methods of assignment, advantages and disadvantages of these kinds of identifiers through Google. HL7 has settled on the use of OID's to uniquely identify instances of UML classes in the RIM. See www.hl7.org for a discussion of OID roots and extensions in HL7.

Therefore, in short, the answer to the question is that instance identifiers are associated with specific symbols that represent instances of the semantic triangle. The semantic triangle represents both concepts in the brain and the corresponding concept in the physical world. It is a mistake to suggest that an instance identifier for a specific symbol simply corresponds to another symbol, e.g. that an instance identifier for a UML class simply corresponds to an instance identifier for a database record. Remember that the database record is also just another symbol for the instance of the semiotic triangle.