<?xml version = "1.0" encoding = "UTF-8"?>
<!--
	#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	#
	# Copyright (C) 2003-2008 Open Microscopy Environment
	#       Massachusetts Institute of Technology,
	#       National Institutes of Health,
	#       University of Dundee,
	#       University of Wisconsin at Madison
	#
	#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-->
<!--
	#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	# Written by:  Ilya G. Goldberg, Josiah Johnston, Andrew J Patterson 
	#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-->
<xsd:schema xmlns = "http://www.openmicroscopy.org/Schemas/CA/2008-09"
	targetNamespace = "http://www.openmicroscopy.org/Schemas/CA/2008-09"
	xmlns:OME = "http://www.openmicroscopy.org/Schemas/OME/2008-09"
	 xmlns:xsd = "http://www.w3.org/2001/XMLSchema"
	 version = "1"
	 elementFormDefault = "qualified">
	<xsd:import namespace = "http://www.openmicroscopy.org/Schemas/OME/2008-09" schemaLocation = "http://www.openmicroscopy.org/Schemas/OME/2008-09/ome.xsd"/>
	<xsd:element name = "OME"> <!-- top level definition -->
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref = "Project" minOccurs="1" maxOccurs="1"/>
				<xsd:element ref = "Dataset" minOccurs="1" maxOccurs="1"/>
				<xsd:element ref = "Image" minOccurs="1" maxOccurs="1"/>
				<xsd:element ref = "CustomAttributes" minOccurs="1" maxOccurs="1"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name = "Dataset">  <!-- top level definition -->
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref = "ProjectRef" minOccurs = "0" maxOccurs = "unbounded"/>
				<xsd:element ref = "CustomAttributes" minOccurs = "0" maxOccurs="1"/>
			</xsd:sequence>
			<xsd:attribute name = "ID" use = "required" type = "OME:DatasetID"/>
			<xsd:attribute name = "Name" use="optional" type = "xsd:string"/>
			<xsd:attribute name = "Description" use="optional" type = "xsd:string"/>
			<xsd:attribute name = "Locked" use="optional" type = "xsd:boolean"/>
			<xsd:attribute name = "Experimenter" use="optional" type = "OME:ExperimenterID"/>
			<xsd:attribute name = "Group" use="optional" type = "OME:GroupID"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name = "Image"> <!-- top level definition -->
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref = "DatasetRef" minOccurs = "0" maxOccurs = "unbounded"/>
				<xsd:element ref = "Region" minOccurs = "0" maxOccurs = "unbounded"/>
				<xsd:element ref = "CustomAttributes" minOccurs = "0" maxOccurs="1"/>
			</xsd:sequence>
			<xsd:attribute name = "ID" use = "required" type = "OME:ImageID"/>
			<xsd:attribute name = "Name" use="optional" type = "xsd:string"/>
			<xsd:attribute name = "CreationDate" use="optional" type = "xsd:dateTime"/>
			<xsd:attribute name = "Description" use="optional" type = "xsd:string"/>
			<xsd:attribute name = "Experimenter" use="optional" type = "OME:ExperimenterID"/>
			<xsd:attribute name = "Group" use="optional" type = "OME:GroupID"/>
			<xsd:attribute name = "DefaultPixels" use="optional" type = "OME:PixelsID"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name = "Region"> <!-- top level definition -->
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref = "Region" minOccurs = "0" maxOccurs = "unbounded"/>
				<xsd:element ref = "CustomAttributes" minOccurs = "0" maxOccurs="1"/>
			</xsd:sequence>
			<xsd:attribute name = "ID" use = "required" type = "OME:RegionID"/>
			<xsd:attribute name = "Name" use="optional" type = "xsd:string"/>
			<xsd:attribute name = "Tag" use="optional" type = "xsd:string"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name = "CustomAttributes"> <!-- top level definition -->
		<xsd:complexType>
			<xsd:sequence>
				<xsd:any processContents = "skip" minOccurs = "0" maxOccurs = "unbounded"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name = "Project"> <!-- top level definition -->
		<xsd:complexType>
			<xsd:attribute name = "ID" use = "required" type = "OME:ProjectID"/>
			<xsd:attribute name = "Name" use="optional" type = "xsd:string"/>
			<xsd:attribute name = "Description" use="optional" type = "xsd:string"/>
			<xsd:attribute name = "Experimenter" use="optional" type = "OME:ExperimenterID"/>
			<xsd:attribute name = "Group" use="optional" type = "OME:GroupID"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name = "DatasetRef"> <!-- top level definition -->
		<xsd:complexType>
			<xsd:attribute name = "ID" use = "required" type = "OME:DatasetID"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name = "ProjectRef"> <!-- top level definition -->
		<xsd:complexType>
			<xsd:attribute name = "ID" use = "required" type = "OME:ProjectID"/>
		</xsd:complexType>
	</xsd:element>
</xsd:schema>
