Schema reference

The tables below describe each of the fields and objects in OC4IDS. To see how they fit together, consult the schema browser.

Project

Title Description Type Format Required
id string   Required
Identifier or Reference A unique identifier or reference number for this infrastructure project.
updated string date-time  
Last updated The date on which project-level information was last updated. This should not be changed when constituent contracting processes information changes, unless this project-level data has been updated as a result, or to provide explanations or justifications for those changes.
title string    
Project title The title of the project.
description string    
Project description A description of this project. This should usually be no longer than a single paragraph.
status string    
Status The current phase or status of this project, from the projectStatus codelist.
period object    
Project period

The period over which this project will run. This may be updated as the project moves through each phase as more information becomes available to more accurately specify anticipated start and end dates. Implementations may vary as to whether the period is taken to run from the earliest planning to the latest monitoring report, or whether the period only represents the major construction phase.

See Period

sector array[string]    
Project sector One or more values from the projectSector codelist representing the sector(s) this project relates to. More detailed sector breakdown information can be provided using the pattern [sector].[subsector]. Where subsector codes are used the parent code should also be included, e.g. ['transport', 'transport.air']
purpose string    
Project purpose The socioeconomic purpose of this project.
additionalClassifications array[Classification]    
Additional classifications

One or more additional project classifications can be provided to described the social or economic focus of the project. This classification may take place against a locally developed codelist, or a globally established codelist.

See Classification

type string    
Project type Whether the primary focus of this project is the construction of a new asset or the rehabilitation or replacement of an existing asset, from the projectType codelist.
assetLifetime object    
Asset lifetime

The anticipated lifetime of the asset after this project is completed. This may be provided as either explicit dates or an estimated duration.

See Period

locations array[Delivery Location]    
Project locations

Information about the location where a project is taking place. One or more locations may be provided, or the location may be described in a number of different ways, such as a point location for the central location of construction, and a gazetteer entry to describe the region where the project is taking place.

See Location

budget object    
Total project value Specify the projected costs or allocated budget for the project (currency and amount). This cost should include land and property acquisition, environmental mitigation measures, health and safety provisions, client, consultant and contractor costs, as well as applicable taxes. Where this value includes costs incurred directly by the project owner or other agencies, which are not subject to procurement, then this value is likely to be higher than the sum of all the linked contracting processes. To indicate the profile of a budget over time, or the budget coming from different sources, the extended budgetBreakdown section may be used.
budget/amount object    
Amount

The projected costs or allocated budget for the project.

See Value

budget/approvalDate string date-time  
Approval date The date on which the project budget was approved. Where documentary evidence for this exists, it may be included amongst the project documents with the documentType set to ‘budgetApproval’.
budget/budgetBreakdown array[Detailed budget breakdown]    
Budget breakdown

A detailed breakdown of the budget by period and/or participating funders.

See BudgetBreakdown

parties array[Organization]    
Parties

Information on the parties (organizations, economic operators and other participants) who are involved in the project and their roles, e.g. buyer, procuring entity, supplier etc. Organization references elsewhere in the schema are used to refer back to this entries in this list.

See Organization

documents array[Document]    
Documents

Documentation related to this project. Entries may include a short text summary (plain text, HTML or Markdown), and/or a link to a specific document accessible on the web.

At the identification phase, a project scope (documentType: projectScope) is expected. At the preparation phase, environmental impact (documentType: environmentalImpact) and land and settlement impact (documentType: landAndSettlementImpact) documentation is expected. During implementation, procurement documents should be shared at the contracting process level, but key documents may also be provided here. At the completion phase, final audit (documentType: finalAudit) and evaluation (documentType: projectEvaluation) reports and documents are expected.

See Document

contractingProcesses array[Contracting process]    
Contracting processes

A single project may have a number of related contracting processes (design, construction, monitoring etc.). Project-level data should contain

(a) an index of those contracting process;

(b) the latest summary information about them;

(c) a change history with explanations for any major modifications to contract duration, price or scope.

Where OCDS data is published on each contracting process, a link should be provided to each available release of OCDS data (e.g. to each notice or updated notice), and this OCDS data may be used to automatically populate the summary information.

See ContractingProcess

