The
big fat Cue book (I think it is called "Using SGML") has a chapter
relating Smalltalk to SGML.
Steve
Newcomb has pointed out (reference lost-sorry) that SGML/XML and OO to a large
extent have dissimilar goals, in that SGML/XML (i.e. generic markup) are
attempts to (allow you to) have your data INDEPENDENT of particular methods
while OO is an attempt to bundle methods with data. However, since the
introduction of the PI target in XML, it is better to say that SGML/XML are
attempts to (allow you to) have your data in a form which allows multiple
methods to be attached.
The
big fat Holzer book (I think it is called "XML Complete") is
full of code and analysis relating Java to XML. (But the reviews on amazon.com
suggest that it may relate to a superceded version of MSXML too
much.)
In a
sense, a lot of the questions about OO and XML may already be answered, in that
XML/SGML embody a particular document system design methodology (i.e.
generalized markup) and because common parsers will be using three
APIs:
* SAX, which XML-DEV contributed
to
* GROVES: this is the big daddy of them
all, and is not so much an API as an analysis of the properties needed for a
complete and general SGML/XML/HyTime "parse tree". (In fact any data
format whcih can be parsed into a tree with inter-node directed-graph arcs can
be represented by GROVE, e.g. CGM the graphics format. Using the same GROVE
concept allows navigation languages like Xptr to be defined that can locate
particular nodes in the tree, regardless of what notation the tree was parsed
from.) The GROVES information is at http://www.ornl.gov/sgml/wg8/docs/n1920/html/clause-7.1.html#clause-7.1.4
might be useful place to start.
My big
fat book, The XML and SGML Cookbook, does not have much OO in it (intentionally:
there is no progamming code in it). Instead have put in chapter 3 "Software
Engineering" a summary of various methodologies used in practise for
developing DTDs. This is because once you have the generalized model OK, you can
add methods (explicitly by using #FIXED attributes in the DTD, or by invoking a
CSS-like stylesheet where there is an element type to contain mthod code or
location, or by using PIs.) So the emphasis is that the more richly
and appropriately your data is marked up, the less programming work (including
OO analysis and design) there is to do.
There
is a widespread feeling in the SGML world that you should mark up data
independent of any particular use of it. However, I certainly believe that a
good DTD design will be informed by the known and potential uses of the data. In
a way it comes down to whether you view XML as a "serialization
format" format, where it is just dumping data from a known schema and known
application, or whether it is "markup language" where you want to
expose interesting and useful information to make life simpler for future
software development.
Rick
Jelliffe
Hello,
Could anyone please guide to articles/technical notes regarding OOD and SGML
Architectures.
Any help will be greatly appreciated
Thanx,
AMIT
|