Publishing data in your own language

You can publish the values of free-text fields – like title, description and parties/name – in your own language. You ought to set the language field to the language used in these free-text fields. For example:

{
  "id": "1",
  "title": "ตัวอย่างโครงการ",
  "type": "construction",
  "language": "th"
}

In order for your data to be interoperable and compatible with OC4IDS tools and methodologies:

  • Do not translate codes from codelists. For example, the value of the type field needs to be a code from the ProjectType codelist, like 'construction'. You cannot translate 'construction' to 'การก่อสร้าง':

    {
      "id": "incorrect-example-1",
      "type": "การก่อสร้าง",
    }
    
  • Do not translate field names (object keys). For example, you cannot translate title to ชื่อ:

    {
      "id": "incorrect-example-2",
      "ชื่อ": "ตัวอย่างโครงการ",
    }
    

The fields whose values can be translated are listed in the internationalization lookup table.

Translating headers in spreadsheets/CSVs

In order to ease access for non-English speakers, instead of using the field names as column headers (which are always in English), you can use the field titles.

The titles are currently available in English and Spanish. If you would like to translate the titles to your own language, please contact the OC4IDS Helpdesk.

For example, this CSV excerpt uses field titles from the Spanish translation of OC4IDS:

Identificador o Referencia

Título del Proyecto

1

proyecto de ejemplo

You can use Flatten Tool to generate files with translated field titles. For example, this command converts the example OC4IDS JSON file to XLSX format, using field titles from the Spanish schema:

flatten-tool flatten -s https://standard.open-contracting.org/infrastructure/0.9/es/project-schema.json -f xlsx --use-titles --root-id=id --root-list-path=projects example.json

Publishing in multiple languages

To publish data in multiple languages, follow the above guidance and publish a separate project package for each language. You need to ensure that the values of id fields are consistent across packages, so that users can find the translations of objects.

Internationalization lookup table

Use the following table to check whether a field can be published in your own language. You can download the table as a CSV spreadsheet.

path

title

translatable

notes

id

Identifier or Reference

True

Only the part of the identifier following the prefix can be internationalized.

updated

Last updated

False

title

Project title

True

description

Project description

True

status

Status

False

period

Project period

False

period

Period

False

period/startDate

Start date

False

period/endDate

End date

False

period/maxExtentDate

Maximum extent

False

period/durationInDays

Duration (days)

False

sector

Project sector

False

purpose

Project purpose

True

additionalClassifications

Additional classifications

False

additionalClassifications

Classification

False

additionalClassifications/scheme

Scheme

False

additionalClassifications/id

ID

True

additionalClassifications/description

Description

True

additionalClassifications/uri

URI

False

type

Project type

False

relatedProjects

Related projects

False

relatedProjects

Related project

False

relatedProjects/id

Relationship ID

True

relatedProjects/scheme

Scheme

False

relatedProjects/identifier

Identifier

True

relatedProjects/relationship

Relationship

False

relatedProjects/title

Related project title

True

relatedProjects/uri

Related project URI

False

assetLifetime

Asset lifetime

False

assetLifetime

Period

False

assetLifetime/startDate

Start date

False

assetLifetime/endDate

End date

False

assetLifetime/maxExtentDate

Maximum extent

False

assetLifetime/durationInDays

Duration (days)

False

locations

Project locations

False

locations

Delivery Location

False

locations/id

Identifier

True

locations/description

Description

True

locations/geometry

Geometry

False

locations/geometry/type

Type

False

locations/geometry/coordinates

Coordinates

False

locations/gazetteer

Gazetteer

False

locations/gazetteer/scheme

Gazetteer scheme

False

locations/gazetteer/identifiers

Identifiers

False

locations/uri

URI

True

locations/address

Address

False

locations/address

Address

False

locations/address/streetAddress

Street address

True

locations/address/locality

Locality

True

locations/address/region

Region

True

locations/address/postalCode

Postal code

True

locations/address/countryName

Country name

True

budget

Total project value

False

budget/description

Description

True

budget/amount

Amount

False

budget/amount

Value

False

budget/amount/amount

Amount

False

budget/amount/currency

Currency

False

budget/requestDate

Request date

False

budget/approvalDate

Approval date

False

budget/budgetBreakdown

Budget breakdown

False

budget/budgetBreakdown

Detailed budget breakdown

False

budget/budgetBreakdown/id

Identifier

True

budget/budgetBreakdown/description

