[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Data Interoperability ... Why do some XML vocabularies specifymeaning +
Hi Folks, I see two kinds of XML vocabularies: 1. Those containing markup that has been assigned both meaning and behavior. 2. Those containing markup that has been assigned only meaning. Please permit me to elaborate. 1. MARKUP HAS MEANING + BEHAVIOR When an XML vocabulary is created each element and attribute is specified with: - a meaning - the behavior of applications that process the element EXAMPLES XML Schema: the XML Schema specification describes the meaning of <element> as well as its behavior: - <element> is a specification of an information item. That is meaning. - A compliant tool must validate that the instance document contains an element with the specified name, type, and occurrences. That is behavior. XSLT: the XSLT specification describes the meaning of <for-each> as well as its behavior: - <for-each> identifies a collection of nodes. That is meaning. - A compliant tool must iterate over each node identified by the select attribute and execute the nodes within <for-each>. That is behavior. Test suites are created for this kind of XML vocabulary. Test suites are used for ensuring that applications _behave_ in accordance with the specification. There is a test suite for testing XML Schema validators and there is a test suite for testing XSLT processors. For this kind of XML vocabulary there is (at least theoretically) perfect data interoperability. An XML Schema document will be processed the same way on every machine and ditto for an XSLT document. 2. MARKUP HAS ONLY MEANING When an XML vocabulary is created each element and attribute is specified with just meaning. EXAMPLES XHTML: the XHTML specification describes the meaning of <p>: - <p> is a paragraph. RSS: the RSS specification describes the meaning of <title>: - <title> is the name of the channel. There are no test suites for this kind of XML vocabulary. For this kind of XML vocabulary there is relatively limited data interoperability. An XHTML document displayed in Firefox on machine 1 may display differently in IE on machine 2. RECAP These XML vocabularies specify meaning + behavior: - XML Schema - XSLT These XML vocabularies specify only meaning: - XHTML - RSS QUESTIONS 1. Why are some XML vocabularies created with meaning + behavior whereas others are created with just meaning? 2. I noticed in my examples that the XML vocabularies which specify meaning + behavior are machine-oriented whereas the XML vocabularies which just specify meaning are eyeballs-oriented. Should I inductively conclude that: - All XML vocabularies that are machine-oriented should specify meaning + behavior - All XML vocabularies that are eyeballs-oriented should specify only meaning 3. Is the goal of XML to maximize interoperability? 4. If the answer to (3) is "yes" then shouldn't every XML vocabulary be specified with both meaning and behavior? 5. Firefox and IE behave nearly identically. Is that almost miraculous in light of the fact that the XHTML specification says nothing about how the markup should behave? 6. I also noticed in my examples that the XML vocabularies which specify meaning + behavior involve binary operations: XML Schema validates XML (The operator is "validate" and the operands are the XML Schema and the XML) XSLT transforms XML (The operator is "transform" and the operands are the XSLT and the XML) Whereas the XML vocabularies which just specify meaning involve unary operations: Display XHTML (The operator is "display" and the operand is XHTML) Display RSS (The operator is "display" and the operand is RSS) Should I inductively conclude that: - All XML vocabularies that are involved in binary operations should specify meaning + behavior - All XML vocabularies that are involved in unary operations should specify only meaning 7. For perfect (or nearly perfect) interoperability, must an XML vocabulary specify both meaning and behavior? /Roger
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] |
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|