This is the reference page for the XML element sector.


A recognised code, from a recognised vocabulary, classifying the purpose of the activity. Sector MUST EITHER be reported here OR at transaction level for ALL transactions


This element may occur any number of times.

Either sector or transaction/sector must be present.

sector must exist, otherwise all sector must exist.

If count(sector[@vocabulary=98 or @vocabulary=99]) > 0 evaluates to true, then count(sector[@vocabulary=98 or @vocabulary=99]/narrative) >= count(sector[@vocabulary=98 or @vocabulary=99]) must evaluate to true.



An IATI code for the vocabulary (see codelist) used for sector classifications. If omitted, OECD DAC 5-digit Purpose Codes are assumed.

It is recommended that OECD DAC 5-digit Purpose Codes are used wherever possible. It is also recommended that if a publisher has its own classification system or systems then the vocabularies 99 or 98 (Reporting Organisation’s own vocabularies) should be used in addition to DAC codes.

Publishers using 98 or 99 must also include a narrative in the narrative element.

Note that if multiple sector codes are used in multiple vocabularies, then each vocabulary’s percentages should add up to 100.

Sector can also be reported at the transaction level rather than the activity level. Sector must only be reported at EITHER transaction level OR activity level.

This value must be of type xsd:string.

This value must be on the SectorVocabulary codelist.


The URI where this vocabulary is defined. If the vocabulary is 99 or 98 (reporting organisation), the URI where this internal vocabulary is defined. While this is an optional field it is STRONGLY RECOMMENDED that all publishers use it to ensure that the meaning of their codes are fully understood by data users.

This value must be of type xsd:anyURI.


The code for the sector.

This attribute is required.

This value must be of type xsd:string.

This value must be on the Sector codelist, if the relevant vocabulary is used.

This value must be on the SectorCategory codelist, if the relevant vocabulary is used.

This value must be on the UNSDG-Goals codelist, if the relevant vocabulary is used.

This value must be on the UNSDG-Targets codelist, if the relevant vocabulary is used.


The percentage of total commitments or total activity budget to this item. Content must be a decimal number between 0 and 100 inclusive, with no percentage sign. All reported sectors from the same vocabulary MUST add up to 100.

This value must be of type xsd:decimal.

The sum of values matched at sector[@vocabulary = '1' or not(@vocabulary)]/@percentage must be 100.

The value of each of the elements described by sector/@percentage must be at least 0.0 no more than 100.0 (inclusive).

Example Usage

Example sector of an iati-activity.

The @vocabulary attribute declares a valid code (2) from the SectorVocabulary codelist.
An example value 111 from this vocabulary is declared with the @code attribute.
<sector vocabulary="2" code="111" />
The sector element can be repeated in any iati-activity.
When multiple sector are declared, then the @percentage values should sum to 100% for the specific iati-activity.
  <sector vocabulary="2" code="111" percentage="50" />
  <sector vocabulary="2" code="112" percentage="50" />
  <sector vocabulary="98" vocabulary-uri="" code="A1" percentage="100" />
The vocabulary is used to declare which SectorVocabulary classification list is in use. If this is omitted, then IATI assumes a SectorVocabulary of 1 (OECD DAC CRS Purpose Codes (5 digit)).
If a vocabulary is not on the SectorVocabulary codelist, then the value of 99 or 98 (Reporting Organisation) should be declared.
If a publisher uses a vocabulary of 98 or 99 (i.e. ‘Reporting Organisation’), then the @vocabulary-uri attribute should also be used, for example:
<sector vocabulary="99" vocabulary-uri="" code="A1" />



The @vocabulary attribute definition was updated (to remove the % sign).


The vocabulary-uri attribute was added.


Freetext is no longer allowed with this element. It should now be declared with the new child narrative element, but only in particular use-cases.


Where used, the @percentage attribute is now designated as a decimal value and no longer as a positive Integer

Developer tools

Find the source of this documentation on github: