<?xml version="1.0" encoding="utf-8"?>
<!-- edited with XMLSpy v2006 sp2 U (http://www.altova.com) by Gudmundur Jokulsson (Norut IT) -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml" xmlns:sat="http://cweb.ksat.no/cweb/schema/satellite" xmlns:vd="http://cweb.ksat.no/cweb/schema/vessel" targetNamespace="http://cweb.ksat.no/cweb/schema/vessel" elementFormDefault="qualified" attributeFormDefault="unqualified" version="3.1.1" id="vd">
	<xsd:annotation>
		<xsd:documentation>
		    Copyright (c) 2006 KSAT and Norut IT, All Rights Reserved.
			Satellite based Vessel Detection - GML Application schema
		</xsd:documentation>
	</xsd:annotation>
	<!-- ====================================================================== -->
	<!-- GML IMPORT -->
	<xsd:import namespace="http://www.opengis.net/gml" schemaLocation="http://cweb.ksat.no/cweb/schema/gml/3.1.1/base/feature.xsd"/>
	<xsd:import namespace="http://cweb.ksat.no/cweb/schema/satellite" schemaLocation="http://cweb.ksat.no/cweb/schema/satellite/sat.xsd"/>
	<!-- ================================================================== -->
	<!-- globally defined vd: elements (direct from gml or xsd namespace types) -->
	<!-- begin copies of element definitions from the ais schema -->
	<xsd:element name="length" type="xsd:decimal">
		<xsd:annotation>
			<xsd:documentation>In meters</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="beam" type="xsd:decimal">
		<xsd:annotation>
			<xsd:documentation>In meters</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="heading" type="xsd:decimal">
		<xsd:annotation>
			<xsd:documentation>In decimal deegrees of angle</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="speedOverGround" type="xsd:decimal">
		<xsd:annotation>
			<xsd:documentation>In knots</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<!-- end copies of element definitions from the ais schema -->
	<xsd:element name="vesselType" type="xsd:string">
		<xsd:annotation>
			<xsd:documentation>Type of vessel detected.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="probability" type="xsd:integer">
		<xsd:annotation>
			<xsd:documentation>Probability of correctness of oberservation (range 0 to 100)</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="description" type="xsd:string">
		<xsd:annotation>
			<xsd:documentation>A free-text description of the observation.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="dataSource" type="xsd:string">
		<xsd:annotation>
			<xsd:documentation>Name of organization or system providing this feature collection.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<!-- ================================================================== -->
	<!-- vd: detected vessel element - based on a gml Point -->
	<xsd:element name="vessel" type="vd:VesselType" substitutionGroup="gml:pointProperty">
		<xsd:annotation>
			<xsd:documentation>The snapshot of a vessel object. Inherits the pointMemberType of gml</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:complexType name="VesselType">
		<xsd:complexContent>
			<xsd:extension base="gml:PointPropertyType">
				<xsd:sequence>
					<xsd:element ref="vd:vesselType" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>optional</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="vd:length" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>optional</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="vd:beam" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>optional</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="vd:speedOverGround" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>SOG as defined for AIS messages (optional)</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="vd:heading" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>Heading as defined for AIS messages (optional)</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="vd:probability" minOccurs="0"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<!-- ================================================================== -->
	<!-- VD Feature Type -->
	<xsd:element name="feature" type="vd:FeatureType" substitutionGroup="gml:_Feature">
		<xsd:annotation>
			<xsd:documentation>An VD feature encloses a snapshot of a single detected vessel</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:complexType name="FeatureType">
		<xsd:complexContent>
			<xsd:extension base="gml:AbstractFeatureType">
				<xsd:sequence>
					<xsd:element ref="vd:vessel">
						<xsd:annotation>
							<xsd:documentation>The actual vessel status</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="sat:source" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>Source (optional)  represents the satellite product of origin, only significant if not present in the feature collection at the higher level</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<!-- =================================================== -->
	<!-- =================================================== -->
	<!-- The Request element for a VD Feature Service                           -->
	<!-- =================================================== -->
	<!-- =================================================== -->
	<xsd:element name="getFeature" type="sat:GetFeatureType">
		<xsd:annotation>
			<xsd:documentation>This is the concrete request element used to query a service for VD features</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<!-- =================================================== -->
	<!-- =================================================== -->
	<!-- The Response element for a VD Feature Service                        -->
	<!-- =================================================== -->
	<!-- =================================================== -->
	<xsd:element name="featureCollection" type="vd:FeatureCollectionType" substitutionGroup="gml:_FeatureCollection">
		<xsd:annotation>
			<xsd:documentation>This is the concrete response element used to query a service for VD features</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<!-- VD  Feature Collection Type -->
	<xsd:complexType name="FeatureCollectionType">
		<xsd:annotation>
			<xsd:documentation>
				An VD feature collection encloses a set of VD features.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="gml:AbstractFeatureCollectionType">
				<xsd:sequence>
					<xsd:element ref="sat:requestID" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>If an requestID was given by the requesting part, it's value shall be set here</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<!-- optional collection common elements -->
					<xsd:element ref="sat:source" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>Source (optional)  represents the satellite product of origin</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="vd:description" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>A free-text description of the observation.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element ref="vd:dataSource" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>DataSource (optional)  represents here the generating organizational source for this feature collection, e.g. name of the providing organization</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
</xsd:schema>
