<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XML Spy v4.0 U (http://www.xmlspy.com) by Ozgur Balsoy (Florida State University) -->
<xsd:schema targetNamespace="http://aspen.csit.fsu.edu/project/gxos" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://aspen.csit.fsu.edu/project/gxos" xmlns:gxos="http://aspen.csit.fsu.edu/project/gxos" elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.3">
	<xsd:complexType name="AcknowledgeObjectType">
		<xsd:sequence>
			<xsd:element name="AcknowledgeStatus">
				<xsd:annotation>
					<xsd:documentation>Request || Reply</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="Request"/>
						<xsd:enumeration value="Reply"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="AcknowledgeRequest" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>AcknowledgeRequest is no || onreceipt || oncomplete
Default for AcknowledgeRequest is no</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="no"/>
						<xsd:enumeration value="onreceipt"/>
						<xsd:enumeration value="oncomplete"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="AcknowledgeReply" type="xsd:integer" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>AcknowledgeReply links to HistoryObject by referencing value of ProcessingID</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="CustomParameter">
		<xsd:annotation>
			<xsd:documentation>Used to specify parameters of a custom capability.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="parametervalue" maxOccurs="unbounded">
				<xsd:complexType>
					<xsd:simpleContent>
						<xsd:extension base="xsd:string">
							<xsd:attribute name="name" type="xsd:string" use="required"/>
						</xsd:extension>
					</xsd:simpleContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="InternalND">
		<xsd:annotation>
			<xsd:documentation>Specify internal location of a GXOS object.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="InternalAddress" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>Absolute Garnet Address //RootName/Collection1/Collection2/ …. /CollectionN/node
As RootNames unique, this is unique.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="InternalHandle" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Only used in Java implementation for actual program handle to Object.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="HelpDirectory" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Optional Specification of one or more external locations where we might be able to find information to understand more
about GXOS Specification of This TreeObject and its related quantities.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ExternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ExternalND">
		<xsd:annotation>
			<xsd:documentation>Specify external location of information.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="ExternalURL" type="xsd:anyURI" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>URL</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ExternalFile" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>File name on ExternalComputer</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ExternalComputer">
				<xsd:annotation>
					<xsd:documentation>DEVICEOBJECT
Computer where information can be found. Defaults to current ClientDevice or ServerDevice if information parsed on Server.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:DeviceObjectType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="ExternalType">
			<xsd:annotation>
				<xsd:documentation>File || Directory</xsd:documentation>
			</xsd:annotation>
			<xsd:simpleType>
				<xsd:restriction base="xsd:string">
					<xsd:enumeration value="File"/>
					<xsd:enumeration value="Directory"/>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
	</xsd:complexType>
	<xsd:complexType name="DestinationObjectType">
		<xsd:annotation>
			<xsd:documentation>Specify from users point of view destination queue for message; implicity uses internally a TopicObject DTD
But DestinationObject inherits from TreeObject</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Destination" maxOccurs="unbounded">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:DestinationTypeX"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="DestinationforJMS" minOccurs="0">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:DestinationforJMSType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="DestinationforJMSType">
		<xsd:sequence>
			<xsd:element name="DestinationQueue" type="xsd:string" minOccurs="0"/>
			<xsd:element name="DestinationTopic" type="xsd:string" minOccurs="0"/>
			<xsd:element name="DestinationSubTopic" type="xsd:string" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="DestinationTypeX">
		<xsd:annotation>
			<xsd:documentation>List of Entities for which one wishes to direct some information
This can be explicit names or implicitly defined either a selector or by Topic of Publish/Subscribe system</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="DestinationType">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="System"/>
						<xsd:enumeration value="Update"/>
						<xsd:enumeration value="Filter"/>
						<xsd:enumeration value="Topic"/>
						<xsd:enumeration value="Device"/>
						<xsd:enumeration value="User"/>
						<xsd:enumeration value="SourceUser"/>
						<xsd:enumeration value="SourceDevice"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="DestinationGroup" minOccurs="0">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="MessageID">
		<xsd:annotation>
			<xsd:documentation>Unique ID of message including sequencing Information. This is discussed by Shrideep. For Garnet Message is uniquely specified by GXOS Handle in InternalND DTD of Stream and Sequence Number within Stream.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="GMSSequenceNumber" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>Sequence Number of Event in this Stream (Node/ParentObject)</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="GMSStream">
				<xsd:annotation>
					<xsd:documentation>Stream to which event belongs in full InternalND Syntax //GarnetRoot/B/C/  ../Streamitself
This is ESSENTIAL information as uniquely determines VirtualEnvironment  Sharedlet (collaborating application) and SourceDevice and EventUserObject</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="IDtostring" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>String produced for JMSMessageID</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TimeObject">
		<xsd:annotation>
			<xsd:documentation>Specify time</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Time" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>Time of an event: typically in number of milliseconds since Jan 1, 1970, 00:00:00, Universal Coordinated Time (GMT).</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="TimeSyntax" type="xsd:string" default="GMTMillisecs" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Default TimeSyntax is above is GMTMillisecs. Other forms e.g. Mon, 19 Dec 1995 GMT are represented by TimeSyntax as GMTString. PSTString, EDTString etc. are other forms.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="CurrentClock" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Clock domain used in Time -- this is explained in separate memo. Typically this is either clock of source or the System Clock Domain defined for current MeetingContext. One just uses </xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ReferenceAction" default="begin" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>begin || end Defines action that Time refers to -- begin is default if property not defined. This is used by SMIL collections.</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="begin"/>
						<xsd:enumeration value="end"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="OriginalClock" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Original clock if time converted to a particular standard. One just uses the GXOS Internal Name for Device whose clock is originally recorded time.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ObjectRealization">
		<xsd:sequence>
			<xsd:element name="InternalName" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Internal name for instance by WebExport and NodeProfile</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="RelatedInternalName" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Related NodeContent's InternalName</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="RealizationStrategy">
				<xsd:annotation>
					<xsd:documentation>Placeholder for elements RealizationType, Resolution, RenderingOptimization, ExportDetails</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:RealizationStrategyType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="RelatedObjects">
				<xsd:annotation>
					<xsd:documentation>Container for related objects</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:RelatedObjectsType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ContentType" minOccurs="0" maxOccurs="unbounded">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="WebExport"/>
						<xsd:enumeration value="Summary"/>
						<xsd:enumeration value="Template"/>
						<xsd:enumeration value="BuiltDocument"/>
						<xsd:enumeration value="BasicDocument"/>
						<xsd:enumeration value="Fragment"/>
						<xsd:enumeration value="Sharedlet"/>
						<xsd:enumeration value="PowerPoint"/>
						<xsd:enumeration value="Word"/>
						<xsd:enumeration value="Multimedia"/>
						<xsd:enumeration value="WebML"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="GXOSObjectType">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="local"/>
						<xsd:enumeration value="link"/>
						<xsd:enumeration value="external"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="LocalGXOSObject" minOccurs="0">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:LocalGXOSObjectType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="LinkGXOSObject" minOccurs="0">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ExternalGXOSObject" minOccurs="0">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ExternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="RealizationStrategyType">
		<xsd:annotation>
			<xsd:documentation>Placeholder for elements </xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="RealizationType" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Specify reason for this Realization.
Normal || Rendering || Resolution || Mirror </xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="Normal"/>
						<xsd:enumeration value="Rendering"/>
						<xsd:enumeration value="Resolution"/>
						<xsd:enumeration value="Mirror"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Resolution" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Optional element in RealizationStrategy with attributes X Y Z Color</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ResolutionType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="RenderingOptimization" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Optional element in RealizationStrategy with attributes
Monitor || CAVE || CellPhone || PDA || AudioOnly || NoAudio</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="Monitor"/>
						<xsd:enumeration value="CAVE"/>
						<xsd:enumeration value="CellPhone"/>
						<xsd:enumeration value="PDA"/>
						<xsd:enumeration value="AudioOnly"/>
						<xsd:enumeration value="NoAudio"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:sequence>
		<!--In specs doc, there is ExportDetails element mentioned with this  type in GXOS/ObjectRealization DTD section. It is not defined.-->
	</xsd:complexType>
	<xsd:complexType name="ResolutionType">
		<xsd:attribute name="x" type="xsd:float"/>
		<xsd:attribute name="y" type="xsd:float"/>
		<xsd:attribute name="z" type="xsd:float"/>
		<xsd:attribute name="color" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="RelatedObjectsType">
		<xsd:annotation>
			<xsd:documentation>Container for related objects</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="RelationComment" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>Freeform comment</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="RelatedObject">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="RelationReason">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="ExportSource"/>
						<xsd:enumeration value="Event"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="LocalGXOSObjectType">
		<xsd:sequence>
			<xsd:element name="LocalMimeType" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>See Content-Type in MIME encoding. Also can use XSIL (Caktech Scientific Data Format) XML or JMS body types.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="LocalEncoding" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>See Content-Transfer-Encoding in MIME encoding.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="LocalBody">
				<xsd:annotation>
					<xsd:documentation>Byte streams of local realization</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:hexBinary"/>
				</xsd:simpleType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TreeObject">
		<xsd:annotation>
			<xsd:documentation>Garnet XML based Object Specification
Specify hierarchy of Collection(session), stream, events  or basic hierarchial unit.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Namespaces" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Namespaces in GXOS provide means to name an object subtree and access it through its name. Objects in different namespaces can be named using the format nsname:object_name. Each namespace name is valid only for its children and subtrees.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:CustomParameter"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ParentObject" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>ParentObject in InternalND DTD of which current object is a child.
Originally we allowed Multiple ParentObjects to support Multiple TreeContexts which in UNIX language are different Symbolic links. This has been replaced by NodeProfile mechanism.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="NodeName" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>Name of this node within current hierarchy.
If NodeRooting is Root, the NodeName must be unique so that all trees are uniquely identified.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="NodeType">
				<xsd:annotation>
					<xsd:documentation>NodeType equals Event is same as NodeType equals GMS.
NodeNames ParentMetaData and ParentFragment are containers for more information about parent node.</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="ParentMetaData"/>
						<xsd:enumeration value="ParentFragment"/>
						<xsd:enumeration value="Document"/>
						<xsd:enumeration value="Topic"/>
						<xsd:enumeration value="Sharedlet"/>
						<xsd:enumeration value="Device"/>
						<xsd:enumeration value="User"/>
						<xsd:enumeration value="Event"/>
						<xsd:enumeration value="Stream"/>
						<xsd:enumeration value="VirtualEnvironment"/>
						<xsd:enumeration value="Collection"/>
						<xsd:enumeration value="MeetingContext"/>
						<xsd:enumeration value="MegaMeetingContext"/>
						<xsd:enumeration value="RootContext"/>
						<xsd:enumeration value="Other"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="CustomType" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Optional detailed type with a meaning specific to NodeType e.g. for NodeType equals Event, CustomType is MessageType.
If NodeType is Collection then CustomType is either Mixed or NodeType of Contained Objects.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="NodeRooting">
				<xsd:annotation>
					<xsd:documentation>Leaf || InternalNode || Root</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="Leaf"/>
						<xsd:enumeration value="InternalNode"/>
						<xsd:enumeration value="Root"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="NodeVersionNumber" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Version of schema used.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="NodeComment" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Any number of free form comments</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="NodeUpdateTime" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Time at which Node last updated. Defaults to NodeStartTime</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:TimeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="NodeChildren" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Optional record of child objects (implied by GXOS child objects having NodeParent pointing to this object)</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="NodeChild" maxOccurs="unbounded">
							<xsd:annotation>
								<xsd:documentation>Handle to child.</xsd:documentation>
							</xsd:annotation>
							<xsd:complexType>
								<xsd:complexContent>
									<xsd:extension base="gxos:InternalND"/>
								</xsd:complexContent>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="HistoryObject" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Specify processing history with multiple ProcessingTimes and ProcessingDevices and ProcessingStatus. ProcessingContext defines part of Garnet that performed processing.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:HistoryObjectType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="NodeStartTime" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Start time of this node in TimeObject DTD. Note that NodeStartTime and NodeEndTime can both a) be inherited from parents and b) depend on inheritance tree (i.e. TreeContext). So one could define NodeStartTime for a particular (Leaf) node and then NodeEndTime would depend on TreeContext with which this is used.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:TimeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="NodeEndTime" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>End time of this node in TimeObject DTD.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:TimeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Extensions" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Container for GXOS or CustomExtensions</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ExtensionsType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="CustomExtension" minOccurs="0" maxOccurs="unbounded">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:CustomExtensionType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="NodeProfile" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Customize this node using strategy specified by content type and TreeContext and by data added by system.
