<?xml version='1.0' encoding='utf-8'?>
<program_description>
  <program provider="PUT" name="ElectreTri-rCClassAssignments" version="0.2.0" displayName="ElectreTri-rCClassAssignments" />
  <documentation>
    <description>Computes class assignments according to the Electre TRI-rC method.

All the inputs and options are the same as in ElectreTri-CClassAssign - the only difference is in its assignment procedures (conditions are slightly simplified) For more on this, see the article cited as a reference.

This method uses central reference actions (profiles) instead of boundary actions known from Electre TRI.</description>
    <url>http://github.com/xor-xor/electre_diviz</url>
    <reference>Kadziński M, et al. Robust multi-criteria sorting with the outranking preference model and characteristic profiles. Omega (2014), </reference>
  </documentation>
  <parameters>

    <input id="input1" name="alternatives" displayName="alternatives" isoptional="0">
      <documentation>
        <description>Alternatives to consider.</description>
      </documentation>
      <xmcda tag="alternatives" />
    </input>

    <input id="input2" name="classes" displayName="classes" isoptional="0">
      <documentation>
        <description>Definitions of the classes (categories) to be considered for the assignments. Each class must have its rank provided as an integer, where the lowest number defines the most preferred class.</description>
      </documentation>
      <xmcda tag="categories" />
    </input>

    <input id="input4" name="credibility" displayName="credibility" isoptional="0">
      <documentation>
        <description>Credibility matrix (alternatives vs central profiles) which should be used in exploitation procedure.</description>
      </documentation>
      <xmcda tag="alternativesComparisons" />
    </input>

    <input id="input5" name="outranking" displayName="outranking" isoptional="0">
      <documentation>
        <description>Outranking relations for pairs of alternatives and central profiles, which should be used in exploitation procedure. This input should be provided in a 'crisp' form, i.e. it should contain only pairs where outranking occurs, but without assigning any explicit value (e.g. '1.0') to them. For example:

&lt;alternativesComparisons&gt;
  &lt;pairs&gt;
    &lt;pair&gt;
      &lt;initial&gt;
        &lt;alternativeID&gt;a01&lt;/alternativeID&gt;
      &lt;/initial&gt;
      &lt;terminal&gt;
        &lt;alternativeID&gt;a05&lt;/alternativeID&gt;
      &lt;/terminal&gt;
    &lt;/pair&gt;
    &lt;pair&gt;
      &lt;initial&gt;
        &lt;alternativeID&gt;a01&lt;/alternativeID&gt;
      &lt;/initial&gt;
      &lt;terminal&gt;
        &lt;alternativeID&gt;a06&lt;/alternativeID&gt;
      &lt;/terminal&gt;
    &lt;/pair&gt;
  &lt;/pairs&gt;
&lt;/alternativesComparisons&gt;</description>
      </documentation>
      <xmcda tag="alternativesComparisons" />
    </input>

    <input id="input3" name="classes_profiles" displayName="classes_profiles" isoptional="0">
      <documentation>
        <description>Definitions of central profiles which should be used for classes (categories) representation.</description>
      </documentation>
      <xmcda tag="categoriesProfiles" />
    </input>

    <output id="output1" name="assignments" displayName="assignments">
      <documentation>
        <description>Assignments of the alternatives computed from the given data. The assignments are provided as intervals, i.e. combining the results of 'descending' and 'ascending' assignment procedures.</description>
      </documentation>
      <xmcda tag="alternativesAffectations" />
    </output>

    <output id="output2" name="messages" displayName="messages">
      <documentation>
        <description>Messages or errors generated by this module.</description>
      </documentation>
      <xmcda tag="methodMessages" />
    </output>

  </parameters>
</program_description>
