GENCMP-L Archives
Archiver > GENCMP > 2001-07 > 0994519602
From: (Obliquity)
Subject: Re: XML and GEDCOM
Date: 7 Jul 2001 08:26:42 -0700
References: <entuitk87aqevme3an49uvo0bmsm5h8e6l@4ax.com>, <3B2F9059.B581CB2C@djernaes.dk>, <3b30757c.179947580@news.ic24.net>
(Dan Pidcock)
> I'm no XML expert, but what I know of it is that it is designed to
> allow the format to be described in the data format itself. You can
> therefore add new fields to the XML without needing to change the
> definition of the format.
>
> You could therefore define a genealogy XML definition with the fields
> that are generally used, and then let applications add fields.
> To handle these extra fields other applications should have a extra
> fields section.
No, XML is not meant to be used in this way, though it's a common
misconception, probably arising from the free-and-easy way that
most web browsers tolerate non-compliant HTML!
An XML format is defined by a Document Type Definition (DTD) file,
which specifies *very* precisely which tags may be subordinate to
which other tags. The GedML DTD at
http://users.iclway.co.uk/mhkay/gedml/dtd.html
is a good example. This is a formal description of the structure that
an XML file *must* obey if it is to be regarded as a compliant GedML
file.
It's not really meant to be read by humans -- its main purpose is to
act as a template for software (written in Java, Perl, or whatever)
which reads XML to verify that the XML file does indeed conform to
the GedML specification.
If you make the mistake of thinking of XML as an "anything goes, as
long as the tags are properly nested" data format, then you miss the
entire point of XML, and you're well on the way to the mayhem and
madness caused by the myriad different "versions" of GEDCOM created
by the commercial genealogy software that we all know and love.
In the words of Andrew Tanenbaum, noted computer science professor:
"The nice thing about standards is that there are so many to
choose from."
David Harper
http://www.obliquity.com/family/
NOTE: E-mail address in header is a black hole to foil spammers. Use
http://www.obliquity.com/cgi-bin/contact.cgi to respond directly.
This thread:
| Re: XML and GEDCOM by (Obliquity) |