Profile includes elements TreeContext and CustomProfile.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:NodeProfileType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="NodeContents" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>A Node used solely as a container need not have any contents although a NodeContent of Type = Summary and a NodeIcon are recommended.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:NodeContentsType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Accessibility" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Defines accessibility rights of other objects i.e. processes, users, to this object.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="PolicyType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="HistoryObjectType">
		<xsd:sequence>
			<xsd:element name="ProcessingStage" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>This uses ComputerObject DTD and is SourceObject for firststep.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ProcessingStageType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ProcessingStageType">
		<xsd:sequence>
			<xsd:element name="ProcessingStatus" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Status or action on event at this stage. Choose from Success || Failure || Replay || Originate || Acknowledge</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="Success"/>
						<xsd:enumeration value="Failure"/>
						<xsd:enumeration value="Replay"/>
						<xsd:enumeration value="Originate"/>
						<xsd:enumeration value="Acknowledge"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ProcessingComment" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Any comment on why processing needed.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ProcessingTime" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Put into ProcessingTime TimeObject DTD time of processing including Time, CurrentClock, ReferenceAction. If ProcessingStatus is Originate, then use Node/NodeStartTime.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:TimeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ProcessingDevice" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Device where processing occured. If ProcessingStatus is Originate, then use SourceDevice.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ProcessingContext" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Context where processing occured. If ProcessingStatus is Originate, then use GMSStream.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="OriginalGMSID" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>If needed ID of Update message spawning this processing. If absent, then an Internal Update</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:MessageID"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="ProcessingNumber" type="xsd:integer" use="required">
			<xsd:annotation>
				<xsd:documentation>Label (incremented by 1 starting at zero) of ProcessingStage to allow reference by AcknowledgeObject.</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:complexType>
	<xsd:complexType name="CustomExtensionType">
		<xsd:sequence>
			<xsd:element name="ExtensionType">
				<xsd:annotation>
					<xsd:documentation>IMS || ADL || Gateway</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="IMS"/>
						<xsd:enumeration value="ADL"/>
						<xsd:enumeration value="Gateway"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ExtensionsType">
		<xsd:annotation>
			<xsd:documentation>Container for GXOS or CustomExtensions</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="ParameterExtension" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Hold parameters for undefined use. Extends CustomParameter with parameteruse attribute</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ParameterExtensionType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ParameterExtensionType">
		<xsd:complexContent>
			<xsd:extension base="gxos:CustomParameter">
				<xsd:attribute name="parameteruse" type="xsd:string" use="required"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="NodeProfileType">
		<xsd:sequence>
			<xsd:element name="TreeContext">
				<xsd:annotation>
					<xsd:documentation>This defines nature of tree within which this node is located -- currently TreeContext is defined as a set of keyword tags.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:CustomParameter"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="CustomProfile" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Specify the custom application and TreeContext specific parameters used by NodeProfile.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:CustomParameter"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="NodeContentsType">
		<xsd:sequence>
			<xsd:element name="NodeContent" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Specify content in ObjectRealization DTD.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ObjectRealization"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="NodeIcon" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Specify object thumbnail display icon in ObjectRealization DTD.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="DeviceObjectType">
		<xsd:annotation>
			<xsd:documentation>Extends TreeObject to specify Server or Client side device or computer resource</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="gxos:TreeObject">
				<xsd:sequence>
					<xsd:element name="DeviceType">
						<xsd:annotation>
							<xsd:documentation>Obviously could be much richer</xsd:documentation>
						</xsd:annotation>
						<xsd:simpleType>
							<xsd:restriction base="xsd:string">
								<xsd:enumeration value="PDA"/>
								<xsd:enumeration value="Windows"/>
								<xsd:enumeration value="Mac"/>
								<xsd:enumeration value="UNIX"/>
							</xsd:restriction>
						</xsd:simpleType>
					</xsd:element>
					<xsd:element name="Machinename" type="xsd:string" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>Name.Domain is Computer Full Name</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="Domain" type="xsd:string" minOccurs="0"/>
					<xsd:element name="IP" type="xsd:string" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>IP Address</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="EventObject">
		<xsd:annotation>
			<xsd:documentation>Extends TreeObject for events in Stream.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="gxos:TreeObject">
				<xsd:sequence>
					<xsd:element name="GMSMessageMode" type="xsd:string" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>Default is Implicit or that GMSMessageMode implied by other Message properties;
