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

<wsdl:definitions targetNamespace="urn:icsy:venice:wsdl:math" name="RandomNumbers"
	xmlns:tns="urn:icsy:venice:wsdl:math"
	xmlns:faults="urn:icsy:venice:types:faults"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">

	<!-- ========== Types ============ -->

	<wsdl:types>

		<xsd:schema elementFormDefault="qualified">
			<xsd:import namespace="urn:icsy:venice:types:faults" schemaLocation="http://www.v-grid.info/types/faults.xsd"/>
		</xsd:schema>

	</wsdl:types>

	<!-- ========== Messages ============ -->

	<wsdl:message name="Message_RandomNumbers_getBoolean">
		<wsdl:documentation>The request message for the operation getBoolean().</wsdl:documentation>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getBooleanResponse">
		<wsdl:documentation>The response message for the operation getBoolean().</wsdl:documentation>
		<wsdl:part name="result" type="xsd:boolean"/>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getDouble">
		<wsdl:documentation>The request message for the operation getDouble().</wsdl:documentation>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getDoubleResponse">
		<wsdl:documentation>The response message for the operation getDouble().</wsdl:documentation>
		<wsdl:part name="result" type="xsd:double"/>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getFloat">
		<wsdl:documentation>The request message for the operation getFloat().</wsdl:documentation>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getFloatResponse">
		<wsdl:documentation>The response message for the operation getFloat().</wsdl:documentation>
		<wsdl:part name="result" type="xsd:float"/>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getLong">
		<wsdl:documentation>The request message for the operation getLong().</wsdl:documentation>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getLongResponse">
		<wsdl:documentation>The response message for the operation getLong().</wsdl:documentation>
		<wsdl:part name="result" type="xsd:long"/>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getGaussian">
		<wsdl:documentation>The request message for the operation getGaussian().</wsdl:documentation>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getGaussianResponse">
		<wsdl:documentation>The response message for the operation getGaussian().</wsdl:documentation>
		<wsdl:part name="result" type="xsd:double"/>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getInt">
		<wsdl:documentation>The request message for the operation getInt().</wsdl:documentation>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getIntResponse">
		<wsdl:documentation>The response message for the operation getInt().</wsdl:documentation>
		<wsdl:part name="result" type="xsd:int"/>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getIntN">
		<wsdl:documentation>The request message for the operation getIntN().</wsdl:documentation>
		<wsdl:part name="n" type="xsd:int"/>
	</wsdl:message>

	<wsdl:message name="Message_RandomNumbers_getIntNResponse">
		<wsdl:documentation>The response message for the operation getIntN().</wsdl:documentation>
		<wsdl:part name="result" type="xsd:int"/>
	</wsdl:message>

	<!-- ========== Fault Messages ============ -->

	<wsdl:message name="FaultMessage_RandomNumbers_IllegalArgumentFault">
		<wsdl:part name="fault" element="faults:IllegalArgumentFault"/>
	</wsdl:message>

	<wsdl:message name="FaultMessage_RandomNumbers_ServiceMigratedFault">
		<wsdl:part name="fault" element="faults:ServiceMigratedFault"/>
	</wsdl:message>

	<wsdl:message name="FaultMessage_RandomNumbers_ServiceNotReadyFault">
		<wsdl:part name="fault" element="faults:ServiceNotReadyFault"/>
	</wsdl:message>

	<wsdl:message name="FaultMessage_RandomNumbers_ServiceLimitReachedFault">
		<wsdl:part name="fault" element="faults:ServiceLimitReachedFault"/>
	</wsdl:message>

	<!-- ========== Port Types ============ -->

	<wsdl:portType name="RandomNumbersPortType">

		<wsdl:operation name="getBoolean" parameterOrder="">
			<wsdl:documentation>Returns a uniformly distributed boolean value.</wsdl:documentation>
			<wsdl:input message="tns:Message_RandomNumbers_getBoolean"/>
			<wsdl:output message="tns:Message_RandomNumbers_getBooleanResponse"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

		<wsdl:operation name="getDouble" parameterOrder="">
			<wsdl:documentation>Returns a uniformly distributed double value.</wsdl:documentation>
			<wsdl:input message="tns:Message_RandomNumbers_getDouble"/>
			<wsdl:output message="tns:Message_RandomNumbers_getDoubleResponse"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

		<wsdl:operation name="getFloat" parameterOrder="">
			<wsdl:documentation>Returns a uniformly distributed float value.</wsdl:documentation>
			<wsdl:input message="tns:Message_RandomNumbers_getFloat"/>
			<wsdl:output message="tns:Message_RandomNumbers_getFloatResponse"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

		<wsdl:operation name="getLong" parameterOrder="">
			<wsdl:documentation>Returns a uniformly distributed long value.</wsdl:documentation>
			<wsdl:input message="tns:Message_RandomNumbers_getLong"/>
			<wsdl:output message="tns:Message_RandomNumbers_getLongResponse"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

		<wsdl:operation name="getGaussian" parameterOrder="">
			<wsdl:documentation>Returns a uniformly distributed Gaussian ("normally") distributed double value with mean 0.0 and standard deviation 1.0</wsdl:documentation>
			<wsdl:input message="tns:Message_RandomNumbers_getGaussian"/>
			<wsdl:output message="tns:Message_RandomNumbers_getGaussianResponse"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

		<wsdl:operation name="getInt" parameterOrder="">
			<wsdl:documentation>Returns a uniformly distributed integer value.</wsdl:documentation>
			<wsdl:input message="tns:Message_RandomNumbers_getInt"/>
			<wsdl:output message="tns:Message_RandomNumbers_getIntResponse"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

		<wsdl:operation name="getIntN" parameterOrder="n">
			<wsdl:documentation>Returns a uniformly distributed integer value between 0 (inclusive) and the specified value (exclusive).</wsdl:documentation>
			<wsdl:input message="tns:Message_RandomNumbers_getIntN"/>
			<wsdl:output message="tns:Message_RandomNumbers_getIntNResponse"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_IllegalArgumentFault" name="IllegalArgumentFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceMigratedFault" name="ServiceMigratedFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceNotReadyFault" name="ServiceNotReadyFault"/>
			<wsdl:fault message="tns:FaultMessage_RandomNumbers_ServiceLimitReachedFault" name="ServiceLimitReachedFault"/>
		</wsdl:operation>

	</wsdl:portType>

</wsdl:definitions>

