IATI Consultations Archive

Live discussions and consultations can be found at discuss.iatistandard.org.

Enforcing Order on the Activity Schema

It is not currently possible to use the schema to validate for mandatory fields. This type of validation (cardinality) can only be enforced if the order in which elements appear is enforced. Enforcing order was specifically ruled out when the standard was drafted as this was felt to place an unnecessary burden on publishers.

We now believe that strengthening the core of the standard by ensuring that we can validate elements and attributes (that are either mandatory in all cases, or are conditionally mandatory depending on usage) far outweighs the extra burden placed on publishers to report elements in a particular order. This also makes it much easier for a publisher to check their own data using simple schema-validation tests.

NB. Because it was not possible to check cardinality in the past the values contained in the schema for minOccurs and maxOccurs were not subject to close scrutiny. These have now been tidied up. As a result there are some changes to these values which do not reflect a change to the standard, but only the alignment of these values with the standard.

 

The following order is proposed:

  • Container Elements

    • iati-activities
    • iati-activity
  • Identification

    • reporting-org
    • participating-org
    • iati-identifier
    • other-identifier
    • title
    • description
    • activity-status
    • activity-date
    • contact-info
  • Geography

    • activity-scope
    • recipient-country
    • recipient-region
    • location
      • location-reach
      • location-id
      • name
      • description
      • activity-description
      • administrative
      • point
        • pos
      • exactness
      • location-class
      • feature-designation
  • Classifications

    • sector
    • country-budget-items
    • policy-marker
    • collaboration-type
    • default-flow-type
    • default-finance-type
    • default-aid-type
    • default-tied-status
  • Financials

    • budget
      • period-start
      • period-end
      • value
    • planned-disbursement
      • period-start
      • period-end
      • value
    • capital-spend
    • transaction
      • transaction-type
      • transaction-date
      • value
      • description
      • provider-org
      • receiver-org
      • sector
      • recipient-country
      • recipient-region
      • flow-type
      • finance-type
      • aid-type
      • tied-status
      • disbursement-channel
  • Related

    • document-link
      • title
      • category
      • language
    • related-activity
    • legacy-data
  • Conditions & Results

    • conditions
      • condition
    • result
      • title
      • description
      • indicator
        • title
        • description
        • baseline
          • comment
        • period
          • target
            • comment
          • actual
            • comment
  • CRS / FSS only

    • crs-add
      • aidtype-flag
      • loan-terms
      • loan-status
    • fss
      • forecast

 For technical details about implementing this proposal go to: https://github.com/IATI/IATI-Schemas/issues/138

Have more questions? Submit a request

3 Comments

  • 0
    Avatar
    David Carpenter

    This ordering is not yet reflected in the schema for Iteration 2. We propose to carry this out as part of Iteration 3.

  • 0
    Avatar
    Steven Flower

    A few elements are missing from the above -

     In budget/planned-disbursement:

    •  period-start
    • -period-end
    • value

    (granted - this order may be logical, but other proposals state mandatory items here)

     

    - sub elements of <location>

     

    Within result, there are a few instances of <comment> being nested (although may not need ordering enforced)

  • 0
    Avatar
    Ben Webb

    Is this only for the Activity Standard, or do we also want to do the same for the organisation standard?

    Also, the subelements of the following are missing from the above:

    • contact-info
    • country-budget-items
    • loan-terms
    • loan-status

    Also, period-start and period-end are missing from result/indicator/period. Where should these come in the order?

Article is closed for comments.