Update implies that Message is Getting or Setting properties of objects and Event has an UpdateExtension
Has additional allowed values for particular MessageType's</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="EventDestination" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>Specify list of destination objects using DestinationObject DTD
Allows multiple destinations and implies DestinationQueue, DestinationTopic, DestinationSubTopic
Used in cruder JMS Header specification of Destination</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:DestinationObjectType"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="SourceDevice" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>Client or Server Computer that produced message with InternalND pointer to it as a DeviceObject 
Generates SourceName SourceDomain  used in JMS
This is not really necessary as implied by GMSStream and Information available from GXOS</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:InternalND"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="Priority" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>0 (lowest) to 100 Highest)</xsd:documentation>
						</xsd:annotation>
						<xsd:simpleType>
							<xsd:restriction base="xsd:integer">
								<xsd:minInclusive value="0"/>
								<xsd:maxInclusive value="100"/>
							</xsd:restriction>
						</xsd:simpleType>
					</xsd:element>
					<xsd:element name="PriorityScope" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>Collection (of messages) wrt to which Priority refers
If message defines a MeetingContext, default value is GarnetRoot; if message is internal to a stream, default value is StreamName
If message inside a MeetingContext but outside a stream, then PriorityScope is defaulted to MeetingContextName
PriorityScope can reference any root or node of any tree containing this message -- see TreeObject DTD
Idea is that subsystem setting Priority only has "visibility" a certain way up the tree from where it sits
In particular, it may only know about the Sharedlet(Stream) or a little broader the MeetingContext from which message comes from
The assumption is that "system" can apply a relative priority between different PriorityScope's</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:InternalND"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="EventUserName" type="xsd:string" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>The unique user NickName associated with this Event
This is not really necessary as implied by GMSStream and Information available from GXOS</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="EventUserObject" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>Specifies in UserObject DTD the user at Source
This is not really necessary as implied by GMSStream and Information available from GXOS</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:InternalND"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="GMSMessageID">
						<xsd:annotation>
							<xsd:documentation>Unique ID of message including sequencing Information. This is discussed by Shrideep. For Garnet
