<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>CodeDread Blog &#187; w3c</title>
	<atom:link href="http://www.codedread.com/blog/archives/tag/w3c/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.codedread.com/blog</link>
	<description></description>
	<lastBuildDate>Mon, 02 Jan 2012 15:30:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Start Chopping Off Heads</title>
		<link>http://www.codedread.com/blog/archives/2010/09/21/start-chopping-off-heads/</link>
		<comments>http://www.codedread.com/blog/archives/2010/09/21/start-chopping-off-heads/#comments</comments>
		<pubDate>Tue, 21 Sep 2010 17:02:10 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[SVG]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[w3c]]></category>

		<guid isPermaLink="false">http://www.codedread.com/blog/?p=945</guid>
		<description><![CDATA[Because my kids are now old enough to grok some complex games, I&#8217;ve introduced them to the Magic: The Gathering card game. They love it. I love it. To continue the fun, we went to a local comic book store and bought a couple booster packs, which apparently are still being sold throughout the world. [...]]]></description>
			<content:encoded><![CDATA[<p><img width="100" height="100" style="float:right" src="http://codedread.com/clipart/hydra.svgz" alt="I want to believe. SVG as an image format."></img>Because my kids are now old enough to grok some complex games, I&#8217;ve introduced them to the <a href="http://en.wikipedia.org/wiki/Magic:_the_gathering">Magic: The Gathering</a> card game.  They love it.  I love it.  To continue the fun, we went to a local comic book store and bought a couple booster packs, which apparently are still being sold throughout the world.  One of my kids got a <a href="http://www.amazon.com/Protean-Hydra-Magic-Mythic-Gathering/dp/B002TJX23W">Protean Hydra</a>.  Sweet!  The <a href="http://en.wikipedia.org/wiki/Lernaean_Hydra">Hydra</a> is a mythical beast with nine heads, and every time you chop off a head, two more grow back.</p>
<p>The web is like that.  And we&#8217;re not <a href="http://hsivonen.iki.fi/spacer/">chopping off heads</a> fast enough. <span id="more-945"></span></p>
<p>Now that Internet Explorer has come out of its corner swinging with SVG support, I figured it&#8217;s time to make sure we can actually deploy web pages with SVG content in them.  Did you know that there are at least <em>thirteen</em> ways to deploy SVG on the web?</p>
<ul>
<li>inline in <a href="http://dev.w3.org/html5/spec/the-map-element.html#svg-0">HTML5</a> as <em>not-XML</em> (or !XML as I like to call it)</li>
<li>inline in XHTML (1.1 or 5) as XML</li>
<li>via the <a href="http://dev.w3.org/html5/spec/embedded-content-1.html#the-img-element">HTML:img</a> element</li>
<li>via the <a href="http://dev.w3.org/html5/spec/the-iframe-element.html#the-object-element">HTML:object</a> element</li>
<li>via the <a href="http://dev.w3.org/html5/spec/the-iframe-element.html#the-embed-element">HTML:embed</a> element</li>
<li>via the <a href="http://dev.w3.org/html5/spec/the-iframe-element.html#the-iframe-element">HTML:iframe element</a></li>
<li>via the <a href="http://www.w3.org/TR/2010/WD-SVG11-20100622/struct.html#ImageElement">SVG:image</a> element</li>
<li>via the <a href="http://www.w3.org/TR/2010/WD-SVG11-20100622/extend.html#ForeignObjectElement">SVG:foreignObject</a> element</li>
<li>as a fragment via the <a href="http://www.w3.org/TR/2010/WD-SVG11-20100622/struct.html#UseElement">SVG:use</a> element</li>
<li>via the <a href="http://www.w3.org/TR/CSS2/colors.html#propdef-background-image">background-image</a> CSS property</li>
<li>via the <a href="http://www.w3.org/TR/CSS2/generate.html#propdef-list-style-image">list-image</a> CSS property</li>
<li>via the <a href="http://www.w3.org/TR/2002/WD-css3-border-20021107/#the-border-image-uri">border-image</a> CSS property</li>
<li>directly linking and then browsing to a SVG file</li>
</ul>
<p>Does anyone know why the &#60;embed&#62; element was not deprecated in HTML5?  Was it the realities of the IE deployment difficulties around the &#60;object&#62; tag?  It sounds like IE9 will help to fix that so maybe &#60;embed&#62; can eventually be deprecated in HTML6 five years from now?</p>
<p>What&#8217;s worse is that the properties on the embedding context and the SVG elements affect how the SVG is rendered.  The width/height properties on &#60;object&#62;/&#60;embed&#62;/&#60;iframe&#62; tags.  The width/height/<a href="http://www.w3.org/TR/2010/WD-SVG11-20100622/coords.html#ViewBoxAttribute">viewBox</a> properties on the &#60;svg&#62; element.  The <a href="http://www.w3.org/TR/2010/WD-SVG11-20100622/coords.html#PreserveAspectRatioAttribute">preserveAspectRatio attribute</a> on the &#60;svg&#62; element.</p>
<p>The width attribute on a &#60;svg&#62; element can be specified in units of em, ex, px, in, cm, mm, pt, pc or it can be unitless or it can be a percentage.  Of course the height attribute can be specified in different units.</p>
<p>The embedding context also determines whether scripts are run within the SVG document. Hint: Should not be run in image contexts.</p>
<p><img width="100" height="100" style="float:right" src="http://codedread.com/clipart/caution.svgz" alt="I want to believe. SVG as an image format."></img>But it gets worse.  Let&#8217;s just look at one case: embedding an SVG document in a web page via the &#60;object&#62; tag:</p>
<p><code>&#60;object type='image/svg+xml' data='...'&#62;&#60;/object&#62;</code></p>
<p>For the data attribute you can specify a local file, a http/https URL or a data URI.  The browser can treat each of these cases differently.</p>
<p>The file served to the browser can have a MIME type of image/svg+xml or text/xml or application/xml.  Browsers might do something different in these cases (though they shouldn&#8217;t).</p>
<p>If the width/height on the &#60;object&#62; tag are specified, they should override the &#60;svg&#62; width/height if the &#60;svg&#62; width/height are in absolute (not relative/percentage) units.  The coordinate system of the SVG should map to the viewBox attribute unless the viewBox attribute is not specified, in which case it should be inferred.  Got all that?</p>
<p>If width/height on &#60;object&#62; are not specified, and width/height of the SVG are specified in absolute terms, then the size of the &#60;object&#62; frame should change to match the size of the SVG.</p>
<p>If width/height on &#60;object&#038; are not specified on a Tuesday of a leap year, and the SVG document has an odd-number of bytes in it and includes the string &#8216;rick&#8217; or &#8216;roll&#8217; anywhere in it, then the browser should play a video instead.</p>
<p>I&#8217;m not making this up, it&#8217;s <a href="http://goo.gl/Bxjk">right here</a> in the spec.</p>
<p>Actually the difficulty of this case is that there are so many dimensions and that it&#8217;s spread across multiple specs: HTML, CSS, SVG.  I think WICD/CDF was supposed to address some (all?) of these cases, but &#8230; are those specs actually valid?  And by that I mean, are browser vendors paying attention to them?  As Dolores O&#8217;Riordan might say: Does anyone care?</p>
<p><img width="100" height="150" style="float:right" src="http://codedread.com/clipart/iphone.svgz" alt="I want to believe. SVG as an image format."></img>There&#8217;s something to be said for the simplicity of the iPhone&#8217;s &#8220;one&#8221; button.  Android&#8217;s addition of the &#8220;Back&#8221; button is a perfect example of how a system can be incrementally improved.</p>
<p>Anyway, I&#8217;ve started to look at just three dimensions of this n-dimensional problem:  the HTML embedding context, width/height and viewBox.  I wrote a <a href="http://codedread.com/browser-tests/svg-image/html.html">test case</a> showing the 16 possible combinations.  I was not really shocked that between all the four major browser engines, only one case displayed consistently across all latest builds: as an &#60;img&#62; with width/height specified on both &#60;img&#62; and &#60;svg&#62;.</p>
<p>I&#8217;m really tired of reading specs (I&#8217;m sure this will pass), so in absence of a <a href="http://lists.w3.org/Archives/Public/www-svg/2010Sep/0081.html">reference rendering</a> of this page, we&#8217;ll just need to do what we always do: Make it look the same across all browsers.  Now that we have IE9, it can act as a tie-breaker between renderings that could be argued one way or the other <img src='http://www.codedread.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Hopefully I&#8217;ll be able to talk more about these 16 cases in the future.  Now you know where to come if you&#8217;re having trouble sleeping.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.codedread.com/blog/archives/2010/09/21/start-chopping-off-heads/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Oh The Things You&#8217;ll Learn</title>
		<link>http://www.codedread.com/blog/archives/2009/06/27/oh-the-things-youll-learn/</link>
		<comments>http://www.codedread.com/blog/archives/2009/06/27/oh-the-things-youll-learn/#comments</comments>
		<pubDate>Sat, 27 Jun 2009 14:35:25 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[SVG]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[mozilla]]></category>
		<category><![CDATA[w3c]]></category>

		<guid isPermaLink="false">http://blog.codedread.com/archives/2009/06/27/oh-the-things-youll-learn/</guid>
		<description><![CDATA[I was playing around with a new project recently and wanted to figure out the complementary color of a given color. All you need for this are the RGB values of the color for which you want to find the complement. There are lots of ways of specifying a color on the Open Web: rgb(255,0,0) [...]]]></description>
			<content:encoded><![CDATA[<p><object type="image/svg+xml" width="100" height="100" style="float:right" data="http://codedread.com/clipart/html.svgz"><span/></object>I was playing around with a <a href="http://jgraduate.googlecode.com/">new project</a> recently and wanted to figure out the <a href="http://en.wikipedia.org/wiki/Complementary_color">complementary color</a> of a given color.  All you need for this are the RGB values of the color for which you want to find the complement.</p>
<p>There are lots of ways of specifying a color on the Open Web:</p>
<ul>
<li>rgb(255,0,0)</li>
<li>rgb(100%,0,0)</li>
<li>#FF0000</li>
<li>#F00</li>
<li>&#8220;red&#8221;</li>
</ul>
<p>And it&#8217;s not just the <a href="http://www.w3.org/TR/CSS2/syndata.html#color-units">17 CSS color names</a>, there are 147 cool-sounding extended color names like <a href="http://www.w3.org/TR/SVG/types.html#ColorKeywords">papayawhip</a>.  So given that a user can input a color in all sorts of ways, what&#8217;s the right way to do this? <span id="more-539"></span></p>
<h3>The Hard Way</h3>
<p>You can build a parser that determines the color format, parses hex and rgb strings and has a table that maps 147 strings to rgb triplets.  It turns out there are a lot of JavaScript libraries that already do this.  <a href="http://code.google.com/p/jquery-color-utils/">Here&#8217;s one</a>.</p>
<p>But then I thought:  why am I including yet another JavaScript library to do this parsing when the browser must already know how to map from hex, rgb or color name to an RGB triplet (or equivalent) in order to render the color in the first place?  Surely there&#8217;s a way to extract this directly out of the DOM?</p>
<h3>The DOM Way</h3>
<p>It turns out there is.  It&#8217;s called the <a href="http://www.w3.org/TR/DOM-Level-2-Style/Overview.html">CSS DOM</a> and I always seem to forget about this document.  Piecing together information from the <a href="http://www.w3.org/TR/SVG11/types.html#InterfaceSVGStylable">SVG</a> <a href="http://www.w3.org/TR/SVG11/types.html#InterfaceSVGColor">DOM</a> and the <a href="http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-RGBColor">CSS</a> <a href="http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSPrimitiveValue">DOM</a>, this is how you would get the red value of a fill attribute on a circle:</p>
<p><code>var red = someCircle.getPresentationAttribute("fill").rgbColor.red.getFloatValue(1);</code></p>
<p>That&#8217;s just a bit perverse, but at least it&#8217;s possible.</p>
<p>In testing this I was delighted to discover that Opera and WebKit let me do it.  Sadly, <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=500888">Firefox does not</a>.</p>
<h3>The Best-Laid Plans&#8230;</h3>
<p><object type="image/svg+xml" width="100" height="100" style="float:right" data="http://codedread.com/clipart/facepalm.svgz"><span/></object>Here&#8217;s where the plot thickens.  Seems like the CSS Working Group was chartered to produce a new version of the CSS DOM to make the interfaces less clunky.  Seems like the CSS WG sent out a notice <a href="http://lists.w3.org/Archives/Public/www-style/2003Oct/0347.html">strongly warning browsers</a> not to implement certain DOM interfaces in the CSS DOM.  Seems like it&#8217;s six years later and there&#8217;s no new document.</p>
<p>Unfortunately this is where my sad little tale ends.  <a href="http://twitter.com/erikdahlstrom/status/2357983806">Erik of Opera</a> suggests that the SVGT 1.2 uDOM is really the right way to do this.  It doesn&#8217;t matter that I agree with him because I don&#8217;t think Webkit or Mozilla have any interest in implementing this any time soon.</p>
<p>It seems kind of sad that folks have to write JavaScript libraries to do color parsing when the browsers already do this natively.  It also seems really weird that the SVG DOM interfaces extend obsolete CSS DOM interfaces (SVGColor extends CSSValue which Bert Bos mentions in his email).</p>
<p>#DOMFAIL ?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.codedread.com/blog/archives/2009/06/27/oh-the-things-youll-learn/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>HTML5 += Intertwingly</title>
		<link>http://www.codedread.com/blog/archives/2008/12/15/html5-intertwingly/</link>
		<comments>http://www.codedread.com/blog/archives/2008/12/15/html5-intertwingly/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 16:07:27 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[sam ruby]]></category>
		<category><![CDATA[w3c]]></category>

		<guid isPermaLink="false">http://blog.codedread.com/archives/2008/12/15/html5-intertwingly/</guid>
		<description><![CDATA[Sam Ruby has just been appointed co-chair of the HTML5 Working Group. In addition to being an early adopter of HTML5, Sam has been a loud proponent of distributed extensibility within HTML and a vocal critic of the entire HTML5 process in general. I&#8217;m glad to see Sam is putting his money where his mouth [...]]]></description>
			<content:encoded><![CDATA[<p><object type="image/svg+xml" width="100" height="100" style="float:right" data="http://codedread.com/clipart/party.svgz"><span/></object><object type="image/svg+xml" width="100" height="100" style="float:right" data="http://codedread.com/clipart/html.svgz"><span/></object><a href="http://intertwingly.net/blog" title="Sam Ruby">Sam Ruby</a> has just been <a href="http://lists.w3.org/Archives/Public/public-html/2008Dec/0145.html">appointed co-chair</a> of the <a href="http://www.w3.org/html/wg/" title="HTML Working Group">HTML5 Working Group</a>.  In addition to being an early adopter of HTML5, Sam has been a loud proponent of <a href="http://www.intertwingly.net/blog/2007/08/02/HTML5-and-Distributed-Extensibility" title="Distributed extensibility proposal for HTML5">distributed extensibility</a> within HTML and a <a href="http://intertwingly.net/blog/2007/11/29/HTML5-needs-a-CarterPhone">vocal</a> <a href="http://intertwingly.net/blog/2008/11/20/Half-Full">critic</a> of the entire HTML5 process in general.  I&#8217;m glad to see Sam is putting his money where his mouth is.  It will be very interesting to see how this will affect the dynamics of the Working Group.</p>
<p>A warm congratulations to Sam and a heartfelt <em>Good Luck</em>!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.codedread.com/blog/archives/2008/12/15/html5-intertwingly/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>SVG Mini News Digest</title>
		<link>http://www.codedread.com/blog/archives/2008/09/11/svg-mini-news-digest/</link>
		<comments>http://www.codedread.com/blog/archives/2008/09/11/svg-mini-news-digest/#comments</comments>
		<pubDate>Thu, 11 Sep 2008 13:18:42 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Safari]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[SVG]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[w3c]]></category>

		<guid isPermaLink="false">http://blog.codedread.com/archives/2008/09/11/svg-mini-news-digest/</guid>
		<description><![CDATA[Rather than twittering these and missing a sizable chunk of people who might be interested, I thought I&#8217;d post a couple quick links to very cool news in the SVG world: Apple finally pushed a firmware update to their iPhones that makes Safari support SVG. I first heard about it here and then Doug blogged [...]]]></description>
			<content:encoded><![CDATA[<p><object type="image/svg+xml" width="100" height="100" align="right" hspace="10" data="http://codedread.com/clipart/svg.svgz"><span/></object>Rather than twittering these and missing a sizable chunk of people who might be interested, I thought I&#8217;d post a couple quick links to very cool news in the <a href="http://www.w3.org/Graphics/SVG" title="Scalable Vector Graphics">SVG</a> world:<span id="more-497"></span></p>
<ul>
<li>Apple finally pushed a firmware update to their iPhones that makes Safari support SVG.  I first heard about it <a href="http://tech.groups.yahoo.com/group/svg-developers/message/61065" title="Luis Vielva posts on Yahoo's svg-developers mailing list about SVG on the iPhone">here</a> and then <a href="http://schepers.cc/?p=71" title="Doug Schepers posts about SVG on the iPhone">Doug blogged about it</a>.</li>
<li>Mozilla finally landed <a href="http://weblogs.mozillazine.org/roc/archives/2008/09/auckland_web_me_1.html">SVG effects for HTML</a>, presumably for Firefox 3.1 but I&#8217;ll be keeping an ear to <a href="http://weblogs.mozillazine.org/roc/" title="Robert O'Callahan. Christian. Repatriate Kiwi. Mozilla hacker.">roc&#8217;s blog</a> for further updates on that.</li>
<li>Work on the <a href="http://labs.zavoo.com/?cat=10" title="Flex SVG Viewer">Flex SVG Viewer (FSV)</a> has started to pick up. It is now <a href="http://labs.zavoo.com/?p=25" title="Flex SVG Viewer released under MIT license">released under the MIT license</a> and just had its <a href="http://labs.zavoo.com/?p=26" title="Flex SVG Viewer has its first contributed patch">first contributed patch</a>. More on this at a later time.</li>
<li>Some guy named <a href="http://www.msnbc.msn.com/id/26646919/" title="TBL, father of the WWW, calls for IE to support SVG">Tim Berners-Lee chastised Internet Explorer</a> for not supporting SVG and that article has been picked up by the Associated Press &#8211; who does <a href="http://en.wikipedia.org/wiki/Tim_Berners-Lee" title="Tim Berners-Lee">he</a> think he is?</li>
<li>The <a href="http://www.w3.org/Graphics/SVG/IG/" title="W3C SVG Interest Group">W3C SVG Interest Group</a> garnered several new members within the last couple days and chatter has picked up on the <a href="http://lists.w3.org/Archives/Public/public-svg-ig/">Mailing List</a> which is a hopeful sign that we&#8217;re starting to gel a bit. If you care about SVG and can help in some tangible way, I invite you to <a href="http://www.w3.org/2004/01/pp-impl/42368/instructions" title="Join the W3C SVG Interest Group">consider joining</a>.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.codedread.com/blog/archives/2008/09/11/svg-mini-news-digest/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Parameterizing SVG and HTML</title>
		<link>http://www.codedread.com/blog/archives/2008/07/25/parameterizing-svg-and-html/</link>
		<comments>http://www.codedread.com/blog/archives/2008/07/25/parameterizing-svg-and-html/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 17:11:20 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[SVG]]></category>
		<category><![CDATA[w3c]]></category>
		<category><![CDATA[whatwg]]></category>

		<guid isPermaLink="false">http://blog.codedread.com/archives/2008/07/25/parameterizing-svg-and-html/</guid>
		<description><![CDATA[Hallvord R.M. Steen (an Opera employee and member of the HTML WG) was kind enough to create a bug regarding an issue I had raised a few months back. It is currently not possible inside an embedded SVG to determine the parameters sent in from HTML:object if the two documents are on different domains. This [...]]]></description>
			<content:encoded><![CDATA[<p><object type="image/svg+xml" width="100" height="100" align="right" hspace="10" data="http://codedread.com/clipart/html.svgz"><span/></object><a href="http://my.opera.com/hallvors/blog/">Hallvord R.M. Steen</a> (an <a href="http://www.opera.com/">Opera</a> employee and member of the <a href="http://www.w3.org/html/wg/">HTML WG</a>) was kind enough to create a <a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=5846" title="Allow embedded SVG to get the parameters sent in from HTML:object">bug</a> regarding an issue I had raised a few months back.  It is currently not possible inside an embedded SVG to determine the <a href="http://www.w3.org/TR/REC-html40/struct/objects.html#h-13.3.2">parameters</a> sent in from <a href="http://www.w3.org/TR/REC-html40/struct/objects.html#h-13.3">HTML:object</a> if the two documents are on different domains.  This appears to be a hole in the HTML4 spec, which doesn&#8217;t really address cross-domain security concerns for the HTML:object element.<span id="more-478"></span></p>
<p>At the moment, the issue is dead in the water.  <a href="http://ln.hixie.ch/">Ian Hickson</a> suggested that <a href="http://tools.ietf.org/html/rfc3986#section-3.4" title="Query Part of the Uniform Resource Identifier">query parameters</a> could solve this issue.  However, query parameters are part of the <abbr title="Uniform Resource Identifier">URI</abbr>.  In my experiments with PHP, I found that query parameters are a good way to ensure the browser actually re-fetches a document and doesn&#8217;t rely on the document in the cache.   This means that using query parameters would defeat one of the purposes of parameterizing the SVG in the first place (one document in the browser cache that could be used for many purposes).</p>
<p>It&#8217;s sad because plugins like Flash have the luxury of being able to <a href="http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_16417">pass parameters</a> into their content, but we can&#8217;t do that for content the browser understands natively (like SVG and HTML).  I failed to convince the <a href="http://realtech.burningbird.net/semweb/accessibility-and-microformats/#comment-471">benevolent dictator</a> that this is an important capability that the open web stack lacks.</p>
<p>I think this would be a nice way to turn bits of HTML/SVG into simple components without requiring script on the embedding side and without requiring heavier technologies like XBL and/or waiting for browser support of postMessage().  For example, it seems like web page authors using things like Adsense could benefit from this by not having to include foreign script in their pages, but apparently Google has no interest in this.</p>
<p>Eric Meyer&#8217;s <a href="http://meyerweb.com/eric/thoughts/2008/07/23/any-element-linking-demo/#comment-395213">link-anywhere proposal</a> inspired me to at least float this issue in my blog in case someone else thinks it important.  For now, <a href="http://www.w3.org/Bugs/Public/show_activity.cgi?id=5846">I&#8217;m tired</a>.  Hm, I wonder if I can use the <a href="http://ajaxian.com/archives/windowname-meet-dojoxiowindowname">window.name hack</a>&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.codedread.com/blog/archives/2008/07/25/parameterizing-svg-and-html/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>The SVG Push</title>
		<link>http://www.codedread.com/blog/archives/2008/07/07/the-svg-push/</link>
		<comments>http://www.codedread.com/blog/archives/2008/07/07/the-svg-push/#comments</comments>
		<pubDate>Mon, 07 Jul 2008 18:49:54 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[SVG]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[w3c]]></category>

		<guid isPermaLink="false">http://blog.codedread.com/archives/2008/07/07/the-svg-push/</guid>
		<description><![CDATA[Some of you may know that I recently became the co-chair of the W3C SVG Interest Group. Or as I like to call it, The SVG Fan Club. Being the President of a Fan Club is kind of pathetic, but I guess Doug figured I might be able to better channel any excess energy into [...]]]></description>
			<content:encoded><![CDATA[<p><object type="image/svg+xml" width="100" height="100" align="right" hspace="10" data="http://codedread.com/clipart/svg.svgz"><span/></object>Some of you may know that I recently became the co-chair of the <a href="http://www.w3.org/Graphics/SVG/IG/" title="W3C Scalable Vector Graphics Interest Group">W3C SVG Interest Group</a>.  Or as I like to call it, The <abbr title="Scalable Vector Graphics">SVG</abbr> Fan Club.  Being the President of a Fan Club is kind of pathetic, but I guess <a href="http://schepers.cc/" title="Doug Schepers">Doug</a> figured I might be able to better channel any excess energy into doing something that can affect more than my personal web traffic numbers. <span id="more-470"></span></p>
<p>What I&#8217;ve been trying to do since I began experimenting with SVG several years ago is build up demos of the technology that are, as much as possible, workable in a cross-browser fashion.  I usually build my demos to push the edges of browser support just a little.  In other words, give a glimpse of some of potential behind the SVG format while highlighting things for the browser folk to work on.</p>
<p>A case in point:  My <a href="http://www.codedread.com/displayWebStats.svg" title="SVG Web Stats">SVG Web Stats</a> web page &#8211; or should I say application?  Originally the idea was just to have a graph generated automatically from some server log files.  Then I decided to push in a little interactivity.  With the most recent wave of browsers (Opera 9.5, Firefox 3, Safari 3.1) the performance and behavior were now quite acceptable and consistent across the three main modern web browsers.  So what&#8217;s the next logical thing to do?  Make it slower and buggier again of course (in this case, by adding some SMIL and more functionality that highlight browser inconsistencies)  <img src='http://www.codedread.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />   Viva La Push.</p>
<p>Anyway, we want to use the <abbr title="Interest Group">IG</abbr> as a platform to work on a select number of initiatives that can produce some more tangible results.  Among the initial activites are assessing the state of Accessibility, gathering requirements from Designers, authoring some SVG tests and putting together a better SVG community website.  At the moment, I have this naïve hope that we can actually produce something useful, so feel free to crush my spirit below.  Or, if you&#8217;re so inclined and you&#8217;ve got some energy to spare, please feel free to <a href="http://www.w3.org/2004/01/pp-impl/19480/instructions">Join The SVG Interest Group</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.codedread.com/blog/archives/2008/07/07/the-svg-push/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SVG News Digest:  2008-04-16</title>
		<link>http://www.codedread.com/blog/archives/2008/04/16/svg-news-digest-2008-04-16/</link>
		<comments>http://www.codedread.com/blog/archives/2008/04/16/svg-news-digest-2008-04-16/#comments</comments>
		<pubDate>Thu, 17 Apr 2008 04:15:30 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[SVG]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[smil]]></category>
		<category><![CDATA[w3c]]></category>
		<category><![CDATA[whatwg]]></category>

		<guid isPermaLink="false">http://blog.codedread.com/archives/2008/04/16/svg-news-digest-2008-04-16/</guid>
		<description><![CDATA[I haven&#8217;t really given a good &#8216;SVG News Digest&#8217; in well over a year, but there was enough recent news that I thought I should post a little bit about what&#8217;s going on in the Scalable Vector Graphics world. Fair warning: This blog post is long, I probably should have spread it over 4-5 days [...]]]></description>
			<content:encoded><![CDATA[<p><object type="image/svg+xml" width="100" height="100" align="right" hspace="10" data="http://codedread.com/clipart/svg.svgz"><span/></object>I haven&#8217;t really given a good &#8216;SVG News Digest&#8217; in well over a year, but there was enough recent news that I thought I should post a little bit about what&#8217;s going on in the <a href="http://www.w3.org/Graphics/SVG">Scalable Vector Graphics</a> world.  Fair warning:  This blog post is long, I probably should have spread it over 4-5 days worth of blogging, but I lose patience when queuing up posts&#8230;<span id="more-454"></span></p>
<h3 id="toc">Table Of Contents</h3>
<ul>
<li><a href="#svg-in-html">SVG In HTML: Did You Blink?</a></li>
<li><a href="#svg-wg-going-public">SVG Working Group Going Public</a></li>
<li><a href="#smil-getting-some-love">SMIL Getting Some Love</a></li>
<li><a href="#gemi">Cool Demo: GEMi</a></li>
<li><a href="#slanty-comments">Slanty Blog Comments</a></li>
</ul>
<h3 id="svg-in-html"><a href="#svg-in-html">SVG In HTML:  Did You Blink?</a></h3>
<p><object type="image/svg+xml" width="100" height="100" align="left" hspace="10" data="http://codedread.com/clipart/html.svgz"><span/></object>For about a week, there was a <a href="http://annevankesteren.nl/2008/04/html5-foreign">pretty solid proposal</a> for how <a href="http://www.whatwg.org/specs/web-apps/current-work/">HTML5</a> could include support for existing popular XML languages currently making up the fabric of the &#8216;open web&#8217; platform &#8211; this included Scalable Vector Graphics.</p>
<p>Specifically, the spec described how HTML5 could allow inline markup that (very closely) resembled SVG and MathML (in a special mode of the HTML5 parser).  However, very recently, the <a href="http://lists.w3.org/Archives/Public/public-html/2008Apr/0392.html">SVG WG requested</a> the SVG part of the proposal be <a href="http://intertwingly.net/blog/2008/04/15/HTML5-SVG">removed</a> from the HTML5 spec so that the SVG WG could investigate if there were any improvements that could be made that would preserve interoperability with existing user agents and tools.</p>
<p>My biggest concern about the original proposal was that &#8217;round-tripping&#8217; SVG images was not guaranteed.  Round-tripping means that I should be able to take a valid SVG document made in an editor like <a href="http://inkscape.org/">Inkscape</a> and copy-paste that XML code into an HTML5 document and vice versa.  The trip from Inkscape-to-HTML was supported by the original proposal (where the HTML parser would just ignore namespace prefixes).  But the trip the other way (copy-paste from a HTML5+SVG document to Inkscape) was not guaranteed.</p>
<p>This is because the HTML5 parser is much more forgiving about certain things.  It does not mandate namespace prefixes, double-quotes on attribute values, or case sensitivity for all modes.  It doesn&#8217;t even require you to close all your elements.  This is by design.</p>
<p>This means that an author could not be guaranteed to take valid SVG markup embedded in HTML5 and paste it into a standalone document and expect a graphical editor to be able to bring up the image.</p>
<p>However, if we require that any browser supporting SVG-in-HTML5 must support a means of exporting the DOM as XML &#8211; then my concerns are very much alleviated.  It <a href="http://lists.w3.org/Archives/Public/public-html/2008Apr/0414.html">was clarified</a> to me that this was indeed recommended, but it could not be a requirement because User <del>Agent</del> <ins>Interface</ins> requirements are out of scope of the HTML5 specification.  <del>I&#8217;m not really sure why &#8211; we are not talking about capturing all UA requirements, only those that are required for interoperability with a foreign language such as SVG &#8211; but c&#8217;est la guerre.</del>  See <a href="http://blog.codedread.com/archives/2008/04/16/svg-news-digest-2008-04-16/#comment-12518">Ian&#8217;s comment</a> below for more clarity.</p>
<h3 id="svg-wg-going-public"><a href="#svg-wg-going-public">SVG Working Group Going Public</a></h3>
<p><object type="image/svg+xml" width="100" height="100" align="right" hspace="10" data="http://codedread.com/clipart/svg.svgz"><span/></object>The <a href="http://www.w3.org/Graphics/SVG/WG/">SVG Working Group</a> has been <a href="http://lists.w3.org/Archives/Public/www-svg/2008Apr/0048.html">rechartered</a> as a <em>Public</em> Working Group.  This means that the general public will be able to read emails, conference transcripts, action items, etc.  I really think this is a great idea, and I look forward to more transparency around SVG activities.  Here&#8217;s their <a href="http://www.w3.org/2007/11/SVG_rechartering/SVG-WG-charter.html">new charter</a>.</p>
<p>Another activity within the W3C surrounding SVG is the creation of a <a href="http://www.w3.org/Graphics/SVG/IG/">SVG Interest Group</a>.  This is an interesting idea &#8211; not sure if it&#8217;s the first of its kind within the W3C.  Based on <a href="http://www.w3.org/2007/11/SVG_rechartering/SVG-IG-charter.html">their charter</a>, the IG will:</p>
<blockquote cite="http://www.w3.org/2007/11/SVG_rechartering/SVG-IG-charter.html#scope"><p>&#8220;provide requirements, specification feedback, errata suggestions and tests to the SVG WG&#8221;</p>
</blockquote>
<p>Sounds like a good opportunity to gather more folks interested in vector graphics on the web into one place for some interaction.</p>
<h3 id="smil-getting-some-love"><a href="#smil-getting-some-love">SMIL Getting Some Love</a></h3>
<p><object type="image/svg+xml" width="100" height="100" align="left" hspace="10" data="http://codedread.com/clipart/smile.svgz"><span/></object>In case you <a href="http://blog.codedread.com/archives/2008/03/26/webkit-nightly-not-smiling/">missed it</a>, the <a href="http://www.webkit.org/">WebKit</a> nightly builds now includes some support for declarative animation (SMIL).  I&#8217;m really pleased to see two native browsers now supporting SVG animation interoperably.  Now I&#8217;d like to see <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=216462">this patch</a> land as soon as Firefox 3 ships so that we can have some declarative animation support in all 3 major native SVG browsers.</p>
<h3 id="gemi"><a href="#gemi">Cool Demo: GEMi</a></h3>
<p><object type="image/svg+xml" width="100" height="100" align="right" hspace="10" data="http://codedread.com/clipart/party.svgz"><span/></object>Domenico Strazzullo <a href="http://tech.groups.yahoo.com/group/svg-developers/message/60327">announced</a> today <a href="http://www.dotuscomus.com/svg/lib/gemi/v1.29/gemi.svg">a very nice demo</a> of a windowing system built in SVG for browsers.  Kind of reminds me of <a href="http://www.ajaxwindows.com/apps/windows/content/index.html">AjaxWindows</a>, but this GEMi demo actually works really well in all 3 major SVG browsers without the help of XUL.  Apparently it also works in IE+ASV.</p>
<p>I was really impressed with this &#8211; but I can&#8217;t wait to see if anybody tries to build anything with it, since the goal of the project was a framework that can be integrated into some other project.</p>
<p><a href="http://www.dotuscomus.com/svg/lib/gemi/v1.29/gemi.svg"><b>Click here to try it out</b></a>!</p>
<h3 id="slanty-comments"><a href="#slanty-comments">Slanty Blog Comments</a></h3>
<p><object type="image/svg+xml" width="100" height="100" align="left" hspace="10" data="http://codedread.com/clipart/wordpress.svgz"><span/></object>More blog experimentation last night by adding &#8216;slanty comments&#8217;.  After futzing with PHP, CSS, HTML and SVG, I finally got the effect I was after.  It took me over 2 hours.  Of course that was also testing it in Firefox 2, Firefox 3, Safari 3.1, Opera 9.20, WebKit nightly, Internet Explorer 6 and on two platforms (Windows and Linux).</p>
<p>Unfortunately, when all was said and done, I wasn&#8217;t really happy with <a href="http://blog.codedread.com/archives/2008/04/01/giving-flash-a-chance/#comments">the result</a>.  Maybe I&#8217;m just not used to seeing that on a website?  If anybody has ideas on how to improve it, I&#8217;ll gladly steal them.</p>
<p>What I thought was really interesting about this?  Well first, let me explain how I serve my website and blog:  I author my content in XHTML served the content as application/xhtml+xml for those browsers that support it (which is, incidentally, all major browsers except for Internet Explorer).  For IE, I simply change the MIME type to text/html and cross my fingers (ok, in fairness, I did do some tweaking and did design a horrid little HTML table-based fallback menu).</p>
<p>Anyway, for my slanted comment links, I use inline SVG.  Here is a snip of the code for a blog comment:</p>
<p style="background-color:#ddd"><code style="text-align:left; font-size:10pt;">&#160;&#160;&#60;div&#62;</p>
<p>&#160;&#160;&#160;&#160;&#60;svg xmlns="http://www.w3.org/2000/svg" ...&#62;</p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#60;a href="http://example.com/" xlink:href="http://example.com/" ...&#62;</p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#60;text ...&#62;1. Joe Blow Says:&#60;/text&#62;</p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#60;/a&#62;</p>
<p>&#160;&#160;&#160;&#160;&#60;/svg&#62;</p>
<p>&#160;&#160;&#60;/div&#62;</p>
<p>&#160;&#160;&#60;div&#62;</p>
<p>&#160;&#160;&#160;&#160;&#60;p&#62;... comment text goes here ...&#60;/p&#62;</p>
<p>&#160;&#160;&#60;/div&#62;</code></p>
<p>Most browsers (IE included) simply ignore elements they do not recognize.  So how does the above look to IE6?  See the bold markup below:</p>
<p style="background-color:#ddd"><code style="text-align:left; font-size:10pt;"><b>&#160;&#160;&#60;div&#62;</b></p>
<p>&#160;&#160;&#160;&#160;&#60;svg xmlns="http://www.w3.org/2000/svg" ...&#62;</p>
<p><b>&#160;&#160;&#160;&#160;&#160;&#160;&#60;a href="http://example.com/"</b> xlink:href="http://example.com/" <b>...&#62;</b></p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#60;text ...&#62;<b>1. Joe Blow Says:</b>&#60;/text&#62;</p>
<p><b>&#160;&#160;&#160;&#160;&#160;&#160;&#60;/a&#62;</b></p>
<p>&#160;&#160;&#160;&#160;&#60;/svg&#62;</p>
<p><b>&#160;&#160;&#60;/div&#62;</p>
<p>&#160;&#160;&#60;div&#62;</p>
<p>&#160;&#160;&#160;&#160;&#60;p&#62;... comment text goes here ...&#60;/p&#62;</p>
<p>&#160;&#160;&#60;/div&#62;</b></code></p>
<p>So the svg:a element looks like a html:a element to IE.  So in this one case, my inline SVG kinda sorta falls back as HTML content for the one browser that doesn&#8217;t support SVG (again, Internet Explorer).  Yes, I know &#8211; horrible horrible horrible.  However, it works.  I kind of shudder to think what this would do in IE8 (without an SVG plugin), I guess I&#8217;ll have to test it eventually.</p>
<p>Oh, and if you don&#8217;t know what I mean by slanty comments, well you&#8217;ll just have to post a comment&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.codedread.com/blog/archives/2008/04/16/svg-news-digest-2008-04-16/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>More Importantly&#8230;</title>
		<link>http://www.codedread.com/blog/archives/2008/03/09/more-importantly/</link>
		<comments>http://www.codedread.com/blog/archives/2008/03/09/more-importantly/#comments</comments>
		<pubDate>Sun, 09 Mar 2008 17:08:58 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[SVG]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[w3c]]></category>

		<guid isPermaLink="false">http://blog.codedread.com/archives/2008/03/09/more-importantly/</guid>
		<description><![CDATA[From a discussion that started with bitterness and vitriol and half-flames came forth a semi-useful discussion in which I was a mere observer. To me, the pinnacle of usefulness came with Henri Sivonen&#8217;s post which contained a list of use cases. Here was an important one Making Flash-like visually “high-impact” (sorry about the marketing BS [...]]]></description>
			<content:encoded><![CDATA[<p><object type="image/svg+xml" width="100" height="100" align="right" hspace="10" data="http://codedread.com/clipart/html.svgz"><span/></object>From a <a href="http://intertwingly.net/blog/2008/03/07/Design-By-Attrition">discussion</a> that started with bitterness and vitriol and half-flames came forth a semi-useful discussion in which I was a mere observer.  To me, the pinnacle of usefulness came with <a href="http://hsivonen.iki.fi/">Henri Sivonen&#8217;s</a> post which contained a list of use cases.  Here was an important one <span id="more-439"></span></p>
<blockquote style="clear:both" cite="http://intertwingly.net/blog/2008/03/07/Design-By-Attrition#c1205058801"><p>Making Flash-like visually “high-impact” (sorry about the marketing BS term) sites using the openly specified Web platform but without the Draconianness of XML in such a way that the whole thing uses retained-mode graphics and lives in one DOM for easy scripting (i.e. no need for scripts to deal with object or iframe sub-DOMs).</p></blockquote>
<p> (<a href="http://intertwingly.net/blog/2008/03/07/Design-By-Attrition#c1205058801">link</a>)</p>
<p>I guess that&#8217;s what I want&#8230; but more important to me than removing the &#8220;Draconianness of XML&#8221; is that <strong>I want this stuff to work in every major browser on every major platform</strong>.  And no amount of specifying can guarantee that.  It takes willingness of all participants.  I use the term &#8220;participants&#8221; here in a broad sense, because based on the first IE8 Beta, it seems that <a href="http://annevankesteren.nl/2008/03/ie8-bad">Microsoft is not really working in close communication</a> with the HTML Working and Web Application Formats Working Groups.  The WG seems to be trapped in a constant state of reverse-engineering the things that Microsoft has done and sadly I don&#8217;t see this changing in the future.</p>
<p>Can an open specification really compete with a company that can throw gobs of money at developing a glitzy-but-proprietary standard, who then proceed to throw <a href="http://blogs.msdn.com/somasegar/archive/2008/01/07/2008-olympics-brought-to-you-by-silverlight.aspx">gobs</a> and <a href="http://www.gcn.com/print/27_2/45710-1.html">gobs</a> of money at organizations to use that new standard?  Further reading:  Sam Ruby&#8217;s <a href="http://www.intertwingly.net/blog/2008/01/26/SVG-Shiv">SVG Shiv</a>.</p>
<p>Sorry, I guess that was my cheery thought for the day.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.codedread.com/blog/archives/2008/03/09/more-importantly/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

