<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:attribute name="id" type="xs:string"/>
	<xs:complexType name="dependentType">
		<xs:attribute name="tid" type="xs:string" use="required"/>
	</xs:complexType>
	<xs:complexType name="dependeeType">
		<xs:attribute name="eid" type="xs:string" use="required"/>
	</xs:complexType>
	<xs:complexType name="dependencyInfoType">
		<xs:attribute name="stmtId" type="xs:string" use="required"/>
		<xs:choice>
			<xs:sequence>
				<xs:element maxOccurs="unbounded" name="dependent" type="dependentType"/>
			</xs:sequence>
			<xs:sequence>
				<xs:element maxOccurs="unbounded" name="dependee" type="dependeeType"/>
			</xs:sequence>
			<xs:sequence>
				<xs:element maxOccurs="unbounded" name="dependent" type="dependentType"/>
				<xs:element maxOccurs="unbounded" name="dependee" type="dependeeType"/>
			</xs:sequence>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="methodType">
		<xs:attribute ref="id" use="required"/>
		<xs:sequence>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="dependency_info" type="dependencyInfoType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="classType">
		<xs:attribute ref="id" use="required"/>
		<xs:sequence maxOccurs="unbounded" minOccurs="0">
			<xs:element name="method" type="methodType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="dependencyType">
		<xs:attribute ref="id" use="required"/>
		<xs:attribute name="class" type="xs:string" use="required"/>
		<xs:sequence>
			<xs:element maxOccurs="unbounded" name="class" type="classType"/>
			<xs:element name="count" type="xs:integer"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="dependency" type="dependencyType"/>
</xs:schema>