Message is uniquely specified by GXOS Handle in InternalND DTD of Stream and Sequence Number within Stream</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:MessageID"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="AcknowledgeObject" minOccurs="0">
						<xsd:annotation>
							<xsd:documentation>Request sending of Acknowledge message to source on either receipt or completion of processing
or Reply to such a Request</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:AcknowledgeObjectType"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="UpdateEventType">
		<xsd:complexContent>
			<xsd:extension base="gxos:EventObject">
				<xsd:sequence>
					<xsd:element name="UpdateMode">
						<xsd:simpleType>
							<xsd:restriction base="xsd:string">
								<xsd:enumeration value="Edit"/>
								<xsd:enumeration value="Create"/>
								<xsd:enumeration value="Enquiry"/>
								<xsd:enumeration value="Copy"/>
								<xsd:enumeration value="ReturnProperties"/>
								<xsd:enumeration value="ReturnObject"/>
								<xsd:enumeration value="Timelimit"/>
								<xsd:enumeration value="Error"/>
							</xsd:restriction>
						</xsd:simpleType>
					</xsd:element>
					<xsd:element name="EditComment" type="xsd:string"/>
					<xsd:element name="EditObject">
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:TreeObject"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
					<xsd:choice>
						<xsd:sequence>
							<xsd:element name="Locking">
								<xsd:simpleType>
									<xsd:restriction base="xsd:string">
										<xsd:enumeration value="Wait"/>
										<xsd:enumeration value="Reject"/>
										<xsd:enumeration value="None"/>
									</xsd:restriction>
								</xsd:simpleType>
							</xsd:element>
							<xsd:element name="Timelimit" type="xsd:nonNegativeInteger"/>
						</xsd:sequence>
						<xsd:element name="RequestingGMSID">
							<xsd:complexType>
								<xsd:complexContent>
									<xsd:extension base="gxos:MessageID"/>
								</xsd:complexContent>
							</xsd:complexType>
						</xsd:element>
					</xsd:choice>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="MaybeObject">
		<xsd:choice>
			<xsd:element name="GObject">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:TreeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Raw" type="xsd:string"/>
		</xsd:choice>
	</xsd:complexType>
	<xsd:complexType name="WebExportShellType">
		<xsd:sequence>
			<xsd:element name="Phase">
				<xsd:annotation>
					<xsd:documentation>Phase to Execute</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="1"/>
						<xsd:enumeration value="2"/>
						<xsd:enumeration value="3"/>
						<xsd:enumeration value="4"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Phase1Export" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Container for Phase 1 which invokes "raw" or "native" Web Export and Extracts WebExportMD</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:Phase1ExportType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Phase2Export" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Container for Phase 2 which generates Templates for a Group</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:Phase2ExportType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Phase3Export" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Container for Phase 3 which inserts Fragments into Templates</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:Phase3ExportType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Phase4Export" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Container for Phase 4 which inserts Fragments into Templates</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:Phase4ExportType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Phase1ExportType">
		<xsd:sequence>
			<xsd:element name="Phase1Source">
				<xsd:annotation>
					<xsd:documentation>Source of Phase 1 Material</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ObjectRealization"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ExportPlace">
				<xsd:annotation>
					<xsd:documentation>Export Phase1Source to specified location. This can be used for Word or PowerPoint native export Internally to this Object both GXOS and Web Location for Export Material This is a Web Directory in case of PowerPoint or Word Export</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ObjectRealization"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="NamingStrategy">
				<xsd:annotation>
					<xsd:documentation>Standard Specify how files are to be named, where Metadata for pages or general information stored etc.</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="Standard"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ExportType">
				<xsd:annotation>
					<xsd:documentation>Type of Export File to be produced</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="PDF"/>
						<xsd:enumeration value="SVG"/>
						<xsd:enumeration value="HTML"/>
						<xsd:enumeration value="Real"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="SourceType">
				<xsd:annotation>
					<xsd:documentation>Type of Source File</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="PowerPoint"/>
						<xsd:enumeration value="Word"/>
						<xsd:enumeration value="Real"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ExportParameters" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Placeholder for Parameters used to define Export -- This is SourceType and ExportType dependent</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ExportParametersType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ProcessingRecord">
				<xsd:annotation>
					<xsd:documentation>GXOS Object holding Record of this Provessing</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Phase2ExportType">
		<xsd:sequence>
			<xsd:element name="Phase2Source">
				<xsd:annotation>
					<xsd:documentation>Source of Phase 2 Material -- Typically ProcessingRecord from Phase 1 or Playlist Specification CustomType of Phase2Source is either Phase1Export or Playlist </xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ExportPlace">
				<xsd:annotation>
					<xsd:documentation>Export Phase2Source to specified location. Internally to this Object both GXOS and Web Location for Export Material
