Pastery

Email address test cases +

   1<?xml version="1.0"?>   2<!--   3Notes   4.....   5 1. To test email addresses that include ASCII control characters (ASCII   6    positions < 32), put a Unicode entity in this data. This is because XML   7    doesn't like storing &#x00;. The Unicode entity you should use   8    is &#x2400; + the ASCII position. E.g to test a BEL character (ASCII   9    position 7), put a &#x2407; in this data. This also enables the control  10    characters to be made visible in your output because the Unicode characters  11    &#x2400; onwards are 'SYMBOL FOR xxx'. In other words &#x2407; will look  12    like BEL in your output.  13  14If you update these tests, don't forget to change the actual version number  15attribute in the <tests> element below!  16  17Date       Tests        Version Notes  18.......... ............ ....... ...............................................  192010-10-18 #1-#279      2.12	New schema designed to enhance fault  20				identification.  212011-02-21 #193, #202	2.13	bar.com now has an MX record, seemingly.  22-->  23<tests version="2.13">  24	<description>  25		<p><strong>Original test set</strong></p>  26		<p>This test set was compiled from examples given by other authors. It therefore  27		contains tests that are logically duplicates (i.e. they test the same features as  28		each other). This is by design.</p>  29		<p>Acknowledgements are due in particular to John Klensin, Cal Henderson,  30		Phil Haack, Paul Gregg, Dave Child and Doug Lovell for the examples addresses they  31		put in the public domain. Also thanks to George Pollard, Michael Rushton and Daniel  32		Marschall for the examples they contributed during our correspondence.</p>  33	</description>  34	<test id="1">  35		<address>first.last@iana.org</address>  36		<category>ISEMAIL_VALID_CATEGORY</category>  37		<diagnosis>ISEMAIL_VALID</diagnosis>  38		<source>Dominic Sayers</source>  39		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>  40	</test>  41	<test id="2">  42		<address>1234567890123456789012345678901234567890123456789012345678901234@iana.org</address>  43		<category>ISEMAIL_VALID_CATEGORY</category>  44		<diagnosis>ISEMAIL_VALID</diagnosis>  45		<source>Dominic Sayers</source>  46		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>  47	</test>  48	<test id="3">  49		<address>first.last@sub.do,com</address>  50		<comment>Mistyped comma instead of dot (replaces old #3 which was the same as #57)</comment>  51		<category>ISEMAIL_ERR</category>  52		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis>  53		<source>Rob &lt;bob@bob.com&gt;</source>  54		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>  55	</test>  56	<test id="4">  57		<address>"first\"last"@iana.org</address>  58		<category>ISEMAIL_RFC5321</category>  59		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>  60		<source>Dominic Sayers</source>  61		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>  62	</test>  63	<test id="5">  64		<address>first\@last@iana.org</address>  65		<comment>Escaping can only happen within a quoted string</comment>  66		<category>ISEMAIL_ERR</category>  67		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis>  68		<source>Dominic Sayers</source>  69		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>  70	</test>  71	<test id="6">  72		<address>"first@last"@iana.org</address>  73		<category>ISEMAIL_RFC5321</category>  74		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>  75		<source>Dominic Sayers</source>  76		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>  77	</test>  78	<test id="7">  79		<address>"first\\last"@iana.org</address>  80		<category>ISEMAIL_RFC5321</category>  81		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>  82		<source>Dominic Sayers</source>  83		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>  84	</test>  85	<test id="8">  86		<address>x@x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x2</address>  87		<comment>Total length reduced to 254 characters so it's still valid</comment>  88		<category>ISEMAIL_DNSWARN</category>  89		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis>  90		<source>Dominic Sayers</source>  91		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>  92	</test>  93	<test id="9">  94		<address>1234567890123456789012345678901234567890123456789012345678901@12345678901234567890123456789012345678901234567890123456789.12345678901234567890123456789012345678901234567890123456789.123456789012345678901234567890123456789012345678901234567890123.iana.org</address>  95		<comment>Total length reduced to 254 characters so it's still valid</comment>  96		<category>ISEMAIL_DNSWARN</category>  97		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis>  98		<source>RFC 3696 erratum 1690</source>  99		<sourcelink>http://www.rfc-editor.org/errata_search.php?rfc=3696&amp;eid=1690</sourcelink> 100	</test> 101	<test id="10"> 102		<address>first.last@[12.34.56.78]</address> 103		<category>ISEMAIL_RFC5321</category> 104		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis> 105		<source>RFC 3696 erratum 1690</source> 106		<sourcelink>http://www.rfc-editor.org/errata_search.php?rfc=3696&amp;eid=1690</sourcelink> 107	</test> 108	<test id="11"> 109		<address>first.last@[IPv6:::12.34.56.78]</address> 110		<category>ISEMAIL_RFC5321</category> 111		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis> 112		<source>Dominic Sayers</source> 113		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 114	</test> 115	<test id="12"> 116		<address>first.last@[IPv6:1111:2222:3333::4444:12.34.56.78]</address> 117		<category>ISEMAIL_RFC5321</category> 118		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis> 119		<source>Dominic Sayers</source> 120		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 121	</test> 122	<test id="13"> 123		<address>first.last@[IPv6:1111:2222:3333:4444:5555:6666:12.34.56.78]</address> 124		<category>ISEMAIL_RFC5321</category> 125		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis> 126		<source>Dominic Sayers</source> 127		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 128	</test> 129	<test id="14"> 130		<address>first.last@[IPv6:::1111:2222:3333:4444:5555:6666]</address> 131		<category>ISEMAIL_RFC5321</category> 132		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis> 133		<source>Dominic Sayers</source> 134		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 135	</test> 136	<test id="15"> 137		<address>first.last@[IPv6:1111:2222:3333::4444:5555:6666]</address> 138		<category>ISEMAIL_RFC5321</category> 139		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis> 140		<source>Dominic Sayers</source> 141		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 142	</test> 143	<test id="16"> 144		<address>first.last@[IPv6:1111:2222:3333:4444:5555:6666::]</address> 145		<category>ISEMAIL_RFC5321</category> 146		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis> 147		<source>Dominic Sayers</source> 148		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 149	</test> 150	<test id="17"> 151		<address>first.last@[IPv6:1111:2222:3333:4444:5555:6666:7777:8888]</address> 152		<category>ISEMAIL_RFC5321</category> 153		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis> 154		<source>Dominic Sayers</source> 155		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 156	</test> 157	<test id="18"> 158		<address>first.last@x23456789012345678901234567890123456789012345678901234567890123.iana.org</address> 159		<category>ISEMAIL_DNSWARN</category> 160		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis> 161		<source>Dominic Sayers</source> 162		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 163	</test> 164	<test id="19"> 165		<address>first.last@3com.com</address> 166		<category>ISEMAIL_VALID_CATEGORY</category> 167		<diagnosis>ISEMAIL_VALID</diagnosis> 168		<source>Dominic Sayers</source> 169		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 170	</test> 171	<test id="20"> 172		<address>first.last@123.iana.org</address> 173		<category>ISEMAIL_DNSWARN</category> 174		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis> 175		<source>Dominic Sayers</source> 176		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 177	</test> 178	<test id="21"> 179		<address>123456789012345678901234567890123456789012345678901234567890@12345678901234567890123456789012345678901234567890123456789.12345678901234567890123456789012345678901234567890123456789.12345678901234567890123456789012345678901234567890123456789.12345.iana.org</address> 180		<comment>Entire address is longer than 254 characters</comment> 181		<category>ISEMAIL_RFC5322</category> 182		<diagnosis>ISEMAIL_RFC5322_TOOLONG</diagnosis> 183		<source>RFC 3696 erratum 1690</source> 184		<sourcelink>http://www.rfc-editor.org/errata_search.php?rfc=3696&amp;eid=1690</sourcelink> 185	</test> 186	<test id="22"> 187		<address>first.last</address> 188		<comment>No @</comment> 189		<category>ISEMAIL_ERR</category> 190		<diagnosis>ISEMAIL_ERR_NODOMAIN</diagnosis> 191		<source>Dominic Sayers</source> 192		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 193	</test> 194	<test id="23"> 195		<address>12345678901234567890123456789012345678901234567890123456789012345@iana.org</address> 196		<comment>Local part more than 64 characters</comment> 197		<category>ISEMAIL_RFC5322</category> 198		<diagnosis>ISEMAIL_RFC5322_LOCAL_TOOLONG</diagnosis> 199		<source>Dominic Sayers</source> 200		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 201	</test> 202	<test id="24"> 203		<address>.first.last@iana.org</address> 204		<comment>Local part starts with a dot</comment> 205		<category>ISEMAIL_ERR</category> 206		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis> 207		<source>Dominic Sayers</source> 208		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 209	</test> 210	<test id="25"> 211		<address>first.last.@iana.org</address> 212		<comment>Local part ends with a dot</comment> 213		<category>ISEMAIL_ERR</category> 214		<diagnosis>ISEMAIL_ERR_DOT_END</diagnosis> 215		<source>Dominic Sayers</source> 216		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 217	</test> 218	<test id="26"> 219		<address>first..last@iana.org</address> 220		<comment>Local part has consecutive dots</comment> 221		<category>ISEMAIL_ERR</category> 222		<diagnosis>ISEMAIL_ERR_CONSECUTIVEDOTS</diagnosis> 223		<source>Dominic Sayers</source> 224		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 225	</test> 226	<test id="27"> 227		<address>"first"last"@iana.org</address> 228		<comment>Local part contains unescaped excluded characters</comment> 229		<category>ISEMAIL_ERR</category> 230		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_QS</diagnosis> 231		<source>Dominic Sayers</source> 232		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 233	</test> 234	<test id="28"> 235		<address>"first\last"@iana.org</address> 236		<comment>Any character can be escaped in a quoted string</comment> 237		<category>ISEMAIL_RFC5321</category> 238		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 239		<source>Dominic Sayers</source> 240		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 241	</test> 242	<test id="29"> 243		<address>"""@iana.org</address> 244		<comment>Local part contains unescaped excluded characters</comment> 245		<category>ISEMAIL_ERR</category> 246		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 247		<source>Dominic Sayers</source> 248		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 249	</test> 250	<test id="30"> 251		<address>"\"@iana.org</address> 252		<comment>Local part cannot end with a backslash</comment> 253		<category>ISEMAIL_ERR</category> 254		<diagnosis>ISEMAIL_ERR_UNCLOSEDQUOTEDSTR</diagnosis> 255		<source>Dominic Sayers</source> 256		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 257	</test> 258	<test id="31"> 259		<address>""@iana.org</address> 260		<comment>Local part is effectively empty, but this form is specifically allowed by RFC 5322 &amp; RFC 5321</comment> 261		<category>ISEMAIL_RFC5321</category> 262		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 263		<source>Dominic Sayers</source> 264		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 265	</test> 266	<test id="32"> 267		<address>first\\@last@iana.org</address> 268		<comment>Local part contains unescaped excluded characters</comment> 269		<category>ISEMAIL_ERR</category> 270		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 271		<source>Dominic Sayers</source> 272		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 273	</test> 274	<test id="33"> 275		<address>first.last@</address> 276		<comment>No domain</comment> 277		<category>ISEMAIL_ERR</category> 278		<diagnosis>ISEMAIL_ERR_NODOMAIN</diagnosis> 279		<source>Dominic Sayers</source> 280		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 281	</test> 282	<test id="34"> 283		<address>x@x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456789.x23456</address> 284		<comment>Domain exceeds 255 chars</comment> 285		<category>ISEMAIL_RFC5322</category> 286		<diagnosis>ISEMAIL_RFC5322_DOMAIN_TOOLONG</diagnosis> 287		<source>Dominic Sayers</source> 288		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 289	</test> 290	<test id="35"> 291		<address>first.last@[.12.34.56.78]</address> 292		<comment>Only char that can precede IPv4 address is ':'</comment> 293		<category>ISEMAIL_RFC5322</category> 294		<diagnosis>ISEMAIL_RFC5322_DOMAINLITERAL</diagnosis> 295		<source>Dominic Sayers</source> 296		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 297	</test> 298	<test id="36"> 299		<address>first.last@[12.34.56.789]</address> 300		<comment>Can't be interpreted as IPv4 so IPv6 tag is missing</comment> 301		<category>ISEMAIL_RFC5322</category> 302		<diagnosis>ISEMAIL_RFC5322_DOMAINLITERAL</diagnosis> 303		<source>Dominic Sayers</source> 304		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 305	</test> 306	<test id="37"> 307		<address>first.last@[::12.34.56.78]</address> 308		<comment>IPv6 tag is missing</comment> 309		<category>ISEMAIL_RFC5322</category> 310		<diagnosis>ISEMAIL_RFC5322_DOMAINLITERAL</diagnosis> 311		<source>Dominic Sayers</source> 312		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 313	</test> 314	<test id="38"> 315		<address>first.last@[IPv5:::12.34.56.78]</address> 316		<comment>IPv6 tag is wrong</comment> 317		<category>ISEMAIL_RFC5322</category> 318		<diagnosis>ISEMAIL_RFC5322_DOMAINLITERAL</diagnosis> 319		<source>Dominic Sayers</source> 320		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 321	</test> 322	<test id="39"> 323		<address>first.last@[IPv6:1111:2222:3333::4444:5555:12.34.56.78]</address> 324		<comment>RFC 4291 disagrees with RFC 5321 but is cited by it</comment> 325		<category>ISEMAIL_RFC5321</category> 326		<diagnosis>ISEMAIL_RFC5321_IPV6DEPRECATED</diagnosis> 327		<source>Dominic Sayers</source> 328		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 329	</test> 330	<test id="40"> 331		<address>first.last@[IPv6:1111:2222:3333:4444:5555:12.34.56.78]</address> 332		<comment>Not enough IPv6 groups</comment> 333		<category>ISEMAIL_RFC5322</category> 334		<diagnosis>ISEMAIL_RFC5322_IPV6_GRPCOUNT</diagnosis> 335		<source>Dominic Sayers</source> 336		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 337	</test> 338	<test id="41"> 339		<address>first.last@[IPv6:1111:2222:3333:4444:5555:6666:7777:12.34.56.78]</address> 340		<comment>Too many IPv6 groups (6 max)</comment> 341		<category>ISEMAIL_RFC5322</category> 342		<diagnosis>ISEMAIL_RFC5322_IPV6_GRPCOUNT</diagnosis> 343		<source>Dominic Sayers</source> 344		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 345	</test> 346	<test id="42"> 347		<address>first.last@[IPv6:1111:2222:3333:4444:5555:6666:7777]</address> 348		<comment>Not enough IPv6 groups</comment> 349		<category>ISEMAIL_RFC5322</category> 350		<diagnosis>ISEMAIL_RFC5322_IPV6_GRPCOUNT</diagnosis> 351		<source>Dominic Sayers</source> 352		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 353	</test> 354	<test id="43"> 355		<address>first.last@[IPv6:1111:2222:3333:4444:5555:6666:7777:8888:9999]</address> 356		<comment>Too many IPv6 groups (8 max)</comment> 357		<category>ISEMAIL_RFC5322</category> 358		<diagnosis>ISEMAIL_RFC5322_IPV6_GRPCOUNT</diagnosis> 359		<source>Dominic Sayers</source> 360		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 361	</test> 362	<test id="44"> 363		<address>first.last@[IPv6:1111:2222::3333::4444:5555:6666]</address> 364		<comment>Too many '::' (can be none or one)</comment> 365		<category>ISEMAIL_RFC5322</category> 366		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis> 367		<source>Dominic Sayers</source> 368		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 369	</test> 370	<test id="45"> 371		<address>first.last@[IPv6:1111:2222:3333::4444:5555:6666:7777]</address> 372		<comment>RFC 4291 disagrees with RFC 5321 but is cited by it</comment> 373		<category>ISEMAIL_RFC5321</category> 374		<diagnosis>ISEMAIL_RFC5321_IPV6DEPRECATED</diagnosis> 375		<source>Dominic Sayers</source> 376		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 377	</test> 378	<test id="46"> 379		<address>first.last@[IPv6:1111:2222:333x::4444:5555]</address> 380		<comment>x is not valid in an IPv6 address</comment> 381		<category>ISEMAIL_RFC5322</category> 382		<diagnosis>ISEMAIL_RFC5322_IPV6_BADCHAR</diagnosis> 383		<source>Dominic Sayers</source> 384		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 385	</test> 386	<test id="47"> 387		<address>first.last@[IPv6:1111:2222:33333::4444:5555]</address> 388		<comment>33333 is not a valid group in an IPv6 address</comment> 389		<category>ISEMAIL_RFC5322</category> 390		<diagnosis>ISEMAIL_RFC5322_IPV6_BADCHAR</diagnosis> 391		<source>Dominic Sayers</source> 392		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 393	</test> 394	<test id="48"> 395		<address>first.last@example.123</address> 396		<comment>TLD can't be all digits</comment> 397		<category>ISEMAIL_RFC5321</category> 398		<diagnosis>ISEMAIL_RFC5321_TLDNUMERIC</diagnosis> 399		<source>Dominic Sayers</source> 400		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 401	</test> 402	<test id="49"> 403		<address>first.last@com</address> 404		<comment>Mail host is not usually at a Top Level Domain</comment> 405		<category>ISEMAIL_RFC5321</category> 406		<diagnosis>ISEMAIL_RFC5321_TLD</diagnosis> 407		<source>Dominic Sayers</source> 408		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 409	</test> 410	<test id="50"> 411		<address>first.last@-xample.com</address> 412		<comment>Label can't begin with a hyphen</comment> 413		<category>ISEMAIL_ERR</category> 414		<diagnosis>ISEMAIL_ERR_DOMAINHYPHENSTART</diagnosis> 415		<source>Dominic Sayers</source> 416		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 417	</test> 418	<test id="51"> 419		<address>first.last@exampl-.com</address> 420		<comment>Label can't end with a hyphen</comment> 421		<category>ISEMAIL_ERR</category> 422		<diagnosis>ISEMAIL_ERR_DOMAINHYPHENEND</diagnosis> 423		<source>Dominic Sayers</source> 424		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 425	</test> 426	<test id="52"> 427		<address>first.last@x234567890123456789012345678901234567890123456789012345678901234.iana.org</address> 428		<comment>Label can't be longer than 63 octets</comment> 429		<category>ISEMAIL_RFC5322</category> 430		<diagnosis>ISEMAIL_RFC5322_LABEL_TOOLONG</diagnosis> 431		<source>Dominic Sayers</source> 432		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink> 433	</test> 434	<test id="53"> 435		<address>"Abc\@def"@iana.org</address> 436		<category>ISEMAIL_RFC5321</category> 437		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 438		<source>RFC 3696 (February 2004)</source> 439		<sourcelink>http://tools.ietf.org/html/rfc3696#section-3</sourcelink> 440	</test> 441	<test id="54"> 442		<address>"Fred\ Bloggs"@iana.org</address> 443		<category>ISEMAIL_RFC5321</category> 444		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 445		<source>RFC 3696 (as amended by erratum 2005-07-09)</source> 446		<sourcelink>http://www.rfc-editor.org/errata_search.php?rfc=3696&amp;eid=246</sourcelink> 447	</test> 448	<test id="55"> 449		<address>"Joe.\\Blow"@iana.org</address> 450		<category>ISEMAIL_RFC5321</category> 451		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 452		<source>RFC 3696 (as amended by erratum 2005-07-09)</source> 453		<sourcelink>http://www.rfc-editor.org/errata_search.php?rfc=3696&amp;eid=246</sourcelink> 454	</test> 455	<test id="56"> 456		<address>"Abc@def"@iana.org</address> 457		<category>ISEMAIL_RFC5321</category> 458		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 459		<source>RFC 3696 (as amended by erratum 2005-07-09)</source> 460		<sourcelink>http://www.rfc-editor.org/errata_search.php?rfc=3696&amp;eid=246</sourcelink> 461	</test> 462	<test id="57"> 463		<address>"Fred Bloggs"@iana.org</address> 464		<category>ISEMAIL_RFC5321</category> 465		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 466		<source>RFC 3696 (February 2004)</source> 467		<sourcelink>http://tools.ietf.org/html/rfc3696#section-3</sourcelink> 468	</test> 469	<test id="58"> 470		<address>user+mailbox@iana.org</address> 471		<category>ISEMAIL_VALID_CATEGORY</category> 472		<diagnosis>ISEMAIL_VALID</diagnosis> 473		<source>RFC 3696 (February 2004)</source> 474		<sourcelink>http://tools.ietf.org/html/rfc3696#section-3</sourcelink> 475	</test> 476	<test id="59"> 477		<address>customer/department=shipping@iana.org</address> 478		<category>ISEMAIL_VALID_CATEGORY</category> 479		<diagnosis>ISEMAIL_VALID</diagnosis> 480		<source>RFC 3696 (February 2004)</source> 481		<sourcelink>http://tools.ietf.org/html/rfc3696#section-3</sourcelink> 482	</test> 483	<test id="60"> 484		<address>$A12345@iana.org</address> 485		<category>ISEMAIL_VALID_CATEGORY</category> 486		<diagnosis>ISEMAIL_VALID</diagnosis> 487		<source>RFC 3696 (February 2004)</source> 488		<sourcelink>http://tools.ietf.org/html/rfc3696#section-3</sourcelink> 489	</test> 490	<test id="61"> 491		<address>!def!xyz%abc@iana.org</address> 492		<category>ISEMAIL_VALID_CATEGORY</category> 493		<diagnosis>ISEMAIL_VALID</diagnosis> 494		<source>RFC 3696 (February 2004)</source> 495		<sourcelink>http://tools.ietf.org/html/rfc3696#section-3</sourcelink> 496	</test> 497	<test id="62"> 498		<address>_somename@iana.org</address> 499		<category>ISEMAIL_VALID_CATEGORY</category> 500		<diagnosis>ISEMAIL_VALID</diagnosis> 501		<source>RFC 3696 (February 2004)</source> 502		<sourcelink>http://tools.ietf.org/html/rfc3696#section-3</sourcelink> 503	</test> 504	<test id="63"> 505		<address>dclo@us.ibm.com</address> 506		<category>ISEMAIL_VALID_CATEGORY</category> 507		<diagnosis>ISEMAIL_VALID</diagnosis> 508		<source>Doug Lovell (LinuxJournal, June 2007)</source> 509		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 510	</test> 511	<test id="64"> 512		<address>abc\@def@iana.org</address> 513		<comment>This example from RFC 3696 was corrected in an erratum</comment> 514		<category>ISEMAIL_ERR</category> 515		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 516		<source>Doug Lovell (LinuxJournal, June 2007)</source> 517		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 518	</test> 519	<test id="65"> 520		<address>abc\\@iana.org</address> 521		<comment>This example from RFC 3696 was corrected in an erratum</comment> 522		<category>ISEMAIL_ERR</category> 523		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 524		<source>Doug Lovell (LinuxJournal, June 2007)</source> 525		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 526	</test> 527	<test id="66"> 528		<address>peter.piper@iana.org</address> 529		<category>ISEMAIL_VALID_CATEGORY</category> 530		<diagnosis>ISEMAIL_VALID</diagnosis> 531		<source>Doug Lovell (LinuxJournal, June 2007)</source> 532		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 533	</test> 534	<test id="67"> 535		<address>Doug\ \"Ace\"\ Lovell@iana.org</address> 536		<comment>Escaping can only happen in a quoted string</comment> 537		<category>ISEMAIL_ERR</category> 538		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 539		<source>Doug Lovell (LinuxJournal, June 2007)</source> 540		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 541	</test> 542	<test id="68"> 543		<address>"Doug \"Ace\" L."@iana.org</address> 544		<category>ISEMAIL_RFC5321</category> 545		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 546		<source>Doug Lovell (LinuxJournal, June 2007)</source> 547		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 548	</test> 549	<test id="69"> 550		<address>abc@def@iana.org</address> 551		<comment>Doug Lovell says this should fail</comment> 552		<category>ISEMAIL_ERR</category> 553		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 554		<source>Doug Lovell (LinuxJournal, June 2007)</source> 555		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 556	</test> 557	<test id="70"> 558		<address>abc\\@def@iana.org</address> 559		<comment>Doug Lovell says this should fail</comment> 560		<category>ISEMAIL_ERR</category> 561		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 562		<source>Doug Lovell (LinuxJournal, June 2007)</source> 563		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 564	</test> 565	<test id="71"> 566		<address>abc\@iana.org</address> 567		<comment>Doug Lovell says this should fail</comment> 568		<category>ISEMAIL_ERR</category> 569		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 570		<source>Doug Lovell (LinuxJournal, June 2007)</source> 571		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 572	</test> 573	<test id="72"> 574		<address>@iana.org</address> 575		<comment>No local part</comment> 576		<category>ISEMAIL_ERR</category> 577		<diagnosis>ISEMAIL_ERR_NOLOCALPART</diagnosis> 578		<source>Doug Lovell (LinuxJournal, June 2007)</source> 579		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 580	</test> 581	<test id="73"> 582		<address>doug@</address> 583		<comment>Doug Lovell says this should fail</comment> 584		<category>ISEMAIL_ERR</category> 585		<diagnosis>ISEMAIL_ERR_NODOMAIN</diagnosis> 586		<source>Doug Lovell (LinuxJournal, June 2007)</source> 587		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 588	</test> 589	<test id="74"> 590		<address>"qu@iana.org</address> 591		<comment>Doug Lovell says this should fail</comment> 592		<category>ISEMAIL_ERR</category> 593		<diagnosis>ISEMAIL_ERR_UNCLOSEDQUOTEDSTR</diagnosis> 594		<source>Doug Lovell (LinuxJournal, June 2007)</source> 595		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 596	</test> 597	<test id="75"> 598		<address>ote"@iana.org</address> 599		<comment>Doug Lovell says this should fail</comment> 600		<category>ISEMAIL_ERR</category> 601		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 602		<source>Doug Lovell (LinuxJournal, June 2007)</source> 603		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 604	</test> 605	<test id="76"> 606		<address>.dot@iana.org</address> 607		<comment>Doug Lovell says this should fail</comment> 608		<category>ISEMAIL_ERR</category> 609		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis> 610		<source>Doug Lovell (LinuxJournal, June 2007)</source> 611		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 612	</test> 613	<test id="77"> 614		<address>dot.@iana.org</address> 615		<comment>Doug Lovell says this should fail</comment> 616		<category>ISEMAIL_ERR</category> 617		<diagnosis>ISEMAIL_ERR_DOT_END</diagnosis> 618		<source>Doug Lovell (LinuxJournal, June 2007)</source> 619		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 620	</test> 621	<test id="78"> 622		<address>two..dot@iana.org</address> 623		<comment>Doug Lovell says this should fail</comment> 624		<category>ISEMAIL_ERR</category> 625		<diagnosis>ISEMAIL_ERR_CONSECUTIVEDOTS</diagnosis> 626		<source>Doug Lovell (LinuxJournal, June 2007)</source> 627		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 628	</test> 629	<test id="79"> 630		<address>"Doug "Ace" L."@iana.org</address> 631		<comment>Doug Lovell says this should fail</comment> 632		<category>ISEMAIL_ERR</category> 633		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_QS</diagnosis> 634		<source>Doug Lovell (LinuxJournal, June 2007)</source> 635		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 636	</test> 637	<test id="80"> 638		<address>Doug\ \"Ace\"\ L\.@iana.org</address> 639		<comment>Doug Lovell says this should fail</comment> 640		<category>ISEMAIL_ERR</category> 641		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 642		<source>Doug Lovell (LinuxJournal, June 2007)</source> 643		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 644	</test> 645	<test id="81"> 646		<address>hello world@iana.org</address> 647		<comment>Doug Lovell says this should fail</comment> 648		<category>ISEMAIL_ERR</category> 649		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_CFWS</diagnosis> 650		<source>Doug Lovell (LinuxJournal, June 2007)</source> 651		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 652	</test> 653	<test id="82"> 654		<address>gatsby@f.sc.ot.t.f.i.tzg.era.l.d.</address> 655		<comment>Doug Lovell says this should fail</comment> 656		<category>ISEMAIL_ERR</category> 657		<diagnosis>ISEMAIL_ERR_DOT_END</diagnosis> 658		<source>Doug Lovell (LinuxJournal, June 2007)</source> 659		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink> 660	</test> 661	<test id="83"> 662		<address>test@iana.org</address> 663		<category>ISEMAIL_VALID_CATEGORY</category> 664		<diagnosis>ISEMAIL_VALID</diagnosis> 665		<source>Dave Child</source> 666		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 667	</test> 668	<test id="84"> 669		<address>TEST@iana.org</address> 670		<category>ISEMAIL_VALID_CATEGORY</category> 671		<diagnosis>ISEMAIL_VALID</diagnosis> 672		<source>Dave Child</source> 673		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 674	</test> 675	<test id="85"> 676		<address>1234567890@iana.org</address> 677		<category>ISEMAIL_VALID_CATEGORY</category> 678		<diagnosis>ISEMAIL_VALID</diagnosis> 679		<source>Dave Child</source> 680		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 681	</test> 682	<test id="86"> 683		<address>test+test@iana.org</address> 684		<category>ISEMAIL_VALID_CATEGORY</category> 685		<diagnosis>ISEMAIL_VALID</diagnosis> 686		<source>Dave Child</source> 687		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 688	</test> 689	<test id="87"> 690		<address>test-test@iana.org</address> 691		<category>ISEMAIL_VALID_CATEGORY</category> 692		<diagnosis>ISEMAIL_VALID</diagnosis> 693		<source>Dave Child</source> 694		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 695	</test> 696	<test id="88"> 697		<address>t*est@iana.org</address> 698		<category>ISEMAIL_VALID_CATEGORY</category> 699		<diagnosis>ISEMAIL_VALID</diagnosis> 700		<source>Dave Child</source> 701		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 702	</test> 703	<test id="89"> 704		<address>+1~1+@iana.org</address> 705		<category>ISEMAIL_VALID_CATEGORY</category> 706		<diagnosis>ISEMAIL_VALID</diagnosis> 707		<source>Dave Child</source> 708		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 709	</test> 710	<test id="90"> 711		<address>{_test_}@iana.org</address> 712		<category>ISEMAIL_VALID_CATEGORY</category> 713		<diagnosis>ISEMAIL_VALID</diagnosis> 714		<source>Dave Child</source> 715		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 716	</test> 717	<test id="91"> 718		<address>"[[ test ]]"@iana.org</address> 719		<category>ISEMAIL_RFC5321</category> 720		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 721		<source>Dave Child</source> 722		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 723	</test> 724	<test id="92"> 725		<address>test.test@iana.org</address> 726		<category>ISEMAIL_VALID_CATEGORY</category> 727		<diagnosis>ISEMAIL_VALID</diagnosis> 728		<source>Dave Child</source> 729		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 730	</test> 731	<test id="93"> 732		<address>"test.test"@iana.org</address> 733		<category>ISEMAIL_RFC5321</category> 734		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 735		<source>Dave Child</source> 736		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 737	</test> 738	<test id="94"> 739		<address>test."test"@iana.org</address> 740		<comment>Obsolete form, but documented in RFC 5322</comment> 741		<category>ISEMAIL_DEPREC</category> 742		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis> 743		<source>Dave Child</source> 744		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 745	</test> 746	<test id="95"> 747		<address>"test@test"@iana.org</address> 748		<category>ISEMAIL_RFC5321</category> 749		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 750		<source>Dave Child</source> 751		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 752	</test> 753	<test id="96"> 754		<address>test@123.123.123.x123</address> 755		<category>ISEMAIL_DNSWARN</category> 756		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis> 757		<source>Dave Child</source> 758		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 759	</test> 760	<test id="97"> 761		<address>test@123.123.123.123</address> 762		<comment>Top Level Domain unlikely to have first character numeric (although ICANN make up their own rules).</comment> 763		<category>ISEMAIL_RFC5321</category> 764		<diagnosis>ISEMAIL_RFC5321_TLDNUMERIC</diagnosis> 765		<source>Dave Child</source> 766		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 767	</test> 768	<test id="98"> 769		<address>test@[123.123.123.123]</address> 770		<category>ISEMAIL_RFC5321</category> 771		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis> 772		<source>Dave Child</source> 773		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 774	</test> 775	<test id="99"> 776		<address>test@example.iana.org</address> 777		<category>ISEMAIL_DNSWARN</category> 778		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis> 779		<source>Dave Child</source> 780		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 781	</test> 782	<test id="100"> 783		<address>test@example.example.iana.org</address> 784		<category>ISEMAIL_DNSWARN</category> 785		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis> 786		<source>Dave Child</source> 787		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 788	</test> 789	<test id="101"> 790		<address>test.iana.org</address> 791		<category>ISEMAIL_ERR</category> 792		<diagnosis>ISEMAIL_ERR_NODOMAIN</diagnosis> 793		<source>Dave Child</source> 794		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 795	</test> 796	<test id="102"> 797		<address>test.@iana.org</address> 798		<category>ISEMAIL_ERR</category> 799		<diagnosis>ISEMAIL_ERR_DOT_END</diagnosis> 800		<source>Dave Child</source> 801		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 802	</test> 803	<test id="103"> 804		<address>test..test@iana.org</address> 805		<category>ISEMAIL_ERR</category> 806		<diagnosis>ISEMAIL_ERR_CONSECUTIVEDOTS</diagnosis> 807		<source>Dave Child</source> 808		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 809	</test> 810	<test id="104"> 811		<address>.test@iana.org</address> 812		<category>ISEMAIL_ERR</category> 813		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis> 814		<source>Dave Child</source> 815		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 816	</test> 817	<test id="105"> 818		<address>test@test@iana.org</address> 819		<category>ISEMAIL_ERR</category> 820		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 821		<source>Dave Child</source> 822		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 823	</test> 824	<test id="106"> 825		<address>test@@iana.org</address> 826		<category>ISEMAIL_ERR</category> 827		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 828		<source>Dave Child</source> 829		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 830	</test> 831	<test id="107"> 832		<address>-- test --@iana.org</address> 833		<comment>No spaces allowed in local part</comment> 834		<category>ISEMAIL_ERR</category> 835		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_CFWS</diagnosis> 836		<source>Dave Child</source> 837		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 838	</test> 839	<test id="108"> 840		<address>[test]@iana.org</address> 841		<comment>Square brackets only allowed within quotes</comment> 842		<category>ISEMAIL_ERR</category> 843		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 844		<source>Dave Child</source> 845		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 846	</test> 847	<test id="109"> 848		<address>"test\test"@iana.org</address> 849		<comment>Any character can be escaped in a quoted string</comment> 850		<category>ISEMAIL_RFC5321</category> 851		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 852		<source>Dave Child</source> 853		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 854	</test> 855	<test id="110"> 856		<address>"test"test"@iana.org</address> 857		<comment>Quotes cannot be nested</comment> 858		<category>ISEMAIL_ERR</category> 859		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_QS</diagnosis> 860		<source>Dave Child</source> 861		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 862	</test> 863	<test id="111"> 864		<address>()[]\;:,&gt;&lt;@iana.org</address> 865		<comment>Disallowed Characters</comment> 866		<category>ISEMAIL_ERR</category> 867		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 868		<source>Dave Child</source> 869		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 870	</test> 871	<test id="112"> 872		<address>test@.</address> 873		<comment>Dave Child says so</comment> 874		<category>ISEMAIL_ERR</category> 875		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis> 876		<source>Dave Child</source> 877		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 878	</test> 879	<test id="113"> 880		<address>test@example.</address> 881		<comment>Dave Child says so</comment> 882		<category>ISEMAIL_ERR</category> 883		<diagnosis>ISEMAIL_ERR_DOT_END</diagnosis> 884		<source>Dave Child</source> 885		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 886	</test> 887	<test id="114"> 888		<address>test@.org</address> 889		<comment>Dave Child says so</comment> 890		<category>ISEMAIL_ERR</category> 891		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis> 892		<source>Dave Child</source> 893		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 894	</test> 895	<test id="115"> 896		<address>test@123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890123.123456789012345678901234567890123456789012345678901234567890.com</address> 897		<comment>255 characters is maximum length for domain. This is 256.</comment> 898		<category>ISEMAIL_RFC5322</category> 899		<diagnosis>ISEMAIL_RFC5322_DOMAIN_TOOLONG</diagnosis> 900		<source>Dave Child</source> 901		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 902	</test> 903	<test id="116"> 904		<address>test@example</address> 905		<comment>Dave Child says so</comment> 906		<category>ISEMAIL_RFC5321</category> 907		<diagnosis>ISEMAIL_RFC5321_TLD</diagnosis> 908		<source>Dave Child</source> 909		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 910	</test> 911	<test id="117"> 912		<address>test@[123.123.123.123</address> 913		<comment>Dave Child says so</comment> 914		<category>ISEMAIL_ERR</category> 915		<diagnosis>ISEMAIL_ERR_UNCLOSEDDOMLIT</diagnosis> 916		<source>Dave Child</source> 917		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 918	</test> 919	<test id="118"> 920		<address>test@123.123.123.123]</address> 921		<comment>Dave Child says so</comment> 922		<category>ISEMAIL_ERR</category> 923		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis> 924		<source>Dave Child</source> 925		<sourcelink>http://code.google.com/p/php-email-address-validation/</sourcelink> 926	</test> 927	<test id="119"> 928		<address>NotAnEmail</address> 929		<comment>Phil Haack says so</comment> 930		<category>ISEMAIL_ERR</category> 931		<diagnosis>ISEMAIL_ERR_NODOMAIN</diagnosis> 932		<source>Phil Haack</source> 933		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink> 934	</test> 935	<test id="120"> 936		<address>@NotAnEmail</address> 937		<comment>Phil Haack says so</comment> 938		<category>ISEMAIL_ERR</category> 939		<diagnosis>ISEMAIL_ERR_NOLOCALPART</diagnosis> 940		<source>Phil Haack</source> 941		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink> 942	</test> 943	<test id="121"> 944		<address>"test\\blah"@iana.org</address> 945		<category>ISEMAIL_RFC5321</category> 946		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 947		<source>Phil Haack</source> 948		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink> 949	</test> 950	<test id="122"> 951		<address>"test\blah"@iana.org</address> 952		<comment>Any character can be escaped in a quoted string</comment> 953		<category>ISEMAIL_RFC5321</category> 954		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 955		<source>Phil Haack</source> 956		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink> 957	</test> 958	<test id="123"> 959		<address>"test\&#x240D;blah"@iana.org</address> 960		<comment>Quoted string specifically excludes carriage returns unless escaped</comment> 961		<category>ISEMAIL_DEPREC</category> 962		<diagnosis>ISEMAIL_DEPREC_QP</diagnosis> 963		<source>Phil Haack</source> 964		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink> 965	</test> 966	<test id="124"> 967		<address>"test&#x240D;blah"@iana.org</address> 968		<comment>Quoted string specifically excludes carriage returns</comment> 969		<category>ISEMAIL_ERR</category> 970		<diagnosis>ISEMAIL_ERR_CR_NO_LF</diagnosis> 971		<source>Phil Haack</source> 972		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink> 973	</test> 974	<test id="125"> 975		<address>"test\"blah"@iana.org</address> 976		<category>ISEMAIL_RFC5321</category> 977		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis> 978		<source>Phil Haack</source> 979		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink> 980	</test> 981	<test id="126"> 982		<address>"test"blah"@iana.org</address> 983		<comment>Phil Haack says so</comment> 984		<category>ISEMAIL_ERR</category> 985		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_QS</diagnosis> 986		<source>Phil Haack</source> 987		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink> 988	</test> 989	<test id="127"> 990		<address>customer/department@iana.org</address> 991		<category>ISEMAIL_VALID_CATEGORY</category> 992		<diagnosis>ISEMAIL_VALID</diagnosis> 993		<source>Phil Haack</source> 994		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink> 995	</test> 996	<test id="128"> 997		<address>_Yosemite.Sam@iana.org</address> 998		<category>ISEMAIL_VALID_CATEGORY</category> 999		<diagnosis>ISEMAIL_VALID</diagnosis>1000		<source>Phil Haack</source>1001		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1002	</test>1003	<test id="129">1004		<address>~@iana.org</address>1005		<category>ISEMAIL_VALID_CATEGORY</category>1006		<diagnosis>ISEMAIL_VALID</diagnosis>1007		<source>Phil Haack</source>1008		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1009	</test>1010	<test id="130">1011		<address>.wooly@iana.org</address>1012		<comment>Phil Haack says so</comment>1013		<category>ISEMAIL_ERR</category>1014		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis>1015		<source>Phil Haack</source>1016		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1017	</test>1018	<test id="131">1019		<address>wo..oly@iana.org</address>1020		<comment>Phil Haack says so</comment>1021		<category>ISEMAIL_ERR</category>1022		<diagnosis>ISEMAIL_ERR_CONSECUTIVEDOTS</diagnosis>1023		<source>Phil Haack</source>1024		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1025	</test>1026	<test id="132">1027		<address>pootietang.@iana.org</address>1028		<comment>Phil Haack says so</comment>1029		<category>ISEMAIL_ERR</category>1030		<diagnosis>ISEMAIL_ERR_DOT_END</diagnosis>1031		<source>Phil Haack</source>1032		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1033	</test>1034	<test id="133">1035		<address>.@iana.org</address>1036		<comment>Phil Haack says so</comment>1037		<category>ISEMAIL_ERR</category>1038		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis>1039		<source>Phil Haack</source>1040		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1041	</test>1042	<test id="134">1043		<address>"Austin@Powers"@iana.org</address>1044		<category>ISEMAIL_RFC5321</category>1045		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>1046		<source>Phil Haack</source>1047		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1048	</test>1049	<test id="135">1050		<address>Ima.Fool@iana.org</address>1051		<category>ISEMAIL_VALID_CATEGORY</category>1052		<diagnosis>ISEMAIL_VALID</diagnosis>1053		<source>Phil Haack</source>1054		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1055	</test>1056	<test id="136">1057		<address>"Ima.Fool"@iana.org</address>1058		<category>ISEMAIL_RFC5321</category>1059		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>1060		<source>Phil Haack</source>1061		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1062	</test>1063	<test id="137">1064		<address>"Ima Fool"@iana.org</address>1065		<category>ISEMAIL_RFC5321</category>1066		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>1067		<source>Phil Haack</source>1068		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1069	</test>1070	<test id="138">1071		<address>Ima Fool@iana.org</address>1072		<comment>Phil Haack says so</comment>1073		<category>ISEMAIL_ERR</category>1074		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_CFWS</diagnosis>1075		<source>Phil Haack</source>1076		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1077	</test>1078	<test id="139">1079		<address>phil.h\@\@ck@haacked.com</address>1080		<comment>Escaping can only happen in a quoted string</comment>1081		<category>ISEMAIL_ERR</category>1082		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis>1083		<source>Phil Haack</source>1084		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1085	</test>1086	<test id="140">1087		<address>"first"."last"@iana.org</address>1088		<category>ISEMAIL_DEPREC</category>1089		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis>1090		<source>Dominic Sayers</source>1091		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1092	</test>1093	<test id="141">1094		<address>"first".middle."last"@iana.org</address>1095		<category>ISEMAIL_DEPREC</category>1096		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis>1097		<source>Dominic Sayers</source>1098		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1099	</test>1100	<test id="142">1101		<address>"first\\"last"@iana.org</address>1102		<comment>Contains an unescaped quote</comment>1103		<category>ISEMAIL_ERR</category>1104		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_QS</diagnosis>1105		<source>Dominic Sayers</source>1106		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1107	</test>1108	<test id="143">1109		<address>"first".last@iana.org</address>1110		<comment>obs-local-part form as described in RFC 5322</comment>1111		<category>ISEMAIL_DEPREC</category>1112		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis>1113		<source>Dominic Sayers</source>1114		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1115	</test>1116	<test id="144">1117		<address>first."last"@iana.org</address>1118		<comment>obs-local-part form as described in RFC 5322</comment>1119		<category>ISEMAIL_DEPREC</category>1120		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis>1121		<source>Dominic Sayers</source>1122		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1123	</test>1124	<test id="145">1125		<address>"first"."middle"."last"@iana.org</address>1126		<comment>obs-local-part form as described in RFC 5322</comment>1127		<category>ISEMAIL_DEPREC</category>1128		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis>1129		<source>Dominic Sayers</source>1130		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1131	</test>1132	<test id="146">1133		<address>"first.middle"."last"@iana.org</address>1134		<comment>obs-local-part form as described in RFC 5322</comment>1135		<category>ISEMAIL_DEPREC</category>1136		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis>1137		<source>Dominic Sayers</source>1138		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1139	</test>1140	<test id="147">1141		<address>"first.middle.last"@iana.org</address>1142		<category>ISEMAIL_RFC5321</category>1143		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>1144		<source>Dominic Sayers</source>1145		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1146	</test>1147	<test id="148">1148		<address>"first..last"@iana.org</address>1149		<comment>obs-local-part form as described in RFC 5322</comment>1150		<category>ISEMAIL_RFC5321</category>1151		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>1152		<source>Dominic Sayers</source>1153		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1154	</test>1155	<test id="149">1156		<address>foo@[\1.2.3.4]</address>1157		<comment>RFC 5321 specifies the syntax for address-literal and does not allow escaping</comment>1158		<category>ISEMAIL_RFC5322</category>1159		<diagnosis>ISEMAIL_RFC5322_DOMLIT_OBSDTEXT</diagnosis>1160		<source>Cal Henderson</source>1161		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1162	</test>1163	<test id="150">1164		<address>"first\\\"last"@iana.org</address>1165		<category>ISEMAIL_RFC5321</category>1166		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>1167		<source>Dominic Sayers</source>1168		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1169	</test>1170	<test id="151">1171		<address>first."mid\dle"."last"@iana.org</address>1172		<comment>Backslash can escape anything but must escape something</comment>1173		<category>ISEMAIL_DEPREC</category>1174		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis>1175		<source>Dominic Sayers</source>1176		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1177	</test>1178	<test id="152">1179		<address>Test.&#x240D;&#x240A; Folding.&#x240D;&#x240A; Whitespace@iana.org</address>1180		<category>ISEMAIL_DEPREC</category>1181		<diagnosis>ISEMAIL_DEPREC_FWS</diagnosis>1182		<source>Dominic Sayers</source>1183		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1184	</test>1185	<test id="153">1186		<address>first."".last@iana.org</address>1187		<comment>Contains a zero-length element</comment>1188		<category>ISEMAIL_DEPREC</category>1189		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis>1190		<source>Dominic Sayers</source>1191		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1192	</test>1193	<test id="154">1194		<address>first\last@iana.org</address>1195		<comment>Unquoted string must be an atom</comment>1196		<category>ISEMAIL_ERR</category>1197		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis>1198		<source>Dominic Sayers</source>1199		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1200	</test>1201	<test id="155">1202		<address>Abc\@def@iana.org</address>1203		<comment>Was incorrectly given as a valid address in the original RFC 3696</comment>1204		<category>ISEMAIL_ERR</category>1205		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis>1206		<source>RFC 3696 erratum 246</source>1207		<sourcelink>http://www.rfc-editor.org/errata_search.php?rfc=3696&amp;eid=246</sourcelink>1208	</test>1209	<test id="156">1210		<address>Fred\ Bloggs@iana.org</address>1211		<comment>Was incorrectly given as a valid address in the original RFC 3696</comment>1212		<category>ISEMAIL_ERR</category>1213		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis>1214		<source>RFC 3696 erratum 246</source>1215		<sourcelink>http://www.rfc-editor.org/errata_search.php?rfc=3696&amp;eid=246</sourcelink>1216	</test>1217	<test id="157">1218		<address>Joe.\\Blow@iana.org</address>1219		<comment>Was incorrectly given as a valid address in the original RFC 3696</comment>1220		<category>ISEMAIL_ERR</category>1221		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis>1222		<source>RFC 3696 erratum 246</source>1223		<sourcelink>http://www.rfc-editor.org/errata_search.php?rfc=3696&amp;eid=246</sourcelink>1224	</test>1225	<test id="158">1226		<address>first.last@[IPv6:1111:2222:3333:4444:5555:6666:12.34.567.89]</address>1227		<comment>IPv4 part contains an invalid octet</comment>1228		<category>ISEMAIL_RFC5322</category>1229		<diagnosis>ISEMAIL_RFC5322_IPV6_BADCHAR</diagnosis>1230		<source>Cal Henderson</source>1231		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1232	</test>1233	<test id="159">1234		<address>"test\&#x240D;&#x240A; blah"@iana.org</address>1235		<comment>Folding white space can't appear within a quoted pair</comment>1236		<category>ISEMAIL_ERR</category>1237		<diagnosis>ISEMAIL_ERR_EXPECTING_QTEXT</diagnosis>1238		<source>Cal Henderson</source>1239		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1240	</test>1241	<test id="160">1242		<address>"test&#x240D;&#x240A; blah"@iana.org</address>1243		<comment>This is a valid quoted string with folding white space</comment>1244		<category>ISEMAIL_CFWS</category>1245		<diagnosis>ISEMAIL_CFWS_FWS</diagnosis>1246		<source>Phil Haack</source>1247		<sourcelink>http://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx</sourcelink>1248	</test>1249	<test id="161">1250		<address>{^c\@**Dog^}@cartoon.com</address>1251		<comment>This is a throwaway example from Doug Lovell's article. Actually it's not a valid address.</comment>1252		<category>ISEMAIL_ERR</category>1253		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis>1254		<source>Doug Lovell (LinuxJournal, June 2007)</source>1255		<sourcelink>http://www.linuxjournal.com/article/9585</sourcelink>1256	</test>1257	<test id="162">1258		<address>(foo)cal(bar)@(baz)iamcal.com(quux)</address>1259		<comment>A valid address containing comments</comment>1260		<category>ISEMAIL_DEPREC</category>1261		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1262		<source>Cal Henderson</source>1263		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1264	</test>1265	<test id="163">1266		<address>cal@iamcal(woo).(yay)com</address>1267		<comment>A valid address containing comments</comment>1268		<category>ISEMAIL_DEPREC</category>1269		<diagnosis>ISEMAIL_DEPREC_COMMENT</diagnosis>1270		<source>Cal Henderson</source>1271		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1272	</test>1273	<test id="164">1274		<address>"foo"(yay)@(hoopla)[1.2.3.4]</address>1275		<comment>Address literal can't be commented (RFC 5321)</comment>1276		<category>ISEMAIL_DEPREC</category>1277		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1278		<source>Cal Henderson</source>1279		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1280	</test>1281	<test id="165">1282		<address>cal(woo(yay)hoopla)@iamcal.com</address>1283		<comment>A valid address containing comments</comment>1284		<category>ISEMAIL_DEPREC</category>1285		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1286		<source>Cal Henderson</source>1287		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1288	</test>1289	<test id="166">1290		<address>cal(foo\@bar)@iamcal.com</address>1291		<comment>A valid address containing comments</comment>1292		<category>ISEMAIL_DEPREC</category>1293		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1294		<source>Cal Henderson</source>1295		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1296	</test>1297	<test id="167">1298		<address>cal(foo\)bar)@iamcal.com</address>1299		<comment>A valid address containing comments and an escaped parenthesis</comment>1300		<category>ISEMAIL_DEPREC</category>1301		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1302		<source>Cal Henderson</source>1303		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1304	</test>1305	<test id="168">1306		<address>cal(foo(bar)@iamcal.com</address>1307		<comment>Unclosed parenthesis in comment</comment>1308		<category>ISEMAIL_ERR</category>1309		<diagnosis>ISEMAIL_ERR_UNCLOSEDCOMMENT</diagnosis>1310		<source>Cal Henderson</source>1311		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1312	</test>1313	<test id="169">1314		<address>cal(foo)bar)@iamcal.com</address>1315		<comment>Too many closing parentheses</comment>1316		<category>ISEMAIL_ERR</category>1317		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_CFWS</diagnosis>1318		<source>Cal Henderson</source>1319		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1320	</test>1321	<test id="170">1322		<address>cal(foo\)@iamcal.com</address>1323		<comment>Backslash at end of comment has nothing to escape</comment>1324		<category>ISEMAIL_ERR</category>1325		<diagnosis>ISEMAIL_ERR_UNCLOSEDCOMMENT</diagnosis>1326		<source>Cal Henderson</source>1327		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1328	</test>1329	<test id="171">1330		<address>first().last@iana.org</address>1331		<comment>A valid address containing an empty comment</comment>1332		<category>ISEMAIL_DEPREC</category>1333		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis>1334		<source>Dominic Sayers</source>1335		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1336	</test>1337	<test id="172">1338		<address>first.(&#x240D;&#x240A; middle&#x240D;&#x240A; )last@iana.org</address>1339		<comment>Comment with folding white space</comment>1340		<category>ISEMAIL_DEPREC</category>1341		<diagnosis>ISEMAIL_DEPREC_COMMENT</diagnosis>1342		<source>Dominic Sayers</source>1343		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1344	</test>1345	<test id="173">1346		<address>first(12345678901234567890123456789012345678901234567890)last@(1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890)iana.org</address>1347		<comment>Too long with comments, not too long without</comment>1348		<category>ISEMAIL_ERR</category>1349		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_CFWS</diagnosis>1350		<source>Dominic Sayers</source>1351		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1352	</test>1353	<test id="174">1354		<address>first(Welcome to&#x240D;&#x240A; the ("wonderful" (!)) world&#x240D;&#x240A; of email)@iana.org</address>1355		<comment>Silly example from my blog post</comment>1356		<category>ISEMAIL_DEPREC</category>1357		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1358		<source>Dominic Sayers</source>1359		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1360	</test>1361	<test id="175">1362		<address>pete(his account)@silly.test(his host)</address>1363		<comment>Canonical example from RFC 5322</comment>1364		<category>ISEMAIL_DEPREC</category>1365		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1366		<source>RFC 5322</source>1367		<sourcelink>http://tools.ietf.org/html/rfc5322</sourcelink>1368	</test>1369	<test id="176">1370		<address>c@(Chris's host.)public.example</address>1371		<comment>Canonical example from RFC 5322</comment>1372		<category>ISEMAIL_DEPREC</category>1373		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1374		<source>RFC 5322</source>1375		<sourcelink>http://tools.ietf.org/html/rfc5322</sourcelink>1376	</test>1377	<test id="177">1378		<address>jdoe@machine(comment).  example</address>1379		<comment>Canonical example from RFC 5322</comment>1380		<category>ISEMAIL_DEPREC</category>1381		<diagnosis>ISEMAIL_DEPREC_FWS</diagnosis>1382		<source>RFC 5322</source>1383		<sourcelink>http://tools.ietf.org/html/rfc5322</sourcelink>1384	</test>1385	<test id="178">1386		<address>1234   @   local(blah)  .machine .example</address>1387		<comment>Canonical example from RFC 5322</comment>1388		<category>ISEMAIL_DEPREC</category>1389		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1390		<source>RFC 5322</source>1391		<sourcelink>http://tools.ietf.org/html/rfc5322</sourcelink>1392	</test>1393	<test id="179">1394		<address>first(middle)last@iana.org</address>1395		<comment>Can't have a comment or white space except at an element boundary</comment>1396		<category>ISEMAIL_ERR</category>1397		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_CFWS</diagnosis>1398		<source>Dominic Sayers</source>1399		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1400	</test>1401	<test id="180">1402		<address>first(abc.def).last@iana.org</address>1403		<comment>Comment can contain a dot</comment>1404		<category>ISEMAIL_DEPREC</category>1405		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis>1406		<source>Dominic Sayers</source>1407		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1408	</test>1409	<test id="181">1410		<address>first(a"bc.def).last@iana.org</address>1411		<comment>Comment can contain double quote</comment>1412		<category>ISEMAIL_DEPREC</category>1413		<diagnosis>ISEMAIL_DEPREC_LOCALPART</diagnosis>1414		<source>Dominic Sayers</source>1415		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1416	</test>1417	<test id="182">1418		<address>first.(")middle.last(")@iana.org</address>1419		<comment>Comment can contain a quote</comment>1420		<category>ISEMAIL_DEPREC</category>1421		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1422		<source>Dominic Sayers</source>1423		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1424	</test>1425	<test id="183">1426		<address>first(abc("def".ghi).mno)middle(abc("def".ghi).mno).last@(abc("def".ghi).mno)example(abc("def".ghi).mno).(abc("def".ghi).mno)com(abc("def".ghi).mno)</address>1427		<comment>Can't have comments or white space except at an element boundary</comment>1428		<category>ISEMAIL_ERR</category>1429		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_CFWS</diagnosis>1430		<source>Dominic Sayers</source>1431		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1432	</test>1433	<test id="184">1434		<address>first(abc\(def)@iana.org</address>1435		<comment>Comment can contain quoted-pair</comment>1436		<category>ISEMAIL_DEPREC</category>1437		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1438		<source>Dominic Sayers</source>1439		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1440	</test>1441	<test id="185">1442		<address>first.last@iana(1234567890123456789012345678901234567890123456789012345678901234567890).org</address>1443		<comment>Label is longer than 63 octets, but not with comment removed</comment>1444		<category>ISEMAIL_CFWS</category>1445		<diagnosis>ISEMAIL_CFWS_COMMENT</diagnosis>1446		<source>Cal Henderson</source>1447		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1448	</test>1449	<test id="186">1450		<address>a(a(b(c)d(e(f))g)h(i)j)@iana.org</address>1451		<category>ISEMAIL_DEPREC</category>1452		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1453		<source>Cal Henderson</source>1454		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1455	</test>1456	<test id="187">1457		<address>a(a(b(c)d(e(f))g)(h(i)j)@iana.org</address>1458		<comment>Braces are not properly matched</comment>1459		<category>ISEMAIL_ERR</category>1460		<diagnosis>ISEMAIL_ERR_UNCLOSEDCOMMENT</diagnosis>1461		<source>Cal Henderson</source>1462		<sourcelink>http://code.iamcal.com/php/rfc822/</sourcelink>1463	</test>1464	<test id="188">1465		<address>name.lastname@domain.com</address>1466		<category>ISEMAIL_VALID_CATEGORY</category>1467		<diagnosis>ISEMAIL_VALID</diagnosis>1468		<source>Paul Gregg</source>1469		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1470	</test>1471	<test id="189">1472		<address>.@</address>1473		<category>ISEMAIL_ERR</category>1474		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis>1475		<source>Paul Gregg</source>1476		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1477	</test>1478	<test id="190">1479		<address>a@b</address>1480		<category>ISEMAIL_RFC5321</category>1481		<diagnosis>ISEMAIL_RFC5321_TLD</diagnosis>1482		<source>Paul Gregg</source>1483		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1484	</test>1485	<test id="191">1486		<address>@bar.com</address>1487		<category>ISEMAIL_ERR</category>1488		<diagnosis>ISEMAIL_ERR_NOLOCALPART</diagnosis>1489		<source>Paul Gregg</source>1490		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1491	</test>1492	<test id="192">1493		<address>@@bar.com</address>1494		<category>ISEMAIL_ERR</category>1495		<diagnosis>ISEMAIL_ERR_NOLOCALPART</diagnosis>1496		<source>Paul Gregg</source>1497		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1498	</test>1499	<test id="193">1500		<address>a@bar.com</address>1501		<category>ISEMAIL_VALID_CATEGORY</category>1502		<diagnosis>ISEMAIL_VALID</diagnosis>1503		<source>Paul Gregg</source>1504		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1505	</test>1506	<test id="194">1507		<address>aaa.com</address>1508		<category>ISEMAIL_ERR</category>1509		<diagnosis>ISEMAIL_ERR_NODOMAIN</diagnosis>1510		<source>Paul Gregg</source>1511		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1512	</test>1513	<test id="195">1514		<address>aaa@.com</address>1515		<category>ISEMAIL_ERR</category>1516		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis>1517		<source>Paul Gregg</source>1518		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1519	</test>1520	<test id="196">1521		<address>aaa@.123</address>1522		<category>ISEMAIL_ERR</category>1523		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis>1524		<source>Paul Gregg</source>1525		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1526	</test>1527	<test id="197">1528		<address>aaa@[123.123.123.123]</address>1529		<category>ISEMAIL_RFC5321</category>1530		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>1531		<source>Paul Gregg</source>1532		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1533	</test>1534	<test id="198">1535		<address>aaa@[123.123.123.123]a</address>1536		<comment>extra data outside address-literal</comment>1537		<category>ISEMAIL_ERR</category>1538		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_DOMLIT</diagnosis>1539		<source>Paul Gregg</source>1540		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1541	</test>1542	<test id="199">1543		<address>aaa@[123.123.123.333]</address>1544		<comment>not a valid IP</comment>1545		<category>ISEMAIL_RFC5322</category>1546		<diagnosis>ISEMAIL_RFC5322_DOMAINLITERAL</diagnosis>1547		<source>Paul Gregg</source>1548		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1549	</test>1550	<test id="200">1551		<address>a@bar.com.</address>1552		<category>ISEMAIL_ERR</category>1553		<diagnosis>ISEMAIL_ERR_DOT_END</diagnosis>1554		<source>Paul Gregg</source>1555		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1556	</test>1557	<test id="201">1558		<address>a@bar</address>1559		<category>ISEMAIL_RFC5321</category>1560		<diagnosis>ISEMAIL_RFC5321_TLD</diagnosis>1561		<source>Paul Gregg</source>1562		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1563	</test>1564	<test id="202">1565		<address>a-b@bar.com</address>1566		<category>ISEMAIL_VALID_CATEGORY</category>1567		<diagnosis>ISEMAIL_VALID</diagnosis>1568		<source>Paul Gregg</source>1569		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1570	</test>1571	<test id="203">1572		<address>+@b.c</address>1573		<comment>TLDs can be any length</comment>1574		<category>ISEMAIL_DNSWARN</category>1575		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis>1576		<source>Paul Gregg</source>1577		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1578	</test>1579	<test id="204">1580		<address>+@b.com</address>1581		<category>ISEMAIL_DNSWARN</category>1582		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis>1583		<source>Paul Gregg</source>1584		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1585	</test>1586	<test id="205">1587		<address>a@-b.com</address>1588		<category>ISEMAIL_ERR</category>1589		<diagnosis>ISEMAIL_ERR_DOMAINHYPHENSTART</diagnosis>1590		<source>Paul Gregg</source>1591		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1592	</test>1593	<test id="206">1594		<address>a@b-.com</address>1595		<category>ISEMAIL_ERR</category>1596		<diagnosis>ISEMAIL_ERR_DOMAINHYPHENEND</diagnosis>1597		<source>Paul Gregg</source>1598		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1599	</test>1600	<test id="207">1601		<address>-@..com</address>1602		<category>ISEMAIL_ERR</category>1603		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis>1604		<source>Paul Gregg</source>1605		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1606	</test>1607	<test id="208">1608		<address>-@a..com</address>1609		<category>ISEMAIL_ERR</category>1610		<diagnosis>ISEMAIL_ERR_CONSECUTIVEDOTS</diagnosis>1611		<source>Paul Gregg</source>1612		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1613	</test>1614	<test id="209">1615		<address>a@b.co-foo.uk</address>1616		<category>ISEMAIL_DNSWARN</category>1617		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis>1618		<source>Paul Gregg</source>1619		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1620	</test>1621	<test id="210">1622		<address>"hello my name is"@stutter.com</address>1623		<category>ISEMAIL_RFC5321</category>1624		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>1625		<source>Paul Gregg</source>1626		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1627	</test>1628	<test id="211">1629		<address>"Test \"Fail\" Ing"@iana.org</address>1630		<category>ISEMAIL_RFC5321</category>1631		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>1632		<source>Paul Gregg</source>1633		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1634	</test>1635	<test id="212">1636		<address>valid@about.museum</address>1637		<category>ISEMAIL_VALID_CATEGORY</category>1638		<diagnosis>ISEMAIL_VALID</diagnosis>1639		<source>Paul Gregg</source>1640		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1641	</test>1642	<test id="213">1643		<address>invalid@about.museum-</address>1644		<category>ISEMAIL_ERR</category>1645		<diagnosis>ISEMAIL_ERR_DOMAINHYPHENEND</diagnosis>1646		<source>Paul Gregg</source>1647		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1648	</test>1649	<test id="214">1650		<address>shaitan@my-domain.thisisminekthx</address>1651		<comment>Disagree with Paul Gregg here</comment>1652		<category>ISEMAIL_DNSWARN</category>1653		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis>1654		<source>Paul Gregg</source>1655		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1656	</test>1657	<test id="215">1658		<address>test@...........com</address>1659		<comment>......</comment>1660		<category>ISEMAIL_ERR</category>1661		<diagnosis>ISEMAIL_ERR_DOT_START</diagnosis>1662		<source>Paul Gregg</source>1663		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1664	</test>1665	<test id="216">1666		<address>foobar@192.168.0.1</address>1667		<comment>ip need to be []</comment>1668		<category>ISEMAIL_RFC5321</category>1669		<diagnosis>ISEMAIL_RFC5321_TLDNUMERIC</diagnosis>1670		<source>Paul Gregg</source>1671		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1672	</test>1673	<test id="217">1674		<address>"Joe\\Blow"@iana.org</address>1675		<category>ISEMAIL_RFC5321</category>1676		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>1677		<source>Paul Gregg</source>1678		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1679	</test>1680	<test id="218">1681		<address>Invalid \&#x240A; Folding \&#x240A; Whitespace@iana.org</address>1682		<comment>Even obs-local-part doesn't allow CFWS in the middle of an atom</comment>1683		<category>ISEMAIL_ERR</category>1684		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_CFWS</diagnosis>1685		<source>Paul Gregg</source>1686		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1687	</test>1688	<test id="219">1689		<address>HM2Kinsists@(that comments are allowed)this.is.ok</address>1690		<category>ISEMAIL_DEPREC</category>1691		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1692		<source>Paul Gregg</source>1693		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1694	</test>1695	<test id="220">1696		<address>user%uucp!path@berkeley.edu</address>1697		<category>ISEMAIL_VALID_CATEGORY</category>1698		<diagnosis>ISEMAIL_VALID</diagnosis>1699		<source>Paul Gregg</source>1700		<sourcelink>http://pgregg.com/projects/php/code/showvalidemail.php</sourcelink>1701	</test>1702	<test id="221">1703		<address>"first(last)"@iana.org</address>1704		<category>ISEMAIL_RFC5321</category>1705		<diagnosis>ISEMAIL_RFC5321_QUOTEDSTRING</diagnosis>1706		<source>Dominic Sayers</source>1707		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1708	</test>1709	<test id="222">1710		<address> &#x240D;&#x240A; (&#x240D;&#x240A; x &#x240D;&#x240A; ) &#x240D;&#x240A; first&#x240D;&#x240A; ( &#x240D;&#x240A; x&#x240D;&#x240A; ) &#x240D;&#x240A; .&#x240D;&#x240A; ( &#x240D;&#x240A; x) &#x240D;&#x240A; last &#x240D;&#x240A; (  x &#x240D;&#x240A; ) &#x240D;&#x240A; @iana.org</address>1711		<category>ISEMAIL_DEPREC</category>1712		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1713		<source>Dominic Sayers</source>1714		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1715	</test>1716	<test id="223">1717		<address>first.last @iana.org</address>1718		<comment>FWS is allowed after local part (this is similar to #152 but is the test proposed by John Kloor)</comment>1719		<category>ISEMAIL_DEPREC</category>1720		<diagnosis>ISEMAIL_DEPREC_CFWS_NEAR_AT</diagnosis>1721		<source>John Kloor</source>1722		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1723	</test>1724	<test id="224">1725		<address>test. &#x240D;&#x240A; &#x240D;&#x240A; obs@syntax.com</address>1726		<comment>obs-fws allows multiple lines (test 2: space before break)</comment>1727		<category>ISEMAIL_DEPREC</category>1728		<diagnosis>ISEMAIL_DEPREC_FWS</diagnosis>1729		<source>George Pollard</source>1730		<sourcelink>http://porg.es/blog/properly-validating-e-mail-addresses</sourcelink>1731	</test>1732	<test id="225">1733		<address>test.&#x240D;&#x240A;&#x240D;&#x240A; obs@syntax.com</address>1734		<comment>obs-fws must have at least one WSP per line</comment>1735		<category>ISEMAIL_ERR</category>1736		<diagnosis>ISEMAIL_ERR_FWS_CRLF_X2</diagnosis>1737		<source>George Pollard</source>1738		<sourcelink>http://porg.es/blog/properly-validating-e-mail-addresses</sourcelink>1739	</test>1740	<test id="226">1741		<address>"Unicode NULL \&#x2400;"@char.com</address>1742		<comment>Can have escaped Unicode Character 'NULL' (U+0000)</comment>1743		<category>ISEMAIL_DEPREC</category>1744		<diagnosis>ISEMAIL_DEPREC_QP</diagnosis>1745		<source>George Pollard</source>1746		<sourcelink>http://porg.es/blog/properly-validating-e-mail-addresses</sourcelink>1747	</test>1748	<test id="227">1749		<address>"Unicode NULL &#x2400;"@char.com</address>1750		<comment>Cannot have unescaped Unicode Character 'NULL' (U+0000)</comment>1751		<category>ISEMAIL_ERR</category>1752		<diagnosis>ISEMAIL_ERR_EXPECTING_QTEXT</diagnosis>1753		<source>George Pollard</source>1754		<sourcelink>http://porg.es/blog/properly-validating-e-mail-addresses</sourcelink>1755	</test>1756	<test id="228">1757		<address>Unicode NULL \&#x2400;@char.com</address>1758		<comment>Escaped Unicode Character 'NULL' (U+0000) must be in quoted string</comment>1759		<category>ISEMAIL_ERR</category>1760		<diagnosis>ISEMAIL_ERR_ATEXT_AFTER_CFWS</diagnosis>1761		<source>George Pollard</source>1762		<sourcelink>http://porg.es/blog/properly-validating-e-mail-addresses</sourcelink>1763	</test>1764	<test id="229">1765		<address>cdburgess+!#$%&amp;'*-/=?+_{}|~test@gmail.com</address>1766		<comment>Example given in comments</comment>1767		<category>ISEMAIL_VALID_CATEGORY</category>1768		<diagnosis>ISEMAIL_VALID</diagnosis>1769		<source>cdburgess</source>1770		<sourcelink>http://www.dominicsayers.com/isemail/#comment-30024957</sourcelink>1771	</test>1772	<test id="230">1773		<address>first.last@[IPv6:::a2:a3:a4:b1:b2:b3:b4]</address>1774		<comment>:: only elides one zero group (IPv6 authority is RFC 4291)</comment>1775		<category>ISEMAIL_RFC5321</category>1776		<diagnosis>ISEMAIL_RFC5321_IPV6DEPRECATED</diagnosis>1777		<source>Dominic Sayers</source>1778		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1779	</test>1780	<test id="231">1781		<address>first.last@[IPv6:a1:a2:a3:a4:b1:b2:b3::]</address>1782		<comment>:: only elides one zero group (IPv6 authority is RFC 4291)</comment>1783		<category>ISEMAIL_RFC5321</category>1784		<diagnosis>ISEMAIL_RFC5321_IPV6DEPRECATED</diagnosis>1785		<source>Dominic Sayers</source>1786		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1787	</test>1788	<test id="232">1789		<address>first.last@[IPv6::]</address>1790		<comment>IPv6 authority is RFC 4291</comment>1791		<category>ISEMAIL_RFC5322</category>1792		<diagnosis>ISEMAIL_RFC5322_IPV6_COLONSTRT</diagnosis>1793		<source>Dominic Sayers</source>1794		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1795	</test>1796	<test id="233">1797		<address>first.last@[IPv6:::]</address>1798		<comment>IPv6 authority is RFC 4291</comment>1799		<category>ISEMAIL_RFC5321</category>1800		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>1801		<source>Dominic Sayers</source>1802		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1803	</test>1804	<test id="234">1805		<address>first.last@[IPv6::::]</address>1806		<comment>IPv6 authority is RFC 4291</comment>1807		<category>ISEMAIL_RFC5322</category>1808		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis>1809		<source>Dominic Sayers</source>1810		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1811	</test>1812	<test id="235">1813		<address>first.last@[IPv6::b4]</address>1814		<comment>IPv6 authority is RFC 4291</comment>1815		<category>ISEMAIL_RFC5322</category>1816		<diagnosis>ISEMAIL_RFC5322_IPV6_COLONSTRT</diagnosis>1817		<source>Dominic Sayers</source>1818		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1819	</test>1820	<test id="236">1821		<address>first.last@[IPv6:::b4]</address>1822		<comment>IPv6 authority is RFC 4291</comment>1823		<category>ISEMAIL_RFC5321</category>1824		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>1825		<source>Dominic Sayers</source>1826		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1827	</test>1828	<test id="237">1829		<address>first.last@[IPv6::::b4]</address>1830		<comment>IPv6 authority is RFC 4291</comment>1831		<category>ISEMAIL_RFC5322</category>1832		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis>1833		<source>Dominic Sayers</source>1834		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1835	</test>1836	<test id="238">1837		<address>first.last@[IPv6::b3:b4]</address>1838		<comment>IPv6 authority is RFC 4291</comment>1839		<category>ISEMAIL_RFC5322</category>1840		<diagnosis>ISEMAIL_RFC5322_IPV6_COLONSTRT</diagnosis>1841		<source>Dominic Sayers</source>1842		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1843	</test>1844	<test id="239">1845		<address>first.last@[IPv6:::b3:b4]</address>1846		<comment>IPv6 authority is RFC 4291</comment>1847		<category>ISEMAIL_RFC5321</category>1848		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>1849		<source>Dominic Sayers</source>1850		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1851	</test>1852	<test id="240">1853		<address>first.last@[IPv6::::b3:b4]</address>1854		<comment>IPv6 authority is RFC 4291</comment>1855		<category>ISEMAIL_RFC5322</category>1856		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis>1857		<source>Dominic Sayers</source>1858		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1859	</test>1860	<test id="241">1861		<address>first.last@[IPv6:a1::b4]</address>1862		<comment>IPv6 authority is RFC 4291</comment>1863		<category>ISEMAIL_RFC5321</category>1864		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>1865		<source>Dominic Sayers</source>1866		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1867	</test>1868	<test id="242">1869		<address>first.last@[IPv6:a1:::b4]</address>1870		<comment>IPv6 authority is RFC 4291</comment>1871		<category>ISEMAIL_RFC5322</category>1872		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis>1873		<source>Dominic Sayers</source>1874		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1875	</test>1876	<test id="243">1877		<address>first.last@[IPv6:a1:]</address>1878		<comment>IPv6 authority is RFC 4291</comment>1879		<category>ISEMAIL_RFC5322</category>1880		<diagnosis>ISEMAIL_RFC5322_IPV6_COLONEND</diagnosis>1881		<source>Dominic Sayers</source>1882		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1883	</test>1884	<test id="244">1885		<address>first.last@[IPv6:a1::]</address>1886		<comment>IPv6 authority is RFC 4291</comment>1887		<category>ISEMAIL_RFC5321</category>1888		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>1889		<source>Dominic Sayers</source>1890		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1891	</test>1892	<test id="245">1893		<address>first.last@[IPv6:a1:::]</address>1894		<comment>IPv6 authority is RFC 4291</comment>1895		<category>ISEMAIL_RFC5322</category>1896		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis>1897		<source>Dominic Sayers</source>1898		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1899	</test>1900	<test id="246">1901		<address>first.last@[IPv6:a1:a2:]</address>1902		<comment>IPv6 authority is RFC 4291</comment>1903		<category>ISEMAIL_RFC5322</category>1904		<diagnosis>ISEMAIL_RFC5322_IPV6_COLONEND</diagnosis>1905		<source>Dominic Sayers</source>1906		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1907	</test>1908	<test id="247">1909		<address>first.last@[IPv6:a1:a2::]</address>1910		<comment>IPv6 authority is RFC 4291</comment>1911		<category>ISEMAIL_RFC5321</category>1912		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>1913		<source>Dominic Sayers</source>1914		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1915	</test>1916	<test id="248">1917		<address>first.last@[IPv6:a1:a2:::]</address>1918		<comment>IPv6 authority is RFC 4291</comment>1919		<category>ISEMAIL_RFC5322</category>1920		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis>1921		<source>Dominic Sayers</source>1922		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1923	</test>1924	<test id="249">1925		<address>first.last@[IPv6:0123:4567:89ab:cdef::]</address>1926		<comment>IPv6 authority is RFC 4291</comment>1927		<category>ISEMAIL_RFC5321</category>1928		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>1929		<source>Dominic Sayers</source>1930		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1931	</test>1932	<test id="250">1933		<address>first.last@[IPv6:0123:4567:89ab:CDEF::]</address>1934		<comment>IPv6 authority is RFC 4291</comment>1935		<category>ISEMAIL_RFC5321</category>1936		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>1937		<source>Dominic Sayers</source>1938		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1939	</test>1940	<test id="251">1941		<address>first.last@[IPv6:::a3:a4:b1:ffff:11.22.33.44]</address>1942		<comment>IPv6 authority is RFC 4291</comment>1943		<category>ISEMAIL_RFC5321</category>1944		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>1945		<source>Dominic Sayers</source>1946		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1947	</test>1948	<test id="252">1949		<address>first.last@[IPv6:::a2:a3:a4:b1:ffff:11.22.33.44]</address>1950		<comment>:: only elides one zero group (IPv6 authority is RFC 4291)</comment>1951		<category>ISEMAIL_RFC5321</category>1952		<diagnosis>ISEMAIL_RFC5321_IPV6DEPRECATED</diagnosis>1953		<source>Dominic Sayers</source>1954		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1955	</test>1956	<test id="253">1957		<address>first.last@[IPv6:a1:a2:a3:a4::11.22.33.44]</address>1958		<comment>IPv6 authority is RFC 4291</comment>1959		<category>ISEMAIL_RFC5321</category>1960		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>1961		<source>Dominic Sayers</source>1962		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1963	</test>1964	<test id="254">1965		<address>first.last@[IPv6:a1:a2:a3:a4:b1::11.22.33.44]</address>1966		<comment>:: only elides one zero group (IPv6 authority is RFC 4291)</comment>1967		<category>ISEMAIL_RFC5321</category>1968		<diagnosis>ISEMAIL_RFC5321_IPV6DEPRECATED</diagnosis>1969		<source>Dominic Sayers</source>1970		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1971	</test>1972	<test id="255">1973		<address>first.last@[IPv6::11.22.33.44]</address>1974		<comment>IPv6 authority is RFC 4291</comment>1975		<category>ISEMAIL_RFC5322</category>1976		<diagnosis>ISEMAIL_RFC5322_IPV6_COLONSTRT</diagnosis>1977		<source>Dominic Sayers</source>1978		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1979	</test>1980	<test id="256">1981		<address>first.last@[IPv6::::11.22.33.44]</address>1982		<comment>IPv6 authority is RFC 4291</comment>1983		<category>ISEMAIL_RFC5322</category>1984		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis>1985		<source>Dominic Sayers</source>1986		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1987	</test>1988	<test id="257">1989		<address>first.last@[IPv6:a1:11.22.33.44]</address>1990		<comment>IPv6 authority is RFC 4291</comment>1991		<category>ISEMAIL_RFC5322</category>1992		<diagnosis>ISEMAIL_RFC5322_IPV6_GRPCOUNT</diagnosis>1993		<source>Dominic Sayers</source>1994		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>1995	</test>1996	<test id="258">1997		<address>first.last@[IPv6:a1::11.22.33.44]</address>1998		<comment>IPv6 authority is RFC 4291</comment>1999		<category>ISEMAIL_RFC5321</category>2000		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>2001		<source>Dominic Sayers</source>2002		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2003	</test>2004	<test id="259">2005		<address>first.last@[IPv6:a1:::11.22.33.44]</address>2006		<comment>IPv6 authority is RFC 4291</comment>2007		<category>ISEMAIL_RFC5322</category>2008		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis>2009		<source>Dominic Sayers</source>2010		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2011	</test>2012	<test id="260">2013		<address>first.last@[IPv6:a1:a2::11.22.33.44]</address>2014		<comment>IPv6 authority is RFC 4291</comment>2015		<category>ISEMAIL_RFC5321</category>2016		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>2017		<source>Dominic Sayers</source>2018		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2019	</test>2020	<test id="261">2021		<address>first.last@[IPv6:a1:a2:::11.22.33.44]</address>2022		<comment>IPv6 authority is RFC 4291</comment>2023		<category>ISEMAIL_RFC5322</category>2024		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis>2025		<source>Dominic Sayers</source>2026		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2027	</test>2028	<test id="262">2029		<address>first.last@[IPv6:0123:4567:89ab:cdef::11.22.33.44]</address>2030		<comment>IPv6 authority is RFC 4291</comment>2031		<category>ISEMAIL_RFC5321</category>2032		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>2033		<source>Dominic Sayers</source>2034		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2035	</test>2036	<test id="263">2037		<address>first.last@[IPv6:0123:4567:89ab:cdef::11.22.33.xx]</address>2038		<comment>IPv6 authority is RFC 4291</comment>2039		<category>ISEMAIL_RFC5322</category>2040		<diagnosis>ISEMAIL_RFC5322_IPV6_BADCHAR</diagnosis>2041		<source>Dominic Sayers</source>2042		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2043	</test>2044	<test id="264">2045		<address>first.last@[IPv6:0123:4567:89ab:CDEF::11.22.33.44]</address>2046		<comment>IPv6 authority is RFC 4291</comment>2047		<category>ISEMAIL_RFC5321</category>2048		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>2049		<source>Dominic Sayers</source>2050		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2051	</test>2052	<test id="265">2053		<address>first.last@[IPv6:0123:4567:89ab:CDEFF::11.22.33.44]</address>2054		<comment>IPv6 authority is RFC 4291</comment>2055		<category>ISEMAIL_RFC5322</category>2056		<diagnosis>ISEMAIL_RFC5322_IPV6_BADCHAR</diagnosis>2057		<source>Dominic Sayers</source>2058		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2059	</test>2060	<test id="266">2061		<address>first.last@[IPv6:a1::a4:b1::b4:11.22.33.44]</address>2062		<comment>IPv6 authority is RFC 4291</comment>2063		<category>ISEMAIL_RFC5322</category>2064		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis>2065		<source>Dominic Sayers</source>2066		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2067	</test>2068	<test id="267">2069		<address>first.last@[IPv6:a1::11.22.33]</address>2070		<comment>IPv6 authority is RFC 4291</comment>2071		<category>ISEMAIL_RFC5322</category>2072		<diagnosis>ISEMAIL_RFC5322_IPV6_BADCHAR</diagnosis>2073		<source>Dominic Sayers</source>2074		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2075	</test>2076	<test id="268">2077		<address>first.last@[IPv6:a1::11.22.33.44.55]</address>2078		<comment>IPv6 authority is RFC 4291</comment>2079		<category>ISEMAIL_RFC5322</category>2080		<diagnosis>ISEMAIL_RFC5322_IPV6_BADCHAR</diagnosis>2081		<source>Dominic Sayers</source>2082		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2083	</test>2084	<test id="269">2085		<address>first.last@[IPv6:a1::b211.22.33.44]</address>2086		<comment>IPv6 authority is RFC 4291</comment>2087		<category>ISEMAIL_RFC5322</category>2088		<diagnosis>ISEMAIL_RFC5322_IPV6_BADCHAR</diagnosis>2089		<source>Dominic Sayers</source>2090		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2091	</test>2092	<test id="270">2093		<address>first.last@[IPv6:a1::b2:11.22.33.44]</address>2094		<comment>IPv6 authority is RFC 4291</comment>2095		<category>ISEMAIL_RFC5321</category>2096		<diagnosis>ISEMAIL_RFC5321_ADDRESSLITERAL</diagnosis>2097		<source>Dominic Sayers</source>2098		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2099	</test>2100	<test id="271">2101		<address>first.last@[IPv6:a1::b2::11.22.33.44]</address>2102		<comment>IPv6 authority is RFC 4291</comment>2103		<category>ISEMAIL_RFC5322</category>2104		<diagnosis>ISEMAIL_RFC5322_IPV6_2X2XCOLON</diagnosis>2105		<source>Dominic Sayers</source>2106		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2107	</test>2108	<test id="272">2109		<address>first.last@[IPv6:a1::b3:]</address>2110		<comment>IPv6 authority is RFC 4291</comment>2111		<category>ISEMAIL_RFC5322</category>2112		<diagnosis>ISEMAIL_RFC5322_IPV6_COLONEND</diagnosis>2113		<source>Dominic Sayers</source>2114		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2115	</test>2116	<test id="273">2117		<address>first.last@[IPv6::a2::b4]</address>2118		<comment>IPv6 authority is RFC 4291</comment>2119		<category>ISEMAIL_RFC5322</category>2120		<diagnosis>ISEMAIL_RFC5322_IPV6_COLONSTRT</diagnosis>2121		<source>Dominic Sayers</source>2122		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2123	</test>2124	<test id="274">2125		<address>first.last@[IPv6:a1:a2:a3:a4:b1:b2:b3:]</address>2126		<comment>IPv6 authority is RFC 4291</comment>2127		<category>ISEMAIL_RFC5322</category>2128		<diagnosis>ISEMAIL_RFC5322_IPV6_COLONEND</diagnosis>2129		<source>Dominic Sayers</source>2130		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2131	</test>2132	<test id="275">2133		<address>first.last@[IPv6::a2:a3:a4:b1:b2:b3:b4]</address>2134		<comment>IPv6 authority is RFC 4291</comment>2135		<category>ISEMAIL_RFC5322</category>2136		<diagnosis>ISEMAIL_RFC5322_IPV6_COLONSTRT</diagnosis>2137		<source>Dominic Sayers</source>2138		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2139	</test>2140	<test id="276">2141		<address>first.last@[IPv6:a1:a2:a3:a4::b1:b2:b3:b4]</address>2142		<comment>IPv6 authority is RFC 4291</comment>2143		<category>ISEMAIL_RFC5322</category>2144		<diagnosis>ISEMAIL_RFC5322_IPV6_MAXGRPS</diagnosis>2145		<source>Daniel Marschall</source>2146		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2147	</test>2148	<test id="277">2149		<address>test@test.com</address>2150		<comment>test.com has an A-record but not an MX-record</comment>2151		<category>ISEMAIL_DNSWARN</category>2152		<diagnosis>ISEMAIL_DNSWARN_NO_MX_RECORD</diagnosis>2153		<source>Dominic Sayers</source>2154		<sourcelink>http://www.dominicsayers.com/isemail</sourcelink>2155	</test>2156	<test id="278">2157		<address>test@example.com&#x240A;</address>2158		<comment>Address has a newline at the end</comment>2159		<category>ISEMAIL_ERR</category>2160		<diagnosis>ISEMAIL_ERR_EXPECTING_ATEXT</diagnosis>2161		<source>Michael Rushton</source>2162		<sourcelink>http://squiloople.com/tag/email/</sourcelink>2163	</test>2164	<test id="279">2165		<address>test@xn--example.com</address>2166		<comment>Address is at an Internationalized Domain Name (Punycode)</comment>2167		<category>ISEMAIL_DNSWARN</category>2168		<diagnosis>ISEMAIL_DNSWARN_NO_RECORD</diagnosis>2169		<source>Michael Rushton</source>2170		<sourcelink>http://squiloople.com/tag/email/</sourcelink>2171	</test>2172	</tests>
New paste