Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add .summary.social and laborObligations codelist #433

Merged
merged 12 commits into from
Nov 28, 2023
13 changes: 11 additions & 2 deletions docs/_static/i18n.csv
Original file line number Diff line number Diff line change
Expand Up @@ -368,6 +368,15 @@ contractingProcesses/summary/milestones/dueDate,Due date,False,
contractingProcesses/summary/milestones/dateMet,Date met,False,
contractingProcesses/summary/milestones/dateModified,Date modified,False,
contractingProcesses/summary/milestones/status,Status,False,
contractingProcesses/summary/social,Social,False,
contractingProcesses/summary/social/laborBudget,Labor budget,False,
contractingProcesses/summary/social/laborBudget,Value,False,
contractingProcesses/summary/social/laborBudget/amount,Amount,False,
contractingProcesses/summary/social/laborBudget/currency,Currency,False,
contractingProcesses/summary/social/laborObligations,Labor obligations,False,
contractingProcesses/summary/social/laborObligations,Labor obligations,False,
contractingProcesses/summary/social/laborObligations/obligations,Obligations,False,
contractingProcesses/summary/social/laborObligations/description,Description,True,
contractingProcesses/releases,Linked releases,False,
contractingProcesses/releases,Release,False,
contractingProcesses/releases/id,ID,True,
Expand Down Expand Up @@ -458,7 +467,7 @@ lobbyingMeetings/address/countryName,Country name,True,
lobbyingMeetings/numberOfParticipants,Number of participants,False,
lobbyingMeetings/publicOffice,Public office,False,
lobbyingMeetings/publicOffice,Public office,False,
lobbyingMeetings/publicOffice/person,Person.,False,
lobbyingMeetings/publicOffice/person,Person,False,
lobbyingMeetings/publicOffice/person/name,Name,True,
lobbyingMeetings/publicOffice/organization,Organization,False,
lobbyingMeetings/publicOffice/organization,Organization reference,False,
Expand All @@ -481,7 +490,7 @@ social/consultationMeetings/address/countryName,Country name,True,
social/consultationMeetings/numberOfParticipants,Number of participants,False,
social/consultationMeetings/publicOffice,Public office,False,
social/consultationMeetings/publicOffice,Public office,False,
social/consultationMeetings/publicOffice/person,Person.,False,
social/consultationMeetings/publicOffice/person,Person,False,
social/consultationMeetings/publicOffice/person/name,Name,True,
social/consultationMeetings/publicOffice/organization,Organization,False,
social/consultationMeetings/publicOffice/organization,Organization reference,False,
Expand Down
11 changes: 6 additions & 5 deletions docs/cost/ids/sustainability.md
Original file line number Diff line number Diff line change
Expand Up @@ -1250,6 +1250,7 @@ Disclose dates for project approval \[submission date, approval date\]
OC4IDS mapping
^^^
Project level:

For each date:

- Add a `Milestone` to the `milestones` array and set its:
Expand Down Expand Up @@ -2287,12 +2288,12 @@ Contracting process level:

Publish a summary of the labor obligations:

