budget-item

iati-activities/iati-activity/country-budget-items/budget-item

This is the reference page for the XML element budget-item. See also the relevant overview page: Budgets

Definition

Identifier for a single item in the recipient-country budget. If more than one identifier is reported the percentage share must be reported and all percentages should add up to 100 percent.

Rules

This element must occur at least 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

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

A code for the budget-item from the vocabulary specified.

This attribute is required.

This value must be of type xsd:string.

This value must be on the BudgetIdentifier 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}]}}.

@percentage

When multiple budget-item elements are declared within a single country-budget-items element, then, for each vocabulary used, the percentage values should sum 100%.

This value must be of type xsd:decimal.

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 budget-item within country-budget-items of an iati-activity.

The @code attribute declares a valid code (1.1.1) from the BudgetIdentifier codelist.
<country-budget-items vocabulary="2">
        <budget-item code="1.1.1">
                <description>
                        <narrative>Description text</narrative>
                </description>
        </budget-item>
</country-budget-items>
The budget-item element can be repeated in any country-budget-items of the same vocabulary.
When multiple budget-item elements are declared within a single country-budget-items element, then, for each vocabulary used, the percentage values should sum 100%:
  <country-budget-items vocabulary="2">
   <budget-item code="1.1.1" percentage="50">
    <description>
	 <narrative>Description text</narrative>
	</description> 
   </budget-item>
   <budget-item code="1.2.1"  percentage="50">
    <description>
	 <narrative>Description text</narrative>
	</description> 
   </budget-item>
  </country-budget-items>

Changelog

1.04

The @percentage attribute had been erroneously set to be required in the schema on it’s introduction in 1.03. This has now been set to ‘optional’ in the schema.

1.03

Added the optional country-budget-item element

Developer tools

Find the source of this documentation on github:

Subelements