<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
		"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
<chapter id="introduction">

	<title>Introduction</title>

	<para>
		This User Guide covers the @tomcat.product.name@ (@tomcat.product.name.short@), the @jetty.product.name@
		(@jetty.product.name.short@) and the @kernel.product.name@ (@kernel.product.name.short@), although it emphasises the
		@tomcat.product.name.short@ since that is likely to apply to more users.
	</para>

	<section>
		<title>A Note for @kernel.product.name@ Users</title>
		<para>
			@kernel.product.name@ users can be reassured that the majority of the information
			in this Guide is directly applicable to the @kernel.product.name@ and they can simply ignore the web-related sections.
		</para>
    </section>


	<section>
		<title>A Note for @jetty.product.name@ Users</title>
		<para>
			@jetty.product.name@ users can be reassured that the majority of the information
			in this Guide is directly applicable to the @jetty.product.name@ and they can simply ignore the @tomcat.product.name@ specific sections.
		</para>
    </section>

	<section>
		<title>A Note for @nano.product.name@ Users</title>
		<para>
			@nano.product.name@ is a bit different than @kernel.product.name.short@ and @tomcat.product.name.short@.
			It is the smallest Virgo offering and takes performance to its limits, almost instantly booting up.
			@nano.product.name@ users will find a number of sections in this guide useful but sections that refer to
			<emphasis>plans, PARs and configuration deployment, regions, application scoping and libraries support</emphasis>
			are NOT relevant for @nano.product.name@ or @nano.product.name.short@ and should be ignored.
			This Virgo distribution relies on p2 for its provisioning, therefore is bound to p2 concepts such as <emphasis>p2 features and update sites</emphasis>.
			Note also that @nano.product.name@ includes Gemini.Web as its default web container implementation and uses its default configuration.
		</para>
    </section>

</chapter>