1. For each labor obligation in the contract, add a code from the laborObligations codelist to the`.summary.social.laborObligations.obligations` array.
1. For each labor obligation in the contract, add a code from the [laborObligations](../../reference/codelists.md#laborobligations) codelist to the`.summary.social.laborObligations.obligations` array.
2. Optionally, add a further explanation of the labor obligations to `.summary.social.laborObligations.description`.

Publish the bidding documents that specify labor obligations: Add a document to `.summary.documents`, set its `.id` incrementally, set its `.documentType` to 'biddingDocuments' and set its `.url` to the URL at which the documents are available.
Publish the bidding documents that specify labor obligations: [Add a contracting process document](../common.md#add-a-contracting-process-document) and set its `.documentType` to 'biddingDocuments'.

Publish the signed contract that includes labor obligations: Add a document to `.summary.documents`, set its `.id` incrementally, set its `.documentType` to 'contractSigned' and set its `.url` to the URL at which the signed contract that includes labor obligations is accessible.
Publish the signed contract that includes labor obligations: [Add a contracting process document](../common.md#add-a-contracting-process-document) and set its `.documentType` to 'contractSigned'.
```json
{
"contractingProcesses": [
Expand All @@ -2303,7 +2304,7 @@ Publish the signed contract that includes labor obligations: Add a document to
"laborObligations": {
"obligations": [
"minimumWage",
"overtime"
"paidOvertime"
],
"description": "The contract's labor obligations include a minimum wage of $20 per hour and an overtime limit of 10 hours per week."
}
Expand Down Expand Up @@ -2345,7 +2346,7 @@ Disclose the amount allocated by the main contractor to cover for labour costs (
:columns: 8
OC4IDS mapping
^^^
Contract level: Publish the amount and currency of the labor budget in `.summary.social.laborBudget`.
Contracting process level: Map to `.summary.social.laborBudget`.
```json
{
"contractingProcesses": [
Expand Down
14 changes: 13 additions & 1 deletion docs/examples/blank.json
Original file line number Diff line number Diff line change
Expand Up @@ -392,7 +392,19 @@
"title": "title"
}
}
]
],
"social": {
"laborBudget": {
"amount": "number",
"currency": "string from currency codelist"
},
"laborObligations": {
"obligations": [
"string from laborObligations codelist"
],
"description": "string"
}
}
},
"releases": [
{
Expand Down
14 changes: 13 additions & 1 deletion docs/examples/example.json
Original file line number Diff line number Diff line change
Expand Up @@ -715,7 +715,19 @@
"currency": "GBP"
}
}
]
],
"social": {
"laborBudget": {
"amount": "150000",
"currency": "USD"
},
"laborObligations": {
"obligations": [
"minimumWage"
],
"description": "The local minimum wage will be paid to all contracted workers."
}
}
},
"releases": [
{
Expand Down
2 changes: 2 additions & 0 deletions docs/reference/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
* [#426](https://github.com/open-contracting/infrastructure/pull/426) - `milestones`
* [#379](https://github.com/open-contracting/infrastructure/pull/379) - `contractingProcesses.summary.tender.datePublished`
* [#426](https://github.com/open-contracting/infrastructure/pull/426) - `contractingProcesses.summary.milestones`
* [#433](https://github.com/open-contracting/infrastructure/pull/433) - `contractingProcesses.summary.social`.
* [#432](https://github.com/open-contracting/infrastructure/pull/432):
* `identificationPeriod`
* `preparationPeriod`
Expand All @@ -55,6 +56,7 @@
* [#426](https://github.com/open-contracting/infrastructure/pull/426) - milestoneType
* [#426](https://github.com/open-contracting/infrastructure/pull/426) - milestoneStatus
* [#426](https://github.com/open-contracting/infrastructure/pull/426) - milestoneCode
* [#433](https://github.com/open-contracting/infrastructure/pull/433) - laborObligations
* [#434](https://github.com/open-contracting/infrastructure/pull/434) - sustainabilityStrategy
* [#431](https://github.com/open-contracting/infrastructure/pull/431) - environmentalGoal
* Add codes:
Expand Down
7 changes: 7 additions & 0 deletions docs/reference/codelists.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,13 @@ Projects with a `status` of 'completed' may be displayed in a list of archived p
:file: ../../build/current_lang/codelists/classificationScheme.csv
```

### laborObligations

```{csv-table-no-translate}
:header-rows: 1
:file: ../../build/current_lang/codelists/laborObligations.csv
```

### sustainabilityStrategy

```{csv-table-no-translate}
Expand Down
51 changes: 41 additions & 10 deletions docs/reference/schema.md
Original file line number Diff line number Diff line change
Expand Up @@ -405,6 +405,7 @@ This sub-schema is referenced by the following properties:
* [`ContractingProcessSummary/tender/costEstimate`](project-schema.json,/definitions/ContractingProcessSummary,tender/costEstimate)
* [`ContractingProcessSummary/contractValue`](project-schema.json,/definitions/ContractingProcessSummary,contractValue)
* [`ContractingProcessSummary/finalValue`](project-schema.json,/definitions/ContractingProcessSummary,finalValue)
* [`ContractingProcessSummary/social/laborBudget`](project-schema.json,/definitions/ContractingProcessSummary,social/laborBudget)
* [`Modification/oldContractValue`](project-schema.json,/definitions/Modification,oldContractValue)
* [`Modification/newContractValue`](project-schema.json,/definitions/Modification,newContractValue)
* [`BudgetBreakdown/amount`](project-schema.json,/definitions/BudgetBreakdown,amount)
Expand Down Expand Up @@ -467,6 +468,11 @@ Each `Value` has the following fields:
:title: contractingProcesses/0/summary/transactions/0/value
```

```{jsoninclude} ../../docs/examples/example.json
:jsonpointer: /projects/0/contractingProcesses/0/summary/social/laborBudget
:title: contractingProcesses/0/summary/social/laborBudget
```

```{jsoninclude} ../../docs/examples/example.json
:jsonpointer: /projects/0/transactions/0/value
:title: transactions/0/value
Expand Down Expand Up @@ -610,11 +616,6 @@ Each `OrganizationReference` has the following fields:
:title: lobbyingMeetings/0/publicOffice/organization
```

```{jsoninclude} ../../docs/examples/example.json
:jsonpointer: /projects/0/social/consultationMeetings/0/publicOffice/organization
:title: social/consultationMeetings/0/publicOffice/organization
```

````

`````
Expand Down Expand Up @@ -1150,6 +1151,41 @@ Each `MilestoneReference` has the following fields:

`````

### LaborObligations

`LaborObligations` is defined as:

```{field-description} ../../build/current_lang/project-schema.json /definitions/LaborObligations
```

This sub-schema is referenced by the following properties:
* [`ContractingProcessSummary/social/laborObligations`](project-schema.json,/definitions/ContractingProcessSummary,social/laborObligations)

Each `LaborObligations` has the following fields:

`````{tab-set}

````{tab-item} Schema

```{jsonschema} ../../build/current_lang/project-schema.json
:pointer: /definitions/LaborObligations
:collapse: obligations,description
:addtargets:
```

````

````{tab-item} Examples

```{jsoninclude} ../../docs/examples/example.json
:jsonpointer: /projects/0/contractingProcesses/0/summary/social/laborObligations
:title: contractingProcesses/0/summary/social/laborObligations
```

````

`````

### Sustainability

`Sustainability` is defined as:
Expand Down Expand Up @@ -1258,11 +1294,6 @@ Each `PublicOffice` has the following fields:
:title: lobbyingMeetings/0/publicOffice
```

```{jsoninclude} ../../docs/examples/example.json
:jsonpointer: /projects/0/social/consultationMeetings/0/publicOffice
:title: social/consultationMeetings/0/publicOffice
```

````

`````
Expand Down
10 changes: 5 additions & 5 deletions mapping/sustainability.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1379,12 +1379,12 @@

Publish a summary of the labor obligations:

1. For each labor obligation in the contract, add a code from the laborObligations codelist to the`.summary.social.laborObligations.obligations` array.
1. For each labor obligation in the contract, add a code from the [laborObligations](../../reference/codelists.md#laborobligations) codelist to the`.summary.social.laborObligations.obligations` array.
2. Optionally, add a further explanation of the labor obligations to `.summary.social.laborObligations.description`.

Publish the bidding documents that specify labor obligations: Add a document to `.summary.documents`, set its `.id` incrementally, set its `.documentType` to 'biddingDocuments' and set its `.url` to the URL at which the documents are available.
Publish the bidding documents that specify labor obligations: [Add a contracting process document](../common.md#add-a-contracting-process-document) and set its `.documentType` to 'biddingDocuments'.

Publish the signed contract that includes labor obligations: Add a document to `.summary.documents`, set its `.id` incrementally, set its `.documentType` to 'contractSigned' and set its `.url` to the URL at which the signed contract that includes labor obligations is accessible.
Publish the signed contract that includes labor obligations: [Add a contracting process document](../common.md#add-a-contracting-process-document) and set its `.documentType` to 'contractSigned'.
example: |-
{
"contractingProcesses": [
Expand All @@ -1395,7 +1395,7 @@
"laborObligations": {
"obligations": [
"minimumWage",
"overtime"
"paidOvertime"
],
"description": "The contract's labor obligations include a minimum wage of $20 per hour and an overtime limit of 10 hours per week."
}
Expand All @@ -1421,7 +1421,7 @@
module: Social
indicator: Labour compliance
disclosure format: Disclose the amount allocated by the main contractor to cover for labour costs (E.g. \[value\]).
mapping: 'Contract level: Publish the amount and currency of the labor budget in `.summary.social.laborBudget`.'
mapping: 'Contracting process level: Map to `.summary.social.laborBudget`.'
example: |-
{
"contractingProcesses": [
Expand Down
16 changes: 16 additions & 0 deletions schema/project-level/codelists/laborObligations.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Code,Title,Description,Source
minimumWage,Minimum wage,"A minimum wage that an employer will pay their labor force for work performed, which cannot be reduced by collective or individual agreements or contracts.",OC4IDS
paidOvertime,Paid overtime,Agreement that hours worked in addition to regular working hours will be paid at a specified level.,OC4IDS
weeklyRestProtection,Weekly rest protection,Regular working hours and voluntary overtime are both capped to protect a minimum level of weekly rest.,OC4IDS
forcedLaborProhibition,Prohibition of forced labor,The project will not resort to any form of forced labor and will comply with all applicable national and international laws regarding forced or compulsory labor.,OC4IDS
childLaborProhibition,Prohibition of child labor,The project will not resort to any form of child labor and will comply with all applicable national and international laws regarding employment of minors.,OC4IDS
equalOpportunities,Equal opportunities,Employment opportunities will not be based on personal characteristics unrelated to job requirements.,OC4IDS
nondiscrimination,Non-discrimination,"The project will not discriminate against any employees with respect to any aspects of employment, such as hiring, wages, access to training, job assignment, promotion, or termination of employment.",OC4IDS
grievanceMechanism,Grievance mechanism,The project will provide accessible and transparent grievance mechanisms to enable all workers to raise workplace concerns.,OC4IDS
workingAtHeight,Working at height,Adequate fall prevention and protection measures will be implemented wherever workers are expected to work at height.,OC4IDS
undergroundWork,Underground work,"The project will provide adequate occupational health and safety equipment, information and services appropriate for underground and excavation work such as drilling, blasting, rock bolting and soft soil work.",OC4IDS
materialsEquipmentHandling,Handling of materials/equipment,The project will ensure that all workers engaged in handling of materials or equipment as part of their employment will receive at no cost to themselves adequate training and appropriate protective equipment.,OC4IDS
accidentMonitoring,Monitoring of accidents,"The project will monitor, document and report on all occupational accidents, diseases and incidents.",OC4IDS
trafficManagement,Traffic management,The project will adopt road safety initiatives proportional to its scope and nature that are protective of project workers and other road users.,OC4IDS
accommodation,Accommodation,"The project will provide accommodation services to workers that accommodate their physical, social and cultural needs and protect and promote their health, safety and well-being.",OC4IDS
protectivePersonalEquipment,Protective personal equipment,"The project will provide access to, training in, and maintenance of appropriate personal protective equipment at no additional cost to its workers.",OC4IDS
45 changes: 45 additions & 0 deletions schema/project-level/project-schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -626,6 +626,24 @@
},
"minItems": 1,
"uniqueItems": true
},
"social": {
"title": "Social",
"description": "Information about the social impact of the project and actions the project will take to mitigate potentially negative impacts on adjacent populations and project workers.",
"type": "object",
"properties": {
"laborBudget": {
"title": "Labor budget",
"description": "The budget allocated in the contract for labor costs.",
"$ref": "#/definitions/Value"
},
"laborObligations": {
"title": "Labor obligations",
"description": "Information about labor obligations stipulated in the construction contract(s).",
"$ref": "#/definitions/LaborObligations"
}
},
"minProperties": 1
}
},
"minProperties": 1
Expand Down Expand Up @@ -2418,6 +2436,33 @@
},
"minProperties": 1
},
"LaborObligations": {
"title": "Labor obligations",
"description": "Information about labor obligations stipulated in the construction contract(s).",
"type": "object",
"properties": {
"obligations": {
"title": "Obligations",
"description": "The labor obligations stipulated in the construction contract(s), using the open [laborObligations codelist](https://standard.open-contracting.org/infrastructure/{{version}}/{{lang}}/reference/codelists/#laborObligations).",
"type": [
"array"
],
"items": {
"type": "string"
},
"codelist": "laborObligations.csv",
"openCodelist": true,
"minItems": 1
},
"description": {
"title": "Description",
"description": "A short description of the labor obligations.",
"type": "string",
"minLength": 1
}
},
"minProperties": 1
},
"Sustainability": {
"title": "Sustainability",
"description": "Information about how the contracting process incorporates sustainable public procurement.",
Expand Down
Loading