Description

True

budget/budgetBreakdown/amount

Amount

False

budget/budgetBreakdown/amount

Value

False

budget/budgetBreakdown/amount/amount

Amount

False

budget/budgetBreakdown/amount/currency

Currency

False

budget/budgetBreakdown/approvalDate

Approval date

False

budget/budgetBreakdown/uri

Linked budget information

False

budget/budgetBreakdown/period

Budget period

False

budget/budgetBreakdown/period

Period

False

budget/budgetBreakdown/period/startDate

Start date

False

budget/budgetBreakdown/period/endDate

End date

False

budget/budgetBreakdown/period/maxExtentDate

Maximum extent

False

budget/budgetBreakdown/period/durationInDays

Duration (days)

False

budget/budgetBreakdown/sourceParty

Source party

False

budget/budgetBreakdown/sourceParty

Organization reference

False

budget/budgetBreakdown/sourceParty/name

Organization name

True

budget/budgetBreakdown/sourceParty/id

Organization ID

True

forecasts

Forecasts

False

forecasts

Metric

False

forecasts/id

Identifier

False

forecasts/title

Title

True

forecasts/description

Description

True

forecasts/observations

Observations

False

forecasts/observations

Observation

False

forecasts/observations/id

Identifier

True

forecasts/observations/period

Period

False

forecasts/observations/period

Period

False

forecasts/observations/period/startDate

Start date

False

forecasts/observations/period/endDate

End date

False

forecasts/observations/period/maxExtentDate

Maximum extent

False

forecasts/observations/period/durationInDays

Duration (days)

False

forecasts/observations/value

Value

False

forecasts/observations/value

Value

False

forecasts/observations/value/amount

Amount

False

forecasts/observations/value/currency

Currency

False

forecasts/observations/measure

Measure

False

Only string measures can be internationalized.

forecasts/observations/unit

Unit

False

forecasts/observations/unit/name

Unit name

True

forecasts/observations/unit/scheme

Scheme

False

forecasts/observations/unit/id

ID

True

forecasts/observations/unit/uri

URI

False

forecasts/observations/dimensions

Dimensions

False

forecasts/observations/notes

Notes

True

parties

Parties

False

parties

Organization

False

parties/name

Common name

True

parties/id

Entity ID

True

parties/identifier

Primary identifier

False

parties/identifier

Identifier

False

parties/identifier/scheme

Scheme

True

parties/identifier/id

ID

True

parties/identifier/legalName

Legal Name

True

parties/identifier/uri

URI

False

parties/additionalIdentifiers

Additional identifiers

False

parties/additionalIdentifiers

Identifier

False

parties/additionalIdentifiers/scheme

Scheme

True

parties/additionalIdentifiers/id

ID

True

parties/additionalIdentifiers/legalName

Legal Name

True

parties/additionalIdentifiers/uri

URI

False

parties/address

Address

False

parties/address

Address

False

parties/address/streetAddress

Street address

True

parties/address/locality

Locality

True

parties/address/region

Region

True

parties/address/postalCode

Postal code

True

parties/address/countryName

Country name

True

parties/contactPoint

Contact point

False

parties/contactPoint

Contact point

False

parties/contactPoint/name

Name

True

parties/contactPoint/email

Email

True

parties/contactPoint/telephone

Telephone

True

parties/contactPoint/faxNumber

Fax number

True

parties/contactPoint/url

URL

False

parties/roles

Party roles

False

parties/people

People

False

parties/people

Person

False

parties/people/id

Identifier

True

parties/people/name

Name

True

parties/people/jobTitle

Job title

True

publicAuthority

Public authority

False

publicAuthority

Organization reference

False

publicAuthority/name

Organization name

True

publicAuthority/id

Organization ID

True

documents

Documents

False

documents

Document

False

documents/id

ID

True

documents/documentType

Document type

False

documents/title

Title

True

documents/description

Description

True

documents/url

URL

False

documents/datePublished

Date published

False

documents/dateModified

Date modified

False

documents/format

Format

True

documents/language

Language

True

documents/pageStart

Page start

True

documents/pageEnd

Page end

True

documents/accessDetails

Access details

True

documents/author

Author

True

contractingProcesses

Contracting processes

False

contractingProcesses

Contracting process

False

contractingProcesses/id

Identifier

True

Only the part of the identifier following the prefix can be internationalized.

contractingProcesses/summary

Summary

False

