/*
		
	Considering to add:

	- CSS3 Paged Media
	- XHTML+Voice
	- Cross-site XMLHttpRequest 
	
	Misc:
	- Color correction/matching 
	- Custom content handlers (HTML5 registerProtocolHandler)
	- ping attribute
	
	Events:
	- onhashchange
	- DOMcontentloaded

	Web tech related, but not really for web devs:
	- MHTML
	- Widgets



*/

caniuse.eras = {
	'farpast':'Far Past',
	'past':'Past',
	'now':'Present',
	'near':'Near Future (early 2010)',
	'far':'Future (late 2010 or later)'
};

caniuse.agents = {
	'trident':{
		'browser':'Internet Explorer',
		'versions':[6, 7, 8, 8, 9],
		'eng_versions':{8:4},
		'abbr':'IE'
	},
	'gecko':{
		'browser':'Firefox',
		'versions':[3, 3.5, 3.6, 3.6, 3.7],
		'eng_versions':{2:'1.8.1',3:'1.9',3.5:'1.9.1',3.6:'1.9.2'},
		'abbr':'FF'
	},
	'webkit_saf':{
		'browser':'Safari',
		'versions':[3.1, 3.2, 4, '4x', '4x'],
		'abbr':'Saf.'
	},
	'webkit_chr':{
		'browser':'Chrome',
		'versions':[2, 3, 4, 4, 5],
		'abbr':'Chr.'
	},
	'presto':{
		'browser':'Opera',
		'versions':[9.6, 10.1, 10.5, 10.5, '10x'],
		'abbr':'Op.'
	}
};

caniuse.statuses = {
	'rec':'Recommendation',
	'pr':'Proposed Recommendation',
	'cr':'Candidate Recommendation',
	'wd':'Working Draft',
	'ietf':'IETF standard',
	'unoff':'Unofficial / Note'
};

/*
	y = yes, n = now, u = unknown, a = almost
	p = plug-in, j = javascript
*/

