<?xml version = "1.0" encoding = "UTF-8"?>

<!--Generated by XML Authority. Conforms to Commerce One SOX 2.0-->
<!DOCTYPE schema SYSTEM "urn:x-commerceone:document:com:commerceone:xdk:xml:schema.dtd$1.0">
<schema uri = "file:///C:/temp/ArgusRecord.sox" soxlang-version = "V0.2.2">
	<intro><p>Generated by XML Authority</p></intro>
	<elementtype name = "ArgusDataStream">
		<model>
			<sequence>
				<element type = "ArgusRecord" occurs = "+"/>
				<element type = "ArgusDataStream.End"/>
			</sequence>
		</model>
		<attdef name = "BeginTime">
			<required/>
		</attdef>
		<attdef name = "BeginTimeusec" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "CurrentTime">
			<required/>
		</attdef>
		<attdef name = "CurrentTimeusec" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "MajorVersion" datatype = "byte">
			<required/>
		</attdef>
		<attdef name = "MinorVersion" datatype = "byte">
			<required/>
		</attdef>
		<attdef name = "InterfaceType">
			<required/>
		</attdef>
		<attdef name = "InterfaceStatus">
			<required/>
		</attdef>
		<attdef name = "SourceId" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "NetAddr">
			<required/>
		</attdef>
		<attdef name = "NetMask">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "ArgusRecord">
		<model>
			<choice>
				<element type = "Far" occurs = "?"/>
				<element type = "Mar" occurs = "?"/>
			</choice>
		</model>
		<attdef name = "ArgusSourceId" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "SequenceNumber" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "Cause">
			<enumeration datatype = "NMTOKEN">
				<option>Start</option>
				<option>Status</option>
				<option>Stop</option>
				<option>Shutdown</option>
				<option>Timeout</option>
				<option>Error</option>
				<option>Unknown</option>
			</enumeration>
			<required/>
		</attdef>
		<attdef name = "StartTime">
			<required/>
		</attdef>
		<attdef name = "StartTimeusecs" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "LastTime">
			<required/>
		</attdef>
		<attdef name = "LastTimeusecs" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "Duration">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "Mar">
		<empty/>
	</elementtype>
	<elementtype name = "Far">
		<model>
			<sequence>
				<element type = "FlowEncaps" occurs = "?"/>
				<element type = "Flow"/>
				<element type = "FlowAttrs" occurs = "?"/>
				<element type = "ExtFlow" occurs = "?"/>
				<element type = "Metrics"/>
				<element type = "ArgusUserData" occurs = "?"/>
				<element type = "ArgusTimeStats" occurs = "?"/>
			</sequence>
		</model>
		<attdef name = "TransRefNum" datatype = "int">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "FlowEncaps">
		<model>
			<choice>
				<element type = "MPLS"/>
				<element type = "VLAN"/>
			</choice>
		</model>
	</elementtype>
	<elementtype name = "MPLS">
		<empty/>
		<attdef name = "SrcLabel">
			<implied/>
		</attdef>
		<attdef name = "DstLabel">
			<implied/>
		</attdef>
	</elementtype>
	<elementtype name = "VLAN">
		<empty/>
		<attdef name = "Type">
			<enumeration datatype = "NMTOKEN">
				<option>802.1Q</option>
			</enumeration>
			<required/>
		</attdef>
		<attdef name = "SrcVid">
			<implied/>
		</attdef>
		<attdef name = "DstVid">
			<implied/>
		</attdef>
	</elementtype>
	<elementtype name = "Flow">
		<model>
			<choice>
				<element type = "ICMP"/>
				<element type = "Mac"/>
				<element type = "Arp"/>
				<element type = "Rarp"/>
				<element type = "Esp"/>
				<element type = "IP"/>
			</choice>
		</model>
	</elementtype>
	<elementtype name = "IP">
		<empty/>
		<attdef name = "Proto">
			<implied/>
		</attdef>
		<attdef name = "SrcIPAddr">
			<implied/>
		</attdef>
		<attdef name = "Dport">
			<implied/>
		</attdef>
		<attdef name = "Sport">
			<implied/>
		</attdef>
		<attdef name = "DstIPAddr">
			<implied/>
		</attdef>
		<attdef name = "IpId">
			<implied/>
		</attdef>
	</elementtype>
	<elementtype name = "Esp">
		<empty/>
		<attdef name = "Proto">
			<enumeration datatype = "NMTOKEN">
				<option>esp</option>
				<option>50</option>
			</enumeration>
			<required/>
		</attdef>
		<attdef name = "SrcIPAddr">
			<implied/>
		</attdef>
		<attdef name = "DstIPAddr">
			<implied/>
		</attdef>
		<attdef name = "Spi" datatype = "int">
			<implied/>
		</attdef>
	</elementtype>
	<elementtype name = "ICMP">
		<empty/>
		<attdef name = "Proto">
			<required/>
		</attdef>
		<attdef name = "SrcIPAddr">
			<implied/>
		</attdef>
		<attdef name = "IcmpType">
			<required/>
		</attdef>
		<attdef name = "DstIPAddr">
			<implied/>
		</attdef>
		<attdef name = "IcmpCode">
			<implied/>
		</attdef>
		<attdef name = "IcmpData">
			<implied/>
		</attdef>
	</elementtype>
	<elementtype name = "Arp">
		<empty/>
		<attdef name = "SrcArpAddr">
			<required/>
		</attdef>
		<attdef name = "TargetArpAaddr">
			<required/>
		</attdef>
		<attdef name = "ArpMacAddr">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "Rarp">
		<empty/>
	</elementtype>
	<elementtype name = "Mac">
		<empty/>
		<attdef name = "SrcMacAddr">
			<implied/>
		</attdef>
		<attdef name = "DstMacAddr">
			<implied/>
		</attdef>
		<attdef name = "NetProto">
			<implied/>
		</attdef>
		<attdef name = "Ssap">
			<implied/>
		</attdef>
		<attdef name = "Dsap">
			<implied/>
		</attdef>
	</elementtype>
	<elementtype name = "FlowAttrs">
		<empty/>
		<attdef name = "Status">
			<implied/>
		</attdef>
		<attdef name = "SrcOptions">
			<implied/>
		</attdef>
		<attdef name = "DstOptions">
			<implied/>
		</attdef>
		<attdef name = "SrcTOS">
			<required/>
		</attdef>
		<attdef name = "DstTOS">
			<required/>
		</attdef>
		<attdef name = "SrcTTL">
			<required/>
		</attdef>
		<attdef name = "DstTTL">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "ExtFlow">
		<model>
			<choice>
				<element type = "TCPExtFlow"/>
				<element type = "ICMPExtFlow"/>
				<element type = "FragExtFlow"/>
				<element type = "EspExtFlow"/>
				<element type = "AgExtFlow"/>
			</choice>
		</model>
	</elementtype>
	<elementtype name = "TCPExtFlow">
		<model>
			<element type = "TCPExtMetrics"/>
		</model>
		<attdef name = "TCPState">
			<required/>
		</attdef>
		<attdef name = "TCPOptions">
			<required/>
		</attdef>
		<attdef name = "AckDatauSecs" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "SynAckuSecs" datatype = "int">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "ICMPExtFlow">
		<empty/>
	</elementtype>
	<elementtype name = "FragExtFlow">
		<empty/>
	</elementtype>
	<elementtype name = "EspExtFlow">
		<empty/>
		<attdef name = "SrcEspLastSeq" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "SrcEspDroppedPkts" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "DstEspLastSeq" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "DstEspDroppedPkts" datatype = "int">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "AgExtFlow">
		<empty/>
	</elementtype>
	<elementtype name = "TCPExtMetrics">
		<empty/>
		<attdef name = "DstTCPRetrans" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "DstTCPBytes" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "SrcTCPRetrans" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "DstTCPFlags" datatype = "byte">
			<required/>
		</attdef>
		<attdef name = "DstTCPAckBytes" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "DstTCPWin" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "DstTCPSeqBase" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "SrcTCPBytes" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "SrcTCPSeqBase" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "SrcTCPFlags" datatype = "byte">
			<required/>
		</attdef>
		<attdef name = "SrcTCPWin" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "SrcTCPAckBytes" datatype = "int">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "Metrics">
		<empty/>
		<attdef name = "SrcCount" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "DstCount" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "SrcBytes" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "DstBytes" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "SrcAppBytes" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "DstAppBytes" datatype = "int">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "ArgusTimeStats">
		<model>
			<sequence>
				<element type = "SrcActive"/>
				<element type = "DstActive"/>
			</sequence>
		</model>
	</elementtype>
	<elementtype name = "SrcActive">
		<empty/>
		<attdef name = "StdDev">
			<required/>
		</attdef>
		<attdef name = "MinUsec" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "MaxUsec" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "MeanUsec" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "n" datatype = "int">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "DstActive">
		<empty/>
		<attdef name = "StdDev">
			<required/>
		</attdef>
		<attdef name = "MinUsec" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "MaxUsec" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "MeanUsec" datatype = "int">
			<required/>
		</attdef>
		<attdef name = "n" datatype = "int">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "ArgusUserData">
		<model>
			<sequence>
				<element type = "SrcData" occurs = "?"/>
				<element type = "DstData" occurs = "?"/>
			</sequence>
		</model>
	</elementtype>
	<elementtype name = "SrcData">
		<empty/>
		<attdef name = "Data-Ascii">
			<required/>
		</attdef>
		<attdef name = "Length">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "DstData">
		<empty/>
		<attdef name = "Data-Ascii">
			<required/>
		</attdef>
		<attdef name = "Length">
			<required/>
		</attdef>
	</elementtype>
	<elementtype name = "ArgusDataStream.End">
		<empty/>
		<attdef name = "count">
			<required/>
		</attdef>
	</elementtype>
</schema>
