[
Lists Home |
Date Index |
Thread Index
]
- To: "'XML Developers List'" <xml-dev@lists.xml.org>
- Subject: A bunch of components, but no mandated organization - reasonable?
- From: "Roger L. Costello" <costello@mitre.org>
- Date: Wed, 12 Jan 2005 08:44:50 -0500
- Thread-index: AcT4rONB1Qb5APP2S7CrDsgy+ag4ag==
Hi Folks,
Suppose that:
1. There exist a collection of "components", and each component is
well-defined and understood.
2. There does NOT exist any rules which specify how the components should be
assembled.
If I assemble some of the components into a certain structure, and send the
structure to you, will you be able to understand my structure?
Let me be a bit more concrete. Suppose that:
1. There exist a collection of information components, and each information
component is well-defined and understood. Some examples of information
components might include - a missile information component (this component
provides information about a missile, such as its direction, speed, warhead
type, etc), an aircraft information component (this component provides
information about an aircraft, such as its altitude, wingspan, speed, etc).
2. There does NOT exist any rules which specify how the information
components should be assembled. In other words, there is no grammar which
dictates how the components must be bound together.
If I assemble some of the information components into a certain structure,
and send the structure to you, will you be able to understand my information
structure?
Can information be transmitted in a world where the building blocks are
understood, but no grammar exists?
Is a grammar necessary for information transfer?
Let me give a simple example. Suppose that:
1. There exists these three components - A, B, C. And everyone knows the
meaning of each component.
2. There are no rules that specify how A, B, or C should be organized, nor
the number of occurrences of each.
Suppose that I create this message: AACABBAC. And I send it to you. Will
you be able to understand my message?
Consider the English language. Suppose that:
1. The English language was just comprised of a bunch of words (and each
word is understood), ...
2. ... but there was no English grammar.
If I compose a sentence using these words, will you be able to understand my
sentence?
Consider XML Schemas. Suppose that:
1. An XML Schema declares a bunch of independent elements (i.e., components)
and each component is understood. For example, here's a Book component:
<xsd:element name="Book">
<xsd:complexType>
<xsd:all>
<xsd:element name="Title" type="xsd:string"/>
<xsd:element name="Author" type="xsd:string"/>
<xsd:element name="Date" type="xsd:date"/>
<xsd:element name="ISBN" type="xsd:string"/>
<xsd:element name="Publisher" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
Here's a BookCover component:
<xsd:element name="BookCover">
<xsd:complexType>
<xsd:choice>
<xsd:element name="Hardcover"><xsd:complexType/></xsd:element>
<xsd:element name="Softcover"><xsd:complexType/></xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
Everyone understands the meaning of each component in the Schema.
2. But there is no declaration tying the components together, e.g., there is
no overarching element declaration that relates the Book component with the
BookCover component.
If I create an XML instance document using the components and send the
instance document to you, will you be able to understand my data?
/Roger
|