summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--htdocs/contribute.html8
-rw-r--r--htdocs/images/roadmap/validators-chart-small.pngbin0 -> 100990 bytes
-rw-r--r--htdocs/images/roadmap/validators-chart.grafflebin0 -> 9429 bytes
-rw-r--r--htdocs/images/roadmap/validators-chart.pdfbin0 -> 167881 bytes
-rw-r--r--htdocs/images/roadmap/validators-chart.pngbin0 -> 1673965 bytes
-rw-r--r--htdocs/images/roadmap/validators-chart.svg48
-rwxr-xr-xhtdocs/todo.html72
7 files changed, 98 insertions, 30 deletions
diff --git a/htdocs/contribute.html b/htdocs/contribute.html
index 174da45..a9bf175 100644
--- a/htdocs/contribute.html
+++ b/htdocs/contribute.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: contribute.html,v 1.3 2008-12-11 13:46:27 ot Exp $"
---><!--#set var="date" value="\$Date: 2008-12-11 13:46:27 $"
+<!--#set var="revision" value="\$Id: contribute.html,v 1.4 2009-02-24 18:11:30 ot Exp $"
+--><!--#set var="date" value="\$Date: 2009-02-24 18:11:30 $"
--><!--#set var="title" value="How to Contribute to the W3C Markup Validator"
--><!--#set var="relroot" value="./"
--><!--#include virtual="header.html" -->
@@ -22,8 +22,8 @@
<p id="code"><strong>Code</strong>. The best way you can help the project is to get involved in the software development.</p>
<p><em>It only takes</em>: some knowledge of the perl
programming language, a few hours to get familiar with the <a href="http://dev.w3.org/cvsweb/validator/">validator
- codebase</a>, and however much time you're comfortable dedicating to the project. (See the <a href="docs/devel.html">Developer's
- Guide</a> for more).
+ codebase</a>, and however much time you're comfortable dedicating to the project. See the <a href="docs/devel.html">Developer's
+ Guide</a> for info on getting started, then browse <a href="http://www.w3.org/Bugs/Public/buglist.cgi?product=Validator&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED">known bugs and enhancement requests</a> or look at the <a href="todo.html">architectural roadmap</a>.
<em>What you get</em>:
A chance to get your favorite features developed, or your most hated bug fixed, in priority…
plus the thanks and respect of millions of validator users.</p>
diff --git a/htdocs/images/roadmap/validators-chart-small.png b/htdocs/images/roadmap/validators-chart-small.png
new file mode 100644
index 0000000..aa08720
--- /dev/null
+++ b/htdocs/images/roadmap/validators-chart-small.png
Binary files differ
diff --git a/htdocs/images/roadmap/validators-chart.graffle b/htdocs/images/roadmap/validators-chart.graffle
new file mode 100644
index 0000000..4793a52
--- /dev/null
+++ b/htdocs/images/roadmap/validators-chart.graffle
Binary files differ
diff --git a/htdocs/images/roadmap/validators-chart.pdf b/htdocs/images/roadmap/validators-chart.pdf
new file mode 100644
index 0000000..808c82c
--- /dev/null
+++ b/htdocs/images/roadmap/validators-chart.pdf
Binary files differ
diff --git a/htdocs/images/roadmap/validators-chart.png b/htdocs/images/roadmap/validators-chart.png
new file mode 100644
index 0000000..0b0c622
--- /dev/null
+++ b/htdocs/images/roadmap/validators-chart.png
Binary files differ
diff --git a/htdocs/images/roadmap/validators-chart.svg b/htdocs/images/roadmap/validators-chart.svg
new file mode 100644
index 0000000..b53d355
--- /dev/null
+++ b/htdocs/images/roadmap/validators-chart.svg
@@ -0,0 +1,48 @@
+<?xml version="1.0"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 1154 792" width="1154pt" height="66pc"><metadata xmlns:dc="http://purl.org/dc/elements/1.1/"><dc:date>2009-02-23 22:26Z</dc:date><!-- Produced by OmniGraffle Professional 4.2.3 rc 1 --></metadata><defs><filter id="Shadow" filterUnits="userSpaceOnUse"><feGaussianBlur in="SourceAlpha" result="blur" stdDeviation="3.488"/><feOffset in="blur" result="offset" dx="0" dy="4"/><feFlood flood-color="black" flood-opacity=".75" result="flood"/><feComposite in="flood" in2="offset" operator="in"/></filter><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="550" cap-height="700" ascent="770.01953" descent="-229.98047" font-weight="bold"><!--NSCTFontDescriptor &lt;0x1719fb00&gt; = {
+ NSFontNameAttribute = "Helvetica-Bold";
+ NSFontSizeAttribute = 10;
+}--><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="600" cap-height="800" ascent="770.01953" descent="-229.98047" font-weight="500"><!--NSCTFontDescriptor &lt;0x17a6e4f0&gt; = {
+ NSFontNameAttribute = Helvetica;
+ NSFontSizeAttribute = 10;
+}--><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="6" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="583.33337" cap-height="750" ascent="770.01953" descent="-229.98047" font-weight="500"><!--NSCTFontDescriptor &lt;0x16993ab0&gt; = {
+ NSFontNameAttribute = Helvetica;
+ NSFontSizeAttribute = 6;
+}--><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-1 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M 8 0 L 0 -3 L 0 3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><font-face font-family="Helvetica" font-size="11" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="545.45453" cap-height="727.2727" ascent="770.01953" descent="-229.98047" font-weight="bold"><!--NSCTFontDescriptor &lt;0x1719c530&gt; = {
+ NSFontNameAttribute = "Helvetica-Bold";
+ NSFontSizeAttribute = 11;
+}--><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="8" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="500" cap-height="750" ascent="770.01953" descent="-229.98047" font-weight="500"><!--NSCTFontDescriptor &lt;0x19980c10&gt; = {
+ NSFontNameAttribute = Helvetica;
+ NSFontSizeAttribute = 8;
+}--><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="7" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="571.4286" cap-height="714.28577" ascent="770.01953" descent="-229.98047" font-weight="500"><!--NSCTFontDescriptor &lt;0x18e26950&gt; = {
+ NSFontNameAttribute = Helvetica;
+ NSFontSizeAttribute = 7;
+}--><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="8" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="500" cap-height="750" ascent="770.01953" descent="-229.98047" font-weight="bold"><!--NSCTFontDescriptor &lt;0x1945ffd0&gt; = {
+ NSFontNameAttribute = "Helvetica-Bold";
+ NSFontSizeAttribute = 8;
+}--><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="7" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="571.4286" cap-height="714.28577" ascent="770.01953" descent="-229.98047" font-weight="bold"><!--NSCTFontDescriptor &lt;0x18cc8030&gt; = {
+ NSFontNameAttribute = "Helvetica-Bold";
+ NSFontSizeAttribute = 7;
+}--><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="555.55554" cap-height="722.22223" ascent="770.01953" descent="-229.98047" font-weight="bold"><!--NSCTFontDescriptor &lt;0x1a984be0&gt; = {
+ NSFontNameAttribute = "Helvetica-Bold";
+ NSFontSizeAttribute = 9;
+}--><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="14" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="535.7143" cap-height="714.28577" ascent="770.01953" descent="-229.98047" font-weight="bold"><!--NSCTFontDescriptor &lt;0x1a0ab140&gt; = {
+ NSFontNameAttribute = "Helvetica-Bold";
+ NSFontSizeAttribute = 14;
+}--><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="6" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="500" cap-height="666.6667" ascent="770.01953" descent="-229.98047" font-weight="bold"><!--NSCTFontDescriptor &lt;0x171c3b00&gt; = {
+ NSFontNameAttribute = "Helvetica-Bold";
+ NSFontSizeAttribute = 6;
+}--><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="13" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.31641" slope="0" x-height="538.46155" cap-height="730.7693" ascent="770.0196" descent="-229.98048" font-weight="bold"><!--NSCTFontDescriptor &lt;0x1702ab00&gt; = {
+ NSFontNameAttribute = "Helvetica-Bold";
+ NSFontSizeAttribute = 13;
+}--><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="12" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="541.6667" cap-height="750" ascent="770.01953" descent="-229.98047" font-weight="bold"><!--NSCTFontDescriptor &lt;0x169d0a70&gt; = {
+ NSFontNameAttribute = "Helvetica-Bold";
+ NSFontSizeAttribute = 12;
+}--><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="555.55554" cap-height="777.77783" ascent="770.01953" descent="-229.98047" font-weight="500"><!--NSCTFontDescriptor &lt;0x169c0650&gt; = {
+ NSFontNameAttribute = Helvetica;
+ NSFontSizeAttribute = 9;
+}--><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="48" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="541.6667" cap-height="739.58337" ascent="770.01953" descent="-229.98047" font-weight="bold"><!--NSCTFontDescriptor &lt;0x1b49c310&gt; = {
+ NSFontNameAttribute = "Helvetica-Bold";
+ NSFontSizeAttribute = 48;
+}--><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 1</title><rect fill="white" width="1154" height="792"/><g><title>Layer 1</title><g><use xl:href="#id4_Graphic" filter="url(#Shadow)"/><use xl:href="#id5_Graphic" filter="url(#Shadow)"/><use xl:href="#id29_Graphic" filter="url(#Shadow)"/><use xl:href="#id39_Graphic" filter="url(#Shadow)"/><use xl:href="#id41_Graphic" filter="url(#Shadow)"/><use xl:href="#id46_Graphic" filter="url(#Shadow)"/><use xl:href="#id59_Graphic" filter="url(#Shadow)"/><use xl:href="#id62_Graphic" filter="url(#Shadow)"/><use xl:href="#id70_Graphic" filter="url(#Shadow)"/><use xl:href="#id71_Graphic" filter="url(#Shadow)"/><use xl:href="#id77_Graphic" filter="url(#Shadow)"/><use xl:href="#id80_Graphic" filter="url(#Shadow)"/><use xl:href="#id86_Graphic" filter="url(#Shadow)"/><use xl:href="#id117_Graphic" filter="url(#Shadow)"/><use xl:href="#id130_Graphic" filter="url(#Shadow)"/><use xl:href="#id133_Graphic" filter="url(#Shadow)"/><use xl:href="#id136_Graphic" filter="url(#Shadow)"/><use xl:href="#id145_Graphic" filter="url(#Shadow)"/><use xl:href="#id166_Graphic" filter="url(#Shadow)"/><use xl:href="#id120_Graphic" filter="url(#Shadow)"/><use xl:href="#id119_Graphic" filter="url(#Shadow)"/><use xl:href="#id178_Graphic" filter="url(#Shadow)"/><use xl:href="#id208_Graphic" filter="url(#Shadow)"/><use xl:href="#id203_Graphic" filter="url(#Shadow)"/><use xl:href="#id215_Graphic" filter="url(#Shadow)"/><use xl:href="#id216_Graphic" filter="url(#Shadow)"/><use xl:href="#id220_Graphic" filter="url(#Shadow)"/><use xl:href="#id224_Graphic" filter="url(#Shadow)"/><use xl:href="#id241_Graphic" filter="url(#Shadow)"/><use xl:href="#id244_Graphic" filter="url(#Shadow)"/><use xl:href="#id282_Graphic" filter="url(#Shadow)"/><use xl:href="#id292_Graphic" filter="url(#Shadow)"/><use xl:href="#id295_Graphic" filter="url(#Shadow)"/><use xl:href="#id306_Graphic" filter="url(#Shadow)"/><use xl:href="#id324_Graphic" filter="url(#Shadow)"/><use xl:href="#id325_Graphic" filter="url(#Shadow)"/><use xl:href="#id328_Graphic" filter="url(#Shadow)"/><use xl:href="#id332_Graphic" filter="url(#Shadow)"/><use xl:href="#id334_Graphic" filter="url(#Shadow)"/><use xl:href="#id337_Graphic" filter="url(#Shadow)"/><use xl:href="#id338_Graphic" filter="url(#Shadow)"/><use xl:href="#id341_Graphic" filter="url(#Shadow)"/><use xl:href="#id342_Graphic" filter="url(#Shadow)"/></g><g id="id4_Graphic"><path d="M 605.91467 45.06448 L 695.85315 45.06448 C 706.49158 45.06448 715.12567 56.029106 715.12567 69.539093 C 715.12567 83.04908 706.49158 94.0137 695.85315 94.0137 L 605.91467 94.0137 C 595.27625 94.0137 586.64215 83.04908 586.64215 69.539093 C 586.64215 56.029106 595.27625 45.06448 605.91467 45.06448" fill="white"/><path d="M 605.91467 45.06448 L 695.85315 45.06448 C 706.49158 45.06448 715.12567 56.029106 715.12567 69.539093 C 715.12567 83.04908 706.49158 94.0137 695.85315 94.0137 L 605.91467 94.0137 C 595.27625 94.0137 586.64215 83.04908 586.64215 69.539093 C 586.64215 56.029106 595.27625 45.06448 605.91467 45.06448" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(604.49048 57.539093)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="bold" x="11.666836" y="10" textLength="6.669922">V</tspan><tspan font-family="Helvetica" font-size="10" font-weight="bold" x="17.789883" y="10" textLength="63.33008">alidator Input</tspan><tspan font-family="Helvetica" font-size="10" font-weight="500" x="33.3392" y="22" textLength="26.108398">(start)</tspan></text></g><g id="id5_Graphic"><path d="M 864.22705 94.29981 L 885.64197 123.457855 L 864.22705 152.61591 L 842.81213 123.457855 Z" fill="#6cf"/><path d="M 864.22705 94.29981 L 885.64197 123.457855 L 864.22705 152.61591 L 842.81213 123.457855 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(853.5942 115.874695)" fill="black"><tspan font-family="Helvetica" font-size="6" font-weight="500" x="3.2286816" y="6" textLength="15.665039">MIME</tspan><tspan font-family="Helvetica" font-size="6" font-weight="500" x="4.55583" y="13" textLength="3.665039">T</tspan><tspan font-family="Helvetica" font-size="6" font-weight="500" x="7.892744" y="13" textLength="9.673828">ype</tspan></text></g><line x1="586.6418" y1="178.25708" x2="1138.5139" y2="178.50294" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="863.9148" y1="152.69803" x2="863.6405" y2="178.38049" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="621.8446" y1="178.27277" x2="621.0746" y2="566.50873" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><g id="id29_Graphic"><path d="M 593.8329 576.90863 L 648.18933 576.90863 C 654.61896 576.90863 659.83716 586.58264 659.83716 598.50238 C 659.83716 610.42212 654.61896 620.09613 648.18933 620.09613 L 593.8329 620.09613 C 587.40326 620.09613 582.18506 610.42212 582.18506 598.50238 C 582.18506 586.58264 587.40326 576.90863 593.8329 576.90863" fill="#b5ffb6"/><path d="M 593.8329 576.90863 L 648.18933 576.90863 C 654.61896 576.90863 659.83716 586.58264 659.83716 598.50238 C 659.83716 610.42212 654.61896 620.09613 648.18933 620.09613 L 593.8329 620.09613 C 587.40326 620.09613 582.18506 610.42212 582.18506 598.50238 C 582.18506 586.58264 587.40326 576.90863 593.8329 576.90863" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(594.95026 592.00238)" fill="black"><tspan font-family="Helvetica" font-size="11" font-weight="bold" x="5.2693367" y="10" textLength="33.010742">CSS V</tspan><tspan font-family="Helvetica" font-size="11" font-weight="bold" x="37.678516" y="10" textLength="9.173828">al</tspan></text></g><g id="id39_Graphic"><rect x="653.9884" y="261.21078" width="33.680176" height="35.582703" fill="white"/><rect x="653.9884" y="261.21078" width="33.680176" height="35.582703" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(658.9884 269.00214)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" x="1.3908501" y="8" textLength="23.121094">Parse </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="3.6154594" y="18" textLength="16.449219">XML</tspan></text></g><g id="id41_Graphic"><path d="M 672.35284 321.9978 L 693.76776 351.15585 L 672.35284 380.3139 L 650.93793 351.15585 Z" fill="#6cf"/><path d="M 672.35284 321.9978 L 693.76776 351.15585 L 672.35284 380.3139 L 650.93793 351.15585 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(661.71997 342.5727)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x="3.864668" y="6" textLength="16.337891">RSS </tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="3.2767773" y="14" textLength="15.568848">1.0 ?</tspan></text></g><line x1="671.2149" y1="297.29333" x2="671.53436" y2="312.41544" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><g id="id46_Graphic"><path d="M 728.7245 386.63928 L 758.70544 386.63928 C 762.2517 386.63928 765.1299 396.3133 765.1299 408.23303 C 765.1299 420.15277 762.2517 429.82678 758.70544 429.82678 L 728.7245 429.82678 C 725.17822 429.82678 722.30005 420.15277 722.30005 408.23303 C 722.30005 396.3133 725.17822 386.63928 728.7245 386.63928" fill="#b5ffb6"/><path d="M 728.7245 386.63928 L 758.70544 386.63928 C 762.2517 386.63928 765.1299 396.3133 765.1299 408.23303 C 765.1299 420.15277 762.2517 429.82678 758.70544 429.82678 L 728.7245 429.82678 C 725.17822 429.82678 722.30005 420.15277 722.30005 408.23303 C 722.30005 396.3133 725.17822 386.63928 728.7245 386.63928" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(731.583 398.23303)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="2.796011" y="8" textLength="20.894531">Feed </tspan><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="6.3467922" y="18" textLength="5.3359375">V</tspan><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="11.24523" y="18" textLength="6.671875">al</tspan></text></g><line x1="686.2337" y1="362.25812" x2="716.14752" y2="386.1839" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 689.6441 368.58417 L 708.6441 368.58417 C 709.1964 368.58417 709.6441 369.0319 709.6441 369.58417 L 709.6441 375.58417 C 709.6441 376.13644 709.1964 376.58417 708.6441 376.58417 L 689.6441 376.58417 C 689.0918 376.58417 688.6441 376.13644 688.6441 375.58417 C 688.6441 375.58417 688.6441 375.58417 688.6441 375.58417 L 688.6441 369.58417 C 688.6441 369.0319 689.0918 368.58417 689.6441 368.58417 Z" fill="white"/><path d="M 689.6441 368.58417 L 708.6441 368.58417 C 709.1964 368.58417 709.6441 369.0319 709.6441 369.58417 L 709.6441 375.58417 C 709.6441 376.13644 709.1964 376.58417 708.6441 376.58417 L 689.6441 376.58417 C 689.0918 376.58417 688.6441 376.13644 688.6441 375.58417 C 688.6441 375.58417 688.6441 375.58417 688.6441 375.58417 L 688.6441 369.58417 C 688.6441 369.0319 689.0918 368.58417 689.6441 368.58417 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(693.6441 368.58417)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><rect x="602.6526" y="260.08759" width="38" height="30" fill="white"/><text transform="translate(607.6526 265.08759)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="5.7753906" y="8" textLength="16.449219">CSS</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x=".44140625" y="18" textLength="27.117188">text/css</tspan></text><line x1="669.09003" y1="178.29381" x2="670.34186" y2="250.81232" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="635.15894" y="190.25049" width="69" height="42" fill="white"/><text transform="translate(640.15894 195.25049)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="bold" x="22.306885" y="6" textLength="14.3862305">RDF</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".22167969" y="14" textLength="58.55664">application/rdf+xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="1.0966797" y="22" textLength="56.80664">application/x-turtle</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="12.864746" y="30" textLength="33.270508">text/rdf+n3</tspan></text><line x1="743.77167" y1="178.32709" x2="743.72284" y2="376.23926" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="705.745" y="274.51807" width="76" height="24" fill="white"/><text transform="translate(710.745 274.51807)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="bold" x="15.887939" y="6" textLength="34.224121">Atom/RSS</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="3.140625" y="14" textLength="59.71875">application/rss+xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".025146484" y="22" textLength="65.949707">application/atom+xml</tspan></text><g id="id59_Graphic"><path d="M 654.34827 454.57605 L 690.35742 454.57605 C 694.61682 454.57605 698.07367 467.63885 698.07367 483.7341 C 698.07367 499.82935 694.61682 512.89215 690.35742 512.89215 L 654.34827 512.89215 C 650.08887 512.89215 646.632 499.82935 646.632 483.7341 C 646.632 467.63885 650.08887 454.57605 654.34827 454.57605" fill="#b5ffb6"/><path d="M 654.34827 454.57605 L 690.35742 454.57605 C 694.61682 454.57605 698.07367 467.63885 698.07367 483.7341 C 698.07367 499.82935 694.61682 512.89215 690.35742 512.89215 L 654.34827 512.89215 C 650.08887 512.89215 646.632 499.82935 646.632 483.7341 C 646.632 467.63885 650.08887 454.57605 654.34827 454.57605" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(656.7762 472.7341)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="6.3283825" y="9" textLength="20.99707">RDF </tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="9.0683727" y="20" textLength="6.0029297">V</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="14.579115" y="20" textLength="7.5058594">al</tspan></text></g><line x1="672.35284" y1="380.81393" x2="672.35284" y2="444.17606" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 665.35284 405.07214 L 681.35284 405.07214 C 681.90515 405.07214 682.35284 405.51987 682.35284 406.07214 L 682.35284 412.07214 C 682.35284 412.62442 681.90515 413.07214 681.35284 413.07214 L 665.35284 413.07214 C 664.80054 413.07214 664.35284 412.62442 664.35284 412.07214 C 664.35284 412.07214 664.35284 412.07214 664.35284 412.07214 L 664.35284 406.07214 C 664.35284 405.51987 664.80054 405.07214 665.35284 405.07214 Z" fill="white"/><path d="M 665.35284 405.07214 L 681.35284 405.07214 C 681.90515 405.07214 682.35284 405.51987 682.35284 406.07214 L 682.35284 412.07214 C 682.35284 412.62442 681.90515 413.07214 681.35284 413.07214 L 665.35284 413.07214 C 664.80054 413.07214 664.35284 412.62442 664.35284 412.07214 C 664.35284 412.07214 664.35284 412.07214 664.35284 412.07214 L 664.35284 406.07214 C 664.35284 405.51987 664.80054 405.07214 665.35284 405.07214 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(669.35284 405.07214)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><g id="id62_Graphic"><rect x="791.10376" y="289.07556" width="33.680176" height="35.582703" fill="white"/><rect x="791.10376" y="289.07556" width="33.680176" height="35.582703" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(796.10376 296.86691)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="1.3908501" y="8" textLength="23.121094">Parse </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" fill="black" x="3.6154594" y="18" textLength="16.449219">XML</tspan></text></g><line x1="809.308" y1="178.35628" x2="808.2431" y2="278.67615" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="771.8037" y="185.8578" width="72" height="79.999985" fill="white"/><text transform="translate(776.8037 185.8578)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="bold" x="23.61206" y="6" textLength="14.775879">XML</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="18.943115" y="14" textLength="24.11377">text/xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="7.8500977" y="22" textLength="46.299805">application/xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="1.9130859" y="30" textLength="58.173828">application/??+xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="bold" x="23.608643" y="46" textLength="14.782715">SVG</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="15.04834" y="54" textLength="31.90332">image/svg</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="8.4396973" y="62" textLength="45.120605">image/svg-xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="7.5612793" y="70" textLength="46.877441">image/svg+xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".35961914" y="78" textLength="61.28076">application/svg+xml</tspan></text><line x1="1089.74316" y1="178.48122" x2="1088.6217" y2="237.78642" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="1049.1522" y="197.71797" width="78" height="24" fill="white"/><text transform="translate(1054.1522 197.71797)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="bold" x="20.003418" y="6" textLength="27.993164">(x)HTML</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="20.77417" y="14" textLength="26.45166">text/html</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".4440918" y="22" textLength="67.111816">application/xhtml+xml</tspan></text><g id="id70_Graphic"><path d="M 938.8062 588.0821 L 1085.75964 588.0821 C 1103.1422 588.0821 1117.24976 603.35895 1117.24976 622.1822 C 1117.24976 641.00543 1103.1422 656.2823 1085.75964 656.2823 L 938.8062 656.2823 C 921.4237 656.2823 907.3162 641.00543 907.3162 622.1822 C 907.3162 603.35895 921.4237 588.0821 938.8062 588.0821" fill="#b5ffb6"/><path d="M 938.8062 588.0821 L 1085.75964 588.0821 C 1103.1422 588.0821 1117.24976 603.35895 1117.24976 622.1822 C 1117.24976 641.00543 1103.1422 656.2823 1085.75964 656.2823 L 938.8062 656.2823 C 921.4237 656.2823 907.3162 641.00543 907.3162 622.1822 C 907.3162 603.35895 921.4237 588.0821 938.8062 588.0821" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(933.30957 610.1822)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="bold" x="18.226341" y="10" textLength="76.65039">Compound XML</tspan><tspan font-family="Helvetica" font-size="10" font-weight="bold" x="94.70095" y="10" textLength="9.448242"> V</tspan><tspan font-family="Helvetica" font-size="10" font-weight="bold" x="103.60232" y="10" textLength="36.118164">alidator</tspan><tspan font-family="Helvetica" font-size="10" font-weight="bold" x="4.234642" y="22" textLength="149.47754">(NVDL+ RelaxNG+SChematron)</tspan></text></g><g id="id71_Graphic"><path d="M 1087.9353 342.2602 L 1117.2495 371.90948 L 1087.9353 401.55878 L 1058.6211 371.90948 Z" fill="#6cf"/><path d="M 1087.9353 342.2602 L 1117.2495 371.90948 L 1087.9353 401.55878 L 1058.6211 371.90948 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(1071.5359 360.8165)" fill="black"><tspan font-family="Helvetica" font-size="6" font-weight="500" x=".8152294" y="6" textLength="32.34082">DOCTYPE?</tspan><tspan font-family="Helvetica" font-size="6" font-weight="500" x="8.4822216" y="13" textLength="18.673828">(a real </tspan><tspan font-family="Helvetica" font-size="6" font-weight="500" x="8.480757" y="20" textLength="17.009766">one...)</tspan></text></g><line x1="1058.11816" y1="371.91257" x2="1032.44775" y2="371.91522" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 1036.60693 367.91397 L 1052.60693 367.91397 C 1053.1592 367.91397 1053.60693 368.3617 1053.60693 368.91397 L 1053.60693 374.91397 C 1053.60693 375.46625 1053.1592 375.91397 1052.60693 375.91397 L 1036.60693 375.91397 C 1036.0547 375.91397 1035.60693 375.46625 1035.60693 374.91397 C 1035.60693 374.91397 1035.60693 374.91397 1035.60693 374.91397 L 1035.60693 368.91397 C 1035.60693 368.3617 1036.0547 367.91397 1036.60693 367.91397 Z" fill="white"/><path d="M 1036.60693 367.91397 L 1052.60693 367.91397 C 1053.1592 367.91397 1053.60693 368.3617 1053.60693 368.91397 L 1053.60693 374.91397 C 1053.60693 375.46625 1053.1592 375.91397 1052.60693 375.91397 L 1036.60693 375.91397 C 1036.0547 375.91397 1035.60693 375.46625 1035.60693 374.91397 C 1035.60693 374.91397 1035.60693 374.91397 1035.60693 374.91397 L 1035.60693 368.91397 C 1035.60693 368.3617 1036.0547 367.91397 1036.60693 367.91397 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(1040.60693 367.91397)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><g id="id77_Graphic"><path d="M 938.8353 338.06335 L 1007.36316 338.06335 C 1015.46906 338.06335 1022.0477 353.23175 1022.0477 371.92136 C 1022.0477 390.61096 1015.46906 405.77936 1007.36316 405.77936 L 938.8353 405.77936 C 930.72943 405.77936 924.15076 390.61096 924.15076 371.92136 C 924.15076 353.23175 930.72943 338.06335 938.8353 338.06335" fill="#b5ffb6"/><path d="M 938.8353 338.06335 L 1007.36316 338.06335 C 1015.46906 338.06335 1022.0477 353.23175 1022.0477 371.92136 C 1022.0477 390.61096 1015.46906 405.77936 1007.36316 405.77936 L 938.8353 405.77936 C 930.72943 405.77936 924.15076 390.61096 924.15076 371.92136 C 924.15076 353.23175 930.72943 338.06335 938.8353 338.06335" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(938.94043 354.92136)" fill="black"><tspan font-family="Helvetica" font-size="14" font-weight="bold" x="6.934662" y="14" textLength="58.33789">(x)html5 </tspan><tspan font-family="Helvetica" font-size="14" font-weight="bold" x="4.9830017" y="31" textLength="58.351562">validator</tspan></text></g><g id="id80_Graphic"><path d="M 754.40906 498.01675 L 790.5859 514.3255 L 754.40906 530.63422 L 718.23224 514.3255 Z" fill="#6cf"/><path d="M 754.40906 498.01675 L 790.5859 514.3255 L 754.40906 530.63422 L 718.23224 514.3255 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(733 509.99933)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x="3.4568405" y="6" textLength="37.351562">multiple ns?</tspan></text></g><line x1="773.63623" y1="522.36737" x2="922.834" y2="584.76984" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 848.01685 553.45074 L 867.01685 553.45074 C 867.56915 553.45074 868.01685 553.89844 868.01685 554.45074 L 868.01685 560.45074 C 868.01685 561.00305 867.56915 561.45074 867.01685 561.45074 L 848.01685 561.45074 C 847.46454 561.45074 847.01685 561.00305 847.01685 560.45074 C 847.01685 560.45074 847.01685 560.45074 847.01685 560.45074 L 847.01685 554.45074 C 847.01685 553.89844 847.46454 553.45074 848.01685 553.45074 Z" fill="white"/><path d="M 848.01685 553.45074 L 867.01685 553.45074 C 867.56915 553.45074 868.01685 553.89844 868.01685 554.45074 L 868.01685 560.45074 C 868.01685 561.00305 867.56915 561.45074 867.01685 561.45074 L 848.01685 561.45074 C 847.46454 561.45074 847.01685 561.00305 847.01685 560.45074 C 847.01685 560.45074 847.01685 560.45074 847.01685 560.45074 L 847.01685 554.45074 C 847.01685 553.89844 847.46454 553.45074 848.01685 553.45074 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(852.01685 553.45074)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><g id="id86_Graphic"><path d="M 861.1625 280.1799 L 878.00256 306.86691 L 861.1625 333.55392 L 844.3224 306.86691 Z" fill="#6cf"/><path d="M 861.1625 280.1799 L 878.00256 306.86691 L 861.1625 333.55392 L 844.3224 306.86691 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(853.8692 302.33316)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".24211216" y="6" textLength="14.775879">WF?</tspan></text></g><line x1="825.28394" y1="306.86691" x2="833.92236" y2="306.86691" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="855.49866" y1="325.2891" x2="842.2675" y2="368.3245" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 841.2606 341.5788 L 857.2606 341.5788 C 857.81293 341.5788 858.2606 342.02652 858.2606 342.5788 L 858.2606 348.5788 C 858.2606 349.13107 857.81293 349.5788 857.2606 349.5788 L 841.2606 349.5788 C 840.7083 349.5788 840.2606 349.13107 840.2606 348.5788 C 840.2606 348.5788 840.2606 348.5788 840.2606 348.5788 L 840.2606 342.5788 C 840.2606 342.02652 840.7083 341.5788 841.2606 341.5788 Z" fill="white"/><path d="M 841.2606 341.5788 L 857.2606 341.5788 C 857.81293 341.5788 858.2606 342.02652 858.2606 342.5788 L 858.2606 348.5788 C 858.2606 349.13107 857.81293 349.5788 857.2606 349.5788 L 841.2606 349.5788 C 840.7083 349.5788 840.2606 349.13107 840.2606 348.5788 C 840.2606 348.5788 840.2606 348.5788 840.2606 348.5788 L 840.2606 342.5788 C 840.2606 342.02652 840.7083 341.5788 841.2606 341.5788 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(845.2606 341.5788)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><path d="M 850.66125 317.8216 C 830.6382 338.70941 801.2266 362.4903 790.586 380.49127 C 779.94537 398.49225 791.9572 405.9458 786.8112 425.83826 C 782.29645 443.29077 771.79425 468.10504 763.18506 490.59036" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 773.8626 433.37097 L 792.8626 433.37097 C 793.4149 433.37097 793.8626 433.8187 793.8626 434.37097 L 793.8626 440.37097 C 793.8626 440.92325 793.4149 441.37097 792.8626 441.37097 L 773.8626 441.37097 C 773.3103 441.37097 772.8626 440.92325 772.8626 440.37097 C 772.8626 440.37097 772.8626 440.37097 772.8626 440.37097 L 772.8626 434.37097 C 772.8626 433.8187 773.3103 433.37097 773.8626 433.37097 Z" fill="white"/><path d="M 773.8626 433.37097 L 792.8626 433.37097 C 793.4149 433.37097 793.8626 433.8187 793.8626 434.37097 L 793.8626 440.37097 C 793.8626 440.92325 793.4149 441.37097 792.8626 441.37097 L 773.8626 441.37097 C 773.3103 441.37097 772.8626 440.92325 772.8626 440.37097 C 772.8626 440.37097 772.8626 440.37097 772.8626 440.37097 L 772.8626 434.37097 C 772.8626 433.8187 773.3103 433.37097 773.8626 433.37097 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(777.8626 433.37097)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><line x1="754.40906" y1="531.13428" x2="754.40906" y2="550.65875" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 746.40906 537.04846 L 762.40906 537.04846 C 762.96136 537.04846 763.40906 537.49615 763.40906 538.04846 L 763.40906 544.04846 C 763.40906 544.60077 762.96136 545.04846 762.40906 545.04846 L 746.40906 545.04846 C 745.85675 545.04846 745.40906 544.60077 745.40906 544.04846 C 745.40906 544.04846 745.40906 544.04846 745.40906 544.04846 L 745.40906 538.04846 C 745.40906 537.49615 745.85675 537.04846 746.40906 537.04846 Z" fill="white"/><path d="M 746.40906 537.04846 L 762.40906 537.04846 C 762.96136 537.04846 763.40906 537.49615 763.40906 538.04846 L 763.40906 544.04846 C 763.40906 544.60077 762.96136 545.04846 762.40906 545.04846 L 746.40906 545.04846 C 745.85675 545.04846 745.40906 544.60077 745.40906 544.04846 C 745.40906 544.04846 745.40906 544.04846 745.40906 544.04846 L 745.40906 538.04846 C 745.40906 537.49615 745.85675 537.04846 746.40906 537.04846 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(750.40906 537.04846)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><g id="id117_Graphic"><path d="M 754.40906 561.05878 L 790.5859 577.3675 L 754.40906 593.6762 L 718.23224 577.3675 Z" fill="#6cf"/><path d="M 754.40906 561.05878 L 790.5859 577.3675 L 754.40906 593.6762 L 718.23224 577.3675 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(733 573.04138)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x="5.3999557" y="6" textLength="33.465332">known ns?</tspan></text></g><line x1="955.6213" y1="178.42146" x2="956.0381" y2="214.83202" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="939.35333" y="188.19363" width="33" height="21" fill="white"/><text transform="translate(944.35333 188.19363)" fill="black"><tspan font-family="Helvetica" font-size="6" font-weight="bold" x=".16943359" y="6" textLength="22.661133">MathML</tspan><tspan font-family="Helvetica" font-size="6" font-weight="bold" x="4.3339844" y="13" textLength="14.332031">SMIL</tspan><tspan font-family="Helvetica" font-size="6" font-weight="500" x="8.163086" y="20" textLength="6.673828">??</tspan></text><g id="id130_Graphic"><path d="M 849.83606 703.0732 L 886.0129 719.3819 L 849.83606 735.6906 L 813.65924 719.3819 Z" fill="#6cf"/><path d="M 849.83606 703.0732 L 886.0129 719.3819 L 849.83606 735.6906 L 813.65924 719.3819 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(828.427 715.0558)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x="3.4568405" y="6" textLength="37.351562">schemaloc?</tspan></text></g><line x1="746.1288" y1="590.48657" x2="728.4587" y2="618.48254" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 728.2451 602.14587 L 744.2451 602.14587 C 744.79742 602.14587 745.2451 602.59357 745.2451 603.14587 L 745.2451 609.14587 C 745.2451 609.69818 744.79742 610.14587 744.2451 610.14587 L 728.2451 610.14587 C 727.6928 610.14587 727.2451 609.69818 727.2451 609.14587 C 727.2451 609.14587 727.2451 609.14587 727.2451 609.14587 L 727.2451 603.14587 C 727.2451 602.59357 727.6928 602.14587 728.2451 602.14587 Z" fill="white"/><path d="M 728.2451 602.14587 L 744.2451 602.14587 C 744.79742 602.14587 745.2451 602.59357 745.2451 603.14587 L 745.2451 609.14587 C 745.2451 609.69818 744.79742 610.14587 744.2451 610.14587 L 728.2451 610.14587 C 727.6928 610.14587 727.2451 609.69818 727.2451 609.14587 C 727.2451 609.14587 727.2451 609.14587 727.2451 609.14587 L 727.2451 603.14587 C 727.2451 602.59357 727.6928 602.14587 728.2451 602.14587 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(732.2451 602.14587)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><g id="id133_Graphic"><path d="M 786.8424 663.6955 L 823.01923 678.6897 L 786.8424 693.6839 L 750.6656 678.6897 Z" fill="#6cf"/><path d="M 786.8424 663.6955 L 823.01923 678.6897 L 786.8424 693.6839 L 750.6656 678.6897 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(765.43335 674.38983)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x="7.9275436" y="6" textLength="28.410156">doctype?</tspan></text></g><g id="id136_Graphic"><path d="M 968.4006 449.07782 L 1004.5774 465.38657 L 968.4006 481.6953 L 932.22375 465.38657 Z" fill="#6cf"/><path d="M 968.4006 449.07782 L 1004.5774 465.38657 L 968.4006 481.6953 L 932.22375 465.38657 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(946.9915 461.06036)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x="3.4568405" y="6" textLength="37.351562">multiple ns?</tspan></text></g><path d="M 933.1195 466.02478 C 927.18036 466.13223 913.49493 453.20123 915.3003 466.34714 C 917.10565 479.49304 932.8709 524.6833 943.9528 544.90802 C 953.06073 561.5302 964.241 570.10406 974.93774 580.55048" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 926.0179 523.0457 L 945.0179 523.0457 C 945.5702 523.0457 946.0179 523.4934 946.0179 524.0457 L 946.0179 530.0457 C 946.0179 530.59802 945.5702 531.0457 945.0179 531.0457 L 926.0179 531.0457 C 925.4656 531.0457 925.0179 530.59802 925.0179 530.0457 C 925.0179 530.0457 925.0179 530.0457 925.0179 530.0457 L 925.0179 524.0457 C 925.0179 523.4934 925.4656 523.0457 926.0179 523.0457 Z" fill="white"/><path d="M 926.0179 523.0457 L 945.0179 523.0457 C 945.5702 523.0457 946.0179 523.4934 946.0179 524.0457 L 946.0179 530.0457 C 946.0179 530.59802 945.5702 531.0457 945.0179 531.0457 L 926.0179 531.0457 C 925.4656 531.0457 925.0179 530.59802 925.0179 530.0457 C 925.0179 530.0457 925.0179 530.0457 925.0179 530.0457 L 925.0179 524.0457 C 925.0179 523.4934 925.4656 523.0457 926.0179 523.0457 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(930.0179 523.0457)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><line x1="982.0233" y1="454.7335" x2="1063.2107" y2="391.2443" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 1018.8706 415.66257 L 1034.8706 415.66257 C 1035.42285 415.66257 1035.8706 416.1103 1035.8706 416.66257 L 1035.8706 422.66257 C 1035.8706 423.21484 1035.42285 423.66257 1034.8706 423.66257 L 1018.8706 423.66257 C 1018.3183 423.66257 1017.8706 423.21484 1017.8706 422.66257 C 1017.8706 422.66257 1017.8706 422.66257 1017.8706 422.66257 L 1017.8706 416.66257 C 1017.8706 416.1103 1018.3183 415.66257 1018.8706 415.66257 Z" fill="white"/><path d="M 1018.8706 415.66257 L 1034.8706 415.66257 C 1035.42285 415.66257 1035.8706 416.1103 1035.8706 416.66257 L 1035.8706 422.66257 C 1035.8706 423.21484 1035.42285 423.66257 1034.8706 423.66257 L 1018.8706 423.66257 C 1018.3183 423.66257 1017.8706 423.21484 1017.8706 422.66257 C 1017.8706 422.66257 1017.8706 422.66257 1017.8706 422.66257 L 1017.8706 416.66257 C 1017.8706 416.1103 1018.3183 415.66257 1018.8706 415.66257 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(1022.8706 415.66257)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><g id="id145_Graphic"><path d="M 977.09985 695.66028 L 1081.83887 695.66028 C 1094.228 695.66028 1104.28296 703.6308 1104.28296 713.4516 C 1104.28296 723.2724 1094.228 731.2429 1081.83887 731.2429 L 977.09985 731.2429 C 964.71075 731.2429 954.6558 723.2724 954.6558 713.4516 C 954.6558 703.6308 964.71075 695.66028 977.09985 695.66028" fill="#b5ffb6"/><path d="M 977.09985 695.66028 L 1081.83887 695.66028 C 1094.228 695.66028 1104.28296 703.6308 1104.28296 713.4516 C 1104.28296 723.2724 1094.228 731.2429 1081.83887 731.2429 L 977.09985 731.2429 C 964.71075 731.2429 954.6558 723.2724 954.6558 713.4516 C 954.6558 703.6308 964.71075 695.66028 977.09985 695.66028" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(974.61853 702.4516)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="25.596447" y="9" textLength="58.50879">DTD validator</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x=".54981613" y="20" textLength="27.250488">(+XML</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="27.642101" y="20" textLength="81.509766"> Schema support?)</tspan></text></g><line x1="801.402" y1="688.0948" x2="826.2306" y2="704.13342" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 808.4638 693.82434 L 824.4638 693.82434 C 825.0161 693.82434 825.4638 694.27203 825.4638 694.82434 L 825.4638 700.82434 C 825.4638 701.37665 825.0161 701.82434 824.4638 701.82434 L 808.4638 701.82434 C 807.9115 701.82434 807.4638 701.37665 807.4638 700.82434 C 807.4638 700.82434 807.4638 700.82434 807.4638 700.82434 L 807.4638 694.82434 C 807.4638 694.27203 807.9115 693.82434 808.4638 693.82434 Z" fill="white"/><path d="M 808.4638 693.82434 L 824.4638 693.82434 C 825.0161 693.82434 825.4638 694.27203 825.4638 694.82434 L 825.4638 700.82434 C 825.4638 701.37665 825.0161 701.82434 824.4638 701.82434 L 808.4638 701.82434 C 807.9115 701.82434 807.4638 701.37665 807.4638 700.82434 C 807.4638 700.82434 807.4638 700.82434 807.4638 700.82434 L 807.4638 694.82434 C 807.4638 694.27203 807.9115 693.82434 808.4638 693.82434 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(812.4638 693.82434)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><path d="M 823.16614 678.54144 C 868.1143 678.3579 929.69196 675.175 958.0241 677.9908 C 977.32544 679.90906 981.2053 684.61212 985.422 689.25403" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 895.4612 673.00067 L 914.4612 673.00067 C 915.0135 673.00067 915.4612 673.44836 915.4612 674.00067 L 915.4612 680.00067 C 915.4612 680.55298 915.0135 681.00067 914.4612 681.00067 L 895.4612 681.00067 C 894.9089 681.00067 894.4612 680.55298 894.4612 680.00067 C 894.4612 680.00067 894.4612 680.00067 894.4612 680.00067 L 894.4612 674.00067 C 894.4612 673.44836 894.9089 673.00067 895.4612 673.00067 Z" fill="white"/><path d="M 895.4612 673.00067 L 914.4612 673.00067 C 915.0135 673.00067 915.4612 673.44836 915.4612 674.00067 L 915.4612 680.00067 C 915.4612 680.55298 915.0135 681.00067 914.4612 681.00067 L 895.4612 681.00067 C 894.9089 681.00067 894.4612 680.55298 894.4612 680.00067 C 894.4612 680.00067 894.4612 680.00067 894.4612 680.00067 L 894.4612 674.00067 C 894.4612 673.44836 894.9089 673.00067 895.4612 673.00067 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(899.4612 673.00067)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><line x1="781.01257" y1="581.9908" x2="901.51465" y2="602.93225" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 840.51947 589.98315 L 859.51947 589.98315 C 860.0718 589.98315 860.51947 590.43085 860.51947 590.98315 L 860.51947 596.98315 C 860.51947 597.53546 860.0718 597.98315 859.51947 597.98315 L 840.51947 597.98315 C 839.96716 597.98315 839.51947 597.53546 839.51947 596.98315 C 839.51947 596.98315 839.51947 596.98315 839.51947 596.98315 L 839.51947 590.98315 C 839.51947 590.43085 839.96716 589.98315 840.51947 589.98315 Z" fill="white"/><path d="M 840.51947 589.98315 L 859.51947 589.98315 C 860.0718 589.98315 860.51947 590.43085 860.51947 590.98315 L 860.51947 596.98315 C 860.51947 597.53546 860.0718 597.98315 859.51947 597.98315 L 840.51947 597.98315 C 839.96716 597.98315 839.51947 597.53546 839.51947 596.98315 C 839.51947 596.98315 839.51947 596.98315 839.51947 596.98315 L 839.51947 590.98315 C 839.51947 590.43085 839.96716 589.98315 840.51947 589.98315 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(844.51947 589.98315)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><line x1="884.04407" y1="718.25262" x2="944.4751" y2="716.25757" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 904.4672 713.26477 L 923.4672 713.26477 C 924.01953 713.26477 924.4672 713.71246 924.4672 714.26477 L 924.4672 720.26477 C 924.4672 720.81708 924.01953 721.26477 923.4672 721.26477 L 904.4672 721.26477 C 903.9149 721.26477 903.4672 720.81708 903.4672 720.26477 C 903.4672 720.26477 903.4672 720.26477 903.4672 720.26477 L 903.4672 714.26477 C 903.4672 713.71246 903.9149 713.26477 904.4672 713.26477 Z" fill="white"/><path d="M 904.4672 713.26477 L 923.4672 713.26477 C 924.01953 713.26477 924.4672 713.71246 924.4672 714.26477 L 924.4672 720.26477 C 924.4672 720.81708 924.01953 721.26477 923.4672 721.26477 L 904.4672 721.26477 C 903.9149 721.26477 903.4672 720.81708 903.4672 720.26477 C 903.4672 720.26477 903.4672 720.26477 903.4672 720.26477 L 903.4672 714.26477 C 903.4672 713.71246 903.9149 713.26477 904.4672 713.26477 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(908.4672 713.26477)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><line x1="813.1593" y1="719.3819" x2="753.3565" y2="719.3819" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 778.5869 715.3819 L 794.5869 715.3819 C 795.1392 715.3819 795.5869 715.8296 795.5869 716.3819 L 795.5869 722.3819 C 795.5869 722.9342 795.1392 723.3819 794.5869 723.3819 L 778.5869 723.3819 C 778.0346 723.3819 777.5869 722.9342 777.5869 722.3819 C 777.5869 722.3819 777.5869 722.3819 777.5869 722.3819 L 777.5869 716.3819 C 777.5869 715.8296 778.0346 715.3819 778.5869 715.3819 Z" fill="white"/><path d="M 778.5869 715.3819 L 794.5869 715.3819 C 795.1392 715.3819 795.5869 715.8296 795.5869 716.3819 L 795.5869 722.3819 C 795.5869 722.9342 795.1392 723.3819 794.5869 723.3819 L 778.5869 723.3819 C 778.0346 723.3819 777.5869 722.9342 777.5869 722.3819 C 777.5869 722.3819 777.5869 722.3819 777.5869 722.3819 L 777.5869 716.3819 C 777.5869 715.8296 778.0346 715.3819 778.5869 715.3819 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(782.5869 715.3819)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><rect x="1125.5549" y="175.00073" width="16" height="7" fill="white"/><text transform="translate(1130.5549 175.00073)" fill="black"><tspan font-family="Helvetica" font-size="6" font-weight="500" x=".49951172" y="6" textLength="5.0009766">...</tspan></text><g id="id166_Graphic"><path d="M 714.8944 623.6648 L 751.07123 639.9735 L 714.8944 656.28223 L 678.7176 639.9735 Z" fill="#6cf"/><path d="M 714.8944 623.6648 L 751.07123 639.9735 L 714.8944 656.28223 L 678.7176 639.9735 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(693.48535 635.6474)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x="7.7361374" y="6" textLength="28.792969">svg root?</tspan></text></g><line x1="731.8261" y1="649.0847" x2="761.94354" y2="665.29132" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 742.0309 654.88092 L 758.0309 654.88092 C 758.5832 654.88092 759.0309 655.3286 759.0309 655.88092 L 759.0309 661.88092 C 759.0309 662.43323 758.5832 662.88092 758.0309 662.88092 L 742.0309 662.88092 C 741.47858 662.88092 741.0309 662.43323 741.0309 661.88092 C 741.0309 661.88092 741.0309 661.88092 741.0309 661.88092 L 741.0309 655.88092 C 741.0309 655.3286 741.47858 654.88092 742.0309 654.88092 Z" fill="white"/><path d="M 742.0309 654.88092 L 758.0309 654.88092 C 758.5832 654.88092 759.0309 655.3286 759.0309 655.88092 L 759.0309 661.88092 C 759.0309 662.43323 758.5832 662.88092 758.0309 662.88092 L 742.0309 662.88092 C 741.47858 662.88092 741.0309 662.43323 741.0309 661.88092 C 741.0309 661.88092 741.0309 661.88092 741.0309 661.88092 L 741.0309 655.88092 C 741.0309 655.3286 741.47858 654.88092 742.0309 654.88092 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(746.0309 654.88092)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><line x1="747.33185" y1="638.03296" x2="897.463" y2="629.05127" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 822.60376 628.96143 L 841.60376 628.96143 C 842.15607 628.96143 842.60376 629.4091 842.60376 629.96143 L 842.60376 635.96143 C 842.60376 636.51373 842.15607 636.96143 841.60376 636.96143 L 822.60376 636.96143 C 822.05145 636.96143 821.60376 636.51373 821.60376 635.96143 C 821.60376 635.96143 821.60376 635.96143 821.60376 635.96143 L 821.60376 629.96143 C 821.60376 629.4091 822.05145 628.96143 822.60376 628.96143 Z" fill="white"/><path d="M 822.60376 628.96143 L 841.60376 628.96143 C 842.15607 628.96143 842.60376 629.4091 842.60376 629.96143 L 842.60376 635.96143 C 842.60376 636.51373 842.15607 636.96143 841.60376 636.96143 L 822.60376 636.96143 C 822.05145 636.96143 821.60376 636.51373 821.60376 635.96143 C 821.60376 635.96143 821.60376 635.96143 821.60376 635.96143 L 821.60376 629.96143 C 821.60376 629.4091 822.05145 628.96143 822.60376 628.96143 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(826.60376 628.96143)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><g id="id120_Graphic"><path d="M 1057.01697 500.4297 L 1073.85706 527.1167 L 1057.01697 553.8037 L 1040.1769 527.1167 Z" fill="#6cf"/><path d="M 1057.01697 500.4297 L 1073.85706 527.1167 L 1057.01697 553.8037 L 1040.1769 527.1167 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(1049.72375 522.58295)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".24211216" y="6" textLength="14.775879">WF?</tspan></text></g><line x1="1061.1553" y1="506.3427" x2="1080.98755" y2="406.78625" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 1061.5676 460.11337 L 1077.5676 460.11337 C 1078.1199 460.11337 1078.5676 460.5611 1078.5676 461.11337 L 1078.5676 467.11337 C 1078.5676 467.66565 1078.1199 468.11337 1077.5676 468.11337 L 1061.5676 468.11337 C 1061.0154 468.11337 1060.5676 467.66565 1060.5676 467.11337 C 1060.5676 467.11337 1060.5676 467.11337 1060.5676 467.11337 L 1060.5676 461.11337 C 1060.5676 460.5611 1061.0154 460.11337 1061.5676 460.11337 Z" fill="white"/><path d="M 1061.5676 460.11337 L 1077.5676 460.11337 C 1078.1199 460.11337 1078.5676 460.5611 1078.5676 461.11337 L 1078.5676 467.11337 C 1078.5676 467.66565 1078.1199 468.11337 1077.5676 468.11337 L 1061.5676 468.11337 C 1061.0154 468.11337 1060.5676 467.66565 1060.5676 467.11337 C 1060.5676 467.11337 1060.5676 467.11337 1060.5676 467.11337 L 1060.5676 461.11337 C 1060.5676 460.5611 1061.0154 460.11337 1061.5676 460.11337 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(1065.5676 460.11337)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><g id="id119_Graphic"><rect x="1104.834" y="509.32535" width="33.680176" height="35.582672" fill="white"/><rect x="1104.834" y="509.32535" width="33.680176" height="35.582672" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(1109.834 517.1167)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="500" x="1.3908501" y="8" textLength="23.121094">Parse </tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x="3.6154594" y="18" textLength="16.449219">XML</tspan></text></g><line x1="1104.334" y1="527.1167" x2="1084.2572" y2="527.1167" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><g id="id178_Graphic"><path d="M 913.601 225.23134 L 999.3244 225.23134 C 1009.4643 225.23134 1017.6937 237.18712 1017.6937 251.91835 C 1017.6937 266.6496 1009.4643 278.60538 999.3244 278.60538 L 913.601 278.60538 C 903.4611 278.60538 895.2317 266.6496 895.2317 251.91835 C 895.2317 237.18712 903.4611 225.23134 913.601 225.23134" fill="#b5ffb6"/><path d="M 913.601 225.23134 L 999.3244 225.23134 C 1009.4643 225.23134 1017.6937 237.18712 1017.6937 251.91835 C 1017.6937 266.6496 1009.4643 278.60538 999.3244 278.60538 L 913.601 278.60538 C 903.4611 278.60538 895.2317 266.6496 895.2317 251.91835 C 895.2317 237.18712 903.4611 225.23134 913.601 225.23134" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(912.4779 236.91835)" fill="black"><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="1.7284813" y="13" textLength="84.512695">DTD validator</tspan><tspan font-family="Helvetica" font-size="12" font-weight="bold" x=".4701805" y="27" textLength="87.029297">(+xmlwf errors)</tspan></text></g><line x1="1044.9088" y1="518.6822" x2="991.14777" y2="481.23227" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 1012.8484 498.9666 L 1031.8484 498.9666 C 1032.40063 498.9666 1032.8484 499.41434 1032.8484 499.9666 L 1032.8484 505.9666 C 1032.8484 506.5189 1032.40063 506.9666 1031.8484 506.9666 L 1012.8484 506.9666 C 1012.2961 506.9666 1011.8484 506.5189 1011.8484 505.9666 C 1011.8484 505.9666 1011.8484 505.9666 1011.8484 505.9666 L 1011.8484 499.9666 C 1011.8484 499.41434 1012.2961 498.9666 1012.8484 498.9666 Z" fill="white"/><path d="M 1012.8484 498.9666 L 1031.8484 498.9666 C 1032.40063 498.9666 1032.8484 499.41434 1032.8484 499.9666 L 1032.8484 505.9666 C 1032.8484 506.5189 1032.40063 506.9666 1031.8484 506.9666 L 1012.8484 506.9666 C 1012.2961 506.9666 1011.8484 506.5189 1011.8484 505.9666 C 1011.8484 505.9666 1011.8484 505.9666 1011.8484 505.9666 L 1011.8484 499.9666 C 1011.8484 499.41434 1012.2961 498.9666 1012.8484 498.9666 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(1016.8484 498.9666)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><g id="id208_Graphic"><path d="M 834.60156 375.46756 L 863.91577 393.2589 L 834.60156 411.05026 L 805.28735 393.2589 Z" fill="#6cf"/><path d="M 834.60156 375.46756 L 863.91577 393.2589 L 834.60156 411.05026 L 805.28735 393.2589 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(818.2022 389.40308)" fill="black"><tspan font-family="Helvetica" font-size="6" font-weight="500" x=".8152294" y="6" textLength="32.34082">DOCTYPE?</tspan></text></g><path d="M 849.68933 402.41196 C 864.9798 411.688 885.71857 445.41006 895.56537 430.24283 C 905.41217 415.0756 902.24506 336.60489 908.77594 311.3995 C 913.5108 293.12561 920.484 289.99338 927.26074 285.5369" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 856.76367 413.19489 L 875.76367 413.19489 C 876.316 413.19489 876.76367 413.6426 876.76367 414.19489 L 876.76367 420.19489 C 876.76367 420.74716 876.316 421.19489 875.76367 421.19489 L 856.76367 421.19489 C 856.21136 421.19489 855.76367 420.74716 855.76367 420.19489 C 855.76367 420.19489 855.76367 420.19489 855.76367 420.19489 L 855.76367 414.19489 C 855.76367 413.6426 856.21136 413.19489 856.76367 413.19489 Z" fill="white"/><path d="M 856.76367 413.19489 L 875.76367 413.19489 C 876.316 413.19489 876.76367 413.6426 876.76367 414.19489 L 876.76367 420.19489 C 876.76367 420.74716 876.316 421.19489 875.76367 421.19489 L 856.76367 421.19489 C 856.21136 421.19489 855.76367 420.74716 855.76367 420.19489 C 855.76367 420.19489 855.76367 420.19489 855.76367 420.19489 L 855.76367 414.19489 C 855.76367 413.6426 856.21136 413.19489 856.76367 413.19489 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(860.76367 413.19489)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><line x1="835.674" y1="410.91693" x2="838.5122" y2="457.65146" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 829.00287 428.7982 L 845.00287 428.7982 C 845.5552 428.7982 846.00287 429.2459 846.00287 429.7982 L 846.00287 435.7982 C 846.00287 436.35046 845.5552 436.7982 845.00287 436.7982 L 829.00287 436.7982 C 828.45056 436.7982 828.00287 436.35046 828.00287 435.7982 C 828.00287 435.7982 828.00287 435.7982 828.00287 435.7982 L 828.00287 429.7982 C 828.00287 429.2459 828.45056 428.7982 829.00287 428.7982 Z" fill="white"/><path d="M 829.00287 428.7982 L 845.00287 428.7982 C 845.5552 428.7982 846.00287 429.2459 846.00287 429.7982 L 846.00287 435.7982 C 846.00287 436.35046 845.5552 436.7982 845.00287 436.7982 L 829.00287 436.7982 C 828.45056 436.7982 828.00287 436.35046 828.00287 435.7982 C 828.00287 435.7982 828.00287 435.7982 828.00287 435.7982 L 828.00287 429.7982 C 828.00287 429.2459 828.45056 428.7982 829.00287 428.7982 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(833.00287 428.7982)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><path d="M 715.5366 71.91844 C 731.7168 72.51391 729.38245 72.279137 764.0821 73.705017 C 798.78174 75.130898 904.6666 73.915955 923.75543 80.47458 C 940.0405 86.06991 906.64075 97.93027 887.13867 108.03737" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 758.68787 63.708443 L 885.68787 63.708443 C 886.24017 63.708443 886.68787 64.15616 886.68787 64.708443 L 886.68787 84.708443 C 886.68787 85.260727 886.24017 85.708443 885.68787 85.708443 L 758.68787 85.708443 C 758.13556 85.708443 757.68787 85.260727 757.68787 84.708443 C 757.68787 84.708443 757.68787 84.708443 757.68787 84.708443 L 757.68787 64.708443 C 757.68787 64.15616 758.13556 63.708443 758.68787 63.708443 Z" fill="white"/><path d="M 758.68787 63.708443 L 885.68787 63.708443 C 886.24017 63.708443 886.68787 64.15616 886.68787 64.708443 L 886.68787 84.708443 C 886.68787 85.260727 886.24017 85.708443 885.68787 85.708443 L 758.68787 85.708443 C 758.13556 85.708443 757.68787 85.260727 757.68787 84.708443 C 757.68787 84.708443 757.68787 84.708443 757.68787 84.708443 L 757.68787 64.708443 C 757.68787 64.15616 758.13556 63.708443 758.68787 63.708443 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(762.68787 63.708443)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="14.728516" y="9" textLength="89.54297">Other Disambiguation</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".4814453" y="20" textLength="118.03711">(UI, heuristics, preparse, etc.)</tspan></text><path d="M 672.6452 94.38986 C 681.0971 104.04174 683.7205 116.767555 698.00354 123.348396 C 712.28656 129.92923 734.06183 133.52486 758.35187 133.878845 C 779.8713 134.19246 807.95264 129.55151 833.8728 126.54046" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 738.22034 127.98044 L 807.22034 127.98044 C 807.77264 127.98044 808.22034 128.42815 808.22034 128.98044 L 808.22034 137.98044 C 808.22034 138.53273 807.77264 138.98044 807.22034 138.98044 L 738.22034 138.98044 C 737.66803 138.98044 737.22034 138.53273 737.22034 137.98044 C 737.22034 137.98044 737.22034 137.98044 737.22034 137.98044 L 737.22034 128.98044 C 737.22034 128.42815 737.66803 127.98044 738.22034 127.98044 Z" fill="white"/><path d="M 738.22034 127.98044 L 807.22034 127.98044 C 807.77264 127.98044 808.22034 128.42815 808.22034 128.98044 L 808.22034 137.98044 C 808.22034 138.53273 807.77264 138.98044 807.22034 138.98044 L 738.22034 138.98044 C 737.66803 138.98044 737.22034 138.53273 737.22034 137.98044 C 737.22034 137.98044 737.22034 137.98044 737.22034 137.98044 L 737.22034 128.98044 C 737.22034 128.42815 737.66803 127.98044 738.22034 127.98044 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(742.22034 127.98044)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".49194336" y="9" textLength="59.85791">HTTP Headers</tspan></text><line x1="1072.1566" y1="357.50873" x2="993.385" y2="285.61621" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 1031.27405 324.8668 L 1050.27405 324.8668 C 1050.8263 324.8668 1051.27405 325.31451 1051.27405 325.8668 L 1051.27405 331.8668 C 1051.27405 332.41907 1050.8263 332.8668 1050.27405 332.8668 L 1031.27405 332.8668 C 1030.7218 332.8668 1030.27405 332.41907 1030.27405 331.8668 C 1030.27405 331.8668 1030.27405 331.8668 1030.27405 331.8668 L 1030.27405 325.8668 C 1030.27405 325.31451 1030.7218 324.8668 1031.27405 324.8668 Z" fill="white"/><path d="M 1031.27405 324.8668 L 1050.27405 324.8668 C 1050.8263 324.8668 1051.27405 325.31451 1051.27405 325.8668 L 1051.27405 331.8668 C 1051.27405 332.41907 1050.8263 332.8668 1050.27405 332.8668 L 1031.27405 332.8668 C 1030.7218 332.8668 1030.27405 332.41907 1030.27405 331.8668 C 1030.27405 331.8668 1030.27405 331.8668 1030.27405 331.8668 L 1030.27405 325.8668 C 1030.27405 325.31451 1030.7218 324.8668 1031.27405 324.8668 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(1035.27405 324.8668)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><g id="id203_Graphic"><path d="M 1087.9353 247.408 L 1104.7754 274.095 L 1087.9353 300.78201 L 1071.0952 274.095 Z" fill="#6cf"/><path d="M 1087.9353 247.408 L 1104.7754 274.095 L 1087.9353 300.78201 L 1071.0952 274.095 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(1080.6421 265.56128)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".43353271" y="6" textLength="14.393066">XML</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="5.6835327" y="14" textLength="3.8930664">?</tspan></text></g><line x1="1087.9353" y1="301.28201" x2="1087.9353" y2="331.86017" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 1079.9353 312.92615 L 1095.9353 312.92615 C 1096.48755 312.92615 1096.9353 313.37387 1096.9353 313.92615 L 1096.9353 319.92615 C 1096.9353 320.47842 1096.48755 320.92615 1095.9353 320.92615 L 1079.9353 320.92615 C 1079.38306 320.92615 1078.9353 320.47842 1078.9353 319.92615 C 1078.9353 319.92615 1078.9353 319.92615 1078.9353 319.92615 L 1078.9353 313.92615 C 1078.9353 313.37387 1079.38306 312.92615 1079.9353 312.92615 Z" fill="white"/><path d="M 1079.9353 312.92615 L 1095.9353 312.92615 C 1096.48755 312.92615 1096.9353 313.37387 1096.9353 313.92615 L 1096.9353 319.92615 C 1096.9353 320.47842 1096.48755 320.92615 1095.9353 320.92615 L 1079.9353 320.92615 C 1079.38306 320.92615 1078.9353 320.47842 1078.9353 319.92615 C 1078.9353 319.92615 1078.9353 319.92615 1078.9353 319.92615 L 1078.9353 313.92615 C 1078.9353 313.37387 1079.38306 312.92615 1079.9353 312.92615 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(1083.9353 312.92615)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><path d="M 1097.94116 285.82004 C 1111.4641 301.66653 1135.2964 308.1694 1138.51416 333.36429 C 1141.7319 358.55917 1120.20605 407.76382 1117.25 437.00452 C 1114.7097 462.13324 1118.2717 479.43506 1120.0697 498.99707" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 1127.9475 349.36322 L 1146.9475 349.36322 C 1147.49976 349.36322 1147.9475 349.81094 1147.9475 350.36322 L 1147.9475 356.36322 C 1147.9475 356.9155 1147.49976 357.36322 1146.9475 357.36322 L 1127.9475 357.36322 C 1127.39526 357.36322 1126.9475 356.9155 1126.9475 356.36322 C 1126.9475 356.36322 1126.9475 356.36322 1126.9475 356.36322 L 1126.9475 350.36322 C 1126.9475 349.81094 1127.39526 349.36322 1127.9475 349.36322 Z" fill="white"/><path d="M 1127.9475 349.36322 L 1146.9475 349.36322 C 1147.49976 349.36322 1147.9475 349.81094 1147.9475 350.36322 L 1147.9475 356.36322 C 1147.9475 356.9155 1147.49976 357.36322 1146.9475 357.36322 L 1127.9475 357.36322 C 1127.39526 357.36322 1126.9475 356.9155 1126.9475 356.36322 C 1126.9475 356.36322 1126.9475 356.36322 1126.9475 356.36322 L 1126.9475 350.36322 C 1126.9475 349.81094 1127.39526 349.36322 1127.9475 349.36322 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(1131.9475 349.36322)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><g id="id215_Graphic"><path d="M 27.519226 45.06449 L 117.45795 45.06449 C 128.096405 45.06449 136.73053 56.029114 136.73053 69.539093 C 136.73053 83.04907 128.096405 94.013695 117.45795 94.013695 L 27.519226 94.013695 C 16.88076 94.013695 8.246643 83.04907 8.246643 69.539093 C 8.246643 56.029114 16.88076 45.06449 27.519226 45.06449" fill="white"/><path d="M 27.519226 45.06449 L 117.45795 45.06449 C 128.096405 45.06449 136.73053 56.029114 136.73053 69.539093 C 136.73053 83.04907 128.096405 94.013695 117.45795 94.013695 L 27.519226 94.013695 C 16.88076 94.013695 8.246643 83.04907 8.246643 69.539093 C 8.246643 56.029114 16.88076 45.06449 27.519226 45.06449" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(26.095032 57.539093)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="bold" x="11.666992" y="10" textLength="6.669922">V</tspan><tspan font-family="Helvetica" font-size="10" font-weight="bold" x="17.790039" y="10" textLength="63.33008">alidator Input</tspan><tspan font-family="Helvetica" font-size="10" font-weight="500" x="33.339355" y="22" textLength="26.108398">(start)</tspan></text></g><g id="id216_Graphic"><path d="M 285.83148 94.299767 L 307.24643 123.457794 L 285.83148 152.61581 L 264.41653 123.457794 Z" fill="#6cf"/><path d="M 285.83148 94.299767 L 307.24643 123.457794 L 285.83148 152.61581 L 264.41653 123.457794 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(275.19858 115.874634)" fill="black"><tspan font-family="Helvetica" font-size="6" font-weight="500" x="3.2286968" y="6" textLength="15.665039">MIME</tspan><tspan font-family="Helvetica" font-size="6" font-weight="500" x="4.5558453" y="13" textLength="3.665039">T</tspan><tspan font-family="Helvetica" font-size="6" font-weight="500" x="7.8927593" y="13" textLength="9.673828">ype</tspan></text></g><line x1="8.246563" y1="178.25665" x2="560.115" y2="178.50308" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="285.51843" y1="152.69678" x2="285.2434" y2="178.38034" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="43.449146" y1="178.27237" x2="43.449215" y2="529.2705" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><g id="id220_Graphic"><path d="M 16.270967 539.67047 L 70.62747 539.67047 C 77.05707 539.67047 82.27529 549.34448 82.27529 561.26422 C 82.27529 573.18396 77.05707 582.85797 70.62747 582.85797 L 16.270967 582.85797 C 9.8413696 582.85797 4.623146 573.18396 4.623146 561.26422 C 4.623146 549.34448 9.8413696 539.67047 16.270967 539.67047" fill="#b5ffb6"/><path d="M 16.270967 539.67047 L 70.62747 539.67047 C 77.05707 539.67047 82.27529 549.34448 82.27529 561.26422 C 82.27529 573.18396 77.05707 582.85797 70.62747 582.85797 L 16.270967 582.85797 C 9.8413696 582.85797 4.623146 573.18396 4.623146 561.26422 C 4.623146 549.34448 9.8413696 539.67047 16.270967 539.67047" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(17.388361 554.76422)" fill="black"><tspan font-family="Helvetica" font-size="11" font-weight="bold" x="5.269354" y="10" textLength="33.010742">CSS V</tspan><tspan font-family="Helvetica" font-size="11" font-weight="bold" x="37.678535" y="10" textLength="9.173828">al</tspan></text></g><g id="id224_Graphic"><path d="M 103.28388 538.2246 L 133.26482 538.2246 C 136.81114 538.2246 139.6893 547.89862 139.6893 559.81836 C 139.6893 571.7381 136.81114 581.4121 133.26482 581.4121 L 103.28388 581.4121 C 99.737564 581.4121 96.8594 571.7381 96.8594 559.81836 C 96.8594 547.89862 99.737564 538.2246 103.28388 538.2246" fill="#b5ffb6"/><path d="M 103.28388 538.2246 L 133.26482 538.2246 C 136.81114 538.2246 139.6893 547.89862 139.6893 559.81836 C 139.6893 571.7381 136.81114 581.4121 133.26482 581.4121 L 103.28388 581.4121 C 99.737564 581.4121 96.8594 571.7381 96.8594 559.81836 C 96.8594 547.89862 99.737564 538.2246 103.28388 538.2246" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(106.14239 549.81836)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="2.7960262" y="8" textLength="20.894531">Feed </tspan><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="6.3468075" y="18" textLength="5.3359375">V</tspan><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="11.245245" y="18" textLength="6.671875">al</tspan></text></g><rect x="24.449162" y="251.03207" width="38" height="30" fill="white"/><text transform="translate(29.449162 256.03207)" fill="black"><tspan font-family="Helvetica" font-size="8" font-weight="bold" x="5.7753906" y="8" textLength="16.449219">CSS</tspan><tspan font-family="Helvetica" font-size="8" font-weight="500" x=".44140625" y="18" textLength="27.117188">text/css</tspan></text><line x1="120.1772" y1="178.30664" x2="118.43393" y2="527.8247" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="81.24391" y="357.42648" width="76" height="16" fill="white"/><text transform="translate(86.24391 357.42648)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="bold" x="24.056885" y="6" textLength="17.88623">Atom</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".025146484" y="14" textLength="65.949707">application/atom+xml</tspan></text><line x1="513.39435" y1="178.48222" x2="513.71198" y2="253.19293" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="475.55682" y="204.69228" width="78" height="24" fill="white"/><text transform="translate(480.55682 204.69228)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="bold" x="20.003418" y="6" textLength="27.993164">(x)HTML</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="20.77417" y="14" textLength="26.45166">text/html</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".4440918" y="22" textLength="67.111816">application/xhtml+xml</tspan></text><g id="id241_Graphic"><path d="M 513.8817 263.46588 L 543.19586 293.11517 L 513.8817 322.76447 L 484.56754 293.11517 Z" fill="#6cf"/><path d="M 513.8817 263.46588 L 543.19586 293.11517 L 513.8817 322.76447 L 484.56754 293.11517 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(497.48236 282.02219)" fill="black"><tspan font-family="Helvetica" font-size="6" font-weight="500" x=".81521606" y="6" textLength="32.34082">DOCTYPE?</tspan><tspan font-family="Helvetica" font-size="6" font-weight="500" x="8.482208" y="13" textLength="18.673828">(a real </tspan><tspan font-family="Helvetica" font-size="6" font-weight="500" x="8.4807434" y="20" textLength="17.009766">one...)</tspan></text></g><line x1="513.57794" y1="322.96231" x2="511.6175" y2="515.56073" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 504.79498 395.88013 L 520.79498 395.88013 C 521.3473 395.88013 521.79498 396.32785 521.79498 396.88013 L 521.79498 402.88013 C 521.79498 403.4324 521.3473 403.88013 520.79498 403.88013 L 504.79498 403.88013 C 504.2427 403.88013 503.79498 403.4324 503.79498 402.88013 C 503.79498 402.88013 503.79498 402.88013 503.79498 402.88013 L 503.79498 396.88013 C 503.79498 396.32785 504.2427 395.88013 504.79498 395.88013 Z" fill="white"/><path d="M 504.79498 395.88013 L 520.79498 395.88013 C 521.3473 395.88013 521.79498 396.32785 521.79498 396.88013 L 521.79498 402.88013 C 521.79498 403.4324 521.3473 403.88013 520.79498 403.88013 L 504.79498 403.88013 C 504.2427 403.88013 503.79498 403.4324 503.79498 402.88013 C 503.79498 402.88013 503.79498 402.88013 503.79498 402.88013 L 503.79498 396.88013 C 503.79498 396.32785 504.2427 395.88013 504.79498 395.88013 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(508.79498 395.88013)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" fill="black" x=".106933594" y="6" textLength="7.786133">no</tspan></text><g id="id244_Graphic"><path d="M 476.90305 525.9602 L 545.4309 525.9602 C 553.5368 525.9602 560.11548 541.1286 560.11548 559.81824 C 560.11548 578.50787 553.5368 593.67627 545.4309 593.67627 L 476.90305 593.67627 C 468.79718 593.67627 462.2185 578.50787 462.2185 559.81824 C 462.2185 541.1286 468.79718 525.9602 476.90305 525.9602" fill="#b5ffb6"/><path d="M 476.90305 525.9602 L 545.4309 525.9602 C 553.5368 525.9602 560.11548 541.1286 560.11548 559.81824 C 560.11548 578.50787 553.5368 593.67627 545.4309 593.67627 L 476.90305 593.67627 C 468.79718 593.67627 462.2185 578.50787 462.2185 559.81824 C 462.2185 541.1286 468.79718 525.9602 476.90305 525.9602" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(477.0082 542.81824)" fill="black"><tspan font-family="Helvetica" font-size="14" font-weight="bold" x="6.934662" y="14" textLength="58.33789">(x)html5 </tspan><tspan font-family="Helvetica" font-size="14" font-weight="bold" x="4.9830017" y="31" textLength="58.351562">validator</tspan></text></g><line x1="377.22354" y1="178.42142" x2="377.64124" y2="214.83215" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="360.95609" y="188.19366" width="33" height="21" fill="white"/><text transform="translate(365.95609 188.19366)" fill="black"><tspan font-family="Helvetica" font-size="6" font-weight="bold" x=".16943359" y="6" textLength="22.661133">MathML</tspan><tspan font-family="Helvetica" font-size="6" font-weight="bold" x="4.3339844" y="13" textLength="14.332031">SMIL</tspan><tspan font-family="Helvetica" font-size="6" font-weight="500" x="8.163086" y="20" textLength="6.673828">??</tspan></text><rect x="547.156" y="175.00087" width="16" height="7" fill="white"/><text transform="translate(552.156 175.00087)" fill="black"><tspan font-family="Helvetica" font-size="6" font-weight="500" x=".49951172" y="6" textLength="5.0009766">...</tspan></text><g id="id282_Graphic"><path d="M 216.93689 402.15796 L 253.11372 418.4667 L 216.93689 434.77545 L 180.76006 418.4667 Z" fill="#6cf"/><path d="M 216.93689 402.15796 L 253.11372 418.4667 L 216.93689 434.77545 L 180.76006 418.4667 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(195.5278 414.14053)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x="7.736141" y="6" textLength="28.792969">svg root?</tspan></text></g><g id="id292_Graphic"><path d="M 335.20486 225.23148 L 420.92844 225.23148 C 431.0683 225.23148 439.29776 237.18724 439.29776 251.91847 C 439.29776 266.64969 431.0683 278.60547 420.92844 278.60547 L 335.20486 278.60547 C 325.065 278.60547 316.83554 266.64969 316.83554 251.91847 C 316.83554 237.18724 325.065 225.23148 335.20486 225.23148" fill="#b5ffb6"/><path d="M 335.20486 225.23148 L 420.92844 225.23148 C 431.0683 225.23148 439.29776 237.18724 439.29776 251.91847 C 439.29776 266.64969 431.0683 278.60547 420.92844 278.60547 L 335.20486 278.60547 C 325.065 278.60547 316.83554 266.64969 316.83554 251.91847 C 316.83554 237.18724 325.065 225.23148 335.20486 225.23148" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(334.08176 243.91847)" fill="black"><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="1.72855" y="13" textLength="84.512695">DTD validator</tspan></text></g><g id="id295_Graphic"><path d="M 215.30963 292.95941 L 244.6238 310.7508 L 215.30963 328.54218 L 185.99547 310.7508 Z" fill="#6cf"/><path d="M 215.30963 292.95941 L 244.6238 310.7508 L 215.30963 328.54218 L 185.99547 310.7508 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(198.91029 306.89496)" fill="black"><tspan font-family="Helvetica" font-size="6" font-weight="500" x=".81521606" y="6" textLength="32.34082">DOCTYPE?</tspan></text></g><path d="M 227.40475 321.76236 C 268.99832 359.62964 330.94629 402.2236 352.19794 435.37552 C 370.94257 464.61655 358.0362 486.52728 355.35446 510.8032" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 295.53308 382.7595 L 314.53308 382.7595 C 315.08536 382.7595 315.53308 383.20721 315.53308 383.7595 L 315.53308 389.7595 C 315.53308 390.31177 315.08536 390.7595 314.53308 390.7595 L 295.53308 390.7595 C 294.9808 390.7595 294.53308 390.31177 294.53308 389.7595 C 294.53308 389.7595 294.53308 389.7595 294.53308 389.7595 L 294.53308 383.7595 C 294.53308 383.20721 294.9808 382.7595 295.53308 382.7595 Z" fill="white"/><path d="M 295.53308 382.7595 L 314.53308 382.7595 C 315.08536 382.7595 315.53308 383.20721 315.53308 383.7595 L 315.53308 389.7595 C 315.53308 390.31177 315.08536 390.7595 314.53308 390.7595 L 295.53308 390.7595 C 294.9808 390.7595 294.53308 390.31177 294.53308 389.7595 C 294.53308 389.7595 294.53308 389.7595 294.53308 389.7595 L 294.53308 383.7595 C 294.53308 383.20721 294.9808 382.7595 295.53308 382.7595 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(299.53308 382.7595)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><line x1="215.88866" y1="328.70026" x2="217.89879" y2="391.0133" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 208.78891 352.6074 L 224.78891 352.6074 C 225.3412 352.6074 225.78891 353.05511 225.78891 353.6074 L 225.78891 359.6074 C 225.78891 360.15967 225.3412 360.6074 224.78891 360.6074 L 208.78891 360.6074 C 208.23662 360.6074 207.78891 360.15967 207.78891 359.6074 C 207.78891 359.6074 207.78891 359.6074 207.78891 359.6074 L 207.78891 353.6074 C 207.78891 353.05511 208.23662 352.6074 208.78891 352.6074 Z" fill="white"/><path d="M 208.78891 352.6074 L 224.78891 352.6074 C 225.3412 352.6074 225.78891 353.05511 225.78891 353.6074 L 225.78891 359.6074 C 225.78891 360.15967 225.3412 360.6074 224.78891 360.6074 L 208.78891 360.6074 C 208.23662 360.6074 207.78891 360.15967 207.78891 359.6074 C 207.78891 359.6074 207.78891 359.6074 207.78891 359.6074 L 207.78891 353.6074 C 207.78891 353.05511 208.23662 352.6074 208.78891 352.6074 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(212.78891 352.6074)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".106933594" y="6" textLength="7.786133">no</tspan></text><path d="M 137.14154 71.918457 C 153.3217 72.513924 150.987305 72.27915 185.68686 73.705032 C 220.38641 75.130913 326.27097 73.915993 345.35968 80.47461 C 361.64474 86.069923 328.24506 97.93027 308.74295 108.037346" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 180.29257 63.708466 L 307.29257 63.708466 C 307.84485 63.708466 308.29257 64.15618 308.29257 64.708466 L 308.29257 84.708466 C 308.29257 85.26075 307.84485 85.708466 307.29257 85.708466 L 180.29257 85.708466 C 179.74028 85.708466 179.29257 85.26075 179.29257 84.708466 C 179.29257 84.708466 179.29257 84.708466 179.29257 84.708466 L 179.29257 64.708466 C 179.29257 64.15618 179.74028 63.708466 180.29257 63.708466 Z" fill="white"/><path d="M 180.29257 63.708466 L 307.29257 63.708466 C 307.84485 63.708466 308.29257 64.15618 308.29257 64.708466 L 308.29257 84.708466 C 308.29257 85.26075 307.84485 85.708466 307.29257 85.708466 L 180.29257 85.708466 C 179.74028 85.708466 179.29257 85.26075 179.29257 84.708466 C 179.29257 84.708466 179.29257 84.708466 179.29257 84.708466 L 179.29257 64.708466 C 179.29257 64.15618 179.74028 63.708466 180.29257 63.708466 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(184.29257 63.708466)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x="14.728516" y="9" textLength="89.54297">Other Disambiguation</tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".4814453" y="20" textLength="118.03711">(UI, heuristics, preparse, etc.)</tspan></text><path d="M 94.249374 94.38987 C 102.701195 104.04183 105.324364 116.767746 119.607376 123.34865 C 133.89038 129.92955 155.66588 133.52527 179.95601 133.87921 C 201.47554 134.19278 229.557 129.55168 255.47725 126.5405" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 159.8246 127.98076 L 228.8246 127.98076 C 229.37689 127.98076 229.8246 128.42847 229.8246 128.98076 L 229.8246 137.98076 C 229.8246 138.53305 229.37689 138.98076 228.8246 138.98076 L 159.8246 138.98076 C 159.27231 138.98076 158.8246 138.53305 158.8246 137.98076 C 158.8246 137.98076 158.8246 137.98076 158.8246 137.98076 L 158.8246 128.98076 C 158.8246 128.42847 159.27231 127.98076 159.8246 127.98076 Z" fill="white"/><path d="M 159.8246 127.98076 L 228.8246 127.98076 C 229.37689 127.98076 229.8246 128.42847 229.8246 128.98076 L 229.8246 137.98076 C 229.8246 138.53305 229.37689 138.98076 228.8246 138.98076 L 159.8246 138.98076 C 159.27231 138.98076 158.8246 138.53305 158.8246 137.98076 C 158.8246 137.98076 158.8246 137.98076 158.8246 137.98076 L 158.8246 128.98076 C 158.8246 128.42847 159.27231 127.98076 159.8246 127.98076 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(163.8246 127.98076)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".49194336" y="9" textLength="59.85791">HTTP Headers</tspan></text><line x1="494.34787" y1="303.69012" x2="398.46725" y2="355.59656" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 446.71997 320.33124 L 465.71997 320.33124 C 466.27225 320.33124 466.71997 320.77896 466.71997 321.33124 L 466.71997 327.33124 C 466.71997 327.88351 466.27225 328.33124 465.71997 328.33124 L 446.71997 328.33124 C 446.1677 328.33124 445.71997 327.88351 445.71997 327.33124 C 445.71997 327.33124 445.71997 327.33124 445.71997 327.33124 L 445.71997 321.33124 C 445.71997 320.77896 446.1677 320.33124 446.71997 320.33124 Z" fill="white"/><path d="M 446.71997 320.33124 L 465.71997 320.33124 C 466.27225 320.33124 466.71997 320.77896 466.71997 321.33124 L 466.71997 327.33124 C 466.71997 327.88351 466.27225 328.33124 465.71997 328.33124 L 446.71997 328.33124 C 446.1677 328.33124 445.71997 327.88351 445.71997 327.33124 C 445.71997 327.33124 445.71997 327.33124 445.71997 327.33124 L 445.71997 321.33124 C 445.71997 320.77896 446.1677 320.33124 446.71997 320.33124 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(450.71997 320.33124)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><g id="id306_Graphic"><path d="M 376.76935 340.65604 L 393.60944 367.34305 L 376.76935 394.03006 L 359.92926 367.34305 Z" fill="#6cf"/><path d="M 376.76935 340.65604 L 393.60944 367.34305 L 376.76935 394.03006 L 359.92926 367.34305 Z" stroke="#ccc" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(369.47607 358.8093)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".43353271" y="6" textLength="14.393066">XML</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="5.6835327" y="14" textLength="3.8930664">?</tspan></text></g><line x1="377.06967" y1="340.6231" x2="377.6498" y2="289.00482" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 369.33688 312.84756 L 385.33688 312.84756 C 385.88916 312.84756 386.33688 313.29529 386.33688 313.84756 L 386.33688 319.84756 C 386.33688 320.39984 385.88916 320.84756 385.33688 320.84756 L 369.33688 320.84756 C 368.7846 320.84756 368.33688 320.39984 368.33688 319.84756 C 368.33688 319.84756 368.33688 319.84756 368.33688 319.84756 L 368.33688 313.84756 C 368.33688 313.29529 368.7846 312.84756 369.33688 312.84756 Z" fill="white"/><path d="M 369.33688 312.84756 L 385.33688 312.84756 C 385.88916 312.84756 386.33688 313.29529 386.33688 313.84756 L 386.33688 319.84756 C 386.33688 320.39984 385.88916 320.84756 385.33688 320.84756 L 369.33688 320.84756 C 368.7846 320.84756 368.33688 320.39984 368.33688 319.84756 C 368.33688 319.84756 368.33688 319.84756 368.33688 319.84756 L 368.33688 313.84756 C 368.33688 313.29529 368.7846 312.84756 369.33688 312.84756 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(373.33688 312.84756)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".106933594" y="6" textLength="7.786133">no</tspan></text><line x1="230.00972" y1="429.37552" x2="332.05682" y2="514.5302" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 260.48285 458.7317 L 279.48285 458.7317 C 280.03513 458.7317 280.48285 459.1794 280.48285 459.7317 L 280.48285 465.7317 C 280.48285 466.28397 280.03513 466.7317 279.48285 466.7317 L 260.48285 466.7317 C 259.93057 466.7317 259.48285 466.28397 259.48285 465.7317 C 259.48285 465.7317 259.48285 465.7317 259.48285 465.7317 L 259.48285 459.7317 C 259.48285 459.1794 259.93057 458.7317 260.48285 458.7317 Z" fill="white"/><path d="M 260.48285 458.7317 L 279.48285 458.7317 C 280.03513 458.7317 280.48285 459.1794 280.48285 459.7317 L 280.48285 465.7317 C 280.48285 466.28397 280.03513 466.7317 279.48285 466.7317 L 260.48285 466.7317 C 259.93057 466.7317 259.48285 466.28397 259.48285 465.7317 C 259.48285 465.7317 259.48285 465.7317 259.48285 465.7317 L 259.48285 459.7317 C 259.48285 459.1794 259.93057 458.7317 260.48285 458.7317 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(264.48285 458.7317)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><g id="id324_Graphic"><path d="M 312.4903 521.19348 L 398.21387 521.19348 C 408.35373 521.19348 416.5832 526.91705 416.5832 533.9693 C 416.5832 541.02155 408.35373 546.74512 398.21387 546.74512 L 312.4903 546.74512 C 302.35043 546.74512 294.12097 541.02155 294.12097 533.9693 C 294.12097 526.91705 302.35043 521.19348 312.4903 521.19348" fill="#b5ffb6"/><path d="M 312.4903 521.19348 L 398.21387 521.19348 C 408.35373 521.19348 416.5832 526.91705 416.5832 533.9693 C 416.5832 541.02155 408.35373 546.74512 398.21387 546.74512 L 312.4903 546.74512 C 302.35043 546.74512 294.12097 541.02155 294.12097 533.9693 C 294.12097 526.91705 302.35043 521.19348 312.4903 521.19348" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(311.36719 525.9693)" fill="black"><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="1.72855" y="13" textLength="84.512695">DTD validator</tspan></text></g><g id="id325_Graphic"><path d="M 312.4903 572.29688 L 398.21387 572.29688 C 408.35373 572.29688 416.5832 578.02045 416.5832 585.0727 C 416.5832 592.12494 408.35373 597.8485 398.21387 597.8485 L 312.4903 597.8485 C 302.35043 597.8485 294.12097 592.12494 294.12097 585.0727 C 294.12097 578.02045 302.35043 572.29688 312.4903 572.29688" fill="#b5ffb6"/><path d="M 312.4903 572.29688 L 398.21387 572.29688 C 408.35373 572.29688 416.5832 578.02045 416.5832 585.0727 C 416.5832 592.12494 408.35373 597.8485 398.21387 597.8485 L 312.4903 597.8485 C 302.35043 597.8485 294.12097 592.12494 294.12097 585.0727 C 294.12097 578.02045 302.35043 572.29688 312.4903 572.29688" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(311.36719 569.0727)" fill="black"><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="18.46732" y="13" textLength="27.440918">XML</tspan><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="45.679722" y="13" textLength="27.43457"> WF </tspan><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="24.110386" y="29" textLength="39.749023">parser</tspan></text></g><path d="M 387.0843 378.58783 C 404.48703 397.5593 442.71664 411.80615 439.29773 435.50797 C 436.16995 457.19144 398.18323 486.80002 373.17606 513.45508" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 429.31366 423.27008 L 448.31366 423.27008 C 448.86594 423.27008 449.31366 423.7178 449.31366 424.27008 L 449.31366 430.27008 C 449.31366 430.82236 448.86594 431.27008 448.31366 431.27008 L 429.31366 431.27008 C 428.76138 431.27008 428.31366 430.82236 428.31366 430.27008 C 428.31366 430.27008 428.31366 430.27008 428.31366 430.27008 L 428.31366 424.27008 C 428.31366 423.7178 428.76138 423.27008 429.31366 423.27008 Z" fill="white"/><path d="M 429.31366 423.27008 L 448.31366 423.27008 C 448.86594 423.27008 449.31366 423.7178 449.31366 424.27008 L 449.31366 430.27008 C 449.31366 430.82236 448.86594 431.27008 448.31366 431.27008 L 429.31366 431.27008 C 428.76138 431.27008 428.31366 430.82236 428.31366 430.27008 C 428.31366 430.27008 428.31366 430.27008 428.31366 430.27008 L 428.31366 424.27008 C 428.31366 423.7178 428.76138 423.27008 429.31366 423.27008 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(433.31366 423.27008)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".053466797" y="6" textLength="10.8930664">yes</tspan></text><g id="id328_Graphic"><path d="M 348.15665 546.74506 L 362.54752 546.74506 C 364.24973 546.74506 365.63126 552.46863 365.63126 559.52087 C 365.63126 566.57312 364.24973 572.2967 362.54752 572.2967 L 348.15665 572.2967 C 346.45444 572.2967 345.0729 566.57312 345.0729 559.52087 C 345.0729 552.46863 346.45444 546.74506 348.15665 546.74506" fill="#b5ffb6"/><path d="M 348.15665 546.74506 L 362.54752 546.74506 C 364.24973 546.74506 365.63126 552.46863 365.63126 559.52087 C 365.63126 566.57312 364.24973 572.2967 362.54752 572.2967 L 348.15665 572.2967 C 346.45444 572.2967 345.0729 566.57312 345.0729 559.52087 C 345.0729 552.46863 346.45444 546.74506 348.15665 546.74506" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(352.12875 551.52087)" fill="black"><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="0" y="13" textLength="7.591797">+</tspan></text></g><line x1="216.95737" y1="178.34985" x2="215.65881" y2="282.6936" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="179.34457" y="187.58401" width="72" height="80" fill="white"/><text transform="translate(184.34457 187.58401)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="bold" x="23.61206" y="6" textLength="14.775879">XML</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="18.943115" y="14" textLength="24.11377">text/xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="7.8500977" y="22" textLength="46.299805">application/xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="1.9130859" y="30" textLength="58.173828">application/??+xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="bold" x="23.608643" y="46" textLength="14.782715">SVG</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="15.04834" y="54" textLength="31.90332">image/svg</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="8.4396973" y="62" textLength="45.120605">image/svg-xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x="7.5612793" y="70" textLength="46.877441">image/svg+xml</tspan><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".35961914" y="78" textLength="61.28076">application/svg+xml</tspan></text><g id="id332_Graphic"><path d="M 172.64276 548.48834 L 258.36633 548.48834 C 268.5062 548.48834 276.73566 554.2119 276.73566 561.26416 C 276.73566 568.3164 268.5062 574.03998 258.36633 574.03998 L 172.64276 574.03998 C 162.50288 574.03998 154.27342 568.3164 154.27342 561.26416 C 154.27342 554.2119 162.50288 548.48834 172.64276 548.48834" fill="#b5ffb6"/><path d="M 172.64276 548.48834 L 258.36633 548.48834 C 268.5062 548.48834 276.73566 554.2119 276.73566 561.26416 C 276.73566 568.3164 268.5062 574.03998 258.36633 574.03998 L 172.64276 574.03998 C 162.50288 574.03998 154.27342 568.3164 154.27342 561.26416 C 154.27342 554.2119 162.50288 548.48834 172.64276 548.48834" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(171.51965 545.26416)" fill="black"><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="18.46732" y="13" textLength="27.440918">XML</tspan><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="45.679722" y="13" textLength="27.43457"> WF </tspan><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="24.110386" y="29" textLength="39.749023">parser</tspan></text></g><g id="id334_Graphic"><path d="M 797.36133 468.03235 L 883.08496 468.03235 C 893.2248 468.03235 901.4543 476.0029 901.4543 485.82373 C 901.4543 495.64456 893.2248 503.6151 883.08496 503.6151 L 797.36133 503.6151 C 787.2215 503.6151 778.992 495.64456 778.992 485.82373 C 778.992 476.0029 787.2215 468.03235 797.36133 468.03235" fill="#b5ffb6"/><path d="M 797.36133 468.03235 L 883.08496 468.03235 C 893.2248 468.03235 901.4543 476.0029 901.4543 485.82373 C 901.4543 495.64456 893.2248 503.6151 883.08496 503.6151 L 797.36133 503.6151 C 787.2215 503.6151 778.992 495.64456 778.992 485.82373 C 778.992 476.0029 787.2215 468.03235 797.36133 468.03235" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(796.2382 469.82373)" fill="black"><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="18.46732" y="13" textLength="27.440918">XML</tspan><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="45.679722" y="13" textLength="27.43457"> WF </tspan><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="24.110386" y="29" textLength="39.749023">parser</tspan></text></g><line x1="216.76901" y1="435.20206" x2="215.73701" y2="538.08887" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 208.33179 474.79205 L 224.33179 474.79205 C 224.88408 474.79205 225.33179 475.23978 225.33179 475.79205 L 225.33179 481.79205 C 225.33179 482.34433 224.88408 482.79205 224.33179 482.79205 L 208.33179 482.79205 C 207.7795 482.79205 207.33179 482.34433 207.33179 481.79205 C 207.33179 481.79205 207.33179 481.79205 207.33179 481.79205 L 207.33179 475.79205 C 207.33179 475.23978 207.7795 474.79205 208.33179 474.79205 Z" fill="white"/><path d="M 208.33179 474.79205 L 224.33179 474.79205 C 224.88408 474.79205 225.33179 475.23978 225.33179 475.79205 L 225.33179 481.79205 C 225.33179 482.34433 224.88408 482.79205 224.33179 482.79205 L 208.33179 482.79205 C 207.7795 482.79205 207.33179 482.34433 207.33179 481.79205 C 207.33179 481.79205 207.33179 481.79205 207.33179 481.79205 L 207.33179 475.79205 C 207.33179 475.23978 207.7795 474.79205 208.33179 474.79205 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(212.33179 474.79205)" fill="black"><tspan font-family="Helvetica" font-size="7" font-weight="500" x=".106933594" y="6" textLength="7.786133">no</tspan></text><g id="id337_Graphic"><path d="M 624.5945 692.6949 L 722.0691 692.6949 C 733.59894 692.6949 742.9565 704.6507 742.9565 719.3819 C 742.9565 734.1131 733.59894 746.0689 722.0691 746.0689 L 624.5945 746.0689 C 613.06464 746.0689 603.7071 734.1131 603.7071 719.3819 C 603.7071 704.6507 613.06464 692.6949 624.5945 692.6949" fill="#b5ffb6"/><path d="M 624.5945 692.6949 L 722.0691 692.6949 C 733.59894 692.6949 742.9565 704.6507 742.9565 719.3819 C 742.9565 734.1131 733.59894 746.0689 722.0691 746.0689 L 624.5945 746.0689 C 613.06464 746.0689 603.7071 734.1131 603.7071 719.3819 C 603.7071 704.6507 613.06464 692.6949 624.5945 692.6949" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(622.63202 711.3819)" fill="black"><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="3.50177" y="13" textLength="27.440918">XML</tspan><tspan font-family="Helvetica" font-size="13" font-weight="bold" x="30.714172" y="13" textLength="67.183594"> WF parser</tspan></text></g><g id="id338_Graphic"><path d="M 260.66779 687.75275 L 346.39124 687.75275 C 356.5311 687.75275 364.76056 700.81555 364.76056 716.91077 C 364.76056 733.006 356.5311 746.0688 346.39124 746.0688 L 260.66779 746.0688 C 250.52792 746.0688 242.29848 733.006 242.29848 716.91077 C 242.29848 700.81555 250.52792 687.75275 260.66779 687.75275" fill="#b5ffb6"/><path d="M 260.66779 687.75275 L 346.39124 687.75275 C 356.5311 687.75275 364.76056 700.81555 364.76056 716.91077 C 364.76056 733.006 356.5311 746.0688 346.39124 746.0688 L 260.66779 746.0688 C 250.52792 746.0688 242.29848 733.006 242.29848 716.91077 C 242.29848 700.81555 250.52792 687.75275 260.66779 687.75275" stroke="#6ff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(259.54468 711.41077)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="26.977993" y="9" textLength="27">RDF V</tspan><tspan font-family="Helvetica" font-size="9" font-weight="bold" x="53.485806" y="9" textLength="7.5058594">al</tspan></text></g><path d="M -.98847973 697.28168 C 31.51538 700.53516 70.22383 703.6615 96.53285 707.04315 C 122.84187 710.4248 132.589615 717.21997 156.88144 717.57373 C 178.40247 717.88715 206.48816 713.24554 232.41173 710.234" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><path d="M 103.164185 709.28607 L 163.16418 709.28607 C 163.71648 709.28607 164.16418 709.73376 164.16418 710.28607 L 164.16418 719.28607 C 164.16418 719.8384 163.71648 720.28607 163.16418 720.28607 L 103.164185 720.28607 C 102.6119 720.28607 102.164185 719.8384 102.164185 719.28607 C 102.164185 719.28607 102.164185 719.28607 102.164185 719.28607 L 102.164185 710.28607 C 102.164185 709.73376 102.6119 709.28607 103.164185 709.28607 Z" fill="white"/><path d="M 103.164185 709.28607 L 163.16418 709.28607 C 163.71648 709.28607 164.16418 709.73376 164.16418 710.28607 L 164.16418 719.28607 C 164.16418 719.8384 163.71648 720.28607 163.16418 720.28607 L 103.164185 720.28607 C 102.6119 720.28607 102.164185 719.8384 102.164185 719.28607 C 102.164185 719.28607 102.164185 719.28607 102.164185 719.28607 L 102.164185 710.28607 C 102.164185 709.73376 102.6119 709.28607 103.164185 709.28607 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width=".25"/><text transform="translate(107.164185 709.28607)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" x=".4897461" y="9" textLength="51.020508">Elsewhere…</tspan></text><g id="id341_Graphic"><rect x="372.4157" y="18.052094" width="190.57239" height="109.2984" fill="white"/><rect x="372.4157" y="18.052094" width="190.57239" height="109.2984" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(377.4157 43.701294)" fill="red"><tspan font-family="Helvetica" font-size="48" font-weight="bold" fill="red" x="21.379951" y="47" textLength="29.320312">T</tspan><tspan font-family="Helvetica" font-size="48" font-weight="bold" fill="red" x="47.161201" y="47" textLength="112.03125">oday</tspan></text></g><g id="id342_Graphic"><rect x="945.49084" y="18.052074" width="190.57202" height="109.298004" fill="white"/><rect x="945.49084" y="18.052074" width="190.57202" height="109.298004" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(950.49084 14.70108)" fill="red"><tspan font-family="Helvetica" font-size="48" font-weight="bold" fill="red" x="38.26651" y="47" textLength="117.375">Next </tspan><tspan font-family="Helvetica" font-size="48" font-weight="bold" fill="red" x="36.942291" y="105" textLength="106.6875">Gen.</tspan></text></g><rect x="575.12097" y="-61035156e-12" width="1.5241699" height="783.01196" fill="white"/><rect x="575.12097" y="-61035156e-12" width="1.5241699" height="783.01196" stroke="black" stroke-linecap="butt" stroke-linejoin="round" stroke-width=".25"/></g></g></svg>
diff --git a/htdocs/todo.html b/htdocs/todo.html
index d5ca072..b24762b 100755
--- a/htdocs/todo.html
+++ b/htdocs/todo.html
@@ -1,5 +1,5 @@
-<!--#set var="revision" value="\$Id: todo.html,v 1.66 2008-10-23 10:19:14 ot Exp $"
---><!--#set var="date" value="\$Date: 2008-10-23 10:19:14 $"
+<!--#set var="revision" value="\$Id: todo.html,v 1.67 2009-02-24 18:11:30 ot Exp $"
+--><!--#set var="date" value="\$Date: 2009-02-24 18:11:30 $"
--><!--#set var="title" value="Development Roadmap for The W3C Markup Validation Service"
--><!--#set var="relroot" value="./"
--><!--#include virtual="header.html" -->
@@ -24,7 +24,7 @@
<a href="http://lists.w3.org/Archives/Public/www-validator/">www-validator
mailing list</a>.</li>
</ul>
- <h3>High-Level Objectives</h3>
+ <h3 id="highlevel">High-Level Objectives</h3>
<ul>
<li>Provide the web with a one-stop service for Web Quality check </li>
<li>Help raise quality for (m)any kind(s) of Web content </li>
@@ -34,44 +34,64 @@
<li>Remain the trusted source by professionals </li>
<li>Find the right balance between accuracy and user-friendliness </li></ul>
- <h3>Roadmap</h3>
- <ul>
- <li><strong>Multi-engine validator</strong>. The current validator is mostly based on an DTD parser, with an XML parser used only for some checks.
- The current development version plugs into an html5 parser for the validation of HTML5 content. In the future, other engines
- could be used to check compound XML documents (with NVDL+relax, XML Schema, Schematron - using e.g the relaxed engine) </li>
- <li><strong>Mulitilingual tool</strong>. The Markup Validator receives 1M requests per day, and is only in English. Making it multiligual
+ <h3 id="roadmap">Roadmap</h3>
+ <h4>Multi-engine validator</h4>
+ <p>The current validator is mostly based on an DTD parser, with an XML parser used only for some checks.
+ It also plugs into an html5 parser for the validation of HTML5 content. In the future, other engines
+ should be used to check compound XML documents (with NVDL+relax, XML Schema, Schematron - using e.g the relaxed engine)</p>
+ <p>The following flowchart describes the validation engine architecture, as it is now, and as we envision it in the near future.
+
+ </p>
+ <p style="float: left; width: 600px; text-align: center"><a href="images/roadmap/validators-chart.png"><img src="images/roadmap/validators-chart-small.png" alt="validator flow chart: now and next generation"></a><br />(follow link to enlarge, or download the vector-based
+ <a href="images/roadmap/validators-chart.graffle">graffle</a>,
+ <a href="images/roadmap/validators-chart.pdf">PDF</a> or
+ <a href="images/roadmap/validators-chart.svg">SVG</a> version)</p>
+ <div style="display: block; margin-left: 620px;">
+ <h5>Milestones</h5>
+ <p>@@ TODO @@ add these as Bugzilla entries</p>
+ <ol>
+ <li><p>Interface with an NVDL+RelaxNG engine for validation of compound XML documents (coding the interface will be similar to the one
+ done for hTML5 engine)</p></li>
+ <li><p>Choose the right NVDL+RelaxNG engine. relaxed and validator.nu provide such capability, and of course there is the option to roll our own (jing, etc).</p></li>
+ <li><p>Change check code to send multiple-namespace XML documents to NVDL+RelaxNG engine</p></li>
+ <li><p>Interface with the feed validator, RDF validator and CSS validator programatically (instead of redirecting, as done today)</p></li>
+ </ol>
+ </div>
+ <h4 style="clear: both">Mulitilingual tool</h4>
+ <p>The Markup Validator receives 1M requests per day, and is only in English. Making it multiligual
would make the tool easier to use for web developers and designers worldwide. Although this may be technically tricky
- (given the number of message/engine sources), the community would be very excited in participating in the translation effort. </li>
- <li><strong>Site-wide services</strong>. The markup validator currently checks a single page. Some companion software (such as the log validator)
- could be made into a web service to provide crawling, batch validation, scheduled checks etc. </li>
- <li><strong>Check beyond markup</strong>: This may be in the roadmap for Unicorn rather than the markup validator, but it fits in the "long-term"
+ (given the number of message/engine sources), the community would be very excited in participating in the translation effort.</p>
+ <h4>Site-wide services</h4>
+ <p>The markup validator currently checks a single page. Some companion software (such as the log validator)
+ could be made into a web service to provide crawling, batch validation, scheduled checks etc.</p>
+ <h4>Check beyond markup</h4>
+ <p>This may be in the roadmap for Unicorn rather than the markup validator, but it fits in the "long-term"
vision of developing the W3C Web Quality services. Checking of RDDL, RDFa, microformats and other rich markup are in scope.
- Many other checks could be added to the validators, such as: <ul>
+ Many other checks could be added to the validators, such as: </p><ul>
<li>document cacheability </li>
<li>spell checking </li>
<li>semantic extraction </li>
<li>accessibility evaluation </li>
</ul>
- </li>
- <li><strong>Less finger pointing, more problem solving</strong>. Most of our tools, and especially the "star" HTML validator,
+ <h4>Less finger pointing, more problem solving</h4>
+ <p>Most of our tools, and especially the "star" HTML validator,
have a binary "valid/invalid" way of presenting their results. While this is useful for some, it tends to make people look away
from the "big picture" of web quality. A new one-stop quality checker could help bring a paradigm shift by showing diverse
aspects of web quality, while systematically suggesting solutions for every problem. This would involve working with designers
- to find ways to present aggregated quality information in a clear and positive manner. </li>
- </ul>
-
+ to find ways to present aggregated quality information in a clear and positive manner.</p>
+
<h3>Past Releases Roadmap</h3>
<dl>
- <dt>Versions Prior to 0.6.0</dt>
- <dd>Versioning up to version 0.5.x was only done as a development mechanism, and
- the validator was not following a strict release cycle.</dd>
+ <dt>0.8.x</dt>
+ <dd>The 0.8.0 release sees the validator code reorganized around a more modular architecture, adding better XML checking capabilities. In 0.8.5, HTML5 checking capabilities were added by interfacing with the validator.nu engine.</dd>
+ <dt>0.7.x</dt>
+ <dd>The 0.7.0 release reorganized the validator to use templates, making it easier to produce different outputs (hence the development of an API). 0.7.0 through 0.7.4 included mostly bug fixes and documentation updates.</dd>
<dt>0.6.x</dt>
<dd>The 0.6.0 release, in 2002, kicked in a new phase of open source development for the validator,
including a number of bug fixes. 0.6.0 through 0.6.7 included mostly bug fixes and documentation updates.</dd>
- <dt>0.7.x</dt>
- <dd>The 0.7.0 release reorganized the validator to use templates, making it easier to produce different outputs (hence the development of an API). 0.7.0 through 0.7.4 included mostly bug fixes and documentation updates.</dd>
- <dt>0.8.x</dt>
- <dd>The 0.8.0 release sees the validator code reorganized around a more modular architecture, adding better XML checking capabilities.</dd>
+ <dt>Versions Prior to 0.6.0</dt>
+ <dd>Versioning up to version 0.5.x was only done as a development mechanism, and
+ the validator was not following a strict release cycle.</dd>
</dl>
</div><!-- doc -->
<!--#include virtual="footer.html" -->