org.eclipse.wst.html.core.tests.parser.UpdaterTest2
Source :
<HTML>
<HEAD></HEAD>
<BODY></BODY>
</HTML>



StructuredDocument Regions :
[0, 6] (<HTML>)
[6, 8] (
)
[8, 14] (<HEAD>)
[14, 21] (</HEAD>)
[21, 23] (
)
[23, 29] (<BODY>)
[29, 36] (</BODY>)
[36, 38] (
)
[38, 45] (</HTML>)
[45, 47] (
)

Tree :
#document
--HTML/HTML@[0, 6] (<HTML>)@[38, 45] (</HTML>)
----#text(\r\n)@[6, 8] (\r\n)
----HEAD/HEAD@[8, 14] (<HEAD>)@[14, 21] (</HEAD>)
----#text(\r\n)@[21, 23] (\r\n)
----BODY/BODY@[23, 29] (<BODY>)@[29, 36] (</BODY>)
----#text(\r\n)@[36, 38] (\r\n)
--#text(\r\n)@[45, 47] (\r\n)

Source :
<HTML>
<HEAD>
<meta name="GENERATOR" content="Updater Test 2">
</HEAD>
<BODY></BODY>
</HTML>



StructuredDocument Regions :
[0, 6] (<HTML>)
[6, 8] (
)
[8, 14] (<HEAD>)
[14, 16] (
)
[16, 64] (<meta name="GENERATOR" content="Updater Test 2">)
[64, 66] (
)
[66, 73] (</HEAD>)
[73, 75] (
)
[75, 81] (<BODY>)
[81, 88] (</BODY>)
[88, 90] (
)
[90, 97] (</HTML>)
[97, 99] (
)

Tree :
#document
--HTML/HTML@[0, 6] (<HTML>)@[90, 97] (</HTML>)
----#text(\r\n)@[6, 8] (\r\n)
----HEAD/HEAD@[8, 14] (<HEAD>)@[66, 73] (</HEAD>)
------#text(\r\n)@[14, 16] (\r\n)
------meta@[16, 64] (<meta name&#61;"GENERATOR" content&#61;"Updater Test 2">)
------#text(\r\n)@[64, 66] (\r\n)
----#text(\r\n)@[73, 75] (\r\n)
----BODY/BODY@[75, 81] (<BODY>)@[81, 88] (</BODY>)
----#text(\r\n)@[88, 90] (\r\n)
--#text(\r\n)@[97, 99] (\r\n)

Source :
<HTML>
<HEAD>
<meta name="GENERATOR" content="Updater Test 2">
<title></title></HEAD>
<BODY></BODY>
</HTML>



StructuredDocument Regions :
[0, 6] (<HTML>)
[6, 8] (
)
[8, 14] (<HEAD>)
[14, 16] (
)
[16, 64] (<meta name="GENERATOR" content="Updater Test 2">)
[64, 66] (
)
[66, 73] (<title>)
[73, 81] (</title>)
[81, 88] (</HEAD>)
[88, 90] (
)
[90, 96] (<BODY>)
[96, 103] (</BODY>)
[103, 105] (
)
[105, 112] (</HTML>)
[112, 114] (
)

Tree :
#document
--HTML/HTML@[0, 6] (<HTML>)@[105, 112] (</HTML>)
----#text(\r\n)@[6, 8] (\r\n)
----HEAD/HEAD@[8, 14] (<HEAD>)@[81, 88] (</HEAD>)
------#text(\r\n)@[14, 16] (\r\n)
------meta@[16, 64] (<meta name&#61;"GENERATOR" content&#61;"Updater Test 2">)
------#text(\r\n)@[64, 66] (\r\n)
------title/title@[66, 73] (<title>)@[73, 81] (</title>)
--------#text()
----#text(\r\n)@[88, 90] (\r\n)
----BODY/BODY@[90, 96] (<BODY>)@[96, 103] (</BODY>)
----#text(\r\n)@[103, 105] (\r\n)
--#text(\r\n)@[112, 114] (\r\n)