This is a Web Directory in case of PowerPoint or Word Export</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ObjectRealization"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Template">
				<xsd:annotation>
					<xsd:documentation>Template</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="TemplateType">
				<xsd:annotation>
					<xsd:documentation>Type of Template. Group is things like a PowerPoint Presentation.</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="Group"/>
						<xsd:enumeration value="Page"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ExportParameters" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Placeholder for Parameters used to define Export </xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ExportParametersType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ProcessingRecord">
				<xsd:annotation>
					<xsd:documentation>GXOS Object holding Record of this Provessing</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Phase3ExportType">
		<xsd:sequence>
			<xsd:element name="Phase3Source">
				<xsd:annotation>
					<xsd:documentation>Source of Phase 3 Material - Either ProcessingRecord from Phase 3 or Vanilla Template without Group Complications</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ExportParameters" type="gxos:ExportParametersType" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Placeholder for Parameters used to define Export</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ProcessingRecord">
				<xsd:annotation>
					<xsd:documentation>GXOS Object holding Record of this Provessing</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Phase4ExportType">
		<xsd:sequence>
			<xsd:element name="Phase4Source">
				<xsd:annotation>
					<xsd:documentation>Source of Phase 3 Material - Either ProcessingRecord from Phase 3 or Vanilla Template without Group Complications</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ExportParameters" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Placeholder for Parameters used to define Export</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ExportParametersType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ProcessingRecord">
				<xsd:annotation>
					<xsd:documentation>GXOS Object holding Record of this Provessing</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ExportParametersType">
		<xsd:sequence>
			<xsd:element name="ExportParameter" minOccurs="0" maxOccurs="unbounded">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:CustomParameter"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="PlaylistExportType">
		<xsd:sequence>
			<xsd:element name="PlaylistExport" minOccurs="0">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:PlaylistExportType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="PlaylistSummary">
				<xsd:annotation>
					<xsd:documentation>Used to Specify Abstract of Constructed Group. Either contains MetaData in WebExportExtension or MetaData is Specified by user</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="PlaylistPage" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Used to Specify Next Page in Group. Either contains MetaData in WebExportExtension or MetaData is Specified by user</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ProcessingRecord">
				<xsd:annotation>
					<xsd:documentation>GXOS Object holding Record of this Provessing</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="WebExportMDType">
		<xsd:sequence>
			<xsd:element name="GroupLocation" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Associated GXOS Object for Group</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="GroupType" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="PowerPoint"/>
						<xsd:enumeration value="Word"/>
						<xsd:enumeration value="Multimedia"/>
						<xsd:enumeration value="WebML"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="GroupLabel" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Label used Internally to distinguish different Group Pages</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="GroupTitle" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Group Title</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="GroupAuthor" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Author</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:MaybeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="GroupDate" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Date</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:MaybeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="GroupMeeting">
				<xsd:annotation>
					<xsd:documentation>Meeting</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:MaybeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="GroupSummary">
				<xsd:annotation>
					<xsd:documentation>Abstract</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:MaybeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="GroupClipLength" type="xsd:nonNegativeInteger">
				<xsd:annotation>
					<xsd:documentation>Length if MultiMedia in Seconds</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="GroupAddons">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:GroupAddonsType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="GroupExtras" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Placeholder for Additional MetaData</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:GroupExtrasType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="PageLocation" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Associated GXOS Object for Page</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="PageType" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="PowerPoint"/>
						<xsd:enumeration value="Word"/>
						<xsd:enumeration value="Multimedia"/>
						<xsd:enumeration value="WebML(HTML XML etc.)"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="PageLabel" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>Label used Internally to distinguish different pages</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="PageTitle" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>Page Title</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="PageAuthor">
				<xsd:annotation>
					<xsd:documentation>Author -- If Present Overrides GroupAuthor</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:MaybeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="PageDate">
				<xsd:annotation>
					<xsd:documentation>Date -- If Present Overrides GroupDate</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:MaybeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="PageMeeting">
				<xsd:annotation>
					<xsd:documentation>Meeting -- If Present Overrides GroupMeeting</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:MaybeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="PageNumber" type="xsd:nonNegativeInteger">
				<xsd:annotation>
					<xsd:documentation>Page Number</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="PageClipLength" type="xsd:nonNegativeInteger" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Length if MultiMedia in Seconds</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="PageAddons">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:PageAddonsType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="PageExtras" minOccurs="0">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:PageExtrasType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="GroupExtrasType">
		<xsd:sequence>
			<xsd:element name="GroupExtra" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Define MetaData</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:CustomParameter"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="PageExtrasType">
		<xsd:sequence>
			<xsd:element name="PageExtra" minOccurs="0" maxOccurs="unbounded">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:CustomParameter"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="GroupAddonsType">
		<xsd:sequence>
			<xsd:element name="GroupAddon">
				<xsd:annotation>
					<xsd:documentation>Related Information including multimedia, notes etc.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ObjectRealization"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="PageAddonsType">
		<xsd:sequence>
			<xsd:element name="PageAddon">
				<xsd:annotation>
					<xsd:documentation>Related Information(pages) including multimedia, notes etc.</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:ObjectRealization"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TemplateTypeX">
		<xsd:sequence>
			<xsd:element name="InsertMD" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Any attribute defined in WebExportMD</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="InsertFile" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>This can be a general GXOS Address or just say "fred" to denote child with this NodeName</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND">
							<xsd:attribute name="Type" type="xsd:string" use="optional">
								<xsd:annotation>
									<xsd:documentation>This attribute selects a particular ContentType in NodeContents</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="Name" type="xsd:string" use="optional">
								<xsd:annotation>
									<xsd:documentation>This attribute selects a particular InternalName in NodeContents</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
						</xsd:extension>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="GXOSLink">
				<xsd:annotation>
					<xsd:documentation>Converted to proper Web Address as specified in NodeContent ObjectRealization</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:InternalND">
							<xsd:attribute name="Type" type="xsd:string" use="optional">
								<xsd:annotation>
									<xsd:documentation>This attribute selects a particular ContentType in NodeContents</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="Name" type="xsd:string" use="optional">
								<xsd:annotation>
									<xsd:documentation>This attribute selects a particular InternalName in NodeContents</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="PageLabel" type="xsd:string" use="optional">
								<xsd:annotation>
									<xsd:documentation>This attribute selects a particular PageLabel in WebExportMD</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="GroupLabel" type="xsd:string" use="optional">
								<xsd:annotation>
									<xsd:documentation>This attribute selects a particular GroupLabel in WebExportMD</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="PageNumber" use="optional">
								<xsd:annotation>
									<xsd:documentation>Next Previous or a Number</xsd:documentation>
								</xsd:annotation>
								<xsd:simpleType>
									<xsd:restriction base="xsd:string">
										<xsd:enumeration value="Next"/>
										<xsd:enumeration value="Previous"/>
										<xsd:enumeration value="Number"/>
									</xsd:restriction>
								</xsd:simpleType>
							</xsd:attribute>
						</xsd:extension>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="GXOSLoop" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Define Loop over Pages in a Group</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="GXOSShellType">
		<xsd:sequence>
			<xsd:element name="GXOSObject" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Inline GXOS Object to copy or run</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:TreeObject"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="shelloutput" type="xsd:boolean" minOccurs="0"/>
			<xsd:element name="run" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Value is a Comment</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:simpleContent>
						<xsd:extension base="xsd:string">
							<xsd:attribute name="asynchronous" type="xsd:boolean">
								<xsd:annotation>
									<xsd:documentation>If present run asynchronously -- equivalent to UNIX &amp;</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="command" use="required">
								<xsd:annotation>
									<xsd:documentation>load means load GXOS Objects into Executing GXOS Environment execute means execute file with internally defined syntax shellexecute means execute GXOSShell file</xsd:documentation>
								</xsd:annotation>
								<xsd:simpleType>
									<xsd:restriction base="xsd:string">
										<xsd:enumeration value="load"/>
										<xsd:enumeration value="execute"/>
										<xsd:enumeration value="shellexecute"/>
									</xsd:restriction>
								</xsd:simpleType>
							</xsd:attribute>
							<xsd:attribute name="internalfile" type="xsd:string">
								<xsd:annotation>
									<xsd:documentation>Internal (GXOS) Object to execute</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="externalfile" type="xsd:string">
								<xsd:annotation>
									<xsd:documentation>External File to execute</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="localfile" type="xsd:boolean">
								<xsd:annotation>
									<xsd:documentation>If present execute GXOSObject with localname given by localfile</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="internalinput" type="xsd:string">
								<xsd:annotation>
									<xsd:documentation>Internal (GXOS) Object to input</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="externalinput" type="xsd:string">
								<xsd:annotation>
									<xsd:documentation>External file to input </xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="localinput" type="xsd:boolean">
								<xsd:annotation>
									<xsd:documentation>If present input from GXOSObject with localname given by localinput</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="internaloutput" type="xsd:string">
								<xsd:annotation>
									<xsd:documentation>Internal (GXOS) Object to output to</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
							<xsd:attribute name="externaloutput" type="xsd:string">
								<xsd:annotation>
									<xsd:documentation>External file to output to</xsd:documentation>
								</xsd:annotation>
							</xsd:attribute>
						</xsd:extension>
					</xsd:simpleContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="WebExportShell">
				<xsd:annotation>
					<xsd:documentation>Basic Commands for WebExport</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:WebExportShellType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ProgramObjectType">
		<xsd:complexContent>
			<xsd:extension base="gxos:TreeObject">
				<xsd:sequence>
					<xsd:element name="StandardInput">
						<xsd:annotation>
							<xsd:documentation>Input File</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:InternalND"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="StandardOutput">
						<xsd:annotation>
							<xsd:documentation>Output File</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:InternalND"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="StandardError">
						<xsd:annotation>
							<xsd:documentation>Error File</xsd:documentation>
						</xsd:annotation>
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:InternalND"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="GXOSShell">
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:GXOSShellType"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="SecurityObject">
		<xsd:annotation>
			<xsd:documentation>This is the root object type for security. It contains multiple policies for each service provided in the architecture.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Policy" minOccurs="0" maxOccurs="unbounded">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="gxos:PolicyType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Authentication" minOccurs="0">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="AccessCode" type="xsd:string"/>
						<xsd:element name="Password">
							<xsd:simpleType>
								<xsd:restriction base="xsd:base64Binary"/>
							</xsd:simpleType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="PolicyType">
		<xsd:sequence>
			<xsd:element name="AccessDomain">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="ObjectList" minOccurs="0">
							<xsd:complexType>
								<xsd:sequence>
									<xsd:element name="AccessObject" maxOccurs="unbounded">
										<xsd:annotation>
											<xsd:documentation>The type of the Object element is the same as the InternalND so that we can have control over every object accessable through GXOS links.</xsd:documentation>
										</xsd:annotation>
										<xsd:complexType>
											<xsd:complexContent>
												<xsd:extension base="gxos:InternalND">
													<xsd:attribute name="accessable" default="allow">
														<xsd:simpleType>
															<xsd:restriction base="xsd:string">
																<xsd:enumeration value="allow"/>
																<xsd:enumeration value="deny"/>
															</xsd:restriction>
														</xsd:simpleType>
													</xsd:attribute>
												</xsd:extension>
											</xsd:complexContent>
										</xsd:complexType>
									</xsd:element>
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
						<xsd:element name="Privileges" minOccurs="0">
							<xsd:complexType>
								<xsd:sequence>
									<xsd:element name="Group" type="xsd:string" maxOccurs="unbounded"/>
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
						<xsd:element name="Hosts" minOccurs="0">
							<xsd:complexType>
								<xsd:sequence>
									<xsd:element name="Allow" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
									<xsd:element name="Deny" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Communication" minOccurs="0">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Protocol" type="xsd:string">
							<xsd:annotation>
								<xsd:documentation>Protocol element defines what type of communication protocol is used between user's or client application's site and the service specified in the SecurityObject's Context attribute. </xsd:documentation>
								<xsd:documentation>Values for Protocol could be S-HTTP, Kerberos V4, etc.</xsd:documentation>
								<xsd:documentation>A ProtocolType could be defined and set here.</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element name="Keys" minOccurs="0">
							<xsd:complexType>
								<xsd:sequence>
									<xsd:element name="Key" maxOccurs="unbounded">
										<xsd:complexType>
											<xsd:simpleContent>
												<xsd:extension base="xsd:string">
													<xsd:attribute name="Type" type="xsd:string"/>
													<xsd:attribute name="Encryption" type="xsd:string"/>
												</xsd:extension>
											</xsd:simpleContent>
										</xsd:complexType>
									</xsd:element>
								</xsd:sequence>
							</xsd:complexType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="Context" type="xsd:string" use="optional">
			<xsd:annotation>
				<xsd:documentation>Context attribute defines the service the security policy will be used to access. It must be defined for each policy.</xsd:documentation>
				<xsd:documentation>Values for Context could be Grading System, TMD, or other services provided in the overall architecture.</xsd:documentation>
			</xsd:annotation>
		</xsd:attribute>
	</xsd:complexType>
	<xsd:complexType name="UserObject">
		<xsd:annotation>
			<xsd:documentation>GXOS user class. It can use multiple personal information schemas. At the time, Virtual Classroom, IMS and PAPI types are supported.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="gxos:TreeObject">
				<xsd:sequence>
					<xsd:element name="PersonalInfoType" minOccurs="0">
						<xsd:simpleType>
							<xsd:restriction base="xsd:string">
								<xsd:enumeration value="VC"/>
								<xsd:enumeration value="IMS"/>
								<xsd:enumeration value="PAPI"/>
							</xsd:restriction>
						</xsd:simpleType>
					</xsd:element>
					<xsd:element name="Relations" minOccurs="0">
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Groups" maxOccurs="unbounded">
									<xsd:complexType>
										<xsd:complexContent>
											<xsd:extension base="gxos:InternalND"/>
										</xsd:complexContent>
									</xsd:complexType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="Security" minOccurs="0">
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:SecurityObject"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="Preferences" minOccurs="0">
						<xsd:complexType>
							<xsd:complexContent>
								<xsd:extension base="gxos:CustomParameter"/>
							</xsd:complexContent>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="Comments" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="UserGroupType">
		<xsd:complexContent>
			<xsd:extension base="gxos:UserObject">
				<xsd:sequence>
					<xsd:element name="GroupName" type="xsd:string"/>
					<xsd:element name="Description" type="xsd:string" minOccurs="0"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="MeetingObject">
		<xsd:complexContent>
			<xsd:extension base="gxos:CollectionType">
				<xsd:sequence>
					<xsd:element name="MeetingID" type="xsd:string"/>
					<xsd:element name="OwnerID" type="xsd:string"/>
					<xsd:element name="Type" type="xsd:string"/>
					<xsd:element name="Information" minOccurs="0">
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Title" type="xsd:string" minOccurs="0"/>
								<xsd:element name="Description" type="xsd:string" minOccurs="0"/>
								<xsd:element name="Capacity" type="xsd:integer" minOccurs="0"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="Passwords" minOccurs="0">
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Host" minOccurs="0">
									<xsd:simpleType>
										<xsd:restriction base="xsd:base64Binary"/>
									</xsd:simpleType>
								</xsd:element>
								<xsd:element name="Participant" minOccurs="0">
									<xsd:simpleType>
										<xsd:restriction base="xsd:base64Binary"/>
									</xsd:simpleType>
								</xsd:element>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="Times" minOccurs="0">
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="AcceptByTime" type="xsd:long" minOccurs="0"/>
								<xsd:element name="ActualStartTime" type="xsd:long" minOccurs="0"/>
								<xsd:element name="ActualStopTime" type="xsd:long" minOccurs="0"/>
								<xsd:element name="StartTime" type="xsd:long" minOccurs="0"/>
								<xsd:element name="StopTime" type="xsd:long" minOccurs="0"/>
								<xsd:element name="Duration" type="xsd:long" minOccurs="0"/>
								<xsd:element name="TimeZone" type="xsd:long" minOccurs="0"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="References" minOccurs="0">
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="URL" type="xsd:anyURI" minOccurs="0"/>
								<xsd:element name="SIPURL" type="xsd:string" minOccurs="0"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
					<xsd:element name="State" minOccurs="0">
						<xsd:complexType>
							<xsd:sequence>
								<xsd:element name="Status" type="xsd:string" minOccurs="0"/>
							</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="CollectionType">
		<xsd:annotation>
			<xsd:documentation>Collection GXOS Object
