<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Old Dogs Are Suspicious of New Tricks</title>
	<atom:link href="http://third-bit.com/blog/archives/1455.html/feed" rel="self" type="application/rss+xml" />
	<link>http://third-bit.com/blog/archives/1455.html</link>
	<description>Data is ones and zeroes &#124; Software is ones and zeroes and hard work.</description>
	<lastBuildDate>Tue, 22 May 2012 16:23:22 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>By: The Third Bit &#187; Blog Archive &#187; Always Outnumbered, Always Outgunned</title>
		<link>http://third-bit.com/blog/archives/1455.html#comment-1574</link>
		<dc:creator>The Third Bit &#187; Blog Archive &#187; Always Outnumbered, Always Outgunned</dc:creator>
		<pubDate>Mon, 07 Apr 2008 13:59:05 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/archives/1455.html#comment-1574</guid>
		<description>[...] that SVN offers makes it a winner. I feel the same way about SCons and Rake vs. Ant or Make, or JSON vs. XML: the newer tools would win if all other things were equal, but they&#8217;re not, so they [...]</description>
		<content:encoded><![CDATA[<p>[...] that SVN offers makes it a winner. I feel the same way about SCons and Rake vs. Ant or Make, or JSON vs. XML: the newer tools would win if all other things were equal, but they&#8217;re not, so they [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dmitri</title>
		<link>http://third-bit.com/blog/archives/1455.html#comment-1573</link>
		<dc:creator>Dmitri</dc:creator>
		<pubDate>Tue, 01 Apr 2008 18:13:29 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/archives/1455.html#comment-1573</guid>
		<description>The very next item in my feed reader is http://www.dehora.net/journal/2008/03/30/no-free-lunch-for-programming-libraries/ .</description>
		<content:encoded><![CDATA[<p>The very next item in my feed reader is <a href="http://www.dehora.net/journal/2008/03/30/no-free-lunch-for-programming-libraries/" rel="nofollow">http://www.dehora.net/journal/2008/03/30/no-free-lunch-for-programming-libraries/</a> .</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Shawn Berney</title>
		<link>http://third-bit.com/blog/archives/1455.html#comment-1572</link>
		<dc:creator>Shawn Berney</dc:creator>
		<pubDate>Tue, 01 Apr 2008 17:00:19 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/archives/1455.html#comment-1572</guid>
		<description>Let me post a slight correction... I suppose a very valuable reason to use XML is to take advantage of the many libraries to manipulate data... Here, JSON may compete nicely (especially with built in functions).</description>
		<content:encoded><![CDATA[<p>Let me post a slight correction&#8230; I suppose a very valuable reason to use XML is to take advantage of the many libraries to manipulate data&#8230; Here, JSON may compete nicely (especially with built in functions).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Shawn Berney</title>
		<link>http://third-bit.com/blog/archives/1455.html#comment-1571</link>
		<dc:creator>Shawn Berney</dc:creator>
		<pubDate>Tue, 01 Apr 2008 16:24:54 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/archives/1455.html#comment-1571</guid>
		<description>@Andrey: I agree it is all about the right tool for the job...

To me, XML is merely a tool that provides context to text - and by extension, basic reasoning. Example, XSLTs extends XML by applying contextual transformation based on defined reasoning (screen size, ect.).

If you only require data interchange - and are using regular expressions anyway - the only(?) reason to use XML over .txt or .csv formats is communication. Here structure is only necessary to make apparent the data&#039;s value (instead of the old fashioned syntax comments)...

If you&#039;re using JSON to execute functions, then we are really no longer talking about a data model per se. XML has it&#039;s roots in publishing, not scripting. To me, these are two very different tools.

Granted, these ideas are based strictly on theoretical &#039;book&#039; learning. Please correct me if these manuals have steered me in the wrong direction...</description>
		<content:encoded><![CDATA[<p>@Andrey: I agree it is all about the right tool for the job&#8230;</p>
<p>To me, XML is merely a tool that provides context to text &#8211; and by extension, basic reasoning. Example, XSLTs extends XML by applying contextual transformation based on defined reasoning (screen size, ect.).</p>
<p>If you only require data interchange &#8211; and are using regular expressions anyway &#8211; the only(?) reason to use XML over .txt or .csv formats is communication. Here structure is only necessary to make apparent the data&#8217;s value (instead of the old fashioned syntax comments)&#8230;</p>
<p>If you&#8217;re using JSON to execute functions, then we are really no longer talking about a data model per se. XML has it&#8217;s roots in publishing, not scripting. To me, these are two very different tools.</p>
<p>Granted, these ideas are based strictly on theoretical &#8216;book&#8217; learning. Please correct me if these manuals have steered me in the wrong direction&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Andrey Petrov</title>
		<link>http://third-bit.com/blog/archives/1455.html#comment-1570</link>
		<dc:creator>Andrey Petrov</dc:creator>
		<pubDate>Tue, 01 Apr 2008 02:32:26 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/archives/1455.html#comment-1570</guid>
		<description>Looks like my fancy XML got stripped out. Another downside to using XML? :-P

Here&#039;s a pastebin of it: http://pastebin.ca/965646</description>
		<content:encoded><![CDATA[<p>Looks like my fancy XML got stripped out. Another downside to using XML? <img src='http://third-bit.com/blog/wp-includes/images/smilies/icon_razz.gif' alt=':-P' class='wp-smiley' /> </p>
<p>Here&#8217;s a pastebin of it: <a href="http://pastebin.ca/965646" rel="nofollow">http://pastebin.ca/965646</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Andrey Petrov</title>
		<link>http://third-bit.com/blog/archives/1455.html#comment-1569</link>
		<dc:creator>Andrey Petrov</dc:creator>
		<pubDate>Tue, 01 Apr 2008 02:31:20 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/archives/1455.html#comment-1569</guid>
		<description>@Greg: Not necessarily less ambiguous, but at least less *prone* to ambiguity. The way Python is less prone to ugly code than other languages starting with P.




      foo

        bar


        baz





Can you see anything you would have done differently?

This is a real example I&#039;ve had to deal with (element names changed). I&#039;ve seen other examples like that before. Have a look at any AJAX XML and ask yourself if there&#039;s anything you would have done different -- 95% of the time, there is. Not so much because there is no right/wrong, but moreso because there is no &quot;simplest&quot; way to do things most of the time. You can always justify the additional complexity. You can always change elements to attributes, attributes to subnodes, etc.

{&quot;request&quot;: [{&quot;url&quot;: &quot;foo&quot;}, {&quot;path&quot;: &quot;baz&quot;}]}

Doesn&#039;t get much simpler.

@Shawn: Yes, it&#039;s more constrained, less flexible... but it&#039;s important to use the right tool for the job. You wouldn&#039;t use JSON to represent HTML -- that&#039;s where XML is king.

Raw data transport is more often simple than not. If it isn&#039;t, then it probably should be simplified.</description>
		<content:encoded><![CDATA[<p>@Greg: Not necessarily less ambiguous, but at least less *prone* to ambiguity. The way Python is less prone to ugly code than other languages starting with P.</p>
<p>      foo</p>
<p>        bar</p>
<p>        baz</p>
<p>Can you see anything you would have done differently?</p>
<p>This is a real example I&#8217;ve had to deal with (element names changed). I&#8217;ve seen other examples like that before. Have a look at any AJAX XML and ask yourself if there&#8217;s anything you would have done different &#8212; 95% of the time, there is. Not so much because there is no right/wrong, but moreso because there is no &#8220;simplest&#8221; way to do things most of the time. You can always justify the additional complexity. You can always change elements to attributes, attributes to subnodes, etc.</p>
<p>{&#8220;request&#8221;: [{"url": "foo"}, {"path": "baz"}]}</p>
<p>Doesn&#8217;t get much simpler.</p>
<p>@Shawn: Yes, it&#8217;s more constrained, less flexible&#8230; but it&#8217;s important to use the right tool for the job. You wouldn&#8217;t use JSON to represent HTML &#8212; that&#8217;s where XML is king.</p>
<p>Raw data transport is more often simple than not. If it isn&#8217;t, then it probably should be simplified.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Blake Winton</title>
		<link>http://third-bit.com/blog/archives/1455.html#comment-1568</link>
		<dc:creator>Blake Winton</dc:creator>
		<pubDate>Tue, 01 Apr 2008 00:44:41 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/archives/1455.html#comment-1568</guid>
		<description>Greg said “@Kevin: I agree, if you don’t eval, it’s just as secure as XML.”

Well, not quite...

My malicious page can include  and then whenever someone who has logged in to your site views my page, Shazam!  I get access to that data.  Since it&#039;s a script tag, it&#039;s not subject to the same-origin-policy, and since I can override the constructor of Object, you don&#039;t even need to assign the result to a variable.  I am a little surprised that no-one else has mentioned this, but I guess normal people don&#039;t think like Adam.  (And I mean that as a compliment.  :)

Since XML isn&#039;t executable by anyone, you can&#039;t pull the same trick.  At least, I don&#039;t think you can.  Perhaps if there was some way to get at the data of an image tag...</description>
		<content:encoded><![CDATA[<p>Greg said “@Kevin: I agree, if you don’t eval, it’s just as secure as XML.”</p>
<p>Well, not quite&#8230;</p>
<p>My malicious page can include  and then whenever someone who has logged in to your site views my page, Shazam!  I get access to that data.  Since it&#8217;s a script tag, it&#8217;s not subject to the same-origin-policy, and since I can override the constructor of Object, you don&#8217;t even need to assign the result to a variable.  I am a little surprised that no-one else has mentioned this, but I guess normal people don&#8217;t think like Adam.  (And I mean that as a compliment.  <img src='http://third-bit.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Since XML isn&#8217;t executable by anyone, you can&#8217;t pull the same trick.  At least, I don&#8217;t think you can.  Perhaps if there was some way to get at the data of an image tag&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Shawn Berney</title>
		<link>http://third-bit.com/blog/archives/1455.html#comment-1567</link>
		<dc:creator>Shawn Berney</dc:creator>
		<pubDate>Mon, 31 Mar 2008 23:56:21 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/archives/1455.html#comment-1567</guid>
		<description>Great conversation... I must acknowledge that I am not a programmer... Though, one comment caught my attention.

&quot;When you send data over XML, you’re not just sending data but you’re sending an entire culture along with it. And you need to be familiar with said culture to parse it.&quot; Andrey Petrov

My question here is: Is this not a fundamental part of developing the &#039;semantic web&#039;: to create well defined definitions (DTD&#039;s) - and standards (where possible) - of the complexities (the culture) involved in contribution &amp; integration??

Another reasons that I like the concept of XML is the ability to utilize non-exponentiated parsing (PureXML in DB2 Viper for example) reducing the need for big math and encouraging mid-tier processing: granted this may come at a cost of greater demands on the I/O stream... But, this is a balance that can be managed through software design.

SO, it seems to me that the ambiguity referred to in XML goes back to the age old debate of simplicity versus flexibility. Thoughts??

All corrections are welcomed.</description>
		<content:encoded><![CDATA[<p>Great conversation&#8230; I must acknowledge that I am not a programmer&#8230; Though, one comment caught my attention.</p>
<p>&#8220;When you send data over XML, you’re not just sending data but you’re sending an entire culture along with it. And you need to be familiar with said culture to parse it.&#8221; Andrey Petrov</p>
<p>My question here is: Is this not a fundamental part of developing the &#8216;semantic web&#8217;: to create well defined definitions (DTD&#8217;s) &#8211; and standards (where possible) &#8211; of the complexities (the culture) involved in contribution &amp; integration??</p>
<p>Another reasons that I like the concept of XML is the ability to utilize non-exponentiated parsing (PureXML in DB2 Viper for example) reducing the need for big math and encouraging mid-tier processing: granted this may come at a cost of greater demands on the I/O stream&#8230; But, this is a balance that can be managed through software design.</p>
<p>SO, it seems to me that the ambiguity referred to in XML goes back to the age old debate of simplicity versus flexibility. Thoughts??</p>
<p>All corrections are welcomed.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Simon Willison</title>
		<link>http://third-bit.com/blog/archives/1455.html#comment-1566</link>
		<dc:creator>Simon Willison</dc:creator>
		<pubDate>Mon, 31 Mar 2008 20:15:56 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/archives/1455.html#comment-1566</guid>
		<description>Yahoo! use eval() to parse, but they run the JSON string through a regular expression to check that it matches JSON syntax first:

http://developer.yahoo.com/yui/docs/JSON.js.html

The same technique is described with more detailed inline comments here:

http://www.json.org/json2.js</description>
		<content:encoded><![CDATA[<p>Yahoo! use eval() to parse, but they run the JSON string through a regular expression to check that it matches JSON syntax first:</p>
<p><a href="http://developer.yahoo.com/yui/docs/JSON.js.html" rel="nofollow">http://developer.yahoo.com/yui/docs/JSON.js.html</a></p>
<p>The same technique is described with more detailed inline comments here:</p>
<p><a href="http://www.json.org/json2.js" rel="nofollow">http://www.json.org/json2.js</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Greg Wilson</title>
		<link>http://third-bit.com/blog/archives/1455.html#comment-1565</link>
		<dc:creator>Greg Wilson</dc:creator>
		<pubDate>Mon, 31 Mar 2008 19:44:04 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/archives/1455.html#comment-1565</guid>
		<description>@Everyone: OK, maybe I&#039;m wrong about this one---it&#039;s happened before :-).  That said:

@Andrey: JSON isn&#039;t really less ambiguous---you still have to know what that list of lists of dictionaries *means*.  As Blake Winton pointed out in email, parsing JSON still depends who&#039;s doing the parsing.

@Kevin: I agree, if you don&#039;t eval, it&#039;s just as secure as XML.  In that case, we&#039;re arguing over the runtime and coding costs of one parsed representation vs. another.

@Bignose: I agree, JSON is a lot easier to read.  I suspect this is the main reason it caught on, and other justifications are just rationalizations.  (FWIW, I think it&#039;s a pretty good reason...)

@Simon: Interesting to know that Yahoo has switched.  Are they using eval() client-side, or parsing?</description>
		<content:encoded><![CDATA[<p>@Everyone: OK, maybe I&#8217;m wrong about this one&#8212;it&#8217;s happened before <img src='http://third-bit.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> .  That said:</p>
<p>@Andrey: JSON isn&#8217;t really less ambiguous&#8212;you still have to know what that list of lists of dictionaries *means*.  As Blake Winton pointed out in email, parsing JSON still depends who&#8217;s doing the parsing.</p>
<p>@Kevin: I agree, if you don&#8217;t eval, it&#8217;s just as secure as XML.  In that case, we&#8217;re arguing over the runtime and coding costs of one parsed representation vs. another.</p>
<p>@Bignose: I agree, JSON is a lot easier to read.  I suspect this is the main reason it caught on, and other justifications are just rationalizations.  (FWIW, I think it&#8217;s a pretty good reason&#8230;)</p>
<p>@Simon: Interesting to know that Yahoo has switched.  Are they using eval() client-side, or parsing?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

