<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-3944976411672994427.comments</id><updated>2011-11-21T10:43:34.112+07:00</updated><category term='M'/><category term='xml'/><category term='Open source'/><category term='Oslo'/><category term='ES4'/><category term='REST'/><category term='security'/><category term='mac'/><category term='RELAX NG'/><category term='jing-trang'/><category term='xml:id'/><category term='Type systems'/><category term='ECMAScript'/><category term='I18N'/><category term='JSON'/><category term='Thailand'/><category term='schemas'/><category term='HTTP'/><title type='text'>James Clark's Random Thoughts</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.jclark.com/feeds/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/comments/default'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/comments/default?start-index=26&amp;max-results=25'/><author><name>James Clark</name><uri>http://www.blogger.com/profile/08445951113700394609</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>356</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-888862172438809586</id><published>2011-10-24T20:57:28.488+07:00</published><updated>2011-10-24T20:57:28.488+07:00</updated><title type='text'>It seems to me, looking at JSON, that some program...</title><content type='html'>It seems to me, looking at JSON, that some programmer who likes terse languages looked at XML and said &amp;quot;this is far to easy to read, let&amp;#39;s get something that looks more archaic&amp;quot; - and invented JSON.&lt;br /&gt;&lt;br /&gt;There seems to be this idea that &amp;quot;verbose is bad&amp;quot; - the same type of developer who rejects an easy to read language like visual basic in favout of something where you have to carefully scrutinise every line, like C#.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/269735754298056190/comments/default/888862172438809586'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/269735754298056190/comments/default/888862172438809586'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2007/04/xml-and-json.html?showComment=1319464648488#c888862172438809586' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2007/04/xml-and-json.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-269735754298056190' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/269735754298056190' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-825222651'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-4512168961284937465</id><published>2011-06-27T23:17:07.745+07:00</published><updated>2011-06-27T23:17:07.745+07:00</updated><title type='text'>While JSON may be gaining traction, I believe that...</title><content type='html'>While JSON may be gaining traction, I believe that XML and JSON serve different purposes by design. JSON is a data structure containment based system. XML is an extension based data representation scheme. In large part I agree that JSON is not well suited for some tasks, however, when it comes to programming : JSON contains simple rules compared to the complexities of tag attributes and mixed content. XML uses these attributes but does not enforce them nor give good reason to use them compared to wrapping things in tags from the many times I have used them. Consistently checking if I am in a mixed content node (lord knows if someone inserts a tag where there shouldn&amp;#39;t be one) or an attribute node exists (did it get defaulted by a namespace?) instead of a consistent means of accessing data being used as such is confusing when deadlines are important. Schemas are amazing, and I wish it were easier to have them supported, but largely vendors will not give correct formed XML at all times, with JSON the risk is largely reduced due to lower complexity. Having mixed content and attributes is a strength for development of content in XML, but I largely feel that this added complexity to the programming side is hard to deal with compared to the simple set/map/value structures that are presented in JSON.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/7046188846926386851/comments/default/4512168961284937465'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/7046188846926386851/comments/default/4512168961284937465'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/11/xml-vs-web_24.html?showComment=1309191427745#c4512168961284937465' title=''/><author><name>diseño web</name><uri>http://www.ki-design.com.ar/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/11/xml-vs-web_24.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-7046188846926386851' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/7046188846926386851' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1954003340'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-8984102160998477824</id><published>2011-03-20T22:12:28.037+07:00</published><updated>2011-03-20T22:12:28.037+07:00</updated><title type='text'>James, how would MicroXML fit in with Efficient XM...</title><content type='html'>James, how would MicroXML fit in with Efficient XML Interchange (EXI)?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/8984102160998477824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/8984102160998477824'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1300633948037#c8984102160998477824' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-696357852'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-6971424218050161089</id><published>2011-03-16T06:58:53.739+07:00</published><updated>2011-03-16T06:58:53.739+07:00</updated><title type='text'>&amp;quot;In particular, JSON shines as a programming ...</title><content type='html'>&amp;quot;In particular, JSON shines as a programming language-independent representation of typical programming language data structures.&amp;quot;&lt;br /&gt;&lt;br /&gt;What about references? Isn&amp;#39;t this a typical programming language data structure that is missing in JSON?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/7046188846926386851/comments/default/6971424218050161089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/7046188846926386851/comments/default/6971424218050161089'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/11/xml-vs-web_24.html?showComment=1300233533739#c6971424218050161089' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/11/xml-vs-web_24.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-7046188846926386851' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/7046188846926386851' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-579047111'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-5999580508019672323</id><published>2011-03-11T05:18:56.364+07:00</published><updated>2011-03-11T05:18:56.364+07:00</updated><title type='text'>I&amp;#39;ve taken a look at the current JSON schema p...</title><content type='html'>I&amp;#39;ve taken a look at the current JSON schema proposals, and it appears to me that they miss the mark.  Specifically, it appears to me that they don&amp;#39;t allow context-free-grammar specifications as Relax NG does. Perhaps I&amp;#39;m being na\&amp;quot;ive, but it appears to me that there&amp;#39;s a golden opportunity to just strip down the Relax NG syntax to match JSON: get rid of element tags and attributes, formulate a simple syntax for name-&amp;gt;value mappings.&lt;br /&gt;&lt;br /&gt;The result would appear to be a usable and efficient schema language for JSON.&lt;br /&gt;&lt;br /&gt;No?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/7046188846926386851/comments/default/5999580508019672323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/7046188846926386851/comments/default/5999580508019672323'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/11/xml-vs-web_24.html?showComment=1299795536364#c5999580508019672323' title=''/><author><name>John Clements</name><uri>http://www.blogger.com/profile/15701081040575095781</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/11/xml-vs-web_24.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-7046188846926386851' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/7046188846926386851' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-766273621'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-1014753166494716803</id><published>2011-02-07T20:25:32.432+07:00</published><updated>2011-02-07T20:25:32.432+07:00</updated><title type='text'>You should mention Tim Bray&amp;#39;s &lt;a href="http://...</title><content type='html'>You should mention Tim Bray&amp;#39;s &lt;a href="http://www.textuality.com/xml/xmlSW.html" rel="nofollow"&gt;XML-SW&lt;/a&gt; from 2002. Back then some people agreed but nobody cared, why should it be different today. Either you try to live with XML as great and broken as it is, or you choose some other language. Before XML it was ASN.1 and SGML, yesterday it was XML, today it is JSON and RDF, and the day after tomorrow something else. Every new language promises a revolution, but sooner or later it always evolves into a complex monster and other languages are proposed. This is just evolution.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/4828994358429784181/comments/default/1014753166494716803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/4828994358429784181/comments/default/1014753166494716803'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/microxml.html?showComment=1297085132432#c1014753166494716803' title=''/><author><name>jakob</name><uri>http://jakoblog.de/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/openid16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-4828994358429784181' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/4828994358429784181' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1283115705'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-791034558511311370</id><published>2011-01-31T12:51:06.003+07:00</published><updated>2011-01-31T12:51:06.003+07:00</updated><title type='text'>I&amp;#39;ve put together a &lt;a href="http://www.ccil.o...</title><content type='html'>I&amp;#39;ve put together a &lt;a href="http://www.ccil.org/~cowan/microxml.txt" rel="nofollow"&gt;very preliminary MicroXML draft specification&lt;/a&gt;.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/791034558511311370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/791034558511311370'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1296453066003#c791034558511311370' title=''/><author><name>John Cowan</name><uri>http://www.blogger.com/profile/11452247999156925669</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-551632365'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-5521811544172590156</id><published>2011-01-22T03:00:33.449+07:00</published><updated>2011-01-22T03:00:33.449+07:00</updated><title type='text'>I have released &lt;a href="http://recycledknowledge....</title><content type='html'>I have released &lt;a href="http://recycledknowledge.blogspot.com/2011/01/microlark-parser.html" rel="nofollow"&gt;MicroLark 0.8&lt;/a&gt;, a parser/writer/tree-model package for MicroXML written in Java.  It implements MicroXML as specified in this post, with the addition of prefixed attribute elements (it allows, but does not require, declarations of those prefixes).</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/5521811544172590156'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/5521811544172590156'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1295640033449#c5521811544172590156' title=''/><author><name>John Cowan</name><uri>http://www.blogger.com/profile/11452247999156925669</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-551632365'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-2605449794936357163</id><published>2011-01-14T23:37:56.655+07:00</published><updated>2011-01-14T23:37:56.655+07:00</updated><title type='text'>My previous concern that prefixes require declarat...</title><content type='html'>My previous concern that prefixes require declarations (&amp;quot;xmlns:foo&amp;quot;) is answered I now see by the above MicroXML limit to just the special (according to the XML Namespaces spec) prefix &amp;quot;xml:&amp;quot; which the said spec says doesn&amp;#39;t need a declaration. Maybe we need a list of all the possible xml: values and uses (or a subset of them?) and requirements for implementing them (like not rejected them when mixed with another vocabulary/model).</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/2605449794936357163'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/2605449794936357163'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1295023076655#c2605449794936357163' title=''/><author><name>Stephen D. Green</name><uri>http://www.blogger.com/profile/11733910745267236574</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-950317961'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-619666144983702007</id><published>2011-01-14T16:06:00.097+07:00</published><updated>2011-01-14T16:06:00.097+07:00</updated><title type='text'>John, David,
Yes but wasn&amp;#39;t the beauty of allo...</title><content type='html'>John, David,&lt;br /&gt;Yes but wasn&amp;#39;t the beauty of allowing the xmlns=&amp;quot;foo&amp;quot; namespace attribute that it preserved compatibility with XML Namespaces. Allowing prefixes in attributes, worthy though it&amp;#39;s purpose may be, seems to me to be very costly if it breaks compatibility.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/619666144983702007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/619666144983702007'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1294995960097#c619666144983702007' title=''/><author><name>Stephen D. Green</name><uri>http://www.blogger.com/profile/11733910745267236574</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-950317961'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-6701795799067481368</id><published>2011-01-14T03:12:30.784+07:00</published><updated>2011-01-14T03:12:30.784+07:00</updated><title type='text'>Steve, who saids you need to declare namespaces?! ...</title><content type='html'>Steve, who saids you need to declare namespaces?! If something has a ns: prefix to its name - then assume it is processing instructions or other semantics, separate from the data content, otherwise ignore.  Simple.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/6701795799067481368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/6701795799067481368'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1294949550784#c6701795799067481368' title=''/><author><name>DRRW</name><uri>http://www.blogger.com/profile/00601142988520298325</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='26' src='http://drrw.net/inside/drrw-1.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1351419020'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-362146434692493809</id><published>2011-01-14T02:12:21.179+07:00</published><updated>2011-01-14T02:12:21.179+07:00</updated><title type='text'>&lt;i&gt;QName introduces the logic that the prefix part...</title><content type='html'>&lt;i&gt;QName introduces the logic that the prefix part MUST match a prefix in a namespace declaration, doesn&amp;#39;t it?&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Yes for XML with Namespaces, no for plain XML, and whatever we like for MicroXML.  My proposal is to allow &amp;quot;foo:&amp;quot; in attribute names, but &lt;i&gt;not&lt;/i&gt; to require &amp;quot;xmlns:foo&amp;quot; attributes to match them.  If such an attribute is present, great; your document is XML with Namespaces compatible.  In any case, attribute names are still just strings in the data model, whether they contain &amp;quot;:&amp;quot; or not.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/362146434692493809'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/362146434692493809'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1294945941179#c362146434692493809' title=''/><author><name>John Cowan</name><uri>http://www.blogger.com/profile/11452247999156925669</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-551632365'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-8033620815736226594</id><published>2011-01-13T22:26:38.136+07:00</published><updated>2011-01-13T22:26:38.136+07:00</updated><title type='text'>The problem, I think, with namespaces for attribut...</title><content type='html'>The problem, I think, with namespaces for attributes involving prefixes is that this introduces the concept of QName and I thought one requirement for MicroXML is that it allows the XML to be treated very much like just text. A QName introduces the logic that the prefix part MUST match a prefix in a namespace declaration, doesn&amp;#39;t it? That seems to be too much for something intended to be so simple.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/8033620815736226594'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/8033620815736226594'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1294932398136#c8033620815736226594' title=''/><author><name>Stephen D. Green</name><uri>http://www.blogger.com/profile/11733910745267236574</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-950317961'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-8570636854063938232</id><published>2011-01-12T03:50:10.801+07:00</published><updated>2011-01-12T03:50:10.801+07:00</updated><title type='text'>Steve, ignoring foreign namespace attributes works...</title><content type='html'>Steve, ignoring foreign namespace attributes works great! Typically injection of attributes is a great way to pass processing instructions and directives that are not part of the data content.  We use this in CAM for example to inject error, warning and informational parsing results.  So we&amp;#39;d expect any handler to simply strip these out after digesting and acting on them.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/8570636854063938232'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/8570636854063938232'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1294779010801#c8570636854063938232' title=''/><author><name>DRRW</name><uri>http://www.blogger.com/profile/00601142988520298325</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='26' src='http://drrw.net/inside/drrw-1.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1351419020'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-2770551264793864472</id><published>2011-01-10T18:25:19.038+07:00</published><updated>2011-01-10T18:25:19.038+07:00</updated><title type='text'>Thinking about John&amp;#39;s last comment, it seem to...</title><content type='html'>Thinking about John&amp;#39;s last comment, it seem to me that what makes namespaces useful to attributes is the potential use of foreign attributes. Attributes defined as part of a vocabulary do not need any additional namespace so they do not need a prefix (just a convention). Where something like 1 benefits from namespaces is when the attributes and maybe attribute values are from a foreign namespace, of course. Maybe would welcome, I think, a convention which says that such attributes need not be explicitly allowed by the vocabulary/namespace of the elements to be allowed in a MicroXML instance; the convention might be that they can just be ignored if their foreign namespace is not recognised in relation to the instance&amp;#39;s namespace: But is that safe?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/2770551264793864472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/2770551264793864472'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1294658719038#c2770551264793864472' title=''/><author><name>Stephen D. Green</name><uri>http://www.blogger.com/profile/11733910745267236574</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-950317961'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-9220235873497205094</id><published>2011-01-08T14:08:49.867+07:00</published><updated>2011-01-08T14:08:49.867+07:00</updated><title type='text'>I found an interesting IBM DeveloperWorks article ...</title><content type='html'>I found an interesting IBM DeveloperWorks article by Parand Darugar called &lt;a href="http://www.ibm.com/developerworks/library/x-abolns.html#betterexamples" rel="nofollow"&gt;&amp;quot;Abolish XML namespaces?&amp;quot;&lt;/a&gt;  Most anti-namespace screeds are just whinges, but this one isn&amp;#39;t.&lt;br /&gt;&lt;br /&gt;I&amp;#39;ve linked to the section about the two use cases where he considers namespaces actually worthwhile.  The first is in identifying a document type, which is what MicroXML @xmlns is for (although it can be used at the top of a subtree as well).  The second is namespaced attribute names, and I&amp;#39;ll quote it selectively here:&lt;br /&gt;&lt;br /&gt;Namespaces have a compelling use in providing unique identifiers for type information. You may have seen XML fragments such as: [...]&lt;br /&gt;&lt;br /&gt;&amp;lt;cost xsi:type=&amp;quot;xsd:float&amp;quot;&amp;gt;29.95&amp;lt;/cost&amp;gt;&lt;br /&gt;&lt;br /&gt;This conveys that cost has a type, and by type I mean type as defined by XSI, and that the type is float as defined by XSD. The key point here is that you are indeed looking for unique, non-context-related identifiers for each type. You are not combining your document with the XSD or the SOAP encoding document; you are simply referring to particular elements within each specification from your document. The specification need not even be in XML — you are referring to a flat structure, simply a list of types. If you believed that the type structure was hierarchical, you would need to fully qualify the path for the type, with something like:&lt;br /&gt;&lt;br /&gt;&amp;lt;cost xsi:type=&amp;quot;xsd:/types/simple/float&amp;quot;&amp;gt;29.95&amp;lt;/cost&amp;gt;&lt;br /&gt;&lt;br /&gt;[...]&lt;br /&gt;&lt;br /&gt;Perhaps this still isn&amp;#39;t a reasonable use case for XML namespaces, but you have glimpsed a certain amount of usefulness. The lesson can be generalized as follows: &lt;i&gt;A method for associating the attributes of elements with external reference points might have value&lt;/i&gt; [italics in original]. The element itself does not need a namespace, but its attributes might.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/9220235873497205094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/9220235873497205094'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1294470529867#c9220235873497205094' title=''/><author><name>John Cowan</name><uri>http://www.blogger.com/profile/11452247999156925669</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-551632365'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-4677602330797500983</id><published>2011-01-02T09:57:55.010+07:00</published><updated>2011-01-02T09:57:55.010+07:00</updated><title type='text'>On reflection, I think MicroXML should allow prefi...</title><content type='html'>On reflection, I think MicroXML should allow prefixed attributes.  It&amp;#39;s cleaner to have &amp;quot;json:type&amp;quot; than &amp;quot;json-type&amp;quot; in an attribute architecture, because you can have a &amp;quot;xmlns:json&amp;quot; attribute in the MicroXML to carry namespace information for XML processors without special hackery.  MicroXML processors just see both &amp;quot;json:type&amp;quot; and &amp;quot;xmlns:json&amp;quot; as ordinary attributes with no magic properties, the same as &amp;quot;xmlns&amp;quot;, and leave it up to the application to process them specially if at all.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/4677602330797500983'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/4677602330797500983'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1293937075010#c4677602330797500983' title=''/><author><name>John Cowan</name><uri>http://www.blogger.com/profile/11452247999156925669</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-551632365'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-2142874351807605598</id><published>2011-01-02T09:53:14.154+07:00</published><updated>2011-01-02T09:53:14.154+07:00</updated><title type='text'>Stephen (not D. Green): The obvious answer to the ...</title><content type='html'>Stephen (not D. Green): The obvious answer to the attribute-type issue seems to me to be: Don&amp;#39;t put data that needs to be JSON-visible into MicroXML attributes, or if you do, make sure it&amp;#39;s string data only.&lt;br /&gt;&lt;br /&gt;I&amp;#39;ve just posted my current thoughts on &lt;a href="http://recycledknowledge.blogspot.com/2011/01/microxml-and-json.html" rel="nofollow"&gt;MicroXML and JSON&lt;/a&gt;.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/2142874351807605598'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/2142874351807605598'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1293936794154#c2142874351807605598' title=''/><author><name>John Cowan</name><uri>http://www.blogger.com/profile/11452247999156925669</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-551632365'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-632161254511098619</id><published>2010-12-31T03:38:06.618+07:00</published><updated>2010-12-31T03:38:06.618+07:00</updated><title type='text'>I cannot agree with the first paragraph. XML is in...</title><content type='html'>I cannot agree with the first paragraph. XML is indeed a good, simple, extensible format for documents. It has the enormous advantage of having large amounts of software tool infrastructure already in place. It&amp;#39;s not perfect for all possible uses, but nothing is.&lt;br /&gt;&lt;br /&gt;Kurt, MicroXML currently appears to be designed for people who want to build new parsers and software infrastructure, not for people who are creating, sharing, and reading documents. See for instance the difference in perspectives in the discussion of processing instructions in these comments. I agree that this does not seem like a compelling design rationale.&lt;br /&gt;&lt;br /&gt;In the MusicXML world, for instance, UTF-16 encoding and processing instructions are absolutely necessary features. Who cares if these features may complicate life a little bit for parser implementers? The number of parser implementers is totally dwarfed by the number of people reading, writing, and sharing XML documents.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/632161254511098619'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/632161254511098619'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1293741486618#c632161254511098619' title=''/><author><name>Michael</name><uri>http://michaelgood.info</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1944613456'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-515029953128624122</id><published>2010-12-30T23:46:27.527+07:00</published><updated>2010-12-30T23:46:27.527+07:00</updated><title type='text'>Stephen, now you&amp;#39;re talking! Yes - with CAM te...</title><content type='html'>Stephen, now you&amp;#39;re talking! Yes - with CAM templates - we&amp;#39;re using xslt to write XSD for developers.  This is a key feature for NIEM.  The raw XSD for NIEM cause most developer tooling to crash - too much recursion - too much complexity.  By writing the equivalent from CAM templates in simple XSD syntax - it avoids those issues - and logically the CAM and XSD are equivalent. &lt;br /&gt;&lt;br /&gt;So back to where you are at - generating XSD schema for MicroXML from a CAM template using xslt can work nicely - and results in dramatic simpler tasking for developers - because they do not have to be XSD syntax experts.&lt;br /&gt;&lt;br /&gt;Sine CAM is essentially WYSIWYG XML structurally - the MicroXML instance can plug straight in there - and the XSD be generated automatically.  Even seems like cheating at times!</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/515029953128624122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/515029953128624122'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1293727587527#c515029953128624122' title=''/><author><name>DRRW</name><uri>http://www.blogger.com/profile/00601142988520298325</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='26' src='http://drrw.net/inside/drrw-1.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1351419020'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-6065892508650660995</id><published>2010-12-30T23:25:42.088+07:00</published><updated>2010-12-30T23:25:42.088+07:00</updated><title type='text'>For those who tend to use XSD (W3C XML Schema) wit...</title><content type='html'>For those who tend to use XSD (W3C XML Schema) with XML and would like to use a very simplified version with MicroXML too, I&amp;#39;ve produced a cut-down &lt;a href="http://lists.xml.org/archives/xml-dev/201012/msg00814.html" rel="nofollow"&gt;MicroXSD &amp;#39;schema of schemas&amp;#39;&lt;/a&gt;. It constrains XSD schemas for MicroXML to just &amp;#39;local&amp;#39; elements and attributes (to avoid having to include more than one namespace and to avoid namespace prefixes). Within those constraints, the semantics would be the same as standard XSD. I&amp;#39;ve used the schema of schemas to generate random MicroXSD schemas using my favorite XML editor and subsequently used these random schemas to generate MicroXML-esque instances without any problems. It all makes MicroXML and a MicroXML stack including profiles for schema validation look quite feasible. &amp;#39;Local&amp;#39; element and attribute definitions in an XSD schema have the advantage of making the schema look similar to the instances they constrain, I think (a bit like CAM and Examplotron).</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/6065892508650660995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/6065892508650660995'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1293726342088#c6065892508650660995' title=''/><author><name>Stephen D. Green</name><uri>http://www.blogger.com/profile/11733910745267236574</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-950317961'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-7286455289221778375</id><published>2010-12-30T23:23:35.387+07:00</published><updated>2010-12-30T23:23:35.387+07:00</updated><title type='text'>Stephen, lets not tie ourselves to XML Schema and ...</title><content type='html'>Stephen, lets not tie ourselves to XML Schema and XSD!  If you remove namespaces from the instances completely and use a CAM template as the (optional) way to add semantic context everyone wins!  Then if you need to unravel what amounts to the dictionary side of XML - you reference the CAM template and it tells you contextually the semantics of the item you are interested in using XPath referencing and rules.&lt;br /&gt;&lt;br /&gt;This decoupling is a no brainer in my opinion - and especially as CAM templates let you automatically generate domain dictionary catalogues of components, OWL and HTML5 forms directly - using XSLT transforms - that you cannot do from the XSD equivalent.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/7286455289221778375'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/7286455289221778375'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1293726215387#c7286455289221778375' title=''/><author><name>DRRW</name><uri>http://www.blogger.com/profile/00601142988520298325</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='26' src='http://drrw.net/inside/drrw-1.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1351419020'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-6144011225590973319</id><published>2010-12-30T23:16:17.576+07:00</published><updated>2010-12-30T23:16:17.576+07:00</updated><title type='text'>James, continuing the thought of MicroXML and OASI...</title><content type='html'>James, continuing the thought of MicroXML and OASIS CAM - have speed read through the comments - one thing I have long found troubling is the &amp;quot;let&amp;#39;s cram everything into the instance&amp;quot; mentality that rapidly becomes angle bracket coplexity.  By separating semantics into a template you can dramatically reduce what is being transferred on-the-wire to the bare content essentials and let the template then provide heavy lifting on parsing and interpretation nuances and even repetitive content structures and detail.&lt;br /&gt;&lt;br /&gt;Someone mentioned audience for all this - I&amp;#39;ve been working with the NIEM community with CAM - targetting making everything dramatically simpler to do compared to XML Schema.  When you give developers simpler more intuitive and robust ways to implement XML-based information exchanges - everyone wins.&lt;br /&gt;&lt;br /&gt;Also simpler should not mean less capable.  The trick here is to deliver simple yet strong functional capability that matches 95% of business information needs; more than an 80:20 approach - but less than 100% of all possible needs; its that striving to cover off the last 5% that adds 200% of the complexity.  It&amp;#39;s OK to say - in MicroXML we are just not going to worry about certain aspects of markup complexity - and catalogue those items as &amp;quot;not supported&amp;quot; so people understand the design limitations selected.&lt;br /&gt;&lt;br /&gt;Thanks, DW</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/6144011225590973319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/6144011225590973319'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1293725777576#c6144011225590973319' title=''/><author><name>DRRW</name><uri>http://www.blogger.com/profile/00601142988520298325</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='26' src='http://drrw.net/inside/drrw-1.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1351419020'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-728735084738146840</id><published>2010-12-30T22:50:56.624+07:00</published><updated>2010-12-30T22:50:56.624+07:00</updated><title type='text'>James, I&amp;#39;d like to see also how we can tie the...</title><content type='html'>James, I&amp;#39;d like to see also how we can tie the OASIS CAM template work into this as well.&lt;br /&gt;&lt;br /&gt;MicroXML and CAM seems like a very strong match...&lt;br /&gt;&lt;br /&gt;We&amp;#39;re getting ready to do CAM v2.0 in 2011 - so adding MicroXML support would be a natural.&lt;br /&gt;&lt;br /&gt;Thanks, DW</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/728735084738146840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/728735084738146840'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1293724256624#c728735084738146840' title=''/><author><name>DRRW</name><uri>http://www.blogger.com/profile/00601142988520298325</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='26' src='http://drrw.net/inside/drrw-1.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1351419020'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-6217122560823158680</id><published>2010-12-29T17:03:05.982+07:00</published><updated>2010-12-29T17:03:05.982+07:00</updated><title type='text'>John Cowan:
I think a key feature of JSON is that ...</title><content type='html'>John Cowan:&lt;br /&gt;I think a key feature of JSON is that JSON data contains its own metadata to define/declare its datatypes (without the need for a schema). If MicroXML could match this then there would need to be a way to add corresponding datatype-related metadata to the XML, wouldn&amp;#39;t there? If all of the JSON data is mapped to MicroXML &lt;strong&gt;elements&lt;/strong&gt; then maybe that can be done using attributes to contain the type-related metadata. Could the MicroXML (mapped from some JSON) contain metadata about the type of an element&amp;#39;s text content (without the use of a schema)? Might it need reserved attributes, etc?&lt;br /&gt;But how would the MicroXML instance contain metadata about the type of an &lt;strong&gt;attribute&amp;#39;s&lt;/strong&gt; value (without a schema)?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/6217122560823158680'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/6528634371451651800/comments/default/6217122560823158680'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2010/12/more-on-microxml.html?showComment=1293616985982#c6217122560823158680' title=''/><author><name>Stephen</name><uri>http://www.blogger.com/profile/08565392939038570678</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2010/12/more-on-microxml.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-6528634371451651800' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/6528634371451651800' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-2104432107'/></entry></feed>
