<?xml version="1.0" encoding="UTF-8"?>
<program_description
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:noNamespaceSchemaLocation="https://www.decision-deck.org/ws/_downloads/description.xsd">

	<program name="OWA" provider="URV" version="1.0" displayName="OWA"/>
	<documentation>
		<description>The Ordered Weighted Averaging operators, commonly called OWA operators, provide a parameterized class of mean type aggregation operators. 
OWA was defined by R.R. Yager in 1988. Here we provide an implementation of the OWA operator. 
The main characteristic of this aggregation operator is the fact that the weights are associated to the values instead to criteria.
In this way, we can define different aggregation policies according to the importance that we associate to high and low performance scores.
</description>
		<reference>
		R.R. Yager, On Ordered Weighted Averaging Aggregation, IEEE Transactions on Systems, Man and Cybernetics, 18, pp. 119-145 (1988)
		</reference>
		<contact>Aida Valls &lt;aida.valls@urv.cat&gt;, Jordi Canals &lt;jordi.canals@estudiants.urv.cat&gt;</contact>
	</documentation>
	<parameters>
		<input displayName="alternatives" name="alternatives" id="input0" isoptional="0">
			<documentation>
				<description>A list of alternatives. Alternatives can be activated or desactivated via the &lt;active&gt; tag (true or false). 
By default (no &lt;active&gt; tag), alternatives are considered as active.</description>
			</documentation>
			<xmcda tag="alternatives">
                            <![CDATA[
                    <alternatives>
                        <alternative>
                            <active>[...]</active>
                            [...]
                        </alternative>
                        [...]
                    </alternatives>
                    ]]>
                     </xmcda>
		</input>
		<input displayName="criteria" name="criteria" id="input1" isoptional="0">
			<documentation>
				<description>A list of criteria. Criteria are always active. </description>
			</documentation>
			<xmcda tag="criteria">
                            <![CDATA[
                    <criteria>
                        <criterion>
                            <active>[...]</active>
                            [...]
                        </criterion>
                        [...]
                    </criteria>
                    ]]>
                     </xmcda>
		</input>
		<input displayName="weights" name="weights" id="input2" isoptional="0">
		  <documentation>
			<description>The weights are associated to the values of the alteranatives. Assuming that the values
on the alternative will be sorted from the best to the worst (e.g. 7, 5, 5, 3, 1), the list of weights must be ordered
according to the importance that is given to the values, from the highest to the lowest. 
For example a list of weights as (0.5, 0.5, 0, 0, 0) is ignoring the 3 lowest values, and making an average of the
two highest ones. A list like (0, 0, 1, 0 ,0 ) is calculating the median, while (0, 0, 0, 0, 1) is taking the minimum.
Notice that the sum of weights is required to be 1.
</description>
		  </documentation>
		  <xmcda tag="alternativesValues">
		  <![CDATA[
			<alternativesValues>
			  <alternativeValue>
				<values>
					<value>
						<real>[...]</real>
					</value>
					<value>
						<integer>[...]</integer>
					</value>
					[...]
			  </alternativeValue>
			</alternativesValues>
		  ]]>
		  </xmcda>
		</input>
		<input displayName="performanceTable" name="performanceTable" id="input3" isoptional="0">
		  <documentation>
			<description>The performance table will contain only numerical values, all in the same scale of measurement.</description>
		  </documentation>
		  <xmcda tag="performanceTable">
		  
		  <![CDATA[
			<performanceTable>
				<alternativePerformances>
					<alternativeID>[...]</alternativeID>
					<performance>
						<criterionID>[...]</criterionID>
						<value>
							<real>[...]</real>
						</value>
					</performance>
					[...]
				</alternativePerformances>
				[...]
			</performanceTable>
		  ]]>
		  </xmcda>
		</input>
		
		<output displayName="alternativesValues" name="alternativesValues" id="output0">
		  <documentation>
			<description>Result obtained from the OWA aggregation on each alternative.</description>
		  </documentation>
		  <xmcda tag="alternativesValues"/>
		</output>
		
		<output displayName="messages" name="messages" id="output1">
		  <documentation>
			<description>A status message.</description>
		  </documentation>
		  <xmcda tag="methodMessages"/>
		</output>
	
	</parameters>
</program_description>