caniuse.data = {
	'png-alpha':{
		'title':		'PNG alpha transparency',
		'description':	'Semi-transparent areas in PNG files',
		'spec':			'http://www.w3.org/TR/PNG-Decoders.html',
		'status':		'cr',
		'links':		[
							{title:'W3 Test files',url:'http://www.w3.org/Graphics/PNG/inline-alpha.html'},
							{title:'Workaround for IE6',url:'http://24ways.org/2007/supersleight-transparent-png-in-ie6'}
						],
		'categories':	['PNG'],
		'stats':{
			'trident':	{6:'j',7:'y',8:'y',9:'y'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'apng':{
		'title':		'Animated PNG (APNG)',
		'description':	'Like animated GIFs, but allowing 24-bit colors and alpha transparency',
		'spec':			'https://wiki.mozilla.org/APNG_Specification',
		'status':		'unoff',
		'links':		[
							{title:'Wikipedia',url:'http://en.wikipedia.org/wiki/APNG'},
							{title:'Several example files',url:'http://treebuilder.de/default.asp?file=89031.xml'},
							{title:'An APNG editor',url:'http://animatedpng.com/'}
						],
		'categories':	['PNG'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'n'},
			'gecko':	{2:'n',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'n','4x':'n'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'n',4:'n',5:'u'},
			'presto':	{9:'n',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'Where support for APNG is missing, only the first frame is displayed'
	},
	'video':{
		'title':		'Video element',
		'description':	'Method of playing videos on webpages (without requiring a plug-in)',
		'spec':			'http://www.whatwg.org/specs/web-apps/current-work/multipage/video.html#video',
		'status':		'wd',
		'links':		[

							{title:'Detailed Opera article on video/audio elements',url:'http://dev.opera.com/articles/view/everything-you-need-to-know-about-html5-video-and-audio/'},
							{title:'Video for Everybody',url:'http://camendesign.co.uk/code/video_for_everybody'},
							{title:'Several tests',url:'http://www.double.co.nz/video_test/'}
						],
		'categories':	['HTML5'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'y'},
			'gecko':	{2:'n',3:'n',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'y','10x':'y'}
		},
		'notes':		"Safari and Internet Explorer do not support Ogg/Theora/Vorbis, while Opera and Firefox don't support MPEG-4/H.264/AAC. Chrome supports both."
	},
	'audio':{
		'title':		'Audio element',
		'description':	'Method of playing sound on webpages (without requiring a plug-in)',
		'spec':			'http://www.whatwg.org/specs/web-apps/current-work/multipage/video.html#audio',
		'status':		'wd',
		'links':		[
							{title:'Podcast site that uses &lt;audio&gt;',url:'http://huffduffer.com'}
						],
		'categories':	['HTML5'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'a',10.1:'a',10.5:'y','10x':'y'}
		},
		'notes':		'Opera 9.5+ supports the HTML5 audio object, though not the element. The Opera "Video" build only supports Ogg Vorbis audio files using the video element.'
	},
	'contenteditable':{
		'title':		'WYSIWYG editable elements (contenteditable attribute)',
		'description':	'Method of making any HTML element editable',
		'spec':			'http://www.whatwg.org/specs/web-apps/current-work/multipage/editing.html#contenteditable',
		'status':		'wd',
		'links':		[
							{title:'Demo page',url:'http://www.xmlportfolio.com/temp/contentEditable.html'}
						],
		'categories':	['HTML5'],
		'stats':{
			'trident':	{6:'y',7:'y',8:'y',9:'y'},
			'gecko':	{2:'n',3:'a',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'dragndrop':{
		'title':		'Drag and Drop',
		'description':	'Method of easily dragging and drop elements on a page',
		'spec':			'http://www.whatwg.org/specs/web-apps/current-work/multipage/editing.html#dnd',
		'status':		'wd',
		'links':		[	
							{title:'WhatWG demo',url:'http://www.whatwg.org/demos/2008-sept/dnd/dnd.html'},
							{title:'Another demo',url:'http://ljouanneau.com/lab/html5/demodragdrop.html'}
						],
		'categories':	['HTML5'],
		'stats':{
			'trident':	{6:'j',7:'a',8:'a',9:'a'},
			'gecko':	{2:'j',3:'j',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'j',3.2:'j',4:'a','4x':'a'},
			'webkit_chr':{.2:'j',1:'j','1x':'j',2:'a',3:'a',4:'a',5:'a'},
			'presto':	{9:'j',9.6:'j',10.1:'j',10.5:'j','10x':'u'}
		}
	},

	'query':{
		'title':		'querySelector/querySelectorAll (Selectors API)',
		'description':	'Method of accessing DOM elements using CSS selectors',
		'spec':			'http://www.w3.org/TR/selectors-api/',
		'status':		'cr',
		'links':		[
							{title:'Selectors test including querySelectorAll',url:'http://www2.webkit.org/perf/slickspeed/'}
						],
		'categories':	['DOM'],
		'stats':{
			'trident':	{6:'j',7:'j',8:'y',9:'y'},
			'gecko':	{2:'j',3:'j',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'j',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'j',9.6:'j',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'Only works for the CSS selectors available. Thus the IE8 implementation is limited to the CSS 2.1 selectors'
	},
	'getelementsbyclassname':{
		'title':		'getElementsByClassName',
		'description':	'Method of accessing DOM elements by class name',
		'spec':			'http://www.whatwg.org/specs/web-apps/current-work/multipage/dom.html#dom-document-getelementsbyclassname',
		'status':		'wd',
		'links':		[
							{title:'Test page',url:'http://www.quirksmode.org/dom/tests/basics.html#getElementsByClassName'}
						],
		'categories':	['DOM','HTML5'],
		'stats':{
			'trident':	{6:'j',7:'j',8:'j',9:'u'},
			'gecko':	{2:'j',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'j',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'j',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'webforms':{
		'title':		'HTML5 form features (Web Forms 2.0)',
		'description':	'Expanded form options, including things like date pickers, sliders and validation',
		'spec':			'http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html',
		'status':		'wd',
		'links':		[
							{title:'HTML5 inputs and attribute support page',url:'http://www.miketaylr.com/code/input-type-attr.html'},
							{title:'Cross-browser JS implementation (based on original spec)',url:'http://code.google.com/p/webforms2/'}
						],
		'categories':	['HTML5'],
		'stats':{
			'trident':	{6:'j',7:'j',8:'j',9:'u'},
			'gecko':	{2:'j',3:'j',3.5:'j',3.6:'j',3.7:'a'},
			'webkit_saf':{3.1:'j',3.2:'j',4:'a','4x':'a'},
			'webkit_chr':{.2:'j',1:'j','1x':'j',2:'a',3:'a',4:'a',5:'a'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'Webkit browsers support "search", "meter" and multiple file uploads. Older Opera implementations are based on the original WHATWG specification. Some changes have been made in HTML5'
	},
	'html5':{
		'title':		'New, stylable HTML5 elements',
		'description':	'HTML5 offers some new elements, primarily for semantic purposes. The "stylable" part refers to the ability to use CSS on these elements',
		'spec':			'http://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#sections',
		'status':		'wd',
		'links':		[
							{title:'Workaround for IE',url:'http://blog.whatwg.org/supporting-new-elements-in-ie'},
							{title:'Alternate workaround',url:'http://blog.whatwg.org/styling-ie-noscript'},
							{title:'Examples of usage',url:'http://www.alistapart.com/articles/previewofhtml5'}
						],
		'categories':	['HTML5'],
		'stats':{
			'trident':	{6:'j',7:'j',8:'j',9:'y'},
			'gecko':	{2:'a',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'In Firefox 2 and older, unknown elements are self-closing (like a <code>br</code> or <code>img</code> element) when serving the page as text/html. HTML 5 Elements in pages served as XHTML work as expected'
	},
	'offline':{
		'title':		'Offline web applications',
		'description':	'Method of selecting web page files to be cached, thus allowing them to work offline on subsequent visits to the page',
		'spec':			'http://www.whatwg.org/specs/web-apps/current-work/multipage/offline.html',
		'status':		'wd',
		'links':		[
							{title:'Offline app demo',url:'http://starkravingfinkle.org/blog/2008/05/firefox-3-offline-app-demo-part-2/'}
						],
		'categories':	['HTML5'],
		'stats':{
			'trident':	{6:'p',7:'p',8:'p',9:'u'},
			'gecko':	{2:'p',3:'a',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'p',3.2:'p',4:'y','4x':'y'},
			'webkit_chr':{.2:'p',1:'p','1x':'p',2:'a',3:'a',4:'y',5:'y'},
			'presto':	{9:'p',9.6:'p',10.1:'p',10.5:'p','10x':'u'}
		},
		'notes':		'Also supported in Mobile Safari 3.1+\
						 Support in < Chrome 4.0 uses the auto-included Gears plug-in. Functions are similar, but not the same.'
	},
	'webworkers':{
		'title':		'Independent JavaScript threading (Web Workers)',
		'description':	'Method of running scripts in the background, isolated from the web page',
		'spec':			'http://www.whatwg.org/specs/web-workers/current-work/',
		'status':		'wd',
		'links':		[
							{title:'Web Worker demo',url:'http://nerget.com/rayjs-mt/rayjs.html'}
						],
		'categories':	['HTML5'],
		'stats':{
			'trident':	{6:'p',7:'p',8:'p',9:'u'},
			'gecko':	{2:'p',3:'p',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'p',3.2:'p',4:'y','4x':'y'},
			'webkit_chr':{.2:'p',1:'p','1x':'p',2:'a',3:'y',4:'y',5:'y'},
			'presto':	{9:'p',9.6:'p',10.1:'p',10.5:'p','10x':'u'}
		},
		'notes':		'Support in Chrome uses the auto-included Gears plug-in. Functions are similar, but not the same.'
	},
	'fontface':{
		'title':		'Font linking (@font-face)',
		'description':	'Method of displaying fonts downloaded from websites',
		'spec':			'http://www.w3.org/TR/css3-webfonts/',
		'status':		'wd',
		'links':		[
							{title:'ALA Article',url:'http://www.alistapart.com/articles/cssatten'},
							{title:'Font demo',url:'http://devfiles.myopera.com/articles/593/webfonts.html'},
							{title:'Font demo',url:'http://opentype.info/demo/webfontdemo.html'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'a',7:'a',8:'a',9:'a'},
			'gecko':	{2:'n',3:'n',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'n',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'Trident (Internet Explorer) only supports EOT fonts. Opera does not support the font when \'format("opentype")\' is used, although it does otherwise appear to support OTF fonts'
	},
	'eot':{
		'title':		'Embedded OpenType font format for use in @font-face (EOT)',
		'description':	'Type of font that can be derived from a regular font, allowing small files and legal use of high-quality fonts. Usage is restricted by the file being tied to the website',
		'spec':			'http://www.w3.org/Submission/EOT/',
		'status':		'unoff',
		'links':		[
							{title:'Information page',url:'http://www.fontembedding.com/'},
							{title:'Example pages',url:'http://www.microsoft.com/typography/web/embedding/default.aspx'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'y',7:'y',8:'y',9:'y'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'n'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'n','4x':'n'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'n',4:'n',5:'u'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'n'}
		},
		'notes':		'Proposal by Microsoft, being considered for W3C standardization.'
	},
	'woff':{
		'title':		'Web Open Font Format for use in @font-face (WOFF)',
		'description':	'Compressed TrueType/OpenType font that contains information about the font\'s source.',
		'spec':			'http://www.w3.org/Submission/WOFF/',
		'status':		'unoff',
		'links':		[
							{title:'Mozilla hacks blog post',url:'http://hacks.mozilla.org/2009/10/woff/'},
							{title:'W3C Submission request', url:'http://www.w3.org/Submission/2010/03/'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'y'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'n','4x':'u'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'n',4:'n',5:'u'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'y'}
		},
		'notes':		'Proposal resulting from discussion among browser and font vendors. Expected to be supported in IE9 and later Opera versions as result of Microsoft\'s/Opera\'s submission of the format to the W3C'
	
	},
	'multibackgrounds':{
		'title':		'CSS3 Multiple backgrounds',
		'description':	'Method of using multiple images as a background',
		'spec':			'http://www.w3.org/TR/css3-background/',
		'status':		'cr',
		'links':		[
							{title:'Example page',url:'http://www.quirksmode.org/css/multiple_backgrounds.html'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'y','10x':'y'}
		}
	},
	'border-image':{
		'title':		'CSS3 Border images',
		'description':	'Method of using images for borders',
		'spec':			'http://www.w3.org/TR/css3-background/#the-border-image',
		'status':		'cr',
		'links':		[
							{title:'Example page',url:'http://www.css3.info/preview/border-image/'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'y','10x':'y'}
		}
	},
	'css-table':{
		'title':		'CSS table display',
		'description':	'Method of displaying elements an tables, rows, and cells',
		'spec':			'http://www.w3.org/TR/CSS21/tables.html',
		'status':		'cr',
		'links':		[
							{title:'Detailed article on usage',url:'http://www.digital-web.com/articles/everything_you_know_about_CSS_Is_wrong/'}
						],
		'categories':	['CSS2'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'y',9:'y'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'css-gencontent':{
		'title':		'CSS generated content',
		'description':	'Method of displaying text or images before or after elements',
		'spec':			'http://www.w3.org/TR/CSS21/generate.html',
		'status':		'cr',
		'links':		[
							{title:'Examples of different types of generated content',url:'http://www.javascriptkit.com/dhtmltutors/cssgenerate.shtml'}
						],
							
		'categories':	['CSS2'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'y',9:'y'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'css-fixed':{
		'title':		'CSS position:fixed',
		'description':	'Method of keeping an element in a fixed location regardless of scroll position',
		'spec':			'http://www.w3.org/TR/CSS21/visuren.html#fixed-positioning',
		'status':		'cr',
		'links':		[
							{title:'Workaround for IE6',url:'http://www.howtocreate.co.uk/fixedPosition.html'},
							{title:'Workaround for Mobile Safari',url:'http://doctyper.com/archives/200808/fixed-positioning-on-mobile-safari/'}
						],
							
		'categories':	['CSS2'],
		'stats':{
			'trident':	{6:'j',7:'y',8:'y',9:'y'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'Also does not work on Mobile Safari 3.1'
	},
	'css-sel2':{
		'title':		'CSS 2.1 selectors',
		'description':	'Allows more accurate element selecting, using >, +, [attr], :first-child, etc.',
		'spec':			'http://www.w3.org/TR/CSS21/selector.html',
		'status':		'cr',
		'links':		[
							{title:'Detailed support information',url:'http://www.quirksmode.org/css/contents.html'},
							{title:'Examples of advanced selectors',url:'http://www.yourhtmlsource.com/stylesheets/advancedselectors.html'}
						],
		'categories':	['CSS2'],
		'stats':{
			'trident':	{6:'j',7:'y',8:'y',9:'y'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'css-sel3':{
		'title':		'CSS3 selectors',
		'description':	'Advanced element selection',
		'spec':			'http://www.w3.org/TR/css3-selectors/',
		'status':		'pr',
		'links':		[
							{title:'Detailed support information',url:'http://www.quirksmode.org/css/contents.html'},
							{title:'W3 Test suite',url:'http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/index.html'},
							{title:'Automated CSS3 selector test',url:'http://www.css3.info/selectors-test/'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'j',7:'j',8:'j',9:'y'},
			'gecko':	{2:'n',3:'n',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'css-textshadow':{
		'title':		'CSS3 Text-shadow',
		'description':	'Method of displaying shadow or blur effect to text',
		'spec':			'http://www.w3.org/TR/css3-text/#text-shadow',
		'status':		'wd',
		'links':		[
							{title:'Information page with examples',url:'http://www.howtocreate.co.uk/textshadow.html'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'a',3.2:'a',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'This spec used to be Candidate Recommendation, but that version has been made obsolete. Incomplete support by webkit refers to the lack of support for multiple shadows.'
	},
	'css-boxshadow':{
		'title':		'CSS3 Box-shadow',
		'description':	'Method of displaying shadow or blur effect to elements',
		'spec':			'http://www.w3.org/TR/css3-background/#box-shadow',
		'status':		'unoff',
		'links':		[
							{title:'Webkit demo',url:'http://webkit.org/blog/86/box-shadow/'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'y','10x':'y'}
		},
		'notes':		'Used to be part of the Backgrounds and Borders Module Level 3, but removed for now.'
	},
	'css3-colors':{
		'title':		'CSS3 Colors',
		'description':	'Method of describing colors using HSL, as well as allowing alpha-transparency',
		'spec':			'http://www.w3.org/TR/2003/CR-css3-color-20030514/',
		'status':		'cr',
		'links':		[
							{title:'HSL demo',url:'http://www.css3.info/preview/hsl/'},
							{title:'RGBA demo',url:'http://www.css3.info/preview/rgba/'},
							{title:'HSLA demo',url:'http://www.css3.info/preview/hsla/'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'a'},
			'gecko':	{2:'a',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'a',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'Incomplete support by Presto (Opera) refers to the lack of support for RGBA/HSLA. Incomplete support by IE9 refers to support for RGBA, but not HSL or HSLA'
	},
	'css3-boxsizing':{
		'title':		'CSS3 Box-sizing',
		'description':	'Method of specifying whether or not an element\'s borders, padding and margin should be including in size units',
		'spec':			'http://www.w3.org/TR/css3-ui/#box-sizing',
		'status':		'cr',
		'links':		[{title:'CSS3 box-sizing attribute',url:'http://www.helephant.com/article.aspx?ID=1259'}],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'y',9:'y'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'css-media':{
		'title':		'CSS3 Media Queries',
		'description':	'Method of applying styles based on media information. Includes things like page and device dimensions',
		'spec':			'http://www.w3.org/TR/css3-mediaqueries/',
		'status':		'cr',
		'links':		[
							{title:'Demo page for page width',url:'http://test.unintentionallyblank.co.uk/media.html'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'a',3.2:'a',4:'y','4x':'y'},
			'webkit_chr':{.2:'a',1:'a','1x':'a',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		['Incomplete support by webkit refers to only acknowledging different media rules on page reload']
	},
	'multicolumn':{
		'title':		'CSS3 Multiple column layout',
		'description':	'Method of flowing information in multiple columns',
		'spec':			'http://www.w3.org/TR/css3-multicol/',
		'status':		'cr',
		'links':		[
							{title:'Demo page',url:'http://www.quirksmode.org/css/multicolumn.html'}
						], 
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'u'}
		}
	},
	'roundedcorners':{
		'title':		'CSS3 Rounded corners (border-radius)',
		'description':	'Method of making the border corners round',
		'spec':			'http://www.w3.org/TR/css3-background/#the-border-radius',
		'status':		'cr',
		'links':		[
							{title:'Border-radius CSS Generator',url:'http://border-radius.com'},
							{title:'Demo page',url:'http://www.css3.info/preview/rounded-border/'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'y'},
			'gecko':	{2:'a',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'a',1:'a','1x':'a',2:'a',3:'a',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'y','10x':'y'}
		},
		'notes':		'Incomplete support refers to non-antialiased corners'
	},
	'transforms':{
		'title':		'CSS3 Transforms',
		'description':	'Method of transforming an element including rotating, scaling, etc.',
		'spec':			'http://www.w3.org/TR/css3-2d-transforms/',
		'status':		'wd',
		'links':		[
							{title:'Webkit blog post',url:'http://webkit.org/blog/130/css-transforms/'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'y','10x':'y'}
		},
		'notes':		'Current implementations may change significantly from final specification, since W3C adoption is quite recent. The scale transform can be emulated in IE using Microsoft\'s "zoom" extension, others are (not easily) possible using the MS Matrix filter'
	},	
	'transforms3d':{
		'title':		'CSS3 3D Transforms',
		'description':	'Method of transforming an element in the third dimension',
		'spec':			'http://www.w3.org/TR/css3-3d-transforms/',
		'status':		'wd',
		'links':		[
// 							{title:'Demo page',url:'http://benputman.com/iphone/iphone_3d_navagation_example.html'},
							{title:'Webkit blog post',url:'http://webkit.org/blog/386/3d-transforms/'},
							{title:'Demo page',url:'http://www.satine.org/archives/2009/07/11/snow-stack-is-here/'},
							{title:'Cubic panorama demo (Mobile Safari only)',url:'http://www.bunnyhero.org/2008/10/13/iphone-vr-viewing-3d-panoramas-in-safari-using-javascript-and-webkit-transform/'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'u'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'n','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'n',4:'n',5:'u'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'u'}
		},
		'notes':		'Current implementations may change significantly from final specification, since W3C adoption is quite recent. Also supported in Mobile Safari 3.1+'
	},
	'transitions':{
		'title':		'CSS3 Transitions',
		'description':	'Simple method of animating certain properties of an element',
		'spec':			'http://www.w3.org/TR/css3-transitions/',
		'status':		'wd',
		'links':		[
							{title:'Webkit blog post',url:'http://webkit.org/blog/138/css-animation/'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'y','10x':'y'}
		},
		'notes':		'Current implementations may change significantly from final specification, since W3C adoption is quite recent.'
	},	
	'animation':{
		'title':		'CSS3 Animation',
		'description':	'Complex method of animating certain properties of an element',
		'spec':			'http://www.w3.org/TR/css3-animations/',
		'status':		'wd',
		'links':		[
							{title:'Webkit blog post',url:'http://webkit.org/blog/324/css-animation-2/'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'u'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'u'}
		},
		'notes':		'Current implementations may change significantly from final specification, since W3C adoption is quite recent.'
	},	
	'css-gradients':{
		'title':		'CSS Gradients',
		'description':	'Method of setting a color gradient as a CSS image',
		'spec':			'http://dev.w3.org/csswg/css3-images/#gradients-',
		'status':		'unoff',
		'links':		[
							{title:'Webkit blog post',url:'http://webkit.org/blog/175/introducing-css-gradients/'}
						],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'u'}
		},
		'notes':		'Proposal by Webkit, being considered for W3C standardization.'
	},	
	'css-canvas':{
		'title':		'CSS Canvas Drawings',
		'description':	'Method of using HTML5 Canvas as a background image',
		'spec':			'http://webkit.org/blog/176/css-canvas-drawing/', // No real spec that I know of
		'status':		'unoff',
		'links':		[
							{title:'Webkit blog post',url:'http://webkit.org/blog/176/css-canvas-drawing/'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'u'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'u'}
		},
		'notes':		'Proposal by Webkit, being considered for W3C standardization.'
	},
	'css-reflections':{
		'title':		'CSS Reflections',
		'description':	'Method of displaying a reflection of an element',
		'spec':			'http://webkit.org/blog/182/css-reflections/', // No real spec that I know of
		'status':		'unoff',
		'links':		[
							{title:'Webkit blog post',url:'http://webkit.org/blog/182/css-reflections/'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'u'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'u'}
		},
		'notes':		'Proposal by Webkit, being considered for W3C standardization.'
	},
	'css-masks':{
		'title':		'CSS Masks',
		'description':	'Method of displaying part of an element, using a selected image as a mask',
		'spec':			'http://webkit.org/blog/181/css-masks/', // No real spec that I know of
		'status':		'unoff',
		'links':		[
							{title:'Webkit blog post',url:'http://webkit.org/blog/181/css-masks/'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'u'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'u'}
		},
		'notes':		'Proposal by Webkit, being considered for W3C standardization.'
	},
	'svg':{
		'title':		'SVG (basic support)',
		'description':	'Method of displaying basic Vector Graphics features using the embed or object elements',
		'spec':			'http://www.w3.org/Graphics/SVG/',
		'status':		'rec',
		'links':		[
							{title:'Wikipedia',url:'http://en.wikipedia.org/wiki/Scalable_Vector_Graphics'},
							{title:'Sample files',url:'http://www.croczilla.com/bits_and_pieces/svg/samples/'}
						],
		'categories':	['SVG'],
		'stats':{
			'trident':	{6:'p',7:'p',8:'p',9:'a'},
			'gecko':	{2:'a',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'a',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'svg-css':{
		'title':		'SVG in CSS backgrounds',
		'description':	'Method of using SVG images as CSS backgrounds',
		'spec':			'http://www.w3.org/TR/css3-background/#background-image',
		'status':		'cr',
		'links':		[
							{title:'Test page',url:'http://a.deveria.com/svg/css_svg_test.html'}
						],
		'categories':	['SVG','CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'y'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'u'},
			'webkit_saf':{3.1:'n',3.2:'a',4:'a','4x':'a'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'a',3:'a',4:'a',5:'a'},
			'presto':	{9:'n',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'Incomplete support by webkit refers to limitations on the conditions (see test page for examples). Support in IE9 not yet available, but <a href="http://blogs.msdn.com/ie/archive/2010/03/18/svg-in-ie9-roadmap.aspx">currently planned</a>.'
	},
	'svg-smil':{
		'title':		'SVG SMIL animation',
		'description':	'Method of using animation elements to animate SVG images',
		'spec':			'http://www.w3.org/TR/SVG/animate.html',
		'status':		'rec',
		'links':		[
							{title:'Example files',url:'http://www.carto.net/papers/svg/samples/#anim'}
						],
		'categories':	['SVG'],
		'stats':{
			'trident':	{6:'p',7:'p',8:'p',9:'n'},
			'gecko':	{2:'j',3:'j',3.5:'j',3.6:'j',3.7:'a'},
			'webkit_saf':{3.1:'j',3.2:'j',4:'a','4x':'a'},
			'webkit_chr':{.2:'j',1:'j','1x':'j',2:'a',3:'a',4:'a',5:'a'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'Gecko support expected for Gecko 1.9.3'
	},
	'svg-fonts':{
		'title':		'SVG fonts',
		'description':	'Method of using fonts defined as SVG shapes',
		'spec':			'http://www.w3.org/TR/SVG/fonts.html',
		'status':		'rec',
		'links':		[{title:'Font example',url:'http://www.treebuilder.de/default.asp?file=161754.xml'}],
		'categories':	['SVG'],
		'stats':{
			'trident':	{6:'p',7:'p',8:'p',9:'n'},
			'gecko':	{2:'p',3:'p',3.5:'p',3.6:'p',3.7:'p'},
			'webkit_saf':{3.1:'p',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'svg-filters':{
		'title':		'SVG filters',
		'description':	'Method of using photoshop-like effects on SVG shapes',
		'spec':			'http://www.w3.org/TR/SVG/filters.html',
		'status':		'rec',
		'links':		[
							{title:'Advanced filter effects',url:'http://www.treebuilder.de/default.asp?file=473324.xml'},
							{title:'W3C example',url:'http://www.w3.org/TR/SVGFilterPrimer12/'},
							{title:'Webkit bug report',url:'https://bugs.webkit.org/show_bug.cgi?id=26389'}
						],
		'categories':	['SVG'],
		'stats':{
			'trident':	{6:'p',7:'p',8:'p',9:'n'},
			'gecko':	{2:'p',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'p',3.2:'p',4:'p','4x':'u'},
			'webkit_chr':{.2:'p',1:'p','1x':'p',2:'p',3:'p',4:'p',5:'p'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'svg-html':{
		'title':		'SVG effects for HTML',
		'description':	'Method of using SVG effects on HTML elements (using CSS)',
		'spec':			'http://people.mozilla.com/~roc/SVG-CSS-Effects-Draft.html',
		'status':		'unoff',
		'links':		[
							{title:'MDC Reference page',url:'https://developer.mozilla.org/En/Applying_SVG_effects_to_HTML_content'}
						],
		'categories':	['SVG'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'n','4x':'n'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'n',4:'n',5:'u'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'n'}
		},
		'notes':		'Proposal by Mozilla, being considered for W3C standardization.'
		
	},
	'svg-html5':{
		'title':		'Inline SVG in HTML5',
		'description':	'Method of using SVG tags directly in HTML documents',
		'spec':			'http://dev.w3.org/html5/spec/the-canvas-element.html#svg-0',
		'status':		'wd',
		'links':		[
							{title:'Demo of multi-browser support using the SVGWeb library',url:'http://codinginparadise.org/projects/svgweb/samples/javascript-samples/svg_inline.html?svg.render.forceflash=false'}
						],
		'categories':	['SVG', 'HTML5'],
		'stats':{
			'trident':	{6:'p',7:'p',8:'p',9:'y'},
			'gecko':	{2:'p',3:'p',3.5:'p',3.6:'a',3.7:'a'},
			'webkit_saf':{3.1:'p',3.2:'p',4:'p','4x':'u'},
			'webkit_chr':{.2:'p',1:'p','1x':'p',2:'p',3:'p',4:'p',5:'u'},
			'presto':	{9:'p',9.6:'p',10.1:'p',10.5:'p','10x':'u'}
		},
		'notes':		'Currently only works in Firefox builds by enabling the HTML5 parser in about:config'
		
	},
	'canvas':{
		'title':		'Canvas (basic support)',
		'description':	'Method of generating dynamic graphics using JavaScript',
		'spec':			'http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#the-canvas-element',
		'status':		'wd',
		'links':		[
							{title:'Wikipedia',url:'http://en.wikipedia.org/wiki/Canvas_(HTML_element)'},
							{title:'Tutorial by Mozilla',url:'https://developer.mozilla.org/en/Canvas_tutorial'},
							{title:'Animation kit experiment',url:'http://glimr.rubyforge.org/cake/canvas.html'},
							{title:'Implementation for Internet Explorer',url:'http://explorercanvas.blogspot.com/'}
						],
		'categories':	['Canvas','HTML5'],
		'stats':{
			'trident':	{6:'j',7:'j',8:'j',9:'u'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'canvas-text':{
		'title':		'Text API for Canvas',
		'description':	'Method of displaying text on Canvas elements',
		'spec':			'http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#text',
		'status':		'wd',
		'links':		[
							{title:'Examples by Mozilla',url:'https://developer.mozilla.org/en/Drawing_text_using_a_canvas#Additional_examples'},
							{title:'Example chart',url:'http://www.ericbutler.net/demos/mozilla/2008/canvas-text-sample-chart.html'},
							{title:'Support library',url:'http://code.google.com/p/canvas-text/'}
						],
		'categories':	['Canvas','HTML5'],
		'stats':{
			'trident':	{6:'j',7:'j',8:'j',9:'u'},
			'gecko':	{2:'j',3:'j',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'j',3.2:'j',4:'y','4x':'y'},
			'webkit_chr':{.2:'j',1:'j','1x':'j',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'j',9.6:'j',10.1:'j',10.5:'y','10x':'y'}
		}
	},
	'namevalue-storage':{
		'title':		'Client-side storing of name/value pairs (Web Storage)',
		'description':	'Method of storing data locally like cookies, but for larger amounts of data (sessionStorage and localStorage, used to fall under HTML5).',
		'spec':			'http://www.w3.org/TR/webstorage/#storage',
		'status':		'wd',
		'links':		[
							{title:'Gecko reference',url:'https://developer.mozilla.org/En/DOM/Storage'}
						],
		'categories':	['DOM','Other'],
		'stats':{
			'trident':	{6:'j',7:'j',8:'y',9:'y'},
			'gecko':	{2:'a',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'y','10x':'y'}
		}
	},
	'db-storage':{
		'title':		'Client-side Database Storage (Web Database, formerly Web Storage)',
		'description':	'Method of storing data locally, allows database queries for access and manipulation (used to fall under HTML5)',
		'spec':			'http://www.w3.org/TR/webdatabase/',
		'status':		'wd',
		'links':		[
							{title:'Webkit example',url:'http://webkit.org/misc/DatabaseExample.html'}
						],
		'categories':	['DOM','Other'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'u'},
			'webkit_saf':{3.1:'n',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'y','10x':'y'}
		}
	},
	's-sent-events':{ //Server-sent DOM events
		'title':		'Server-sent DOM events',
		'description':	'Method of continuously sending data from a server to the browser, rather than repeatedly requesting it (EventSource interface, used to fall under HTML5)',
		'spec':			'http://www.w3.org/TR/eventsource/',
		'status':		'wd',
		'links':		[
							{title:'Opera blog post w/info',url:'http://my.opera.com/WebApplications/blog/show.dml/438711'},
							{title:'Opera web chat demo',url:'http://oxzone.opera.com:8088/'}
						],
		'categories':	['DOM','Other'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'u'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'n','4x':'u'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'n',4:'n',5:'u'},
			'presto':	{9:'a',9.6:'a',10.1:'a',10.5:'a','10x':'a'}
		},
		'notes':		'Opera implementation is based on the original WHATWG specification, using the &lt;event-source&gt; HTML element. Much has changed in the specification since then, and no element is actually used.'
	},
	'x-doc-messaging':{
		'title':		'Cross-document messaging',
		'description':	'Method of sending information from pages on different domains to each other (using postMessage)',
		'spec':			'http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages',
		'status':		'wd',
		'links':		[
							{title:'Demo',url:'http://austinchau.blogspot.com/2008/11/html5-cross-document-messaging.html'}
						],
		'categories':	['DOM','HTML5'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'y',9:'y'},
			'gecko':	{2:'n',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'datauri':{
		'title':		'Data URIs',
		'description':	'Method of embedding images and other files in webpages as a string of text.',
		'spec':			'http://www.ietf.org/rfc/rfc2397.txt',
		'status':		'ietf',
		'links':		[
							{title:'Example image',url:'http://www.howtocreate.co.uk/wrongWithIE/?chapter=Data%3A+URIs'},
							{title:'Inline Images with Data URLs',url:'http://www.websiteoptimization.com/speed/tweak/inline-images/'},
							{title:'Wikipedia',url:'http://en.wikipedia.org/wiki/data_URI_scheme'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'a',9:'a'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'Support in Internet Explorer 8b2 is limited to images and linked resources like CSS files, not HTML files. Max URI length is 32KB.'
	},
	'mathml':{
		'title':		'MathML',
		'description':	'An XML language that allows mathematical formulas and notations to be written on web pages.',
		'spec':			'http://www.w3.org/TR/REC-MathML/',
		'status':		'rec',
		'links':		[
							{title:'Wikipedia',url:'http://en.wikipedia.org/wiki/MathML'},
							{title:'MathML basics (Mozilla)',url:'http://www.mozilla.org/projects/mathml/demo/basics.xhtml'},
							{title:'MathML Opera Torture Tests',url:'http://devfiles.myopera.com/articles/186/torture.xhtml'},
							{title:'Info on Opera\'s MathML support',url:'http://golem.ph.utexas.edu/~distler/blog/archives/001588.html'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'p',7:'p',8:'p',9:'u'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'n','4x':'n'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'n',4:'n',5:'u'},
			'presto':	{9:'n',9.6:'a',10.1:'a',10.5:'a','10x':'a'}
		},
		'notes':		'Opera\'s support is limited to a CSS profile of MathML'
	},
	'xhtml':{
		'title':		'XHTML served as application/xhtml+xml',
		'description':	'A strict form of HTML, and allows embedding of other XML languages',
		'spec':			'http://www.w3.org/TR/xhtml1/',
		'status':		'rec',
		'links':		[
							{title:'Wikipedia',url:'http://en.wikipedia.org/wiki/XHTML'},
							{title:'Examples compared to text/html pages',url:'http://www.webdevout.net/articles/beware-of-xhtml#content_type'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'y'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'y',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		},
		'notes':		'The XHTML syntax is very close to HTML, and thus is almost always served as text/html on the web.'
	},
	'xhtmlsmil':{
		'title':		'Web page animation (XHTML+SMIL)',
		'description':	'Method of using SMIL animation in web pages',
		'spec':			'http://www.w3.org/TR/XHTMLplusSMIL/',
		'status':		'unoff',
		'links':		[
							{title:'Wikipedia',url:'http://en.wikipedia.org/wiki/XHTML%2BSMIL'},
							{title:'JS library to support XHTML+SMIL',url:'http://leunen.d.free.fr/fakesmile/'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'a',7:'a',8:'a',9:'u'},
			'gecko':	{2:'j',3:'j',3.5:'j',3.6:'n',3.7:'a'},
			'webkit_saf':{3.1:'j',3.2:'j',4:'j','4x':'j'},
			'webkit_chr':{.2:'j',1:'j','1x':'j',2:'j',3:'j',4:'j',5:'j'},
			'presto':	{9:'j',9.6:'j',10.1:'j',10.5:'j','10x':'j'}
		},
		'notes':		'Trident (Internet Explorer) supports the W3C proposal HTML+TIME, which is largely the same as XHTML+SMIL'
	},
	'wai-aria':{
		'title':		'Accessibility for AJAX and other web features (WAI-ARIA)',
		'description':	'Method of providing ways for people with disabilities to use dynamic web content and web applications',
		'spec':			'http://www.w3.org/TR/wai-aria/',
		'status':		'wd',
		'links':		[
							{title:'Wikipedia',url:'http://en.wikipedia.org/wiki/WAI-ARIA'},
							{title:'Information page',url:'http://www.w3.org/WAI/intro/aria'},
							{title:'ALA Article',url:'http://www.alistapart.com/articles/waiaria'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'y',9:'y'},
			'gecko':	{2:'a',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'y','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'y',10.1:'y',10.5:'y','10x':'y'}
		}
	},
	'geoloc':{
		'title':		'Geolocation',
		'description':	'Method of informing a website of the user\'s geographical location',
		'spec':			'http://www.w3.org/TR/geolocation-API/',
		'status':		'wd',
		'links':		[
							{title:'Demo',url:'http://3liz.org/geolocation/'}
						],
		'categories':	['DOM','Other'],
		'stats':{
			'trident':	{6:'p',7:'p',8:'p',9:'u'},
			'gecko':	{2:'p',3:'p',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'p',3.2:'p',4:'p','4x':'u'},
			'webkit_chr':{.2:'p',1:'p','1x':'a',2:'a',3:'a',4:'a',5:'y'},
			'presto':	{9:'p',9.6:'p',10.1:'p',10.5:'p','10x':'y'}
		},
		'notes':		'Support in Chrome uses the auto-included Gears plug-in. Functions are similar, but not the same.'
	},
	'flexbox':{
		'title':		'Flexible Box Layout Module',
		'description':	'Method of positioning elements in horizontal or vertical stacks.',
		'spec':			'http://www.w3.org/TR/css3-flexbox/',
		'status':		'wd',
		'links':		[],
		'categories':	['CSS3'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'y',3:'y',3.5:'y',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'y',3.2:'y',4:'y','4x':'y'},
			'webkit_chr':{.2:'y',1:'y','1x':'y',2:'y',3:'y',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'u'}
		},
		'notes':		'While only recently a W3C specification, this system has been in use for some time by Mozilla and Apple for interface purposes.'
	},
	'webgl':{
		'title':		'3D Canvas graphics / WebGL',
		'description':	'Method of generating dynamic 3D graphics using JavaScript, accelerated through hardware',
		'spec':			'http://www.khronos.org/news/press/releases/khronos-webgl-initiative-hardware-accelerated-3d-graphics-internet/',
		'status':		'unoff',
		'links':		[
							{title:'Firefox blog post',url:'http://blog.vlad1.com/2009/09/18/webgl-in-firefox-nightly-builds/'},
							{title:'Webkit blog post',url:'http://webkit.org/blog/603/webgl-now-available-in-webkit-nightlies/'},
							{title:'Opera blog post (not WebGL)',url:'http://my.opera.com/timjoh/blog/2007/11/13/taking-the-canvas-to-another-dimension/'}
						],
		'categories':	['Canvas'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'n','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'n',4:'n',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'y'}
		},
		'notes':		'WebGL is a new standard that is still being developed and its specification is not yet available to the public. While Opera does not have a WebGL implementation yet, it is a member of the Khronos group and has previously released a build supporting 3D canvas'
	},
	'fileapi':{
		'title':		'Client-side file opening and handling (File API)',
		'description':	'Method of allowing users to select one or more files from their hard drive for a web page to manipulate',
		'spec':			'http://www.w3.org/TR/FileAPI/',
		'status':		'wd',
		'links':		[
							{title:'MDC article',url:'https://developer.mozilla.org/en/Using_files_from_web_applications'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'y',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'n','4x':'n'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'n',4:'n',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'n'}
		},
		'notes':		'Support is planned for Chrome 5, but not yet implemented'
	},
	'websockets':{
		'title':		'Web Sockets',
		'description':	'Bidirectional communication technology for web apps',
		'spec':			'http://www.w3.org/TR/websockets/',
		'status':		'wd',
		'links':		[
							{title:'Chromium blog post',url:'http://blog.chromium.org/2009/12/web-sockets-now-available-in-google.html'}
						],
		'categories':	['Other'],
		'stats':{
			'trident':	{6:'n',7:'n',8:'n',9:'u'},
			'gecko':	{2:'n',3:'n',3.5:'n',3.6:'n',3.7:'y'},
			'webkit_saf':{3.1:'n',3.2:'n',4:'n','4x':'y'},
			'webkit_chr':{.2:'n',1:'n','1x':'n',2:'n',3:'n',4:'y',5:'y'},
			'presto':	{9:'n',9.6:'n',10.1:'n',10.5:'n','10x':'u'}
		}
	},
	'summary':{
		'title':	'Summary',
		'categories':['Summary'],
		'description': 'Calculation of support of currently displayed feature lists'
	}
};
 