Message from discussion SGML and "Data Modeling" (was A DTD for Personal Identity)
From: "W. Eliot Kimber" <kim...@passage.com>
Subject: SGML and "Data Modeling" (was A DTD for Personal Identity)
references: <firstname.lastname@example.org> <email@example.com>
organization: Passage Systems Inc.
Piercarlo Grandi has started a very interesting, if somewhat frustrating,
thread on SGML and data modeling. It's unfortunate that Steve Newcomb and
Piercarlo came to loggerheads as they did. I don't believe either deserved
the response he got from the other.
I'm frustrated by this thread for a number of reasons:
1. I cannot completely grasp Piercarlo's message because:
A) he's even more verbose than me(!) and I simply don't have time
to study his posts, help get the HyTime TC out, do the job for which
I'm paid ("like we had time for that"), finish writing my book on
HyTime, track the XML working group
and try to contribute effectively to the XML ERB, write papers for
conferences, mind the plumbers tearing up my house, and generally try
to have what, for me, passes for a normal life.
B) the invective and ad-hominem make it difficult to muster the
enthusiasm to study the posts, even after being convinced by others'
responses that there is much of value to be studied
C) as my own posts were quoted, I feel a responsibility to at least
understand the argument, if not respond.
2. I don't have a formal grounding in database or data modeling theory,
although I have read some introductory texts. It is my nature to
approach most things intuitively and try to avoid formalisms until
I think I understand the concepts well enough to put the formalisms
into a meaningful context. My experience has been that most things
are, at heart, simpler than the formalisms make them look. When I have
to, I study the formalisms so that I can understand the theory and
practice to the best of my ability. I also rely on others who *do*
understand the formalisms to help me when I need it, trusting them
to help me distinguish the signal from the noise.
3. From what I've been able to read and understand of Piercarlo's postings,
I think he has some serious misunderstandings about, or at least
disconnects from, essential HyTime concepts. Piercarlo has made some
*very strong* statements about the standard to which I (and Steve more
I) have very literally devoted our lives (ask our wives and families).
Steve, my first reaction is emotional, although, like Steve, I realize
that such reactions are usually not productive or conducive to clear
Therefore, I would like to ask Piercarlo to do the following:
1. Please provide, as briefly as possible, definitions of the terms
that have been used in this discussion, e.g., "data modeling",
2. Please explain, briefly, and for a non-technical audience (e.g., me),
where you see SGML and HyTime fitting into the general theory,
and practices of data modeling
3. Please refrain from making inflamatory remarks that can only cause
those most able to respond to and benefit from your arguments to respond
I've spent all of my career thinking about what I call "data modeling" with
respect to documents, specifically, technical documents (as I'm a technical
writer by training). 15 years of deep thought doesn't make me an expert,
any more than having a PhD makes a person an expert, but I do think I have
some useful insights. I've certainly thought about and experimented with
using SGML and SGML-based tools and processes to manage what would
traditionally be thought of as databases in the formal sense. I've spent a
lot of the last six years thinking about how strongly-typed hyperlinks can
be used to model relationships among data (and therefore, model
relationships among the real-world objects those data objects reflect, such
as me and my wife).
I certainly don't claim to have the One Right Answer, but I think the
approaches I've worked out and that I talk about in my writing, teaching,
and implementation work are useful and, at least sometimes, compelling.
I also realize that there are always useful things to be learned from
experts in other domains, even if it's that what you thought intuitively
turns out to be formally provable. In this discussion of data modeling and
SGML and HyTime I suspect that following cases are in force to some degree:
A. Those of us working out how to use SGML and HyTime to do more than model
text on pages are truly missing some important insight that is second
to formal data modelers and that once we see it we will realize either
trying to use SGML for that is inefficient or impossible or that with a
few small enhancements we can integrate that insight into SGML/HyTime
make it even more useful.
B. There is a disconnect caused by overloaded terminology and
of formalisms that has obscurred a fundamental similarity and congruence
between SGML/HyTime "data modeling" and what Piercarlo has been talking
Based on my past experience, I suspect it's mostly B with a little A. This
is because SGML and HyTime are *so general* that it's difficult to find a
way of thinking about data and relationships that they *can't* represent
one way or another. It's also the case that most, if not all, formalisms
reflect modes of thinking and analysis that humans do intuitively.
For example, SGML document types are formalisms for labeling the data
objects that make up a body of data. Writers have always done this
informally and intuitively. When you present SGML to writers in such a way
that they see that it is really an extension of the way they already think
about documents, they almost always get it. If you just present the
formalism, they just see brackety noise and back away.
I really do want to understand Piercarlo's arguments, because either he's
completely wrong and it will be instructive to see how he's wrong (not
likely, but it is a possibility) or he's bringing a critical insight to our
business and it will be to our advantage to understand it (much more likely
and much more interesting and useful to me personally).
W. Eliot Kimber, kim...@passage.com
Senior SGML Consultant and HyTime Specialist
Passage Systems, Inc., 10596 N. Tantau Ave., Cupertino, CA 95014-3535
(408) 366-0300 (Cupertino), (512) 339-1400 (Austin),
"If I never had existed, would you still remember me?..."
--Austin Lounge Lizards, "1984 Blues"