Thanks for your input.
The descriptions you provide below conform to a logical structure
where a Code is a subclass of Identifier, with one important
caveat: if "Identifier" is somewhere deliberately defined as
something that *cannot* be a Code, then of course these would have to be
disjoint classes and cannot be related by the subclass relation.
It is certainly possible that someone may have a reason to
make a distinction of that type, but in my experience
it is usually done in domain ontologies only because the
domain expert or domain ontologist wanted a catchall
"other" category to handle miscellaneous cases, not because
there was any logical requirement to represent things that
way. I think that is bad ontological design and sure
hope that such a disjunction has not actually been
Your usage comments conform to how I read the brief
description of Code in the UBL spec -- they seem to want to
restrict its use only to "Attributes" as interpreted
in a UML diagram. That's OK. The representation of
UBL "Code" in an ontology can include such specialized
usage requirements, and it can still be a subclass of Identifier,
provided that the designers did not perversely define
"Identifier" as disjoint with "Code".
In the latter case the two classes would have to be disjoint
subclasses of a common more general class of identification strings. (01)
Douglas McDavid wrote: (04)
> One way that identifier and code have been differentiated in my
> experience is:
> Identifier is a data surrogate for something that is of interest to the
> enterprise. Examples would be a Social Security number or employee
> identification number.
> Code is one of a set of valid values that conveys a characteristic of
> something otherwise identified. So a market segment code might be
> applied to a customer who is identified by a SSN or customer identifier.
> This is just one way that these concepts can be used. Polysemy is always
> with us!
> Doug McDavid
Patrick Cassidy (06)
MICRA, Inc. || (908) 561-3416
735 Belvidere Ave. || (908) 668-5252 (if no answer)
Plainfield, NJ 07062-2054 || (908) 668-5904 (fax) (07)
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx (09)