contractingProcesses/summary

Summary

False

contractingProcesses/summary/ocid

Open Contracting Identifier

True

Only the part of the identifier following the prefix can be internationalized.

contractingProcesses/summary/externalReference

External reference

True

contractingProcesses/summary/nature

Nature

False

contractingProcesses/summary/title

Title

True

contractingProcesses/summary/description

Description

True

contractingProcesses/summary/status

Status

False

contractingProcesses/summary/tender

Tender

False

contractingProcesses/summary/tender/procurementMethod

Procurement method

False

contractingProcesses/summary/tender/procurementMethodDetails

Procurement method details

True

contractingProcesses/summary/tender/costEstimate

Cost estimate

False

contractingProcesses/summary/tender/costEstimate

Value

False

contractingProcesses/summary/tender/costEstimate/amount

Amount

False

contractingProcesses/summary/tender/costEstimate/currency

Currency

False

contractingProcesses/summary/tender/numberOfTenderers

Number of tenderers

False

contractingProcesses/summary/tender/tenderers

Tenderers

False

contractingProcesses/summary/tender/tenderers

Organization reference

False

contractingProcesses/summary/tender/tenderers/name

Organization name

True

contractingProcesses/summary/tender/tenderers/id

Organization ID

True

contractingProcesses/summary/tender/procuringEntity

Procuring entity

False

contractingProcesses/summary/tender/procuringEntity

Organization reference

False

contractingProcesses/summary/tender/procuringEntity/name

Organization name

True

contractingProcesses/summary/tender/procuringEntity/id

Organization ID

True

contractingProcesses/summary/tender/administrativeEntity

Administrative entity

False

contractingProcesses/summary/tender/administrativeEntity

Organization reference

False

contractingProcesses/summary/tender/administrativeEntity/name

Organization name

True

contractingProcesses/summary/tender/administrativeEntity/id

Organization ID

True

contractingProcesses/summary/suppliers

Suppliers

False

contractingProcesses/summary/suppliers

Organization reference

False

contractingProcesses/summary/suppliers/name

Organization name

True

contractingProcesses/summary/suppliers/id

Organization ID

True

contractingProcesses/summary/contractValue

Contract value

False

contractingProcesses/summary/contractValue

Value

False

contractingProcesses/summary/contractValue/amount

Amount

False

contractingProcesses/summary/contractValue/currency

Currency

False

contractingProcesses/summary/contractPeriod

Contract period

False

contractingProcesses/summary/contractPeriod

Period

False

contractingProcesses/summary/contractPeriod/startDate

Start date

False

contractingProcesses/summary/contractPeriod/endDate

End date

False

contractingProcesses/summary/contractPeriod/maxExtentDate

Maximum extent

False

contractingProcesses/summary/contractPeriod/durationInDays

Duration (days)

False

contractingProcesses/summary/finalValue

Final value

False

contractingProcesses/summary/finalValue

Value

False

contractingProcesses/summary/finalValue/amount

Amount

False

contractingProcesses/summary/finalValue/currency

Currency

False

contractingProcesses/summary/documents

Documents

False

contractingProcesses/summary/documents

Document

False

contractingProcesses/summary/documents/id

ID

True

contractingProcesses/summary/documents/documentType

Document type

False

contractingProcesses/summary/documents/title

Title

True

contractingProcesses/summary/documents/description

Description

True

contractingProcesses/summary/documents/url

URL

False

contractingProcesses/summary/documents/datePublished

Date published

False

contractingProcesses/summary/documents/dateModified

Date modified

False

contractingProcesses/summary/documents/format

Format

True

contractingProcesses/summary/documents/language

Language

True

contractingProcesses/summary/documents/pageStart

Page start

True

contractingProcesses/summary/documents/pageEnd

Page end

True

contractingProcesses/summary/documents/accessDetails

Access details

True

contractingProcesses/summary/documents/author

Author

True

contractingProcesses/summary/modifications

Modifications

False

contractingProcesses/summary/modifications

Modification

False

contractingProcesses/summary/modifications/id

Identifier

True

contractingProcesses/summary/modifications/date

Date

False

contractingProcesses/summary/modifications/description

Description

True

contractingProcesses/summary/modifications/rationale

Rationale

True

contractingProcesses/summary/modifications/type

Type

False

contractingProcesses/summary/modifications/releaseID

Release ID

True

contractingProcesses/summary/modifications/oldContractValue