completion object    
Completion This information is provided at project completion, and reflects the final timing and values relating to the project. The reason for any variation (not already explained) between the anticipated project scope, period and value should be detailed.
completion/endDate string date-time  
End date The actual completion date for the project (compare with the endDate in project period.
completion/endDateDetails string    
End date details Details related to the endDate. This may be a justification for the contract’s completion date being different than in the original contract.
completion/finalValue object    
Final value

The total cost of this project at completion (compare with project budget).

See Value

completion/finalValue/amount [number]    
Amount Amount as a number.
completion/finalValue/currency [string]    
Currency The currency for each amount should always be specified using the uppercase 3-letter currency code from ISO4217.
completion/finalValueDetails string    
Final value details Details related to the final value. This may be a justification for the completed project’s value being different than in the original or latest revised budget.
completion/finalScope string    
Final scope A short description of the final scope of the project at completion.
completion/finalScopeDetails string    
Final scope details A reason, explanation or justification for any variation between the anticipated scope (compare to the projectScope document) and the final scope at completion. If appropriate, additional details may be included in the documents section, with a title indicating that these documents will describe and differences between the planned and completed scope of work.

ContractingProcess

Title Description Type Format Required
id string   Required
Identifier An identifier for this contracting process. If this contacting process has been assigned an Open Contracting Identifier (OCID) by an external platform (e.g. national procurement system), that OCID must be recorded here. If information about this contracting process has been entered manually, or from a non-OCDS system, then an identifier may be created by the system data is entered into, following the guidance for creating contracting process identifiers.
summary object    
Summary

Summary information about a contracting process, including a log of changes over time.

See ContractingProcessSummary

releases array[Release]    
Linked releases

The information known about a contracting process changes over time, both as new information becomes available, and as changes are made (such as amendments to scope and value). In the OCDS, each new update of information is known as a ‘release’.

This section provides space to record a link to each available release.

See LinkedRelease

ContractingProcessSummary

Title Description Type Format Required
ocid string    
Open Contracting Identifier If this contacting process has been assigned an Open Contracting Identifier (OCID) by an external platform (e.g. national procurement system), that OCID must be recorded here. Otherwise this field should be omitted.
externalReference string    
External reference If this contracting process is identified by some external reference number it may be recorded here.
nature array[[string]]    
Nature Whether this contracting process relates to the design, construction and/or supervision of the project, from the contractNature codelist. More than one value may be provided if the contract is for both design and construction, or both design and supervision, etc.
title string    
Title The formal name of this contracting process. Once set, this should not normally by changed.
description string    
Description The description should summarise the purpose of this contract and the scope of work to be undertaken.
status string    
Status The status of this contacting process. Drawn from the contractingProcessStatus codelist.
tender object    
Tender The activities undertaken in order to enter into a contract.
tender/procurementMethod string    
Procurement method Specify tendering method using the method codelist (open, selective, limited, direct).
tender/procurementMethodDetails string    
Procurement method details Additional detail on the procurement method used. This field should be used to record an agreed list of procurement process types, such as: International Competitive Bidding, National Competitive Bidding, Donor Procurement Rules, Framework or Direct Award.
tender/costEstimate object    
Cost estimate

The pre-tender estimated value of the contracting process.

See Value

tender/costEstimate/amount [number]    
Amount Amount as a number.
tender/costEstimate/currency [string]    
Currency The currency for each amount should always be specified using the uppercase 3-letter currency code from ISO4217.
tender/numberOfTenderers number    
Number of tenderers The number of parties who placed a bid during this contracting process.
tender/procuringEntity object    
Procuring entity

The name and identifier of the procuring entity responsible for this contracting process. The full details of the entity should be added to the project-level parties array with a .role of ‘procuringEntity’.

See OrganizationReference

tender/procuringEntity/name [string]    
Organization name The name of the party being referenced. This must match the name of an entry in the parties section.
tender/procuringEntity/id [string, integer]    
Organization ID The id of the party being referenced. This must match the id of an entry in the parties section.
tender/administrativeEntity object    
Administrative entity

The name and identifier of the entity responsible for contract administration if this is different from the procuring entity. The full details of the entity should be added to the project-level parties array with a .role of ‘administrativeEntity’.

See OrganizationReference

tender/administrativeEntity/name [string]    
Organization name The name of the party being referenced. This must match the name of an entry in the parties section.
tender/administrativeEntity/id [string, integer]    
Organization ID The id of the party being referenced. This must match the id of an entry in the parties section.
suppliers array[Organization reference]    
Suppliers

The name and identifier for each supplier for this contracting process. the full details of each supplier should be added to the project-level parties array with a .role of ‘supplier’.

See OrganizationReference

suppliers/0/name [string]    
Organization name The name of the party being referenced. This must match the name of an entry in the parties section.
suppliers/0/id [string, integer]    
Organization ID The id of the party being referenced. This must match the id of an entry in the parties section.
contractValue object    
Contract value

The initial value of the contract. Changes to the initial value of the contract should be recorded in modifications.

See Value

contractValue/amount [number]    
Amount Amount as a number.
contractValue/currency [string]    
Currency The currency for each amount should always be specified using the uppercase 3-letter currency code from ISO4217.
contractPeriod object    
Contract period

The initial duration of the contract. Changes to the initial duration of the contract should be recorded in modifications.

See Period

contractPeriod/startDate [string] date-time  
Start date The start date for the period. When known, a precise start date must always be provided.
contractPeriod/endDate [string] date-time  
End date The end date for the period. When known, a precise end date must always be provided.
contractPeriod/maxExtentDate [string] date-time  
Maximum extent The period cannot be extended beyond this date. This field is optional, and can be used to express the maximum available data for extension or renewal of this period.
contractPeriod/durationInDays [integer]    
Duration (days) The maximum duration of this period in days. A user interface may wish to collect or display this data in months or years as appropriate, but should convert it into days when completing this field. This field can be used when exact dates are not known. Where a startDate and endDate are given, this field is optional, and should reflect the difference between those two days. Where a startDate and maxExtentDate are given, this field is optional, and should reflect the difference between startDate and maxExtentDate.
finalValue object    
Final value

This should be provided when the contracting process is complete. This may be derived from the sum of contract.implementation.transactions values in linked OCDS data where available. In other cases, it may need to be identified and entered manually based on other project documentation.

See Value

finalValue/amount [number]    
Amount Amount as a number.
finalValue/currency [string]    
Currency The currency for each amount should always be specified using the uppercase 3-letter currency code from ISO4217.
documents array[Document]    
Documents

Additional documentation about this contracting process may be provided here, including reports and evaluations produced through a monitoring process, or links to web pages where further information about this process can be found. Where OCDS releases are published, further documents may be found by looking at the published releases.

See Document

modifications array[Modification]    
Modifications

Details of changes to the duration, price, scope or other significant features of the contracting process should be logged here.

A semi-structured description of each change can be provided in the relevant description field, and the justification of the change given in reason.

When a modification is detected, the contracting process summary information should also be updated.

See Modification

modifications/0/id [string, integer]   Required
Identifier A local identifer for this modification.
modifications/0/date [string] date-time  
Date The date this modification was recorded.
modifications/0/description [string]    
Description Details of the modification. This may be free text, or may be generated automatically and provide a structured description of the change.
modifications/0/rationale [string]    
Rationale A summary of the reasons which have led to this modification to the originally planned scope, period or value.
modifications/0/type [string]    
Type A value from the modificationType codelist, indicating whether the modification relates to the duration, value, scope or other aspect of the contract.
modifications/0/releaseID [string]    
Release ID The identifier for the OCDS release this modification relates to. The referenced release should appear in the list of linked releases for this contracting process.
modifications/0/oldContractValue object    
Old contract value

Contract value before the modification, taking into account any prior modifications.

See Value

modifications/0/oldContractValue/amount [number]    
Amount Amount as a number.
modifications/0/oldContractValue/currency [string]    
Currency The currency for each amount should always be specified using the uppercase 3-letter currency code from ISO4217.
modifications/0/newContractValue object    
New contract value

Contract value after the modification.

See Value

modifications/0/newContractValue/amount [number]    
Amount Amount as a number.
modifications/0/newContractValue/currency [string]    
Currency The currency for each amount should always be specified using the uppercase 3-letter currency code from ISO4217.
modifications/0/oldContractPeriod object    
Old contract period

Contract period before the modification, taking into account any prior modifications.

See Period

modifications/0/oldContractPeriod/startDate [string] date-time  
Start date The start date for the period. When known, a precise start date must always be provided.
modifications/0/oldContractPeriod/endDate [string] date-time  
End date The end date for the period. When known, a precise end date must always be provided.
modifications/0/oldContractPeriod/maxExtentDate [string] date-time  
Maximum extent The period cannot be extended beyond this date. This field is optional, and can be used to express the maximum available data for extension or renewal of this period.
modifications/0/oldContractPeriod/durationInDays [integer]    
Duration (days) The maximum duration of this period in days. A user interface may wish to collect or display this data in months or years as appropriate, but should convert it into days when completing this field. This field can be used when exact dates are not known. Where a startDate and endDate are given, this field is optional, and should reflect the difference between those two days. Where a startDate and maxExtentDate are given, this field is optional, and should reflect the difference between startDate and maxExtentDate.
modifications/0/newContractPeriod object    
New contract period

Contract period after the modification.

See Period

modifications/0/newContractPeriod/startDate [string] date-time  
Start date The start date for the period. When known, a precise start date must always be provided.
modifications/0/newContractPeriod/endDate [string] date-time  
End date The end date for the period. When known, a precise end date must always be provided.
modifications/0/newContractPeriod/maxExtentDate [string] date-time  
Maximum extent The period cannot be extended beyond this date. This field is optional, and can be used to express the maximum available data for extension or renewal of this period.
modifications/0/newContractPeriod/durationInDays [integer]    
Duration (days) The maximum duration of this period in days. A user interface may wish to collect or display this data in months or years as appropriate, but should convert it into days when completing this field. This field can be used when exact dates are not known. Where a startDate and endDate are given, this field is optional, and should reflect the difference between those two days. Where a startDate and maxExtentDate are given, this field is optional, and should reflect the difference between startDate and maxExtentDate.

LinkedRelease

Title Description Type Format Required
id string   Required
ID A unique identifier for this update of information. This should be taken from the related OCDS release.id where available.
tag string   Required
Release tag One or more values from the releaseTag codelist used to indicate the information contained in this release, and the stage of the contracting process it represents. This should be filled from the related OCDS release.tag where available.
date string date-time Required
Date The effective date of this release/update. This should be filled from the related OCDS release.date where available.
url string uri Required
URL A URL (Web link) to the related OCDS release where available. This should be provided within a releasePackage that contains only one release. Where this release is sourced from a third party system (e.g. procurement portal), transparency portal developers are encouraged to cache this data and link to their cached copy.

Components

Address

We use properties from schema.org and vCard for address components. In the event source data cannot be broken down into these parts, data SHOULD contain at least a streetAddress value and postal code.

When working with data, users should be aware that addresses may not always be broken down using all the properties the specification provides.

Title Description Type Format Required
streetAddress [string]    
Street address The street address. For example, 1600 Amphitheatre Pkwy.
locality [string]    
Locality The locality. For example, Mountain View.
region [string]    
Region The region. For example, CA.
postalCode [string]    
Postal code The postal code. For example, 94043.
countryName [string]    
Country name The country name. For example, United States.

BudgetBreakdown

A budget breakdown is provided through an array of BudgetBreakdown objects, each of which represents budget for a particular period, from a particular source, or a combination of the two.

See the documentation of the OCDS Budget Breakdown extension for more details of this data model. BudgetBreakdown can also be extended further to included budget classifications data following the pattern described in the OCDS Budgets and Spend extension.

Title Description Type Format Required
id [string, integer]   Required
Identifier An identifier for this particular budget entry.
description [string]    
Description A short free text description of this budget entry.
amount object    
Amount

The value of the budget line item.

See Value

amount/amount [number]    
Amount Amount as a number.
amount/currency [string]    
Currency The currency for each amount should always be specified using the uppercase 3-letter currency code from ISO4217.
uri [string] uri  
Linked budget information A URI pointing directly to a machine-readable information about this budget entry.
period object    
Budget period

The period covered by this budget entry.

See Period

period/startDate [string] date-time  
Start date The start date for the period. When known, a precise start date must always be provided.
period/endDate [string] date-time  
End date The end date for the period. When known, a precise end date must always be provided.
period/maxExtentDate [string] date-time  
Maximum extent The period cannot be extended beyond this date. This field is optional, and can be used to express the maximum available data for extension or renewal of this period.
period/durationInDays [integer]    
Duration (days) The maximum duration of this period in days. A user interface may wish to collect or display this data in months or years as appropriate, but should convert it into days when completing this field. This field can be used when exact dates are not known. Where a startDate and endDate are given, this field is optional, and should reflect the difference between those two days. Where a startDate and maxExtentDate are given, this field is optional, and should reflect the difference between startDate and maxExtentDate.
sourceParty object    
Source party

The organization or other party related to this budget entry. If the budget amount is positive, this indicates a flow of resources from the party to the contracting process. If the budget amount is negative, it indicates a payment from the contracting process to this party.

See OrganizationReference

sourceParty/name [string]    
Organization name The name of the party being referenced. This must match the name of an entry in the parties section.
sourceParty/id [string, integer]    
Organization ID The id of the party being referenced. This must match the id of an entry in the parties section.

Classification

A classification consists of an identifier for the codelist (the scheme) and a code from that codelist (the id), and then a human-readable label for the classification (the description).

Title Description Type Format Required
scheme [string]    
Scheme An classification should be drawn from an existing scheme or list of codes. This field is used to indicate the scheme/codelist from which the classification is drawn.
id [string, integer]    
ID The classification code drawn from the selected scheme.
description [string]    
Description A textual description or title for the code.

For example:

{
    "scheme":"COFOG",
    "id":"05.2",
    "description":"Waste water management"
}

ContactPoint

Title Description Type Format Required
name [string]    
Name The name of the contact person, department, or contact point, for correspondence relating to this project.
email [string]    
Email The e-mail address of the contact point/person.
telephone [string]    
Telephone The telephone number of the contact point/person. This should include the international dialing code.
faxNumber [string]    
Fax number The fax number of the contact point/person. This should include the international dialing code.
url [string] uri  
URL A web address for the contact point/person.

Document

For each document the following structured information may be provided.

Title Description Type Format Required
id [string, integer]   Required
ID A local, unique identifier for this document. This field is used to keep track of multiple revisions of a document through the compilation from release to record mechanism.
documentType [string]    
Document type A classification of the document described taken from the documentType codelist. Values from the provided codelist should be used wherever possible, though extended values can be provided if the codelist does not have a relevant code.
title [string]    
Title The document title.
description [string]    
Description

Where a link to a full document is provided, the description should provide a 1 - 3 paragraph summary of the information the document contains, and the pageStart field should be used to make sure readers can find the correct section of the document containing more information. Where there is no linked document available, the description field may contain all the information required by the current documentType.

Line breaks in text (represented in JSON using \n\n) must be respected by systems displaying this information, and systems may also support basic HTML tags (H1-H6, B, I, U, strong, A and optionally IMG) or markdown syntax for formatting.

url [string] uri  
URL This should be a direct link to the document or web page where the information described by the current documentType exists.
datePublished [string] date-time  
Date published The date on which the document was first published. This is particularly important for legally important documents such as notices of a tender.
dateModified [string] date-time  
Date modified Date that the document was last modified
format [string]    
Format The format of the document taken from the IANA Media Types codelist, with the addition of one extra value for ‘offline/print’, used when this document entry is being used to describe the offline publication of a document. Use values from the template column. Links to web pages should be tagged ‘text/html’.
language [string]    
Language Specifies the language of the linked document using either two-letter ISO639-1, or extended BCP47 language tags. The use of lowercase two-letter codes from ISO639-1 is strongly recommended unless there is a clear user need for distinguishing the language subtype.
pageStart [string]    
Page start When the information referenced exists within a large document, indicate the first page on which it can be found. This should refer to the printed page number, not the page number reported by software applications.
pageEnd [string]    
Page end When the information referenced exists within a large document, indicate the last page on which it can be found. This should refer to the printed page number, not the page number reported by software applications.
accessDetails [string]    
Access details A description of any special arrangements required to access this document. This may include a requirement to register for document access, a fee to be paid, or the location where documents can be inspected.
author [string]    
Author The name of the author of these documents. Include the name of individuals and/or organizations responsible. For example, when a technical specification was written by a consultant, include the name and organization of the consultant.

Identifier

Use of stable official organisation identifiers can help join up data between systems.

Organization identifiers should be constructed by collecting an official company (or government body) registration number for the organisation, and then finding the org-id.guide list code for the list this identifier is taken from to use in the scheme field.

For example, if identifying a company in Colombia, look up its identifier in the Unified Commercial and Social Registry and use the list code CO-RUE.

Title Description Type Format Required
scheme [string]    
Scheme Organization identifiers should be drawn from an existing organization identifier list. The scheme field is used to indicate the list or register from which the identifier is drawn. This value should be drawn from the Organization Identifier Scheme codelist.
id [string, integer]    
ID The identifier of the organization in the selected scheme.
legalName [string]    
Legal Name The legally registered name of the organization.
uri [string] uri  
URI A URI to identify the organization, such as those provided by Open Corporates or some other relevant URI provider. This is not for listing the website of the organization: that can be done through the URL field of the Organization contact point.

Location

A project may have one or more locations. Locations may be expressed in a number of different ways, using one or more of:

  • A point location or geometry (e.g. trace of a road, or polygon giving the boundary of a site);
  • A gazetteer entry (e.g. town name);
  • An address.
Title Description Type Format Required
id string   Required
Identifier A local identifier for this location, unique within the array this location appears in.
description [string]    
Description A name or description of this location. This might include the name(s) of the location(s), or might provide a human readable description of the location to be covered. This description may be used in a user-interface.
geometry [object]    
Geometry We follow the GeoJSON standard to express basic location information, using latitude and longitude values in the WGS84 (EPSG:4326) projection. A point location can be identified by geocoding a delivery address. For concession licenses, or other contracts covering a polygon location which is not contained in a known gazetteer, polygon and multi-polygon can be used.
geometry/type [string]    
Type The type of GeoJSON Geometry Objects being provided. To provide latitude and longitude use ‘point’, and enter an array of [latitude,longitude] as the value of coordinates field: e.g. [37.42,-122.085]. Note the capitalization of type values - set in order to maintain compatibility with GeoJSON.
geometry/coordinates array[[number, array]]    
Coordinates The relevant array of points, e.g. [latitude,longitude], or nested array, for the GeoJSON geometry being described. The longitude and latitude MUST be expressed in decimal degrees in the WGS84 (EPSG:4326) projection
gazetteer [object]    
Gazetteer A gazetteer is a geographical index or directory. The specific gazetteer used should be specified in scheme, and one or more codes from that gazetteer used in identifier.
gazetteer/scheme [string]    
Gazetteer scheme The entry of the selected gazetteer in the gazetteers codelist. The codelist provides details of services, where available, that can resolve a gazetteer entry to provide location names.
gazetteer/identifiers array[[string]]    
Identifiers An array of one or more codes drawn from the gazetteer indicated in scheme.
uri [string]    
URI A URI to a further description of the activity location. This may be a human readable document with information on the location, or a machine-readable description of the location.
address object    
Address

A physical address where works will take place.

See Address

Modification

For each modification, the following structured information may be provided.

Title Description Type Format Required
id [string, integer]   Required
Identifier A local identifer for this modification.
date [string] date-time  
Date The date this modification was recorded.
description [string]    
Description Details of the modification. This may be free text, or may be generated automatically and provide a structured description of the change.
rationale [string]    
Rationale A summary of the reasons which have led to this modification to the originally planned scope, period or value.
type [string]    
Type A value from the modificationType codelist, indicating whether the modification relates to the duration, value, scope or other aspect of the contract.
releaseID [string]    
Release ID The identifier for the OCDS release this modification relates to. The referenced release should appear in the list of linked releases for this contracting process.
oldContractValue object    
Old contract value

Contract value before the modification, taking into account any prior modifications.

See Value

oldContractValue/amount [number]    
Amount Amount as a number.
oldContractValue/currency [string]    
Currency The currency for each amount should always be specified using the uppercase 3-letter currency code from ISO4217.
newContractValue object    
New contract value

Contract value after the modification.

See Value

newContractValue/amount [number]    
Amount Amount as a number.
newContractValue/currency [string]    
Currency The currency for each amount should always be specified using the uppercase 3-letter currency code from ISO4217.
oldContractPeriod object    
Old contract period

Contract period before the modification, taking into account any prior modifications.

See Period

oldContractPeriod/startDate [string] date-time  
Start date The start date for the period. When known, a precise start date must always be provided.
oldContractPeriod/endDate [string] date-time  
End date The end date for the period. When known, a precise end date must always be provided.
oldContractPeriod/maxExtentDate [string] date-time  
Maximum extent The period cannot be extended beyond this date. This field is optional, and can be used to express the maximum available data for extension or renewal of this period.
oldContractPeriod/durationInDays [integer]    
Duration (days) The maximum duration of this period in days. A user interface may wish to collect or display this data in months or years as appropriate, but should convert it into days when completing this field. This field can be used when exact dates are not known. Where a startDate and endDate are given, this field is optional, and should reflect the difference between those two days. Where a startDate and maxExtentDate are given, this field is optional, and should reflect the difference between startDate and maxExtentDate.
newContractPeriod object    
New contract period

Contract period after the modification.

See Period

newContractPeriod/startDate [string] date-time  
Start date The start date for the period. When known, a precise start date must always be provided.
newContractPeriod/endDate [string] date-time  
End date The end date for the period. When known, a precise end date must always be provided.
newContractPeriod/maxExtentDate [string] date-time  
Maximum extent The period cannot be extended beyond this date. This field is optional, and can be used to express the maximum available data for extension or renewal of this period.
newContractPeriod/durationInDays [integer]    
Duration (days) The maximum duration of this period in days. A user interface may wish to collect or display this data in months or years as appropriate, but should convert it into days when completing this field. This field can be used when exact dates are not known. Where a startDate and endDate are given, this field is optional, and should reflect the difference between those two days. Where a startDate and maxExtentDate are given, this field is optional, and should reflect the difference between startDate and maxExtentDate.

Organization

For each organization, provide as much structured data as you can.

Title Description Type Format Required
name [string]    
Common name A common name for this organization or other participant in the contracting process. The identifier object provides an space for the formal legal name, and so this may either repeat that value, or could provide the common name by which this organization or entity is known. This field may also include details of the department or sub-unit involved in this contracting process.
id [string]    
Entity ID The ID used for cross-referencing to this party from other sections of the release. This field may be built with the following structure {identifier.scheme}-{identifier.id}(-{department-identifier}).
identifier object    
Primary identifier

The primary identifier for this organization or participant. Identifiers that uniquely pick out a legal entity should be preferred. Consult the organization identifier guidance for the preferred scheme and identifier to use.

See Identifier

additionalIdentifiers array[Identifier]    
Additional identifiers

A list of additional / supplemental identifiers for the organization or participant, using the organization identifier guidance. This could be used to provide an internally used identifier for this organization in addition to the primary legal entity identifier.

See Identifier

address object    
Address

An address. This may be the legally registered address of the organization, or may be a correspondence address for this particular contracting process.

See Address

contactPoint object    
Contact point

Contact details that can be used for this party.

See ContactPoint

roles array[string]    
Party roles The party’s role(s) in the project. Role(s) should be taken from the partyRole codelist. Values from the provided codelist should be used wherever possible, though extended values can be provided if the codelist does not have a relevant code.

OrganizationReference

Title Description Type Format Required
name [string]    
Organization name The name of the party being referenced. This must match the name of an entry in the parties section.
id [string, integer]    
Organization ID The id of the party being referenced. This must match the id of an entry in the parties section.

Period

Dates MUST be expressed using a full ISO 8601 date-time including a timezone. E.g.:

2018-09-18T11:26:04+01:00

Where the source system does not contain time information, a judgement should be made as to the relevant time to attach (e.g. start of the day; end of the working day etc.).

Title Description Type Format Required
startDate [string] date-time  
Start date The start date for the period. When known, a precise start date must always be provided.
endDate [string] date-time  
End date The end date for the period. When known, a precise end date must always be provided.
maxExtentDate [string] date-time  
Maximum extent The period cannot be extended beyond this date. This field is optional, and can be used to express the maximum available data for extension or renewal of this period.
durationInDays [integer]    
Duration (days) The maximum duration of this period in days. A user interface may wish to collect or display this data in months or years as appropriate, but should convert it into days when completing this field. This field can be used when exact dates are not known. Where a startDate and endDate are given, this field is optional, and should reflect the difference between those two days. Where a startDate and maxExtentDate are given, this field is optional, and should reflect the difference between startDate and maxExtentDate.

Value

All values should be published along with their currency using the following structure.

Title Description Type Format Required
amount [number]    
Amount Amount as a number.
currency [string]    
Currency The currency for each amount should always be specified using the uppercase 3-letter currency code from ISO4217.