recipient-region¶
iati-activities/iati-activity/transaction/recipient-region
This is the reference page for the XML element recipient-region. See also the relevant overview page: Transaction
Definition¶
A supranational geopolitical region that will benefit from this transaction. If a specific country is not known, then this element MUST be used.
If transaction/recipient-country AND/OR transaction/recipient-region are used THEN ALL transaction elements MUST contain a recipient-country or recipient-region element AND (iati-activity/recipient-country AND iati-activity/recipient-region MUST NOT be used)
Rules¶
This element must occur no more than once (within each parent element).
The time between budget/period-start/@iso-date and budget/period-end/@iso-date must not be over a year
transaction/recipient-region must not be present alongisde recipient-region and recipient-country.
If count(@lang) = 0 evaluates to true, then count(narrative/@lang) > 0 and (count(narrative) = count(narrative/@lang)) must evaluate to true.
If count(transaction/provider-org/@ref) = 0 evaluates to true, then count(transaction/provider-org/narrative) > 0 must evaluate to true.
If count(@default-currency) = 0 evaluates to true, then count(crs-add/loan-status/@currency) > 0 must evaluate to true.
If count(@default-currency) = 0 evaluates to true, then count(fss/forecast/@currency) > 0 must evaluate to true.
If count(transaction/receiver-org/@ref) = 0 evaluates to true, then count(transaction/provider-org/narrative) > 0 must evaluate to true.
If count(other-identifier/owner-org/@ref) = 0 evaluates to true, then count(other-identifier/owner-org/narrative) > 0 must evaluate to true.
If count(sector[@vocabulary=98 or @vocabulary=99]) > 0 evaluates to true, then count(sector/narrative) > 0 must evaluate to true.
@xml-lang must exist, otherwise all lang must exist.
sector must exist, otherwise all sector must exist.
@default-currency must exist, otherwise all currency must exist.
@last-updated-datetime must not be more recent than the current date
Each expression defined in number(recipient-country/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(recipient-region/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(sector/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(capital-spend/@percentage) >= 0.0 must resolve to true.
All elements in sector[@vocabulary != '1']/@vocabulary are evaluated under the rules inside {u'strict_sum': {u'cases': [{u'paths': [u"sector[@vocabulary = '$1']/@percentage"], u'sum': 100}]}}.
Attributes¶
- @code
Either an OECD DAC or UN region code. Codelist is determined by vocabulary attribute.
This attribute is required.
This value must be of type xsd:string.
This value must be on the Region codelist, if the relevant vocabulary is used.
The time between budget/period-start/@iso-date and budget/period-end/@iso-date must not be over a year
If count(@lang) = 0 evaluates to true, then count(narrative/@lang) > 0 and (count(narrative) = count(narrative/@lang)) must evaluate to true.
If count(transaction/provider-org/@ref) = 0 evaluates to true, then count(transaction/provider-org/narrative) > 0 must evaluate to true.
If count(@default-currency) = 0 evaluates to true, then count(crs-add/loan-status/@currency) > 0 must evaluate to true.
If count(@default-currency) = 0 evaluates to true, then count(fss/forecast/@currency) > 0 must evaluate to true.
If count(transaction/receiver-org/@ref) = 0 evaluates to true, then count(transaction/provider-org/narrative) > 0 must evaluate to true.
If count(other-identifier/owner-org/@ref) = 0 evaluates to true, then count(other-identifier/owner-org/narrative) > 0 must evaluate to true.
If count(sector[@vocabulary=98 or @vocabulary=99]) > 0 evaluates to true, then count(sector/narrative) > 0 must evaluate to true.
@xml-lang must exist, otherwise all lang must exist.
sector must exist, otherwise all sector must exist.
@default-currency must exist, otherwise all currency must exist.
@last-updated-datetime must not be more recent than the current date
Each expression defined in number(recipient-country/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(recipient-region/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(sector/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(capital-spend/@percentage) >= 0.0 must resolve to true.
All elements in sector[@vocabulary != '1']/@vocabulary are evaluated under the rules inside {u'strict_sum': {u'cases': [{u'paths': [u"sector[@vocabulary = '$1']/@percentage"], u'sum': 100}]}}.
- @vocabulary
An IATI code for the vocabulary from which the region code is drawn. If it is not present 1 - ‘OECD DAC’ is assumed.
This value must be of type xsd:string.
This value must be on the RegionVocabulary codelist.
The time between budget/period-start/@iso-date and budget/period-end/@iso-date must not be over a year
If count(@lang) = 0 evaluates to true, then count(narrative/@lang) > 0 and (count(narrative) = count(narrative/@lang)) must evaluate to true.
If count(transaction/provider-org/@ref) = 0 evaluates to true, then count(transaction/provider-org/narrative) > 0 must evaluate to true.
If count(@default-currency) = 0 evaluates to true, then count(crs-add/loan-status/@currency) > 0 must evaluate to true.
If count(@default-currency) = 0 evaluates to true, then count(fss/forecast/@currency) > 0 must evaluate to true.
If count(transaction/receiver-org/@ref) = 0 evaluates to true, then count(transaction/provider-org/narrative) > 0 must evaluate to true.
If count(other-identifier/owner-org/@ref) = 0 evaluates to true, then count(other-identifier/owner-org/narrative) > 0 must evaluate to true.
If count(sector[@vocabulary=98 or @vocabulary=99]) > 0 evaluates to true, then count(sector/narrative) > 0 must evaluate to true.
@xml-lang must exist, otherwise all lang must exist.
sector must exist, otherwise all sector must exist.
@default-currency must exist, otherwise all currency must exist.
@last-updated-datetime must not be more recent than the current date
Each expression defined in number(recipient-country/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(recipient-region/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(sector/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(capital-spend/@percentage) >= 0.0 must resolve to true.
All elements in sector[@vocabulary != '1']/@vocabulary are evaluated under the rules inside {u'strict_sum': {u'cases': [{u'paths': [u"sector[@vocabulary = '$1']/@percentage"], u'sum': 100}]}}.
- @vocabulary-uri
If the vocabulary is 99 (reporting organisation), the URI where this internal vocabulary is defined.
This value must be of type xsd:anyURI.
The time between budget/period-start/@iso-date and budget/period-end/@iso-date must not be over a year
If count(@lang) = 0 evaluates to true, then count(narrative/@lang) > 0 and (count(narrative) = count(narrative/@lang)) must evaluate to true.
If count(transaction/provider-org/@ref) = 0 evaluates to true, then count(transaction/provider-org/narrative) > 0 must evaluate to true.
If count(@default-currency) = 0 evaluates to true, then count(crs-add/loan-status/@currency) > 0 must evaluate to true.
If count(@default-currency) = 0 evaluates to true, then count(fss/forecast/@currency) > 0 must evaluate to true.
If count(transaction/receiver-org/@ref) = 0 evaluates to true, then count(transaction/provider-org/narrative) > 0 must evaluate to true.
If count(other-identifier/owner-org/@ref) = 0 evaluates to true, then count(other-identifier/owner-org/narrative) > 0 must evaluate to true.
If count(sector[@vocabulary=98 or @vocabulary=99]) > 0 evaluates to true, then count(sector/narrative) > 0 must evaluate to true.
@xml-lang must exist, otherwise all lang must exist.
sector must exist, otherwise all sector must exist.
@default-currency must exist, otherwise all currency must exist.
@last-updated-datetime must not be more recent than the current date
Each expression defined in number(recipient-country/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(recipient-region/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(sector/@percentage) >= 0.0 must resolve to true.
Each expression defined in number(capital-spend/@percentage) >= 0.0 must resolve to true.
All elements in sector[@vocabulary != '1']/@vocabulary are evaluated under the rules inside {u'strict_sum': {u'cases': [{u'paths': [u"sector[@vocabulary = '$1']/@percentage"], u'sum': 100}]}}.
Example Usage¶
Example recipient-region of an iati-activity.
<recipient-region code="489" vocabulary="1" />
If a publisher uses a vocabulary of 99 (i.e. ‘Reporting Organisation’), then the @vocabulary-uri attribute should also be used, for example: .. code-block:: xml
<recipient-region code=”A1” vocabulary=”99” vocabulary-uri=”http://example.com/vocab.html” />
Full example:
<transaction ref="1234" humanitarian="1">
<transaction-type code="1" />
<transaction-date iso-date="2012-01-01" />
<value currency="EUR" value-date="2012-01-01">1000</value>
<description>
<narrative>Transaction description text</narrative>
</description>
<provider-org provider-activity-id="BB-BBB-123456789-1234AA" type="10" ref="BB-BBB-123456789">
<narrative>Agency B</narrative>
</provider-org>
<receiver-org receiver-activity-id="AA-AAA-123456789-1234" type="23" ref="AA-AAA-123456789">
<narrative>Agency A</narrative>
</receiver-org>
<disbursement-channel code="1" />
<sector vocabulary="2" code="111" />
<!--Note: only a recipient-region OR a recipient-country is expected-->
<recipient-country code="TM" />
<recipient-region code="616" vocabulary="1" />
<flow-type code="10" />
<finance-type code="110" />
<aid-type code="A01" />
<tied-status code="3" />
</transaction>