Old contract value

False

contractingProcesses/summary/modifications/oldContractValue

Value

False

contractingProcesses/summary/modifications/oldContractValue/amount

Amount

False

contractingProcesses/summary/modifications/oldContractValue/currency

Currency

False

contractingProcesses/summary/modifications/newContractValue

New contract value

False

contractingProcesses/summary/modifications/newContractValue

Value

False

contractingProcesses/summary/modifications/newContractValue/amount

Amount

False

contractingProcesses/summary/modifications/newContractValue/currency

Currency

False

contractingProcesses/summary/modifications/oldContractPeriod

Old contract period

False

contractingProcesses/summary/modifications/oldContractPeriod

Period

False

contractingProcesses/summary/modifications/oldContractPeriod/startDate

Start date

False

contractingProcesses/summary/modifications/oldContractPeriod/endDate

End date

False

contractingProcesses/summary/modifications/oldContractPeriod/maxExtentDate

Maximum extent

False

contractingProcesses/summary/modifications/oldContractPeriod/durationInDays

Duration (days)

False

contractingProcesses/summary/modifications/newContractPeriod

New contract period

False

contractingProcesses/summary/modifications/newContractPeriod

Period

False

contractingProcesses/summary/modifications/newContractPeriod/startDate

Start date

False

contractingProcesses/summary/modifications/newContractPeriod/endDate

End date

False

contractingProcesses/summary/modifications/newContractPeriod/maxExtentDate

Maximum extent

False

contractingProcesses/summary/modifications/newContractPeriod/durationInDays

Duration (days)

False

contractingProcesses/summary/transactions

Transactions

False

contractingProcesses/summary/transactions

Transaction information

False

contractingProcesses/summary/transactions/id

ID

True

contractingProcesses/summary/transactions/source

Data source

False

contractingProcesses/summary/transactions/date

Date

False

contractingProcesses/summary/transactions/value

Value

False

contractingProcesses/summary/transactions/value

Value

False

contractingProcesses/summary/transactions/value/amount

Amount

False

contractingProcesses/summary/transactions/value/currency

Currency

False

contractingProcesses/summary/transactions/payer

Payer

False

contractingProcesses/summary/transactions/payer

Organization reference

False

contractingProcesses/summary/transactions/payer/name

Organization name

True

contractingProcesses/summary/transactions/payer/id

Organization ID

True

contractingProcesses/summary/transactions/payee

Payee

False

contractingProcesses/summary/transactions/payee

Organization reference

False

contractingProcesses/summary/transactions/payee/name

Organization name

True

contractingProcesses/summary/transactions/payee/id

Organization ID

True

contractingProcesses/summary/transactions/uri

Linked spending information

False

contractingProcesses/releases

Linked releases

False

contractingProcesses/releases

Release

False

contractingProcesses/releases/id

ID

True

contractingProcesses/releases/tag

Release tag

False

contractingProcesses/releases/date

Date

False

contractingProcesses/releases/url

URL

False

metrics

Metrics

False

metrics

Metric

False

metrics/id

Identifier

False

metrics/title

Title

True

metrics/description

Description

True

metrics/observations

Observations

False

metrics/observations

Observation

False

metrics/observations/id

Identifier

True

metrics/observations/period

Period

False

metrics/observations/period

Period

False

metrics/observations/period/startDate

Start date

False

metrics/observations/period/endDate

End date

False

metrics/observations/period/maxExtentDate

Maximum extent

False

metrics/observations/period/durationInDays

Duration (days)

False

metrics/observations/value

Value

False

metrics/observations/value

Value

False

metrics/observations/value/amount

Amount

False

metrics/observations/value/currency

Currency

False

metrics/observations/measure

Measure

False

metrics/observations/unit

Unit

False

metrics/observations/unit/name

Unit name

True

metrics/observations/unit/scheme

Scheme

False

metrics/observations/unit/id

ID

True

metrics/observations/unit/uri

URI

False

metrics/observations/dimensions

Dimensions

False

metrics/observations/notes

Notes

True

completion

Completion

False

completion/endDate

End date

False

completion/endDateDetails

End date details

True

completion/finalValue

Final value

False

completion/finalValue

Value

False

completion/finalValue/amount

Amount

False

completion/finalValue/currency

Currency

False

completion/finalValueDetails

Final value details

True

completion/finalScope

Final scope

True

completion/finalScopeDetails

Final scope details

True

language

Language

True