#data data: #non-conforming "," missing #tag no scheme-specific data no media type separator #errors m;URL:data:no ,; #data DATA: #non-conforming "," missing #tag no scheme-specific data no media type separator #errors m;URL:data:no ,; #data Data: #non-conforming "," missing #tag no scheme-specific data no media type separator #errors m;URL:data:no ,; #data data:, #conforming The shortest conforming data: URI #tag implied media type implied charset empty data #mime text/plain;charset=US-ASCII #body #data data:%2C #non-conforming "," is percent-encoded #tag no media type separator #errors m;URL:data:no ,; #data data:text #non-conforming "," missing #tag broken media type #errors m;URL:data:no ,; #data data:test #source #tag broken media type #errors m;URL:data:no ,; #data data:, #conforming "text/plain;charset=us-ascii" implied #data implied media type implied charset empty data #mime text/plain;charset=US-ASCII #body #data data:text/plain #non-conforming "," missing #tag no media type separator #errors m;URL:data:no ,; #data data:text/plain, #conforming ";charset=us-ascii" implied #tag implied charset empty data #mime text/plain #body #data data:text/plain;charset=utf-16, #conforming UTF-16 without BOM #tag empty data #mime text/plain;charset=utf-16 #body #data data:text,abc #non-conforming "text" is not a valid IMT #tag broken media type #mime text/plain;charset=US-ASCII #body abc #errors m;MIME type:no /;text #data data:text/plain;charset=us-ascii;abc #non-conforming "," missing #tag no media type separator #errors m;URL:data:no ,; #data data:text/plain;charset=us-ascii,abc #conforming #mime text/plain;charset=us-ascii #body abc #data data:,a,b #note confirm parser takes data segment from first "," #source #tag implied media type implied charset #mime text/plain;charset=US-ASCII #body a,b #data data:,foo bar #source #non-conforming implied media type implied charset illegal as URI #mime text/plain;charset=US-ASCII #body foo bar #data data:,abc#def #note "#" in URI #tag implied media type implied charset fragment #mime text/plain;charset=US-ASCII #body abc#def #XXX #data data:,abc#def#ghi #note "#"s in URI #tag implied media type implied charset fragment #mime text/plain;charset=US-ASCII #body abc#def#ghi #XXX #data data:text / plain,abc #non-conforming space in URI #tag white space in media type implied charset illegal as URI #mime text/plain;charset=US-ASCII #body abc #errors m;MIME type:no /;text / plain #data data: text/plain ,abc #non-conforming space in URI #tag white space in media type implied charset illegal as URI #mime text/plain #body abc #data data:TEXT/PLAIN,ABC #conforming ";charset=us-ascii" implied #tag implied charset #mime text/plain #body ABC #data data:text\plain,abc #non-conforming "\" instead of "/" in media type #tag broken media type illegal as URI backslash implied charset #mime text/plain;charset=US-ASCII #body abc #errors m;MIME type:no /;text\plain #data data:text/./plain,abc #non-conforming relative path component in media type #tag broken media type dot-segment implied charset #mime text/plain;charset=US-ASCII #body abc #errors m;MIME type:bad char after subtype;text/./plain #data data:application/../text/plain,abc #non-conforming relative path component in media type #tag broken media type dot-segment implied charset #mime text/plain;charset=US-ASCII #body abc #errors m;MIME type:bad char after subtype;application/../text/plain #data data:;,test #source #non-conforming ";" not followed by a parameter #tag broken parameter implied media type implied charset #mime text/plain #body test #errors m;params:bad name; #data data:text/plain;,abc #non-conforming ";" not followed by a parameter #tag implied charset broken parameter #mime text/plain #body abc #errors m;params:bad name; #data data:,A%20brief%20note #source #conforming #tag implied media type implied charset percent-encoding in data #mime text/plain;charset=US-ASCII #body A brief note #data data:text/plain;charset,abc #non-conforming "=charset-name" missing #tag broken parameter implied charset #mime text/plain #body abc #errors m;params:no =;text/plain;charset #data data:text/plain; charset=us-ascii,abc #non-conforming space in URI #tag illegal as URI white space in media type #mime text/plain;charset=us-ascii #body abc #data data:text/plain;charset=US-ASCII,test #source #mime text/plain;charset=US-ASCII #body test #data data:;charset=UTF-8,Hello #source #conforming implied media type superset charset name #mime text/plain;charset=UTF-8 #body Hello #data data:text/plain;charset=iso-8859-1,%A1%A2 #conforming #tag percent-encoding in data #mime text/plain;charset=iso-8859-1 #body escaped \u00A1\u00A2 #data data:text/plain;charset=euc-jp,%A1%A2 #conforming #tag percent-encoding in data #mime text/plain;charset=euc-jp #body escaped \u00A1\u00A2 #data data:text/plain;charset=iso-8859-7,%b8%f7%fe #source #data percent-encoding in data #mime text/plain;charset=iso-8859-7 #body escaped \u00B8\u00F7\u00FE #data data:text/plain;charset=iso-8859-1;charset=euc-jp,%A1%A2 #note Compare with <#data_0000003Atext_0000002Fplain_0000003Bcharset_0000003Diso-8859-1_0000002C_00000025A1_00000025A2> and <#data_0000003Atext_0000002Fplain_0000003Bcharset_0000003Deuc-jp_0000002C_00000025A1_00000025A2>. #tag parameter duplication percent-encoding in data #mime text/plain;charset=iso-8859-1 #body escaped \u00A1\u00A2 #errors m;params:duplicate name;charset #data data:text/plain;charset;charset=euc-jp,%A1%A2 #non-conforming Broken ";charset;" parameter #data parameter duplication broken parameter percent-encoding in data #mime text/plain;charset=euc-jp #body escaped \u00A1\u00A2 #errors m;params:no =;text/plain;charset;charset=euc-jp #data data:text/plain;CHARSET=us-ascii,abc #conforming #mime text/plain;charset=us-ascii #body escaped abc #data data:text/plain;charset=us-ascii ,abc #non-conforming space in URI #tag illegal as URI white space in media type #mime text/plain;charset=us-ascii #body escaped abc #data data:text/plain;charset="us-ascii",abc #non-conforming " in URI #tag quoted-string illegal as URI #mime text/plain;charset=us-ascii #body escaped abc #data data:text/plain;charset="euc-jp",%A1%A2 #non-conforming " in URI #tag quoted-string illegal as URI percent-encoding in data #mime text/plain;charset=euc-jp #body escaped \u00A1\u00A2 #data data:text/plain;charset='euc-jp',%A1%A2 #tag unknown charset percent-encoding in data #mime text/plain;charset='euc-jp' #body escaped \u00A1\u00A2 #data data:text/plain;noncharset=euc-jp,%A1%A2 #tag unknown parameter implied charset percent-encoding in media type #mime text/plain;noncharset=euc-jp #body escaped \u00A1\u00A2 #data data:text/plain;noncharset=euc-jp;charset=iso-8859-1,%A1%A2 #tag unknown parameter percent-encoding in media type #mime text/plain;noncharset=euc-jp;charset=iso-8859-1 #body escaped \u00A1\u00A2 #data data:text/plain;charset=%22euc-jp%22,%A1%A2 #tag quoted-string illegal as URI percent-encoding in data percent-encoding in media type #mime text/plain;charset=%22euc-jp%22 #body escaped \u00A1\u00A2 #data data:text/plain;charset="\euc-jp",%A1%A2 #non-conforming " and \ in URI #tag illegal as URI quoted-string quoted-pair percent-encoding in data #mime text/plain;charset=euc-jp #body escaped \u00A1\u00A2 #data data:text/plain;x-data="#",abc #non-conforming " in URI #tag illegal as URI fragment quoted-string unknown parameter #XXX #mime text/plain;x-data=# #body abc #data data:t%65xt/plain;charset=euc-jp,%A1%A2 #tag percent-encoding in data percent-encoding in media type #mime t%65xt/plain;charset=euc-jp #body escaped \u00A1\u00A2 #data data:text%2Fplain;charset=euc-jp,%A1%A2 #tag percent-encoding in media type percent-encoding in data #mime text/plain;charset=US-ASCII #body escaped \u00A1\u00A2 #errors m;MIME type:no /;text%2Fplain;charset=euc-jp #data data:text/pl%61in;charset=euc-jp,%A1%A2 #tag percent-encoding in media type percent-encoding in data #mime text/pl%61in;charset=euc-jp #body escaped \u00A1\u00A2 #data data:text/plain%3Bcharset=euc-jp,%A1%A2 #tag percent-encoding in media type percent-encoding in data #mime text/plain;charset=US-ASCII #body escaped \u00A1\u00A2 #errors m;MIME type:bad char after subtype;text/plain%3Bcharset=euc-jp #data data:text/plain;%63harset=euc-jp,%A1%A2 #tag percent-encoding in media type percent-encoding in data #mime text/plain;%63harset=euc-jp #body escaped \u00A1\u00A2 #data data:text/plain;charset%3Deuc-jp,%A1%A2 #tag percent-encoding in media type percent-encoding in data #mime text/plain #body escaped \u00A1\u00A2 #errors m;params:no =;text/plain;charset%3Deuc-jp #data data:text/plain;charset=eu%63-jp,%A1%A2 #tag percent-encoding in media type percent-encoding in data #mime text/plain;charset=eu%63-jp #body escaped \u00A1\u00A2 #data data:text/plain;charset=us-ascii%2Cabc #tag percent-encoded comma #errors m;URL:data:no ,; #data data:text/plain;charset=iso-8859-8-i,%f9%ec%e5%ed #conforming ISO-8859-8 in URL-encoding #source #tag percent-encoding in data #mime text/plain;charset=iso-8859-8-i #body escaped \u00F9\u00EC\u00E5\u00ED #data data:text/plain;charset=UTF-8,%d7%a9%d7%9c%d7%95%d7%9d #conforming UTF-8 in URL-encoding #source #tag percent-encoding in data #mime text/plain;charset=UTF-8 #body escaped \u00D7\u00A9\u00D7\u009C\u00D7\u0095\u00D7\u009D #data data:,;test #conforming data w/ traditionally reserved chaacters like ";" #source #tag reserved in data implied media type implied charset #mime text/plain;charset=US-ASCII #body ;test #data data:,a+b+c #conforming data including "+" (a PLUS SIGN character, not a SPACE character). #tag reserved in data implied media type implied charset #mime text/plain;charset=US-ASCII #body a+b+c #data data:,a/../b #conforming data including "/../" #tag dot-segment implied media type implied charset #mime text/plain;charset=US-ASCII #body a/../b #data data:,a/./b #conforming data including "/./" #tag dot-segment implied media type implied charset #mime text/plain;charset=US-ASCII #body a/./b #data data:text/plain;charset=thing;base64;test #source #non-conforming "," missing #tag unknown charset no media type separator #errors m;URL:data:no ,; #data data:text/plain;charset=unknown;base64,test #conforming #tag unknown charset base64 #mime text/plain;charset=unknown #body escaped \u00B5\u00EB\u002D #data data:;charset=,test #source #non-conforming broken parameter "charset=" #tag implied media type broken parameter unknown charset #mime text/plain #body test #errors m;params:bad value token; #data data:application/vnd-xxx-query,select_vcount,fcol_from_fieldtable/local #source #conforming #tag unknown media type #mime application/vnd-xxx-query #body select_vcount,fcol_from_fieldtable/local #data data:application/octet-stream;name=filename.dat,abc #conforming #tag obsolete parameter name parameter #mime application/octet-stream;name=filename.dat #body abc #data data:application/x-unknown;name=filename.dat,abc #conforming #tag unknown media type unknown parameter name parameter #mime application/x-unknown;name=filename.dat #body abc #data data:application/xml,%3Cformdata%20xmlns%3D%22http%3A%2F%2Fn.whatwg.org%2Fformdata%22%20type%3D%22incremental%22%2F%3E #source #conforming #tag missing XML charset percent-encoding in data #mime application/xml #body #data data:application/xml,%3Cselect%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml%22%20type%3D%22incremental%22%3E%3Coption%3Eb%3C%2Foption%3E%3C%2Fselect%3E #source #tag missing XML charset percent-encoding in data #mime application/xml #body #data data:;base64, #tag base64 empty data implied media type implied charset #mime text/plain;charset=US-ASCII #body #data data:;base64,hello #non-conforming broken Base64 data #source #tag base64 broken base64 implied media type implied charset #errors m;URL:data:bad base64 data; #data data:text/plain;charset=iso-8859-8-i;base64,+ezl7Q== #note ISO-8859-8 in Base64 #source #tag base64 #mime text/plain;charset=iso-8859-8-i #body escaped \u00F9\u00EC\u00E5\u00ED #data data:text/plain;charset=UTF-8;base64,16nXnNeV150= #note UTF-8 in Base64 #source #tag base64 #mime text/plain;charset=UTF-8 #body escaped \u00D7\u00A9\u00D7\u009C\u00D7\u0095\u00D7\u009D #data data:text/html;base64,VGhpcyBpcyBhIHRlc3QK #note "This is a test" #source #tag base64 missing HTML charset #mime text/html #body escaped This is a test\u000A #data data:text/plain;base64,VGhpcyBpcyBhIHRlc3QK!? #note Base64'ed "This is a test" followed by non-Base64'ed "!?". #tag base64 broken base64 implied charset #errors m;URL:data:bad base64 data; #data data:text/plain;base64,VGhpcyBpcyBhIHRlc3QK!?!? #note Base64'ed "This is a test" followed by non-Base64'ed "!?!?". #tag base64 broken base64 implied charset #errors m;URL:data:bad base64 data; #data data:text/plain;base64,VGhpcyBpcyBhIHRlc3QK#fragment #note Base64'ed "This is a test" followed by non-Base64'ed "#fragment" #tag base64 broken base64 fragment implied charset #XXXmime text/plain #XXXbody This is a test #errors m;URL:data:bad base64 data; #data data:text/plain;base64,VG!h$pcy]BpcyBh[IHRl>c3QK #non-conforming Base64'ed "This is a test" with garbages inside it #tag base64 broken base64 implied charset illegal as URI #errors m;URL:data:bad base64 data; #data data:text/html;base64,PGh0bWw+PGhlYWQ+PHRpdGxlPlRlc3Q8L3RpdGxlPjwvaGVhZD48Ym9keT48cD5UaGlzIGlzIGEgdGVzdDwvYm9keT48L2h0bWw+Cg== #source #tag base64 missing HTML charset #mime text/html #body escaped Test

This is a test\u000A #data data:,Data%20was:%20'%%%%' #source #non-conforming WF2 form action="" (This string itself is not a conforming URI) #tag illegal as URI broken percent-encoding implied media type implied charset percent-encoding in data #mime text/plain;charset=US-ASCII #body Data was: '%%%%' #data data:,Data%20was:%20'x%253DIt%2527s%252Ba%252Btest' #source #tag percent-encoding in data implied media type implied charset #conforming #mime text/plain;charset=US-ASCII #body Data was: 'x%3DIt%27s%2Ba%2Btest' #data data:,Data%20was:%20'%%' #source #non-conforming WF2 form action="" (This string itself is not a conforming URI) #tag percent-encoding in data implied media type implied charset broken percent-encoding illegal as URI #mime text/plain;charset=US-ASCII #body Data was: '%%' #data data:,Data%20was:%20'x%3DIt's%2Ba%2Btest' #source #tag implied media type implied charset percent-encoding in data #mime text/plain;charset=US-ASCII #body Data was: 'x=It's+a+test'