Currently this has no special properties
It includes MeetingContext RootContext MegaMeetingContext</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="gxos:TreeObject"/>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="VirtualEnvironmentType">
		<xsd:annotation>
			<xsd:documentation>VirtualEnvironment GXOS Object
Currently this has no special properties
One must link a Device and User Object to this Collection</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="gxos:TreeObject"/>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="SharedletType">
		<xsd:annotation>
			<xsd:documentation>Sharedlet GXOS Object
Currently this has no special properties
One defines a single original version of each Sharelet in Capabilities part of GXOS
These are linked as Sharelet instances on each VirtualEnvironment using this application</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="gxos:CollectionType"/>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="StreamType">
		<xsd:annotation>
			<xsd:documentation>Stream GXOS Object
Currently this has no special properties
This Only Contains a SINGLE stream of time stamped events</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="gxos:CollectionType"/>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="DocumentType">
		<xsd:annotation>
			<xsd:documentation>Information used by Sharedlets: BasicDocument, Template and BuiltDocument are types of Documents</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="gxos:TreeObject"/>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:element name="Entity">
		<xsd:annotation>
			<xsd:documentation>GXOS object type</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:TreeObject"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Device">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:DeviceObjectType"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Event">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:EventObject"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="UserGroup">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:UserGroupType"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Collection">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:CollectionType"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Sharedlet">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:SharedletType"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Stream">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:StreamType"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="VirtualEnvironment">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:VirtualEnvironmentType"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Document">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:DocumentType"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Meeting">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:MeetingObject"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="LinkNode">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:TreeObject"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Program">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="gxos:ProgramObjectType"/>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:annotation>
		<xsd:documentation>10/2/01 - Program element added.</xsd:documentation>
	</xsd:annotation>
	<xsd:annotation>
		<xsd:documentation>6/23/01 - Meeting.Participants removed.</xsd:documentation>
	</xsd:annotation>
	<xsd:annotation>
		<xsd:documentation>6/18/01 - LinkNode object type added.</xsd:documentation>
	</xsd:annotation>
	<xsd:annotation>
		<xsd:documentation>6/12/01 - Namespaces element added to TreeObject.</xsd:documentation>
	</xsd:annotation>
	<xsd:annotation>
		<xsd:documentation>5/31/01 - Meeting.Participants and Times changed.</xsd:documentation>
	</xsd:annotation>
	<xsd:annotation>
		<xsd:documentation>5/24/01 - Meeting added. UserGroup renamed to UserGroupType</xsd:documentation>
	</xsd:annotation>
	<xsd:annotation>
		<xsd:documentation>4/23/01 - UserObject changed.</xsd:documentation>
	</xsd:annotation>
	<xsd:annotation>
		<xsd:documentation>4/9/01 - UserGroup element added.</xsd:documentation>
	</xsd:annotation>
	<xsd:annotation>
		<xsd:documentation>4/6/01 - User element added.</xsd:documentation>
	</xsd:annotation>
	<xsd:annotation>
		<xsd:documentation>4/1/01 - InternalND/ExternalND updated. Device and Event elements added.</xsd:documentation>
	</xsd:annotation>
</xsd:schema>

