- From: Paul W. Abrahams <abrahams@valinet.com>
- Date: Sat, 17 Jun 2000 17:08:38 -0400
- To: Al Gilman <asgilman@iamdigex.net>
- CC: abrahams@acm.org, xml-uri@w3.org
Al Gilman wrote: > At 02:34 PM 2000-06-16 -0400, Paul W. Abrahams wrote: > >Al Gilman wrote: > > > >> **Summary > >> > >> The problem is both sides are assuming there is a 1:1 relationship and are > >> arguing over how to define it. There is no answer in that space. There is > >> no 1:1 relationship between namespaces and languages, between Qnames and > >> element types. > > > >Pardon a possibly naive question, but what do you mean by a language in this > >context? Do languages have a 1:1 relationship to anything else such as > >applications? > > [The only dumb question is the one you were too embarrassed to ask. I > doubt your question is more naive than my answer.] Reminds me of the old joke about the man who asked his friend, "Why do you always answer every question with another question?" To which the friend responded, "Why not?". > What do I mean by a language. > > An XML language is an invertible linearization of an ontology used in > constructing messages or streams passed as a means of communicating, that > follows XML rules in the final stages of tree-to-stream encoding. OK, let me seek some enlightenment here as to the meaning of the words in that sentence. Invertible: I know what that means, I think. A process A is invertible if there exists another process B that can convert A's output to A's input. Ontology: this one has me stumped. The dictionary says it's a branch of metaphysics , concerned with the nature and relations of being. So what is "an ontology"? Does it bear the same relationship to ontology as "a philosophy" bears to philosophy? And how would an ontology be used to construct either messages or streams? "passed as a means of communicating": aren't all messages or streams (except for the watery kind, perhaps) means of communicating? What information is that phrase adding to the sentence? And by the way, is an XML language as you use the term here a formal language, namely, the set of strings generated by a (usually but not necessarily context-free) grammar? > Languages are to schema-defined graph types as object classes are to > structured datatypes. In other words, languages add methods to schema-defined graph types? > Did I say "a language?" I hope I said that upper layers have to be more > aware than the lower levels of "the language." While there may be > identified formal things that we call languages, the more important sense > of 'language' is not as _an identified thing_ but as _some recognizable > stuff_. This is the stuff of the message, it is the territory, relative to > namespaces, not the namespace-level map. We can define a set of > progressively more detailed maps that tell more and more about the > territory. And progressively higher levels of processing that respond to > the distinctions in each incremental map refinement. [I speak as a fool. > I don't really know what Cowan means by a map:territory 'error.' Actually, > I would like to know.] > > XML has proper methods: string to InfoSet, InfoSet to string. Starting and > ending with an Infoset, the pair of transformations is an identity, you get > back the same InfoSet. After passing through InfoSet once, you thereafter > get back a canonical string. That's clear enough. > I would expect "a processor" to implement a language class, a group of > methods that are proper methods for languages of that class. > > I would hope that most languages would serve as a means of interoperation > among multiple processors. There may be some processors dedicated to a > specific language, but I hope there aren't too many languages dedicated to > a specific processor. In other words, there's a many-to-one relationship between processors and languages. A processor processes only one language, but many processors may process a particular language. Right? > What I am actually trying to establish is not "what, exactly, is a > language?" because I don't think an upper limit on that in bottom-up terms > is appropriate. I think that the family of XML languages should be > continually growing, built bottom-up toward a vision which is not stated in > bottom-up terms. OK, "the family of XML languages" -- that makes sense, if I understand it aright. It seems now that an XML language is the set of strings, i.e., XML documents (using the definition from formal language theory) that satisfy a collection of constraints imposed by a DTD, a schema, or whatever. And the family of XML languages then consists of the set of all well-formed, valid (yes?) XML documents. I'd like to get this far before I ponder the rest of your message. Thanks. Paul Abrahams
Received on Saturday, 17 June 2000 17:08:47 UTC