<?xml version="1.0" encoding="UTF-8"?>
<schema
		xmlns="http://www.w3.org/2001/XMLSchema"
		xmlns:plan="http://www.eclipse.org/virgo/schema/plan"
		targetNamespace="http://www.eclipse.org/virgo/schema/plan"
		elementFormDefault="qualified">

<!-- Types -->
	<complexType name="nameValueType">
		<attribute name="name" type="string" use="required" >
			<annotation>
				<documentation><![CDATA[The name of the attribute/property.]]></documentation>
			</annotation>
		</attribute>
		<attribute name="value" type="string" use="required" >
			<annotation>
				<documentation><![CDATA[The value of the attribute/property.]]></documentation>
			</annotation>
		</attribute>
	</complexType>
	
	<complexType name="attributesType">
		<sequence minOccurs="1" maxOccurs="unbounded">
			<element name="attribute" type="plan:nameValueType">
				<annotation>
					<documentation><![CDATA[An attribute for replacement in the plan.]]></documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	
	<complexType name="artifactType">
		<sequence minOccurs="0" maxOccurs="unbounded">
			<element name="property" type="plan:nameValueType">
				<annotation>
					<documentation>
						<![CDATA[Defines a property for the enclosing artifact. Properties are interpreted in an artifact-specific manner.]]>
					</documentation>
				</annotation>
			</element>
		</sequence>
        <attribute name="type" type="string" use="required" >
			<annotation>
				<documentation><![CDATA[The type of the artifact.]]></documentation>
			</annotation>
		</attribute>
		<attribute name="name" type="string" use="required" >
			<annotation>
				<documentation><![CDATA[The name of the artifact.]]></documentation>
			</annotation>
		</attribute>
		<attribute name="version" type="string" use="optional" default="0">
            <annotation>
            	<documentation><![CDATA[The version or version range for this artifact.
This version or version number must meet the OSGi version specification. This attribute is optional and when not specified will result in a default value of "0" meaning 0 to infinity in OSGi.]]></documentation>
            </annotation>
		</attribute>
	</complexType>

	<complexType name="plan">
		<sequence minOccurs="1" maxOccurs="1">
			<sequence minOccurs="0" maxOccurs="1">
				<element name="attributes" type="plan:attributesType">
					<annotation>
						<documentation><![CDATA[The attributes for this plan]]></documentation>
					</annotation>
				</element>
			</sequence>
	        <sequence minOccurs="1" maxOccurs="unbounded">
				<element name="artifact" type="plan:artifactType">
					<annotation>
						<documentation><![CDATA[An artifact to include as part of this plan.]]></documentation>
					</annotation>
				</element>
			</sequence>
		</sequence>
		<attribute name="name" type="string" use="required">
			<annotation>
				<documentation><![CDATA[The name of this plan.
This is one component of the unique identifier for this plan along with a type of 'plan' and a specified version.]]></documentation>
			</annotation>
		</attribute>
		<attribute name="version" use="required">
            <annotation>
            	<documentation><![CDATA[The version of this plan.
This version must meet the OSGi version specification. This is one component of the unique identifier for this plan along with a type of 'plan' and a specified name.]]></documentation>
            </annotation>
            <simpleType>
				<restriction base="string">
					<pattern value="\d+(\.\d+(\.\d+(\.([\w_-])+)?)?)?"/>
				</restriction>
			</simpleType>
		</attribute>
		<attribute name="scoped" type="boolean" use="required">
            <annotation>
            	<documentation><![CDATA[Whether or not the artifacts in the plan should be installed into a plan-specific scope. When scoping is disabled, the artifacts are deployed into the global scope and are available for access by all other artifacts.]]></documentation>
            </annotation>
		</attribute>
		<attribute name="atomic" type="boolean" use="required" >
			<annotation>
				<documentation><![CDATA[Whether the lifecycle of the artifacts in the plan should be tied together. Making a plan atomic means that install, start, stop and uninstall events for a single artifact in the plan will be escalated to all artifacts in the plan. Also, in an atomic plan, Virgo prevents artifacts from being in inconsistent states. For example, if one artifact should fail to start, then Virgo will stop all artifacts in the plan.]]></documentation>
			</annotation>
		</attribute>
		<attribute name="provisioning" type="string" default="inherit" >
			<annotation>
				<documentation><![CDATA[Specifies whether Virgo installs bundles from the repository to attempt to satisfy any missing dependencies in the plan. A value of 'auto' instructs Virgo to install bundles from the repository to attempt to satisfy any missing dependencies in the plan. This is known as 'auto-provisioning'. A value of 'disabled' prevents Virgo from installing bundles from the repository to attempt to satisfy any missing	dependencies in the plan. A value of 'inherit', which is the default if no value is specified, inherits the parent plan's provisioning behaviour. If the plan does not have a parent, it inherits Virgo's auto-provisioning behaviour.]]></documentation>
			</annotation>
		</attribute>
	</complexType>

<!-- Elements -->
	<element name="plan" type="plan:plan">
		<annotation>
			<documentation><![CDATA[Plans are a way to group bundles, and other artifacts, together as a single logical unit in Virgo. Within a plan, bundles and services can be placed into a scope that isolates them from the rest of the system. This scoping ensures that the bundles wire to each other and see each other's services in preference to services from outside the scope. Scoping also prevents application code from leaking into the global scope or scope of another application. In addition, a plan can serve as a way to link the lifcycle of a group of bundles together atomically. This atomicity ensures that instal, start, stop, and uninstall events on a single artifact in the plan will be escalated to all artifacts in the plan.]]></documentation>
		</annotation>
	</element>

</schema>