You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
guidance/map/translations: Rewrite with simpler structure
- Clarify that this page is for sources with distinct fields for each language. If a field mixes languages, this page is not relevant.
- Clarify that translated text must have the same content across translations.
- Instead of a long list of repetitive field names, summarize the patterns.
If you need to publish data in multiple languages, you can publish full-file translations. That is, separate OCDS releases for each language.
3
+
If your data sources have separate data elements for different language versions of the same content, you can publish each language as a separate OCDS dataset.
4
4
5
-
You can publish the values of free-text fields – like titles and descriptions – in any language, but you need to ensure that the values of `id` fields are consistent across languages so that users can find the translations of objects. You ought to set the `language` field to the language used in free-text fields.
5
+
```{admonition} What does "same content" mean?
6
+
Two texts have the same content if they describe the same thing: for example, "United Kingdom" in English and "Royaume-Uni" in French. On the other hand, if your contracting process has different contact points for different language speakers, that content is *not* the same. Your OCDS data should therefore contain one contact point for each, using the [Additional Contact Points](https://extensions.open-contracting.org/en/extensions/additionalContactPoint/master/) extension.
7
+
```
6
8
7
-
For example, for data published in English and Spanish:
9
+
## What you can translate
10
+
11
+
You can publish the values of these fields in any language:
12
+
13
+
% STARTLIST
14
+
-`description`, in any location
15
+
-`legalName`, in any location
16
+
-`name`, in any location
17
+
-`rationale`, in any location
18
+
-`statusDetails`, in any location
19
+
-`title`, in any location
20
+
-`parties/address/locality`
21
+
-`parties/address/region`
22
+
-`parties/address/streetAddress`
23
+
-`planning/budget/project`
24
+
-`tender/awardCriteriaDetails`
25
+
-`tender/exclusionGrounds`
26
+
-`tender/procurementMethodDetails`
27
+
-`tender/procurementMethodRationale`
28
+
-`tender/selectionCriteria`
29
+
-`tender/submissionMethodDetails`
30
+
% ENDLIST
31
+
32
+
When publishing OCDS data in different languages, remember to set the `language` field. For example:
8
33
9
34
`````{tab-set}
10
35
11
36
````{tab-item} English
12
-
```json
37
+
```{code-block} json
38
+
:emphasize-lines: 8,11
13
39
{
14
40
"ocid": "ocds-213czf-000-00001",
15
41
"id": "1",
@@ -20,14 +46,15 @@ For example, for data published in English and Spanish:
20
46
"language": "en",
21
47
"tender": {
22
48
"id": "1",
23
-
"title": "Purchase of office supplies",
49
+
"title": "Purchase of office supplies"
24
50
}
25
51
}
26
52
```
27
53
````
28
54
29
55
````{tab-item} Spanish
30
-
```json
56
+
```{code-block} json
57
+
:emphasize-lines: 8,11
31
58
{
32
59
"ocid": "ocds-213czf-000-00001",
33
60
"id": "1",
@@ -38,20 +65,30 @@ For example, for data published in English and Spanish:
38
65
"language": "es",
39
66
"tender": {
40
67
"id": "1",
41
-
"title": "Compra de material de oficina",
68
+
"title": "Compra de material de oficina"
42
69
}
43
70
}
44
71
```
45
72
````
46
73
47
74
`````
48
75
49
-
In order for your data to be interoperable and compatible with OCDS tools and methodologies, you cannot translate field names (keys) or codes from codelists. For example, the name of the `tag` field cannot be translated and its items need to be codes from the [release tag codelist](../../schema/codelists.md#release-tag), like 'tender':
76
+
## What you cannot translate
77
+
78
+
The names of fields, and the values of all fields not listed above, need to be the same across your translated OCDS datasets, in order to support interoperability, which is the purpose of standardization. These cover:
79
+
80
+
-**Identifiers**, like `ocid`, `id`, etc.
81
+
-**Codes**, like release tags, identifier schemes and milestone codes
82
+
-**Formatted values**, like URLs, dates, email addresses, telephone numbers and postal codes
83
+
-**Non-text fields**, like numbers and booleans
84
+
85
+
For example, the name of the `tag` field needs to be "tag", and its value needs to be a list of codes from the [release tag codelist](../../schema/codelists.md#release-tag).
50
86
51
87
`````{tab-set}
52
88
53
-
````{tab-item} Valid data
54
-
```json
89
+
````{tab-item} Valid
90
+
```{code-block} json
91
+
:emphasize-lines: 5-7
55
92
{
56
93
"ocid": "ocds-213czf-000-00001",
57
94
"id": "1",
@@ -62,14 +99,15 @@ In order for your data to be interoperable and compatible with OCDS tools and me
62
99
"language": "es",
63
100
"tender": {
64
101
"id": "1",
65
-
"title": "Compra de material de oficina",
102
+
"title": "Compra de material de oficina"
66
103
}
67
104
}
68
105
```
69
106
````
70
107
71
-
````{tab-item} Invalid data (translated field name)
72
-
```json
108
+
````{tab-item} Invalid (incorrect name)
109
+
```{code-block} json
110
+
:emphasize-lines: 5
73
111
{
74
112
"ocid": "ocds-213czf-000-00001",
75
113
"id": "1",
@@ -80,14 +118,15 @@ In order for your data to be interoperable and compatible with OCDS tools and me
80
118
"language": "es",
81
119
"tender": {
82
120
"id": "1",
83
-
"title": "Compra de material de oficina",
121
+
"title": "Compra de material de oficina"
84
122
}
85
123
}
86
124
```
87
125
````
88
126
89
-
````{tab-item} Invalid data (translated code)
90
-
```json
127
+
````{tab-item} Invalid (incorrect value)
128
+
```{code-block} json
129
+
:emphasize-lines: 6
91
130
{
92
131
"ocid": "ocds-213czf-000-00001",
93
132
"id": "1",
@@ -98,39 +137,30 @@ In order for your data to be interoperable and compatible with OCDS tools and me
98
137
"language": "es",
99
138
"tender": {
100
139
"id": "1",
101
-
"title": "Compra de material de oficina",
140
+
"title": "Compra de material de oficina"
102
141
}
103
142
}
104
143
```
105
144
````
106
145
107
146
`````
108
147
109
-
The fields whose values can be translated are listed in the [internationalization lookup table](#internationalization-lookup-table).
148
+
## Translating headers in spreadsheets
110
149
111
-
## Translating headers in spreadsheets/CSVs
150
+
To ease access for non-English speakers, instead of using field *names* as column headers (which are always in English), you can use field *titles*, which are translated in [OCDS translations](localization.md#translating-the-standard).
112
151
113
-
In order to ease access for non-English speakers, instead of using field *names* as column headers (which are always in English), you can use field *titles*.
114
-
115
-
The titles are currently available in English, Spanish and French. If you would like to translate the titles to your own language, please [contact the OCDS Helpdesk](mailto:[email protected]).
116
-
117
-
For example, this CSV excerpt uses field titles from the Spanish translation of OCDS:
152
+
For example, this CSV excerpt uses field titles from the Spanish translation:
118
153
119
154
| ID de Entrega | Fecha de entrega |
120
155
| ------------- | -------------------- |
121
156
| 1 | 2024-01-01T00:00:00Z |
122
157
123
-
You can use [Flatten Tool](https://flatten-tool.readthedocs.io/en/latest/) to generate files with translated field titles. For example, this command converts an OCDS release package to XLSX format, using field titles from the schema:
158
+
You can use [Flatten Tool](https://flatten-tool.readthedocs.io/en/latest/) to generate files with field titles. For example, this command converts an OCDS release package to XLSX format, using field titles from the release schema:
Use the following table to check whether a field can be translated. You can download the table as a [CSV spreadsheet](../../_static/i18n.csv).
132
-
133
-
```{csv-table}
134
-
:file: ../../_static/i18n.csv
135
-
:header-rows: 1
164
+
```{note}
165
+
Field titles are available in English, Spanish and French. To translate titles to another language, [contact the Data Support Team](mailto:[email protected]).
0 commit comments