[
Lists Home |
Date Index |
Thread Index
]
- To: "Roger L. Costello" <costello@mitre.org>, "XML Developers List" <xml-dev@lists.xml.org>
- Subject: RE: [xml-dev] A bunch of components, but no mandated organization - reasonable?
- From: "Chiusano Joseph" <chiusano_joseph@bah.com>
- Date: Fri, 14 Jan 2005 09:16:25 -0500
- Thread-index: AcT43L/xo4ItUWzcQaypFbAeCCjZbwAAMpTAAByDz1AAOX7O4AADYN/Q
- Thread-topic: [xml-dev] A bunch of components, but no mandated organization - reasonable?
> -----Original Message-----
> From: Roger L. Costello [mailto:costello@mitre.org]
> Sent: Friday, January 14, 2005 8:42 AM
> To: 'XML Developers List'
> Subject: RE: [xml-dev] A bunch of components, but no mandated
> organization - reasonable?
>
> Hi Folks,
>
> Many thanks for the outstanding messages!
>
> Yesterday Michael Kay made an insightful observation. He
> noted that there can be an effective exchange of information
> when there exists a "protocol"
> between the exchanging parties:
>
> > Of course it's possible to set up a system in which anyone who
> > receives a customer record is expected to interpret it as meaning
> > "please update the information you hold on this customer". Equally,
> > it's possible to set up a system in which anyone who receives a
> > customer record is expected to interpret it as meaning
> "please phone
> > this customer and find out what he wants". Any bunch of
> bits you send
> > me is meaningful if we've agreed a protocol, and
> meaningless otherwise.
>
> Thus, if there exists a protocol between us then I can
> dynamically assemble a bunch of components and send them to
> you. And you will be able to dynamically understand my assembly!
>
> Let me give some concrete examples.
>
> Example - Trash Collection
A perfect example of GIGO :)
> Every Wednesday morning I bring all my trash out to the front
> of my house.
> During the day a trash collector comes along and picks up the
> trash. When I return home in the evening the trash is gone.
>
> Information (trash) was exchanged. And it occurred without
> a-priori knowledge by either party of the specific
> transaction that would occur.
Is that really true? The person(s) that collected it had knowledge of
what to recognize and pick up - that is, they did not pick up
(hopefully) a cat that walked by, or the grass at the front of the
house, or a tree (assuming they could). They recognized the perinent
components and how they related to what was around them. So I would say
that this is not fully supportive of the notion of non a-priori
knowledge.
Kind Regards,
Joseph Chiusano
Booz Allen Hamilton
Strategy and Technology Consultants to the World
> The exchange was possible because:
>
> (1) Each party understood the components (containers of trash), and
>
> (2) There existed a protocol between the sender (me) and the
> receiver (the trash collector).
>
> The protocol employed: "I give, you take".
>
> Example - Browsers
>
> I have created some HTML pages and placed them on my web
> site. When your browser visits my web site it will make
> effective use of the stuff that I have put in my HTML pages.
>
> Again, information was exchanged. And it without a-priori
> knowledge by either party of the specific transaction that
> would occur. The exchange was possible because:
>
> (1) Each party understood the components (HTML documents), and
>
> (2) There existed a protocol between the sender (my web
> server) and the receiver (your browser).
>
> The protocol employed: "I give, you take".
>
> I suspect that the "I give, you take" protocol is a common,
> powerful protocol. Can you think of other common, powerful protocols?
>
> Summary: Transferring Information using a Shared Grammar
> versus a Shared Protocol
>
> Given a bunch of components, how can the information in those
> components be effectively transferred between you and I? We
> seem to be narrowing in on two approaches:
>
> 1. Shared Grammar: craft an XML Schema that completely lays
> out the order and number of occurrences of each component.
> That is, completely specify the grammar for the components.
> The grammar (XML Schema) is then the contract between sender
> and receiver.
>
> 2. Shared Protocol: define an exchange protocol. The form of
> the assembly of components that are sent is unspecified and
> irrelevant.
>
> [Tangential comment: there is a philosopher, Karl Popper, who
> wrote (paraphrasing), "The quickest way to move a science
> forward is through the use of provocative conjectures". In
> the spirit of Karl Popper I thus make the following
> provocative conjecture.]
>
> Conjecture: Information exchange using shared protocols is a
> superior approach to information exchange using shared grammars.
>
> In other words, when you create an XML Schema simply declare
> a bunch of independent components, but don't mandate any
> particular ordering of them.
>
> [Another tangential comment: Popper says that after making a
> conjecture it is important to test the conjecture. So, let's
> test the conjecture.]
>
> Test 1: Support for information exchange in a dynamically changing
> environment: the Shared Protocol approach is a "loosely
> coupled" approach.
> That is, the nature of the "payload" is irrelevant (I use the
> term "payload"
> here as it just dawned on me that HTTP is a "protocol" and
> the information transferred using the HTTP protocol is called
> a "payload").
>
> Conversely, the Shared Grammar approach is not well-suited to
> dynamic environments. Witness the great amount of effort and
> coordination that is required to alter an XML Schema.
>
> Test 2: ??? (What are some other tests that might be applied
> to the two
> approaches?)
>
> /Roger
>
>
>
>
>
>
>
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org
> <http://www.xml.org>, an initiative of OASIS
> <http://www.oasis-open.org>
>
> The list archives are at http://lists.xml.org/archives/xml-dev/
>
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://www.oasis-open.org/mlmanage/index.php>
>
>
|