Title: How Five Industries Will Benefit From the Grove Paradigm
1How Five Industries Will Benefit From the Grove
Paradigm
- Steven R. Newcomb
- srn_at_techno.com
- TechnoTeacher, Inc.
- HyTime Track, XML Europe 1999, Granada, Spain,
April 29
2How this talk is not the same as the paper...
- The paper in the Proceedings is organized by
industries. - This talk is organized around the features of the
grove paradigm that are useful to those
industries. - Much has happened since the paper was written.
There are more than five industries involved in
grove-based projects.
3First, whats a grove? Some definitions
- A set of interconnected nodes conforming to
ISO/IEC 107441997 Annex A.4. - Ready-to-run objects. The application-internal
information that is being created, edited, or
used by an application. - The form of information that is the result of
parsing an interchange document (written in XML,
for example). - Information that is present in an interchange
document, but which, for application programming,
is structured differently in the grove. The
abstract API to the information set.
4But thats the DOM, right?
- No. The DOM is an API. A grove is a set of
nodes -- no methods. - But its true that an API to a grove of an XML
document could serve the same purposes as the
DOM. - And the DOM is an example of an interface to an
XML grove. - Groves are more powerful, general and
sophisticated.
5Use by reference
- Groves allow any component(s) of any resource(s)
expressed in any notation(s) (XML or non-XML) to
be transcluded into any components of any
resources expressed in any notations (XML or
non-XML), - ...without changing any of the resources
involved. - Groves allow there to be a single authoritative
copy of each datum, regardless of its notation. - Groves allow each datum to be expressed in the
most cost-effective notation.
6Linking
- Groves allow any component(s) of any resource(s)
expressed in any notation(s) (XML or non-XML) to
be hyperlinked to any components of any resources
expressed in any notations (XML or non-XML), - ...without changing any of the resources
involved.
7Links are valuable assets
- Groves allow the links to be exported as
standards-conforming, non-proprietary XML
documents. - Specifically, groves allow addresses to be
expressed in conformance with standards.
Standards-conforming software from any vendor can
resolve the addresses.
8Management of links and uses-by-reference
- Groves provide knowledge of all anchors of all
links, and of the links of all anchors,
regardless of the notations of the anchors. - Groves provide knowledge of all the sources of
the transclusions in each document, and of all
view documents into which any given transcluded
material is transcluded, regardless of the
notations of such sources.
9Management of links and uses-by-reference
- Groves allow links and uses-by-reference to be
classified via inheritable common architectures,
as well as by the application. - Groves greatly facilitate applications that
provide traversal and transclusion services. - Groves allow the side effects of changing an
information asset to be predicted.
10Technology independence
- Groves can support software that creates and
maintains links, bookmarks, annotations, auditing
records, etc. that cannot be lost merely because
of subsequent changes in computer technology, or
changes in system vendors. - All such referencing information can be stored in
freestanding XML documents that contain addresses
expressed in a way that is correctly resolvable
by any grove-aware application.
11Bookmarks
- Groves allow the notes of caseworker
professionals, expressed in XML, about particular
casefiles can incorporate bookmarks to components
of materials in any notation, without changing
the materials. - Such notes can be used to provide continuity of
corporate behavior toward (and understandings
with) customers, without changing the casefiles
themselves.
12Shop notes
- Groves allow shop notes to be maintained by shop
floor technicians in documents that are separate
from the manuals. - The notes can be made to appear as if they were
actually part of the documents (or not). - Subsequent versions of the manuals can have the
same shop notes, without having to update all of
them.
13 Scalability
- Lightweight in-memory grove-based applications
are practical in PDAs. - Lightweight ISAMs can support PC-oriented grove
applications. - Heavyweight object databases can support large
repositories of information resources. - Mammoth grove-based systems are supportable with
multiple databases. The links expressed by
resources within them can address anything in any
database, thus tying everything together into
what is, in effect, a single gigantic database.
14Topic maps
- "The GPS of the Web" -- Charles F. Goldfarb.
- Topic maps are supportable without groves, but
not in their full generality and not at their
full power. - Topic maps are insupportable without independent
linking. (It's very hard to support independent
linking without groves, and very easy with
groves.)
15Workflow
- Groves allow everything about workflow,
regardless of the notations of the produced work,
to be driven and controlled by XML documents
containing annotating hyperlinks. - The components of information resources that need
review, editing, rework, approval, or
re-publication, or for which proposed changes
exist, can be appropriately annotated, without
changing them, - regardless of the notations in which the
resources are expressed, or the manner in which
they are stored.
16Programmer productivity
- The grove paradigm elegantly fits all
applications involving the addressing of
arbitrary information components. - Every node is as addressable as every other node.
- A node can be anything
- from a whole document to a single character,
- from a movie to a pixel,
- from a complete engineering drawing to a single
polygon, line, or point.
17Programmer productivity
- Even incoming ephemeral information, such as the
information arriving from the diagnostic
connection harness of a piece of equipment that
is being repaired, can be a grove that is as
useful as any other grove. - Databases can be made to appear to be groves.
- Metadata can be grove-ified. (Example WebDAV.)
18Notation processors
- A Notation Processor can be the application's
mature and highly capable partner for chores
common to applications that use and/or manipulate
data that conforms to - a notation,
- a class of information objects, or
- a database schema.
19Auditability of transactions
- Groves allow transactions involving
- creating, changing, and deleting content
- creating, changing, and deleting links to content
- re-using (and ceasing to re-use) content
- ...to be as auditable as desired.
20Locally controlled DTDs
- Groves allow applications to support inheritance
of information architectures (meta-DTDs). - Meta-DTD-specific property sets mean re-usable
software modules, so - Groves reduce the cost of software
- Groves increase the uniformity of interpretation
of data by applications. - This is vital in e-commerce involving technical
product descriptions.
21- A demonstration of a grove management technology.
22DOM vs. Grove
- The main difference is that the DOM is not
schema-driven. It has a single (implicit and
as-yet-undocumented) schema -- a schema for the
XML notation. - The DOM can only be used for documents expressed
in XML, whereas any information, in any notation,
can be represented as a grove. - Even in XML-land, the DOM does not provide access
to the information sets conveyed by specific XML
document types, whereas a grove can be a set of
nodes that reflect the information set, and that
may bear little resemblance to the interchange
form of the same information.
23What about the XML Information Set?
- The W3C's XML Information Set project is a great
thing, and it is urgently needed in order to
allow the addresses of XML document components to
be interchangeable. - If the XML Information Set were expressed as a
Property Set, then it would be a description of
a grove -- an XML grove. In any case, it will be
very similar to a property set for XML. - The XML Information Set is expected to be a
description of the features of XML, but not
described in a fashion that could be used for
other notations.
24The Mainstream is More than XML
- There will always be plenty of notations other
than XML. - Their components must be addressable so that they
can participate in the mainstream of information
processing. - Groves allow that to happen.
25XML DOM solutions are for XML
- XML DOM solutions dont allow information to be
expressed in any form but XML. All information
has to be converted into XML. - Conversion is expensive. If information changes,
it's a recurring expense. - Conversion takes time, so the XML version is not
always up to date. - What if you have created links and other
references to the XML form, and the original
changes? - What if you have changed the XML form, and need
the changes to appear in the original form?
Reconversion may be even more expensive!
26Groves No conversions necessary.
- Grove-based solutions allow the information to
stay in its original form, without requiring it
to be converted into XML. - This is essential, for example, where products
are being produced, delivered, maintained,
supported, redesigned, redocumented, and
delivered simultaneously. - All five industries, and many others, share this
requirement.
27How does the Grove Paradigm work? (1)
- For a given notation, the interesting aspects are
named in a schema called a property set. - For example, in a property set for photographs,
we might say, People's noses must be
addressable. Lets make sure all the noses
become nodes in the grove that is made from
photographs. We'll call such nodes 'Nose
Nodes'. - So, its like writing a DTD for information that
isn't in XML you decide whats interesting about
some set of information, and you give each such
thing a property name, which is like creating an
element type name.
28How does the Grove Paradigm work? (2)
- When you create a grove, everything that was
regarded as interesting - exists in the grove (and nothing that wasnt
interesting is there), and - in effect, every component says what it is. Its
like tagging, but without the tags.
29If I Have XML, the DOM, etc., Why Groves?
- You need to be able to talk about things other
than XML. - Talking about things means being able to point
at them, so you can say what youre talking
about. - If you never need to talk about anything that
isnt already in XML form, THEN YOU DONT NEED
GROVES! - The reverse is also true.