<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:complexType name="calleeType">
		<xs:attribute name="calleeID" type="xs:string" use="required"/>
	</xs:complexType>
	<xs:complexType name="callerType">
		<xs:attribute name="callerID" type="xs:string" use="required"/>
	</xs:complexType>
	<xs:complexType name="methodType">
		<xs:attribute name="id" type="xs:string" use="required"/>
		<xs:sequence>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="callee" type="calleeType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="caller" type="callerType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="reachableMethodType">
		<xs:attribute name="methodId" type="xs:string" use="required"/>
	</xs:complexType>
	<xs:complexType name="reachableType">
		<xs:sequence>
			<xs:element minOccurs="1" maxOccurs="unbounded" name="method" type="reachableMethodType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="callgraphType">
		<xs:sequence>
			<xs:element maxOccurs="unbounded" name="method" type="methodType"/>
			<xs:element name="reachables" type="reachableType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="callgraph" type="callgraphType"/>
</xs:schema>
