1746 lines
89 KiB
Go
1746 lines
89 KiB
Go
// Code generated by ocdsgen from extensions.json. DO NOT EDIT.
|
||
|
||
// Package eu contains Go types for OCDS releases with these extensions applied
|
||
// (dependencies first, in the order their patches were merged):
|
||
//
|
||
// - OCDS for the European Union (declared)
|
||
// https://standard.open-contracting.org/profiles/eu/latest/en/extension.json
|
||
package eu
|
||
|
||
import (
|
||
"encoding/json"
|
||
"fmt"
|
||
"time"
|
||
)
|
||
|
||
// DeclaredExtensions are the extension URLs to list in ReleasePackage.Extensions.
|
||
var DeclaredExtensions = []string{
|
||
"https://standard.open-contracting.org/profiles/eu/latest/en/extension.json",
|
||
}
|
||
|
||
// ReleasePackage: The release package contains a list of releases along with some publishing
|
||
// metadata.
|
||
type ReleasePackage struct {
|
||
// The URI of this package that identifies it uniquely in the world.
|
||
URI string `json:"uri"`
|
||
// The version of the OCDS schema used in this package, expressed as major.minor For example:
|
||
// 1.0 or 1.1
|
||
Version string `json:"version"`
|
||
// An array of OCDS extensions used in this package, in which each array item is the URL of an
|
||
// extension.json file.
|
||
Extensions []string `json:"extensions,omitempty"`
|
||
// The date that this package was published.
|
||
PublishedDate time.Time `json:"publishedDate"`
|
||
// An array of one or more OCDS releases.
|
||
Releases []Release `json:"releases"`
|
||
// Information to uniquely identify the publisher of this package.
|
||
Publisher *ReleasePackagePublisher `json:"publisher"`
|
||
// A link to the license that applies to the data in this package.
|
||
License string `json:"license,omitempty"`
|
||
// A link to a document describing the publishers [publication
|
||
// policy](https://standard.open-contracting.org/{{version}}/{{lang}}/guidance/publish/#finalize-your-publication-policy).
|
||
PublicationPolicy string `json:"publicationPolicy,omitempty"`
|
||
}
|
||
|
||
// ReleasePackagePublisher: Information to uniquely identify the publisher of this package.
|
||
type ReleasePackagePublisher struct {
|
||
// The name of the organization or department responsible for publishing this data.
|
||
Name string `json:"name"`
|
||
// The scheme that holds the unique identifiers used to identify the item being identified.
|
||
Scheme string `json:"scheme,omitempty"`
|
||
// The unique ID for this entity under the given ID scheme.
|
||
Uid string `json:"uid,omitempty"`
|
||
// A URI to identify the publisher.
|
||
URI string `json:"uri,omitempty"`
|
||
}
|
||
|
||
// Release: Each release provides data about a single contracting process at a particular
|
||
// point in time.
|
||
type Release struct {
|
||
// A globally unique identifier for this Open Contracting Process.
|
||
OCID string `json:"ocid"`
|
||
// An identifier for this particular release of information.
|
||
ID string `json:"id"`
|
||
// The date on which the information contained in the release was first recorded in, or
|
||
// published by, any system.
|
||
Date time.Time `json:"date"`
|
||
// One or more values from the closed
|
||
// [releaseTag](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#release-tag)
|
||
// codelist. Codelist: releaseTag.csv (closed).
|
||
Tag []string `json:"tag"`
|
||
// The type of initiation process used for this contract, from the closed
|
||
// [initiationType](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#initiation-type)
|
||
// codelist. Codelist: initiationType.csv (closed).
|
||
InitiationType string `json:"initiationType"`
|
||
// Information on the parties (organizations, economic operators and other participants) who
|
||
// are involved in the contracting process and their roles, e.g.
|
||
Parties []Organization `json:"parties,omitempty"`
|
||
// A buyer is an entity whose budget will be used to pay for goods, works or services related
|
||
// to a contract.
|
||
Buyer *OrganizationReference `json:"buyer,omitempty"`
|
||
// Information from the planning phase of the contracting process.
|
||
Planning *Planning `json:"planning,omitempty"`
|
||
// The activities undertaken in order to enter into a contract.
|
||
Tender *Tender `json:"tender,omitempty"`
|
||
// Information from the award phase of the contracting process.
|
||
Awards []Award `json:"awards,omitempty"`
|
||
// Information from the contract creation phase of the procurement process.
|
||
Contracts []Contract `json:"contracts,omitempty"`
|
||
// The default language of the data using either two-letter
|
||
// [ISO639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes), or extended [BCP47
|
||
// language tags](https://www.w3.org/International/articles/language-tags/).
|
||
Language string `json:"language,omitempty"`
|
||
// The details of related processes: for example, if this process follows on from one or more
|
||
// other processes, represented under a separate open contracting identifier (ocid).
|
||
RelatedProcesses []RelatedProcess `json:"relatedProcesses,omitempty"`
|
||
// The bid section is used to publish summary statistics, and where applicable, individual bid
|
||
// information.
|
||
Bids *Bids `json:"bids,omitempty"`
|
||
// A overall title for this contracting process or release.
|
||
Title string `json:"title,omitempty"`
|
||
// An overall description of this contracting process or release.
|
||
Description string `json:"description,omitempty"`
|
||
}
|
||
|
||
// Address: An address.
|
||
type Address struct {
|
||
// The street address.
|
||
StreetAddress string `json:"streetAddress,omitempty"`
|
||
// The locality.
|
||
Locality string `json:"locality,omitempty"`
|
||
// The region.
|
||
Region string `json:"region,omitempty"`
|
||
// The postal code.
|
||
PostalCode string `json:"postalCode,omitempty"`
|
||
// The country name.
|
||
CountryName string `json:"countryName,omitempty"`
|
||
// The country, from the closed country codelist. Codelist: country.csv (closed).
|
||
Country string `json:"country,omitempty"`
|
||
}
|
||
|
||
// Amendment: Amendment information
|
||
type Amendment struct {
|
||
// The date of this amendment.
|
||
Date *time.Time `json:"date,omitempty"`
|
||
// An explanation for the amendment.
|
||
Rationale string `json:"rationale,omitempty"`
|
||
// An identifier for this amendment: often the amendment number
|
||
ID string `json:"id,omitempty"`
|
||
// A free text, or semi-structured, description of the changes made in this amendment.
|
||
Description string `json:"description,omitempty"`
|
||
// Provide the identifier (release.id) of the OCDS release (from this contracting process)
|
||
// that provides the values for this contracting process **before** the amendment was made.
|
||
AmendsReleaseID string `json:"amendsReleaseID,omitempty"`
|
||
// Provide the identifier (release.id) of the OCDS release (from this contracting process)
|
||
// that provides the values for this contracting process **after** the amendment was made.
|
||
ReleaseID string `json:"releaseID,omitempty"`
|
||
// An array of change objects describing the fields changed, and their former values.
|
||
// Deprecated: since OCDS 1.1. A free-text or semi-structured string describing the changes
|
||
// made in each amendment can be provided in the amendment.description field.
|
||
Changes []AmendmentChanges `json:"changes,omitempty"`
|
||
// The identifiers of the lots to which this amendment relates.
|
||
RelatedLots []string `json:"relatedLots,omitempty"`
|
||
// Unstructured or semi-structured changes to an earlier notice.
|
||
UnstructuredChanges []UnstructuredChange `json:"unstructuredChanges,omitempty"`
|
||
}
|
||
|
||
type AmendmentChanges struct {
|
||
// The property name that has been changed relative to the place the amendment is.
|
||
Property string `json:"property,omitempty"`
|
||
// The previous value of the changed property, in whatever type the property is.
|
||
FormerValue json.RawMessage `json:"former_value,omitempty"`
|
||
}
|
||
|
||
// Award: An award for the given procurement.
|
||
type Award struct {
|
||
// The identifier for this award.
|
||
ID ID `json:"id"`
|
||
// Award title
|
||
Title string `json:"title,omitempty"`
|
||
// Award description
|
||
Description string `json:"description,omitempty"`
|
||
// The current status of the award, from the closed
|
||
// [awardStatus](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#award-status)
|
||
// codelist. Codelist: awardStatus.csv (closed).
|
||
Status string `json:"status,omitempty"`
|
||
// The date of the contract award.
|
||
Date *time.Time `json:"date,omitempty"`
|
||
// The total value of this award.
|
||
Value *Value `json:"value,omitempty"`
|
||
// The suppliers awarded this award.
|
||
Suppliers []OrganizationReference `json:"suppliers,omitempty"`
|
||
// The goods and services awarded in this award, broken into line items wherever possible.
|
||
Items []Item `json:"items,omitempty"`
|
||
// The period for which the contract has been awarded.
|
||
ContractPeriod *Period `json:"contractPeriod,omitempty"`
|
||
// All documents and attachments related to the award, including any notices.
|
||
Documents []Document `json:"documents,omitempty"`
|
||
// An award amendment is a formal change to the details of the award, and generally involves
|
||
// the publication of a new award notice/release.
|
||
Amendments []Amendment `json:"amendments,omitempty"`
|
||
// The use of individual amendment objects has been deprecated.
|
||
// Deprecated: since OCDS 1.1. The single amendment object has been deprecated in favour of
|
||
// including amendments in an amendments (plural) array.
|
||
Amendment *Amendment `json:"amendment,omitempty"`
|
||
// Where bid details are used, a cross reference to the entry in the bids array to which this
|
||
// award relates.
|
||
RelatedBid string `json:"relatedBid,omitempty"`
|
||
// Any details relevant to the value of the concession according to article 8(3) of Directive
|
||
// 2014/23/EU on concession contracts.
|
||
ValueCalculationMethod string `json:"valueCalculationMethod,omitempty"`
|
||
// The identifiers of the lots to which this award relates.
|
||
RelatedLots []string `json:"relatedLots,omitempty"`
|
||
// Any target metrics set out as part of the contract award.
|
||
AgreedMetrics []Metric `json:"agreedMetrics,omitempty"`
|
||
// A description of the options.
|
||
Options *Options `json:"options,omitempty"`
|
||
// Whether the buyer is expected to reserve the right to make additional purchases from the
|
||
// supplier.
|
||
HasOptions *bool `json:"hasOptions,omitempty"`
|
||
// Whether the buyer is expected to reserve the right to renew the future contract(s).
|
||
HasRenewal *bool `json:"hasRenewal,omitempty"`
|
||
// The options for the renewal of the contract(s).
|
||
Renewal *Renewal `json:"renewal,omitempty"`
|
||
// Additional detail on the status of the award.
|
||
StatusDetails string `json:"statusDetails,omitempty"`
|
||
// Whether a part of the contract will be subcontracted.
|
||
HasSubcontracting *bool `json:"hasSubcontracting,omitempty"`
|
||
// Information about the parts of the contract that the supplier will subcontract to third
|
||
// parties.
|
||
Subcontracting *Subcontracting `json:"subcontracting,omitempty"`
|
||
}
|
||
|
||
// AwardCriteria: Information about the award criteria.
|
||
type AwardCriteria struct {
|
||
// When the weighting cannot be expressed per criterion, the mathematical equation (or other
|
||
// description) that expresses the complicated (e.g.
|
||
WeightingDescription string `json:"weightingDescription,omitempty"`
|
||
// The justification for only indicating the award criteria's order of importance, not their
|
||
// weighting.
|
||
OrderRationale string `json:"orderRationale,omitempty"`
|
||
// The award criteria.
|
||
Criteria []AwardCriterion `json:"criteria,omitempty"`
|
||
}
|
||
|
||
// AwardCriterion: Information about the award criterion.
|
||
type AwardCriterion struct {
|
||
// The aspect of the bid that the criterion concerns. Codelist: awardCriterionType.csv (open).
|
||
Type string `json:"type,omitempty"`
|
||
// The name of the criterion.
|
||
Name string `json:"name,omitempty"`
|
||
// The description of the criterion.
|
||
Description string `json:"description,omitempty"`
|
||
// Numbers linked to the criterion.
|
||
Numbers []CriterionNumber `json:"numbers,omitempty"`
|
||
}
|
||
|
||
// Bid: For representing a bid in response to the tender or qualification stage in this
|
||
// contracting process.
|
||
type Bid struct {
|
||
// A local identifier for this bid
|
||
ID string `json:"id"`
|
||
// The date when this bid was received.
|
||
Date *time.Time `json:"date,omitempty"`
|
||
// The status of the bid. Codelist: bidStatus.csv (closed).
|
||
Status string `json:"status,omitempty"`
|
||
// The party, or parties, responsible for this bid.
|
||
Tenderers []OrganizationReference `json:"tenderers,omitempty"`
|
||
// The total value of the bid.
|
||
Value *Value `json:"value,omitempty"`
|
||
// All documents and attachments related to the bid and its evaluation.
|
||
Documents []Document `json:"documents,omitempty"`
|
||
// The measures applied under the Foreign Subsidies Regulation (EU) 2022/2560. Codelist:
|
||
// foreignSubsidyMeasures.csv (closed).
|
||
ForeignSubsidyMeasures string `json:"foreignSubsidyMeasures,omitempty"`
|
||
// Whether a part of the contract will be subcontracted to third parties.
|
||
HasSubcontracting *bool `json:"hasSubcontracting,omitempty"`
|
||
// Information about the parts of the contract that will be subcontracted to third parties.
|
||
Subcontracting *Subcontracting `json:"subcontracting,omitempty"`
|
||
}
|
||
|
||
// BidOpening: The date, time, place and other details of the public bid opening.
|
||
type BidOpening struct {
|
||
// The date and time of the bid opening.
|
||
Date *time.Time `json:"date,omitempty"`
|
||
// The place where the bid opening occurs.
|
||
Location *Location `json:"location,omitempty"`
|
||
// The address of the place where the bid opening occurs.
|
||
Address *Address `json:"address,omitempty"`
|
||
// Any other details about the bid opening (who can participate, whether authorization is
|
||
// needed, etc.).
|
||
Description string `json:"description,omitempty"`
|
||
}
|
||
|
||
// Bids: Summary and detailed information about bids received and evaluated as part of this
|
||
// contracting process.
|
||
type Bids struct {
|
||
// Summary statistics on the number and nature of bids received.
|
||
Statistics []BidsStatistic `json:"statistics,omitempty"`
|
||
// An array of bids, providing information on the bidders, and where applicable, bid status,
|
||
// bid values and related documents.
|
||
Details []Bid `json:"details,omitempty"`
|
||
}
|
||
|
||
// BidsStatistic: For reporting aggregate statistics about the bids related to a tender.
|
||
type BidsStatistic struct {
|
||
// An internal identifier for this statistic.
|
||
ID string `json:"id"`
|
||
// The statistic reported in the value. Codelist: bidStatistics.csv (open).
|
||
Measure string `json:"measure"`
|
||
// The date when this statistic was last updated.
|
||
Date *time.Time `json:"date,omitempty"`
|
||
// The value for the measure in question.
|
||
Value *float64 `json:"value"`
|
||
// The currency of the amount in the `value` field, if the statistic has a monetary value.
|
||
// Codelist: currency.csv (closed).
|
||
Currency string `json:"currency,omitempty"`
|
||
// Any notes needed to understand or interpret the given statistic.
|
||
Notes string `json:"notes,omitempty"`
|
||
// Where lots are in use, if this statistic relates to bids on a particular lot, provide the
|
||
// lot identifier here.
|
||
RelatedLot string `json:"relatedLot,omitempty"`
|
||
}
|
||
|
||
// Budget: This section contains information about the budget line, and associated projects,
|
||
// through which this contracting process is funded.
|
||
type Budget struct {
|
||
// An identifier for the budget line item which provides funds for this contracting process.
|
||
ID ID `json:"id,omitempty"`
|
||
// A short free text description of the budget source.
|
||
Description string `json:"description,omitempty"`
|
||
// The value reserved in the budget for this contracting process.
|
||
Amount *Value `json:"amount,omitempty"`
|
||
// The name of the project through which this contracting process is funded (if applicable).
|
||
Project string `json:"project,omitempty"`
|
||
// An external identifier for the project that this contracting process forms part of, or is
|
||
// funded via (if applicable).
|
||
ProjectID ID `json:"projectID,omitempty"`
|
||
// A URI pointing directly to a machine-readable record about the budget line-item or
|
||
// line-items that fund this contracting process.
|
||
URI string `json:"uri,omitempty"`
|
||
// (Deprecated in 1.1) Used to point either to a corresponding Budget Data Package, or to a
|
||
// machine or human-readable source where users can find further information on the budget
|
||
// line item identifiers, or project identifiers, provided here.
|
||
// Deprecated: since OCDS 1.1. The budget data source field was intended to link to
|
||
// machine-readable data about the budget for a contracting process, but has been widely
|
||
// mis-used to provide free-text descriptions of budget providers.
|
||
Source string `json:"source,omitempty"`
|
||
// Information about financing arrangements for a future contracting process.
|
||
Finance []Finance `json:"finance,omitempty"`
|
||
}
|
||
|
||
// Charge: A charge to be incurred by users or government over the course of the contract.
|
||
type Charge struct {
|
||
// A local identifier for this specific charge.
|
||
ID string `json:"id"`
|
||
// A descriptive title for this charge.
|
||
Title string `json:"title,omitempty"`
|
||
// Is this a user charge (paid by businesses or citizens using the facilities provided by the
|
||
// contract), or a charge paid by the government? Codelist: chargePaidBy.csv (closed).
|
||
PaidBy string `json:"paidBy,omitempty"`
|
||
// The period to which this charge applies.
|
||
Period *Period `json:"period,omitempty"`
|
||
// What is the estimated total value to be raised from this charge during this period.
|
||
EstimatedValue *Value `json:"estimatedValue,omitempty"`
|
||
// In the implementation section, this field may be updated with the total revenue raised from
|
||
// this charge during this period.
|
||
ActualValue *Value `json:"actualValue,omitempty"`
|
||
// Any notes on this charge.
|
||
Notes string `json:"notes,omitempty"`
|
||
}
|
||
|
||
// Classification: A classification consists of at least two parts: an identifier for the list
|
||
// (scheme) from which the classification is taken, and an identifier for the category from
|
||
// that list being applied.
|
||
type Classification struct {
|
||
// The scheme or codelist from which the classification code is taken. Codelist:
|
||
// itemClassificationScheme.csv (open).
|
||
Scheme string `json:"scheme,omitempty"`
|
||
// The classification code taken from the scheme.
|
||
ID ID `json:"id,omitempty"`
|
||
// A textual description or title for the classification code.
|
||
Description string `json:"description,omitempty"`
|
||
// A URI to uniquely identify the classification code.
|
||
URI string `json:"uri,omitempty"`
|
||
}
|
||
|
||
// Communication: Modalities of communication about key events.
|
||
type Communication struct {
|
||
// The name of the tools and devices that are not generally available and that are required to
|
||
// communicate electronically with the buyer.
|
||
AtypicalToolName string `json:"atypicalToolName,omitempty"`
|
||
// The URL of the tools and devices that are not generally available and that are required to
|
||
// communicate electronically with the buyer.
|
||
AtypicalToolURL string `json:"atypicalToolUrl,omitempty"`
|
||
// The buyer's preferred date of publication of the notice (e.g.
|
||
NoticePreferredPublicationDate *time.Time `json:"noticePreferredPublicationDate,omitempty"`
|
||
// The estimated date of publication of the next sequential notice.
|
||
FutureNoticeDate *time.Time `json:"futureNoticeDate,omitempty"`
|
||
// The estimated date of dispatch from the buyer to potential suppliers of the invitations to
|
||
// confirm interest.
|
||
InvitationToConfirmInterestDispatchDate *time.Time `json:"invitationToConfirmInterestDispatchDate,omitempty"`
|
||
// The period during which documents can be accessed, or during which requests for access to
|
||
// documents can be submitted.
|
||
DocumentAvailabilityPeriod *Period `json:"documentAvailabilityPeriod,omitempty"`
|
||
}
|
||
|
||
// ContactPoint: A person, contact point or department to contact in relation to this
|
||
// contracting process.
|
||
type ContactPoint struct {
|
||
// The name of the contact person, department, or contact point, for correspondence relating
|
||
// to this contracting process.
|
||
Name string `json:"name,omitempty"`
|
||
// The e-mail address of the contact point/person.
|
||
Email string `json:"email,omitempty"`
|
||
// The telephone number of the contact point/person.
|
||
Telephone string `json:"telephone,omitempty"`
|
||
// The fax number of the contact point/person.
|
||
FaxNumber string `json:"faxNumber,omitempty"`
|
||
// A web address for the contact point/person.
|
||
URL string `json:"url,omitempty"`
|
||
// The languages the contact point operates in, using either two-letter
|
||
// [ISO639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes), or extended [BCP47
|
||
// language tags](http://www.w3.org/International/articles/language-tags/).
|
||
AvailableLanguage []string `json:"availableLanguage,omitempty"`
|
||
// The address of the contact point.
|
||
Address *Address `json:"address,omitempty"`
|
||
}
|
||
|
||
// Contract: Information regarding the signed contract between the buyer and supplier(s).
|
||
type Contract struct {
|
||
// The identifier for this contract.
|
||
ID ID `json:"id"`
|
||
// The award.id against which this contract is being issued.
|
||
AwardID ID `json:"awardID"`
|
||
// Contract title
|
||
Title string `json:"title,omitempty"`
|
||
// Contract description
|
||
Description string `json:"description,omitempty"`
|
||
// The current status of the contract, from the closed
|
||
// [contractStatus](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#contract-status)
|
||
// codelist. Codelist: contractStatus.csv (closed).
|
||
Status string `json:"status,omitempty"`
|
||
// The start and end date for the contract.
|
||
Period *Period `json:"period,omitempty"`
|
||
// The total value of this contract.
|
||
Value *Value `json:"value,omitempty"`
|
||
// The goods, services, and any intangible outcomes in this contract.
|
||
Items []Item `json:"items,omitempty"`
|
||
// The date the contract was signed.
|
||
DateSigned *time.Time `json:"dateSigned,omitempty"`
|
||
// All documents and attachments related to the contract, including any notices.
|
||
Documents []Document `json:"documents,omitempty"`
|
||
// Information related to the implementation of the contract in accordance with the
|
||
// obligations laid out therein.
|
||
Implementation *Implementation `json:"implementation,omitempty"`
|
||
// The details of related processes: for example, if this process is followed by one or more
|
||
// contracting processes, represented under a separate open contracting identifier (ocid).
|
||
RelatedProcesses []RelatedProcess `json:"relatedProcesses,omitempty"`
|
||
// A list of milestones associated with the finalization of this contract.
|
||
Milestones []Milestone `json:"milestones,omitempty"`
|
||
// A contract amendment is a formal change to, or extension of, a contract, and generally
|
||
// involves the publication of a new contract notice/release, or some other documents
|
||
// detailing the change.
|
||
Amendments []Amendment `json:"amendments,omitempty"`
|
||
// The use of individual amendment objects has been deprecated.
|
||
// Deprecated: since OCDS 1.1. The single amendment object has been deprecated in favour of
|
||
// including amendments in an amendments (plural) array.
|
||
Amendment *Amendment `json:"amendment,omitempty"`
|
||
// The rationale for the duration of the contract.
|
||
PeriodRationale string `json:"periodRationale,omitempty"`
|
||
// The number of kilometers of public passenger transport services provided by a public
|
||
// service contract.
|
||
PublicPassengerTransportServicesKilometers *float64 `json:"publicPassengerTransportServicesKilometers,omitempty"`
|
||
// Information about financing arrangements for this contract.
|
||
Finance []Finance `json:"finance,omitempty"`
|
||
// Any target metrics set out as part of the contract documents.
|
||
AgreedMetrics []Metric `json:"agreedMetrics,omitempty"`
|
||
// A description of the options.
|
||
Options *Options `json:"options,omitempty"`
|
||
// Whether the buyer reserves the right to make additional purchases from the supplier.
|
||
HasOptions *bool `json:"hasOptions,omitempty"`
|
||
// Whether the buyer reserves the right to renew the contract.
|
||
HasRenewal *bool `json:"hasRenewal,omitempty"`
|
||
// The options for the renewal of the contract.
|
||
Renewal *Renewal `json:"renewal,omitempty"`
|
||
// Additional detail on the status of the contract.
|
||
StatusDetails string `json:"statusDetails,omitempty"`
|
||
}
|
||
|
||
// ContractTerms: Information about the terms governing the future contracts.
|
||
type ContractTerms struct {
|
||
// Whether electronic payment is used.
|
||
HasElectronicPayment *bool `json:"hasElectronicPayment,omitempty"`
|
||
// Whether electronic ordering is used.
|
||
HasElectronicOrdering *bool `json:"hasElectronicOrdering,omitempty"`
|
||
// Whether the buyer will require, allow or not allow electronic invoices. Codelist:
|
||
// permission.csv (closed).
|
||
ElectronicInvoicingPolicy string `json:"electronicInvoicingPolicy,omitempty"`
|
||
// Whether the execution of the contract is restricted to the framework of sheltered
|
||
// employment programmes.
|
||
ReservedExecution *bool `json:"reservedExecution,omitempty"`
|
||
// The main information about the performance of the contract (e.g.
|
||
PerformanceTerms string `json:"performanceTerms,omitempty"`
|
||
// The main information about financing and payment and/or reference to any provisions that
|
||
// govern them.
|
||
FinancialTerms string `json:"financialTerms,omitempty"`
|
||
// A certain legal form that must be taken by a group of tenderers that is awarded a contract.
|
||
TendererLegalForm string `json:"tendererLegalForm,omitempty"`
|
||
// A right entitling a public service operator to operate certain public passenger transport
|
||
// services on a particular route or network or in a particular area, to the exclusion of any
|
||
// other such operator.
|
||
HasExclusiveRights *bool `json:"hasExclusiveRights,omitempty"`
|
||
// The nature and extent of the exclusive rights granted by the procuring entity to the
|
||
// supplier.
|
||
ExclusiveRights string `json:"exclusiveRights,omitempty"`
|
||
// The proportion of revenue from the sale of tickets allocated to the supplier, expressed as
|
||
// a decimal between 0 and 1.
|
||
OperatorRevenueShare *float64 `json:"operatorRevenueShare,omitempty"`
|
||
// Other contract terms that do not fit the semantics of any other OCDS field.
|
||
OtherTerms string `json:"otherTerms,omitempty"`
|
||
// Information about rewards and penalties relating to quality targets.
|
||
RewardsAndPenalties string `json:"rewardsAndPenalties,omitempty"`
|
||
// The required social standards, for example: detail of the contractual rights of the staff
|
||
// concerned, and conditions under which employees are considered to be linked to the
|
||
// services.
|
||
SocialStandards string `json:"socialStandards,omitempty"`
|
||
// Whether contract execution requires a non-disclosure agreement.
|
||
HasNonDisclosureAgreement *bool `json:"hasNonDisclosureAgreement,omitempty"`
|
||
// A description of the non-disclosure agreement required for contract execution.
|
||
NonDisclosureAgreement string `json:"nonDisclosureAgreement,omitempty"`
|
||
// Information about customer service requirements.
|
||
CustomerServices []CustomerService `json:"customerServices,omitempty"`
|
||
}
|
||
|
||
// CriterionNumber: Information about a number linked to a criterion.
|
||
type CriterionNumber struct {
|
||
// The number.
|
||
Number *float64 `json:"number,omitempty"`
|
||
// Whether the number is a type of weight. Codelist: criterionWeight.csv (closed).
|
||
Weight string `json:"weight,omitempty"`
|
||
// Whether the number is a fixed value. Codelist: awardCriterionFixed.csv (closed).
|
||
Fixed string `json:"fixed,omitempty"`
|
||
// Whether the number is a type of threshold. Codelist: criterionThreshold.csv (closed).
|
||
Threshold string `json:"threshold,omitempty"`
|
||
}
|
||
|
||
// CustomerService: A customer service requirement.
|
||
type CustomerService struct {
|
||
// The type of this customer service requirement.
|
||
Type string `json:"type,omitempty"`
|
||
// A name for this customer service requirement.
|
||
Name string `json:"name,omitempty"`
|
||
// A description of this customer service requirement.
|
||
Description string `json:"description,omitempty"`
|
||
}
|
||
|
||
// DesignContest: Information about the organization of a design contest.
|
||
type DesignContest struct {
|
||
// The organizations that have already been selected to participate in the design contest.
|
||
SelectedParticipants []OrganizationReference `json:"selectedParticipants,omitempty"`
|
||
// Whether prizes will be awarded in the design contest.
|
||
HasPrizes *bool `json:"hasPrizes,omitempty"`
|
||
// Information about the prizes awarded in the design contest.
|
||
Prizes *Prizes `json:"prizes,omitempty"`
|
||
// The details and conditions of the payments to be made to the participants.
|
||
RewardsDetails string `json:"rewardsDetails,omitempty"`
|
||
// Whether any contracts following the design contest will be awarded to the winner or winners
|
||
// of the design contest.
|
||
FollowUpContracts *bool `json:"followUpContracts,omitempty"`
|
||
// Whether the jury’s decision is binding on the procuring entity.
|
||
BindingJuryDecision *bool `json:"bindingJuryDecision,omitempty"`
|
||
// The members of the jury.
|
||
JuryMembers []JuryMember `json:"juryMembers,omitempty"`
|
||
}
|
||
|
||
// Document: Links to, or descriptions of, external documents can be attached at various
|
||
// locations within the standard.
|
||
type Document struct {
|
||
// A local, unique identifier for this document.
|
||
ID ID `json:"id"`
|
||
// A classification of the document described, using the open
|
||
// [documentType](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#document-type)
|
||
// codelist. Codelist: documentType.csv (open).
|
||
DocumentType string `json:"documentType,omitempty"`
|
||
// The document title.
|
||
Title string `json:"title,omitempty"`
|
||
// A short description of the document.
|
||
Description string `json:"description,omitempty"`
|
||
// A direct link to the document or attachment.
|
||
URL string `json:"url,omitempty"`
|
||
// The date on which the document was first published.
|
||
DatePublished *time.Time `json:"datePublished,omitempty"`
|
||
// Date that the document was last modified
|
||
DateModified *time.Time `json:"dateModified,omitempty"`
|
||
// The format of the document, using the open [IANA Media
|
||
// Types](https://www.iana.org/assignments/media-types/media-types.xhtml) codelist (see the
|
||
// values in the 'Template' column), or using the 'offline/print' code if the described
|
||
// document is published offline.
|
||
Format string `json:"format,omitempty"`
|
||
// The language of the linked document using either two-letter
|
||
// [ISO639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes), or extended [BCP47
|
||
// language tags](https://www.w3.org/International/articles/language-tags/).
|
||
Language string `json:"language,omitempty"`
|
||
// The identifiers of the lots to which this document relates.
|
||
RelatedLots []string `json:"relatedLots,omitempty"`
|
||
}
|
||
|
||
// DynamicPurchasingSystem: Information about the dynamic purchasing system.
|
||
type DynamicPurchasingSystem struct {
|
||
// In the case of central purchasing bodies, whether the dynamic purchasing system can be used
|
||
// by buyers not listed in the contracting process. Codelist: dynamicPurchasingSystemType.csv
|
||
// (closed).
|
||
Type string `json:"type,omitempty"`
|
||
// The status of the dynamic purchasing system. Codelist: dynamicPurchasingSystemStatus.csv
|
||
// (closed).
|
||
Status string `json:"status,omitempty"`
|
||
}
|
||
|
||
// ElectronicAuction: Information about the electronic auction.
|
||
type ElectronicAuction struct {
|
||
// The internet address of the electronic auction.
|
||
URL string `json:"url,omitempty"`
|
||
// Any additional information about the electronic auction.
|
||
Description string `json:"description,omitempty"`
|
||
}
|
||
|
||
// EssentialAsset: Information about the asset used for the provision of public services.
|
||
type EssentialAsset struct {
|
||
// Description of the essential asset.
|
||
Description string `json:"description,omitempty"`
|
||
// Estimated percentage share of the essential asset provided in relation to the overall asset
|
||
// needed for the provision of the public services.
|
||
Significance string `json:"significance,omitempty"`
|
||
// Estimated percentage share of asset provided compared to asset used for activities other
|
||
// than the public services.
|
||
Predominance string `json:"predominance,omitempty"`
|
||
}
|
||
|
||
type ExclusionGrounds struct {
|
||
// The sources in which the exclusion grounds are defined. Codelist: sources.csv (closed).
|
||
Sources []string `json:"sources,omitempty"`
|
||
}
|
||
|
||
// Finance: An arrangement between two parties for raising money.
|
||
type Finance struct {
|
||
// An identifier for this financing arrangement.
|
||
ID string `json:"id"`
|
||
// A short title for this financing arrangement.
|
||
Title string `json:"title,omitempty"`
|
||
// A short description of this financing arrangement.
|
||
Description string `json:"description,omitempty"`
|
||
// The total value of this finance.
|
||
Value *Value `json:"value,omitempty"`
|
||
// The organization providing this financing arrangement.
|
||
FinancingParty *OrganizationReference `json:"financingParty,omitempty"`
|
||
// The type of the financing organization, from the closed financingPartyType codelist.
|
||
// Codelist: financingPartyType.csv (closed).
|
||
FinancingPartyType string `json:"financingPartyType,omitempty"`
|
||
// The source of funds for this financing arrangement.
|
||
Source string `json:"source,omitempty"`
|
||
// The asset classes used in this financing arrangement, from the closed assetClass codelist.
|
||
// Codelist: assetClass.csv (closed).
|
||
AssetClass []string `json:"assetClass,omitempty"`
|
||
// The type of this financing arrangement, from the closed financingArrangementType codelist.
|
||
// Codelist: financingArrangementType.csv (closed).
|
||
Type string `json:"type,omitempty"`
|
||
// The order in which the debt in this financing arrangement will be repaid in case of
|
||
// default, from the closed debtRepaymentPriority codelist. Codelist:
|
||
// debtRepaymentPriority.csv (closed).
|
||
RepaymentPriority string `json:"repaymentPriority,omitempty"`
|
||
// Whether this financing arrangement is provided below market rate in order to accelerate
|
||
// climate or development objectives.
|
||
Concessional *bool `json:"concessional,omitempty"`
|
||
// Whether payments under this financing arrangement are contingent on the achievement of
|
||
// pre-defined results.
|
||
ResultsBased *bool `json:"resultsBased,omitempty"`
|
||
// The period covered by this financing arrangement.
|
||
Period *Period `json:"period,omitempty"`
|
||
// The period over which the borrower in this financing arrangement is obliged to make
|
||
// payments.
|
||
PaymentPeriod *Period `json:"paymentPeriod,omitempty"`
|
||
// The average payment frequency (in days) of this financing arrangement.
|
||
PaymentFrequency *float64 `json:"paymentFrequency,omitempty"`
|
||
// The interest rate associated with this finance.
|
||
InterestRate *FinanceInterestRate `json:"interestRate,omitempty"`
|
||
// Whether there is an associated exchange rate guarantee with this source of finance.
|
||
ExchangeRateGuarantee *bool `json:"exchangeRateGuarantee,omitempty"`
|
||
// Whether provision of this finance confers any step in rights to the financing organization.
|
||
StepInRights *bool `json:"stepInRights,omitempty"`
|
||
// The identifiers of the lots to which this financing arrangement relates.
|
||
RelatedLots []string `json:"relatedLots,omitempty"`
|
||
}
|
||
|
||
// FinanceInterestRate: The interest rate associated with this finance.
|
||
type FinanceInterestRate struct {
|
||
// The variable to which an additional margin amount is added to get the interest amount.
|
||
Base json.RawMessage `json:"base,omitempty"`
|
||
// The variable added to the base to give the interest amount, expressed as a decimal (for
|
||
// example, 0.1) and not as a percentage (for example, 10).
|
||
Margin *float64 `json:"margin,omitempty"`
|
||
// A boolean field.
|
||
Fixed *bool `json:"fixed,omitempty"`
|
||
// Any explanatory notes concerning the interest rate.
|
||
Notes string `json:"notes,omitempty"`
|
||
}
|
||
|
||
// FrameworkAgreement: Information about the framework agreement.
|
||
type FrameworkAgreement struct {
|
||
// The minimum number of participants in the framework agreement.
|
||
MinimumParticipants *float64 `json:"minimumParticipants,omitempty"`
|
||
// The maximum number of participants in the framework agreement.
|
||
MaximumParticipants *float64 `json:"maximumParticipants,omitempty"`
|
||
// Whether contracts are awarded with, without, or both with and without the reopening of
|
||
// competition. Codelist: frameworkAgreementMethod.csv (closed).
|
||
Method string `json:"method,omitempty"`
|
||
// The justification for exceptional cases when the duration of a framework agreement exceeds
|
||
// the legal limits.
|
||
PeriodRationale string `json:"periodRationale,omitempty"`
|
||
// Any additional categories of buyers participating in the framework agreement and not
|
||
// mentioned by name (e.g.
|
||
BuyerCategories string `json:"buyerCategories,omitempty"`
|
||
// The total upper estimated value of the framework agreement.
|
||
Value *Value `json:"value,omitempty"`
|
||
// The period over which the framework agreement is estimated to be active.
|
||
Period *Period `json:"period,omitempty"`
|
||
// A summary description of the framework agreement.
|
||
Description string `json:"description,omitempty"`
|
||
}
|
||
|
||
// Identifier: A unique identifier for a party (organization).
|
||
type Identifier struct {
|
||
// Organization identifiers should be taken from an existing organization identifier list.
|
||
Scheme string `json:"scheme,omitempty"`
|
||
// The identifier of the organization in the selected scheme.
|
||
ID ID `json:"id,omitempty"`
|
||
// The legally registered name of the organization.
|
||
LegalName string `json:"legalName,omitempty"`
|
||
// A URI to identify the organization, such as those provided by [Open
|
||
// Corporates](https://opencorporates.com) or some other relevant URI provider.
|
||
URI string `json:"uri,omitempty"`
|
||
}
|
||
|
||
// Implementation: Information during the performance / implementation stage of the contract.
|
||
type Implementation struct {
|
||
// A list of the spending transactions made against this contract
|
||
Transactions []Transaction `json:"transactions,omitempty"`
|
||
// As milestones are completed, the milestone's status and dates should be updated.
|
||
Milestones []Milestone `json:"milestones,omitempty"`
|
||
// Documents and reports that are part of the implementation phase e.g.
|
||
Documents []Document `json:"documents,omitempty"`
|
||
// Information on the revenue to be raised through charges, as set out in the contract or as
|
||
// subsequently revised during the life of the project.
|
||
Charges []Charge `json:"charges,omitempty"`
|
||
// Reported results from the delivery of the contracted goods, works or services.
|
||
Metrics []Metric `json:"metrics,omitempty"`
|
||
}
|
||
|
||
// Item: A good, service, or work to be contracted.
|
||
type Item struct {
|
||
// A local identifier to reference and merge the items by.
|
||
ID ID `json:"id"`
|
||
// A description of the goods, services to be provided.
|
||
Description string `json:"description,omitempty"`
|
||
// The primary classification for the item.
|
||
Classification *Classification `json:"classification,omitempty"`
|
||
// An array of additional classifications for the item.
|
||
AdditionalClassifications []Classification `json:"additionalClassifications,omitempty"`
|
||
// The number of units to be provided.
|
||
Quantity *float64 `json:"quantity,omitempty"`
|
||
// A description of the unit in which the supplies, services or works are provided (e.g.
|
||
Unit *ItemUnit `json:"unit,omitempty"`
|
||
// The location where activity related to this tender, contract or license will be delivered,
|
||
// or will take place.
|
||
DeliveryLocation *Location `json:"deliveryLocation,omitempty"`
|
||
// The address to which, or where, goods or services related to this tender, contract or
|
||
// license will be delivered.
|
||
DeliveryAddress *Address `json:"deliveryAddress,omitempty"`
|
||
// The identifier of the lot to which this item relates.
|
||
RelatedLot string `json:"relatedLot,omitempty"`
|
||
}
|
||
|
||
// ItemUnit: A description of the unit in which the supplies, services or works are provided
|
||
// (e.g.
|
||
type ItemUnit struct {
|
||
// The list from which identifiers for units of measure are taken, using the open
|
||
// [unitClassificationScheme](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#unit-classification-scheme)
|
||
// codelist. Codelist: unitClassificationScheme.csv (open).
|
||
Scheme string `json:"scheme,omitempty"`
|
||
// The identifier from the codelist referenced in the `scheme` field.
|
||
ID string `json:"id,omitempty"`
|
||
// Name of the unit.
|
||
Name string `json:"name,omitempty"`
|
||
// The monetary value of a single unit.
|
||
Value *Value `json:"value,omitempty"`
|
||
// The machine-readable URI for the unit of measure, provided by the scheme.
|
||
URI string `json:"uri,omitempty"`
|
||
}
|
||
|
||
// JuryMember: Member of the jury.
|
||
type JuryMember struct {
|
||
// The name of the jury member.
|
||
Name string `json:"name,omitempty"`
|
||
}
|
||
|
||
// LegislativeReference: Legislative reference and associated contact point
|
||
type LegislativeReference struct {
|
||
// The title of the legislative reference
|
||
Title string `json:"title,omitempty"`
|
||
// A link to the Web page of the legislative reference.
|
||
URL string `json:"url,omitempty"`
|
||
// An organization that can provide information about the legislative reference.
|
||
InformationService *OrganizationReference `json:"informationService,omitempty"`
|
||
}
|
||
|
||
// Location: The location where activity related to this tender, contract or license will be
|
||
// delivered, or will take place.
|
||
type Location struct {
|
||
// A name or description of this location.
|
||
Description string `json:"description,omitempty"`
|
||
// We follow the [GeoJSON standard](http://geojson.org/) to express basic location
|
||
// information, using longitude, latitude, and optional elevation values in the
|
||
// [WGS84](https://en.wikipedia.org/wiki/World_Geodetic_System) (EPSG:4326) projection.
|
||
Geometry *LocationGeometry `json:"geometry,omitempty"`
|
||
// Identifiers from a gazetteer (a geographical index or directory) for the location.
|
||
Gazetteer *LocationGazetteer `json:"gazetteer,omitempty"`
|
||
// A URI to a further description of the activity location.
|
||
URI string `json:"uri,omitempty"`
|
||
}
|
||
|
||
// LocationGeometry: We follow the [GeoJSON standard](http://geojson.org/) to express basic
|
||
// location information, using longitude, latitude, and optional elevation values in the
|
||
// [WGS84](https://en.wikipedia.org/wiki/World_Geodetic_System) (EPSG:4326) projection.
|
||
type LocationGeometry struct {
|
||
// The type of [GeoJSON Geometry
|
||
// Objects](http://geojson.org/geojson-spec.html#geometry-objects) being provided. Codelist:
|
||
// geometryType.csv (closed).
|
||
Type string `json:"type,omitempty"`
|
||
// The relevant array of points, e.g.
|
||
Coordinates []json.RawMessage `json:"coordinates,omitempty"`
|
||
}
|
||
|
||
// LocationGazetteer: Identifiers from a gazetteer (a geographical index or directory) for the
|
||
// location.
|
||
type LocationGazetteer struct {
|
||
// The identifier of the gazetteer. Codelist: locationGazetteers.csv (open).
|
||
Scheme string `json:"scheme,omitempty"`
|
||
// An array of one or more codes drawn from the gazetteer indicated by the `scheme` field.
|
||
Identifiers []string `json:"identifiers,omitempty"`
|
||
}
|
||
|
||
// Lot: A lot is a grouping of items within a tender that can be bid on or awarded together.
|
||
type Lot struct {
|
||
// Information about the award criteria for the lot.
|
||
AwardCriteria *AwardCriteria `json:"awardCriteria,omitempty"`
|
||
// The date, time, place and other details of the public bid opening.
|
||
BidOpening *BidOpening `json:"bidOpening,omitempty"`
|
||
// Modalities of communication about key events for this lot.
|
||
Communication *Communication `json:"communication,omitempty"`
|
||
// Information about the terms governing the future contracts for the lot.
|
||
ContractTerms *ContractTerms `json:"contractTerms,omitempty"`
|
||
// The international legal instruments that the lot is covered by. Codelist: coveredBy.csv
|
||
// (open).
|
||
CoveredBy []string `json:"coveredBy,omitempty"`
|
||
// Information about the organization of a design contest.
|
||
DesignContest *DesignContest `json:"designContest,omitempty"`
|
||
// Information about the assets used for the provision of public services.
|
||
EssentialAssets []EssentialAsset `json:"essentialAssets,omitempty"`
|
||
// Whether there is information about the assets used for the provision of public services.
|
||
HasEssentialAssets *bool `json:"hasEssentialAssets,omitempty"`
|
||
// The period for decision making regarding the contract award for the lot.
|
||
AwardPeriod *Period `json:"awardPeriod,omitempty"`
|
||
// Whether the technical specifications for the lot include accessibility criteria for people
|
||
// with disabilities.
|
||
HasAccessibilityCriteria *bool `json:"hasAccessibilityCriteria,omitempty"`
|
||
// The rationale for not including accessibility criteria when the object of the lot is
|
||
// intended for use by natural persons.
|
||
NoAccessibilityCriteriaRationale string `json:"noAccessibilityCriteriaRationale,omitempty"`
|
||
// Precise information concerning the time limits for the review procedures for the lot or
|
||
// contact information from which it can be obtained.
|
||
ReviewDetails string `json:"reviewDetails,omitempty"`
|
||
// A local identifier for this lot, such as a lot number.
|
||
ID string `json:"id"`
|
||
// Identifiers for this lot.
|
||
Identifiers []SimpleIdentifier `json:"identifiers,omitempty"`
|
||
// A title for this lot.
|
||
Title string `json:"title,omitempty"`
|
||
// A description of this lot.
|
||
Description string `json:"description,omitempty"`
|
||
// The current status of the process related to this lot. Codelist: tenderStatus.csv (closed).
|
||
Status string `json:"status,omitempty"`
|
||
// The maximum estimated value of this lot.
|
||
Value *Value `json:"value,omitempty"`
|
||
// The estimated minimum value of the lot.
|
||
MinimumValue *Value `json:"minimumValue,omitempty"`
|
||
// The period when this lot is open for submissions.
|
||
TenderPeriod *Period `json:"tenderPeriod,omitempty"`
|
||
// The period over which the contract is estimated or specified to be active.
|
||
ContractPeriod *Period `json:"contractPeriod,omitempty"`
|
||
// The organization aiming to conclude a contract with a supplier or to use the goods, works
|
||
// or services in this lot.
|
||
Buyer *OrganizationReference `json:"buyer,omitempty"`
|
||
// Additional classifications for this lot.
|
||
AdditionalClassifications []Classification `json:"additionalClassifications,omitempty"`
|
||
// The primary category describing the main object of this lot, using the closed
|
||
// procurementCategory codelist. Codelist: procurementCategory.csv (closed).
|
||
MainProcurementCategory string `json:"mainProcurementCategory,omitempty"`
|
||
// Any additional categories describing the objects of this lot, using the open
|
||
// extendedProcurementCategory codelist. Codelist: extendedProcurementCategory.csv (open).
|
||
AdditionalProcurementCategories []string `json:"additionalProcurementCategories,omitempty"`
|
||
// The period during which potential bidders may submit questions and requests for
|
||
// clarification about this lot to the buyer or the procuring entity.
|
||
EnquiryPeriod *Period `json:"enquiryPeriod,omitempty"`
|
||
// Milestones associated with this lot.
|
||
Milestones []Milestone `json:"milestones,omitempty"`
|
||
// Information about the methods by which bids are submitted for this lot.
|
||
SubmissionMethodDetails string `json:"submissionMethodDetails,omitempty"`
|
||
// Information about the submission terms to describe how, when and where the tenderers need
|
||
// to submit their bids or expressions of interest for the lot.
|
||
SubmissionTerms *SubmissionTerms `json:"submissionTerms,omitempty"`
|
||
// A description of the options.
|
||
Options *Options `json:"options,omitempty"`
|
||
// Whether the buyer is expected to reserve the right to make additional purchases from the
|
||
// supplier.
|
||
HasOptions *bool `json:"hasOptions,omitempty"`
|
||
// Other requirements to participate in the lot.
|
||
OtherRequirements *OtherRequirements `json:"otherRequirements,omitempty"`
|
||
// Information on the recurrence of the lot.
|
||
Recurrence *Recurrence `json:"recurrence,omitempty"`
|
||
// Whether the contracting process is recurrent.
|
||
HasRecurrence *bool `json:"hasRecurrence,omitempty"`
|
||
// Whether the buyer is expected to reserve the right to renew the future contract(s) related
|
||
// to the lot.
|
||
HasRenewal *bool `json:"hasRenewal,omitempty"`
|
||
// The options for the renewal of the contract(s) related to the lot.
|
||
Renewal *Renewal `json:"renewal,omitempty"`
|
||
// Information about the second stage of a two-stage procedure (e.g.
|
||
SecondStage *SecondStage `json:"secondStage,omitempty"`
|
||
// Information about the conditions for participation in a lot.
|
||
SelectionCriteria *SelectionCriteria `json:"selectionCriteria,omitempty"`
|
||
// Information about the terms governing subcontracting.
|
||
SubcontractingTerms *SubcontractingTerms `json:"subcontractingTerms,omitempty"`
|
||
// Information about the use of techniques, such as framework agreements, dynamic purchasing
|
||
// systems and electronic auctions.
|
||
Techniques *Techniques `json:"techniques,omitempty"`
|
||
}
|
||
|
||
// LotGroup: Where the buyer reserves the right to combine lots, or wishes to specify the
|
||
// total value for a group of lots, a lot group is used to capture this information.
|
||
type LotGroup struct {
|
||
// Information about the award criteria for the lot.
|
||
AwardCriteria *AwardCriteria `json:"awardCriteria,omitempty"`
|
||
// A local identifier for this group of lots.
|
||
ID string `json:"id"`
|
||
// Identifiers for this lot group.
|
||
Identifiers []SimpleIdentifier `json:"identifiers,omitempty"`
|
||
// A title for this lot group.
|
||
Title string `json:"title,omitempty"`
|
||
// A description of this lot group.
|
||
Description string `json:"description,omitempty"`
|
||
// A list of the identifiers of the lots that form this group.
|
||
RelatedLots []string `json:"relatedLots,omitempty"`
|
||
// The buyer reserves the right to combine the lots in this group when awarding a contract.
|
||
OptionToCombine *bool `json:"optionToCombine,omitempty"`
|
||
// The maximum estimated value of the lots in this group.
|
||
MaximumValue *Value `json:"maximumValue,omitempty"`
|
||
// Information about the use of techniques, such as framework agreements, dynamic purchasing
|
||
// systems and electronic auctions.
|
||
Techniques *Techniques `json:"techniques,omitempty"`
|
||
}
|
||
|
||
// Metric: Metrics are used to set out targets and results from a contracting process.
|
||
type Metric struct {
|
||
// An identifier for this metric.
|
||
ID string `json:"id"`
|
||
// The title of this metric
|
||
Title string `json:"title,omitempty"`
|
||
// A short description of the metric.
|
||
Description string `json:"description,omitempty"`
|
||
// An array of target or actual values for this metric.
|
||
Observations []Observation `json:"observations,omitempty"`
|
||
}
|
||
|
||
// Milestone: The milestone block can be used to represent a wide variety of events in the
|
||
// lifetime of a contracting process.
|
||
type Milestone struct {
|
||
// A local identifier for this milestone, unique within this block.
|
||
ID ID `json:"id"`
|
||
// Milestone title
|
||
Title string `json:"title,omitempty"`
|
||
// The nature of the milestone, using the open
|
||
// [milestoneType](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#milestone-type)
|
||
// codelist. Codelist: milestoneType.csv (open).
|
||
Type string `json:"type,omitempty"`
|
||
// A description of the milestone.
|
||
Description string `json:"description,omitempty"`
|
||
// Milestone codes can be used to track specific events that take place for a particular kind
|
||
// of contracting process.
|
||
Code string `json:"code,omitempty"`
|
||
// The date the milestone is due.
|
||
DueDate *time.Time `json:"dueDate,omitempty"`
|
||
// The date on which the milestone was met.
|
||
DateMet *time.Time `json:"dateMet,omitempty"`
|
||
// The date the milestone was last reviewed or modified and the status was altered or
|
||
// confirmed to still be correct.
|
||
DateModified *time.Time `json:"dateModified,omitempty"`
|
||
// The status that was realized on the date provided in `dateModified`, from the closed
|
||
// [milestoneStatus](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#milestone-status)
|
||
// codelist. Codelist: milestoneStatus.csv (closed).
|
||
Status string `json:"status,omitempty"`
|
||
// List of documents associated with this milestone (Deprecated in 1.1).
|
||
// Deprecated: since OCDS 1.1. Inclusion of documents at the milestone level is now
|
||
// deprecated.
|
||
Documents []Document `json:"documents,omitempty"`
|
||
// The identifiers of the lots to which this milestone relates.
|
||
RelatedLots []string `json:"relatedLots,omitempty"`
|
||
}
|
||
|
||
// MilestoneReference: A block used to reference a milestone, including the ID and title of
|
||
// the milestone being referenced.
|
||
type MilestoneReference struct {
|
||
// The ID of the milestone being referenced, this must match the ID of a milestone described
|
||
// elsewhere in a release about this contracting process.
|
||
ID string `json:"id"`
|
||
// The title of the milestone being referenced, this must match the title of a milestone
|
||
// described elsewhere in a release about this contracting process.
|
||
Title string `json:"title,omitempty"`
|
||
}
|
||
|
||
// Observation: An actual or target observation.
|
||
type Observation struct {
|
||
// A local identifier for this specific observation.
|
||
ID string `json:"id"`
|
||
// The period over which this observation is measured.
|
||
Period *Period `json:"period,omitempty"`
|
||
// For financial metrics, the value of this forecast, target or actual observation.
|
||
Value *Value `json:"value,omitempty"`
|
||
// For non-financial metrics, the measure of this forecast, target or actual observation.
|
||
Measure json.RawMessage `json:"measure,omitempty"`
|
||
// Unit
|
||
Unit *ObservationUnit `json:"unit,omitempty"`
|
||
// Any number of dimensions can be recorded within this object.
|
||
Dimensions map[string]any `json:"dimensions,omitempty"`
|
||
// Any notes on this observation.
|
||
Notes string `json:"notes,omitempty"`
|
||
// A link to the milestone in the implementation section of OCDS to which this forecast,
|
||
// target or actual observation relates.
|
||
RelatedImplementationMilestone *MilestoneReference `json:"relatedImplementationMilestone,omitempty"`
|
||
}
|
||
|
||
// ObservationUnit: Unit
|
||
type ObservationUnit struct {
|
||
// The name of the unit.
|
||
Name string `json:"name,omitempty"`
|
||
// The list from which units of measure identifiers are taken. Codelist:
|
||
// unitClassificationScheme.csv (open).
|
||
Scheme string `json:"scheme,omitempty"`
|
||
// The identifier from the codelist referenced in the scheme field.
|
||
ID string `json:"id,omitempty"`
|
||
// If the scheme used provide a machine-readable URI for this unit of measure, this can be
|
||
// given.
|
||
URI string `json:"uri,omitempty"`
|
||
}
|
||
|
||
// Options: A description of the options.
|
||
type Options struct {
|
||
// A description of the options.
|
||
Description string `json:"description,omitempty"`
|
||
// The period over which the options can be used.
|
||
Period *Period `json:"period,omitempty"`
|
||
}
|
||
|
||
// Organization: A party (organization)
|
||
type Organization struct {
|
||
// A common name for this organization or other participant in the contracting process.
|
||
Name string `json:"name,omitempty"`
|
||
// The ID used for cross-referencing to this party from other sections of the release.
|
||
ID string `json:"id,omitempty"`
|
||
// The primary identifier for this organization or participant.
|
||
Identifier *Identifier `json:"identifier,omitempty"`
|
||
// A list of additional / supplemental identifiers for the organization or participant, using
|
||
// the [organization identifier
|
||
// guidance](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/identifiers/).
|
||
AdditionalIdentifiers []Identifier `json:"additionalIdentifiers,omitempty"`
|
||
// An address.
|
||
Address *Address `json:"address,omitempty"`
|
||
// Contact details that can be used for this party.
|
||
ContactPoint *ContactPoint `json:"contactPoint,omitempty"`
|
||
// The party's role(s) in the contracting process, using the open
|
||
// [partyRole](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#party-role)
|
||
// codelist. Codelist: partyRole.csv (open).
|
||
Roles []string `json:"roles,omitempty"`
|
||
// Additional classification information about parties can be provided using partyDetail
|
||
// extensions that define particular fields and classification schemes.
|
||
Details *OrganizationDetails `json:"details,omitempty"`
|
||
// An array of additional contact points that may be consulted for information.
|
||
AdditionalContactPoints []ContactPoint `json:"additionalContactPoints,omitempty"`
|
||
// The organization's URL for the exchange of data and documents with eDelivery.
|
||
EDeliveryGateway string `json:"eDeliveryGateway,omitempty"`
|
||
// Shareholdings in the organization: used to provide company ownership information for firms,
|
||
// primarily in the case of large and complex contracts, like public private partnerships,
|
||
// that require disclosure of this information by bidders or suppliers.
|
||
Shareholders []Shareholder `json:"shareholders,omitempty"`
|
||
}
|
||
|
||
// OrganizationDetails: Additional classification information about parties can be provided
|
||
// using partyDetail extensions that define particular fields and classification schemes.
|
||
type OrganizationDetails struct {
|
||
// The website of the organization.
|
||
URL string `json:"url,omitempty"`
|
||
// The Web address of the buyer profile.
|
||
BuyerProfile string `json:"buyerProfile,omitempty"`
|
||
// The classifications that categorize the organization.
|
||
Classifications []Classification `json:"classifications,omitempty"`
|
||
// The size or scale of the organization. Codelist: partyScale.csv (closed).
|
||
Scale string `json:"scale,omitempty"`
|
||
}
|
||
|
||
// OrganizationReference: The id and name of the party being referenced.
|
||
type OrganizationReference struct {
|
||
// The name of the party being referenced.
|
||
Name string `json:"name,omitempty"`
|
||
// The id of the party being referenced.
|
||
ID ID `json:"id,omitempty"`
|
||
// The primary identifier for this organization.
|
||
// Deprecated: since OCDS 1.1. From version 1.1, organizations should be referenced by their
|
||
// identifier and name in a document, and detailed legal identifier information should only be
|
||
// provided in the relevant cross-referenced entry in the parties section at the top level of
|
||
// a release.
|
||
Identifier *Identifier `json:"identifier,omitempty"`
|
||
// (Deprecated outside the parties section)
|
||
// Deprecated: since OCDS 1.1. From version 1.1, organizations should be referenced by their
|
||
// identifier and name in a document, and address information should only be provided in the
|
||
// relevant cross-referenced entry in the parties section at the top level of a release.
|
||
Address *Address `json:"address,omitempty"`
|
||
// (Deprecated outside the parties section) A list of additional / supplemental identifiers
|
||
// for the organization, using the [organization identifier
|
||
// guidance](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/identifiers/).
|
||
// Deprecated: since OCDS 1.1. From version 1.1, organizations should be referenced by their
|
||
// identifier and name in a document, and additional identifiers for an organization should be
|
||
// provided in the relevant cross-referenced entry in the parties section at the top level of
|
||
// a release.
|
||
AdditionalIdentifiers []Identifier `json:"additionalIdentifiers,omitempty"`
|
||
// (Deprecated outside the parties section)
|
||
// Deprecated: since OCDS 1.1. From version 1.1, organizations should be referenced by their
|
||
// identifier and name in a document, and contact point information for an organization should
|
||
// be provided in the relevant cross-referenced entry in the parties section at the top level
|
||
// of a release.
|
||
ContactPoint *ContactPoint `json:"contactPoint,omitempty"`
|
||
}
|
||
|
||
// OtherRequirements: Other requirements to participate in the procedure or lot.
|
||
type OtherRequirements struct {
|
||
// Whether the bidders are obligated to indicate the names and professional qualifications of
|
||
// the staff assigned to performing the contract.
|
||
RequiresStaffNamesAndQualifications *bool `json:"requiresStaffNamesAndQualifications,omitempty"`
|
||
// The types of organizations to which participation is reserved. Codelist:
|
||
// reservedParticipation.csv (open).
|
||
ReservedParticipation []string `json:"reservedParticipation,omitempty"`
|
||
// The conditions to be fulfilled by candidates in view of their qualification for the system.
|
||
QualificationSystemConditions []string `json:"qualificationSystemConditions,omitempty"`
|
||
// The methods according to which each of the qualification system conditions will be
|
||
// verified.
|
||
QualificationSystemMethods []string `json:"qualificationSystemMethods,omitempty"`
|
||
// The criteria or rules for selecting a limited number of qualified candidates to submit
|
||
// bids.
|
||
ReductionCriteria string `json:"reductionCriteria,omitempty"`
|
||
// Information about the required security clearance (e.g.
|
||
SecurityClearance string `json:"securityClearance,omitempty"`
|
||
}
|
||
|
||
// ParticipationFee: A fee applicable to bidders wishing to participate in the tender process.
|
||
type ParticipationFee struct {
|
||
// The locally unique identifier for the fee.
|
||
ID string `json:"id"`
|
||
// The type of the fee. Codelist: participationFeeType.csv (closed).
|
||
Type []string `json:"type,omitempty"`
|
||
// The monetary value of the fee.
|
||
Value *Value `json:"value,omitempty"`
|
||
// The value of the fee, as a proportion of a monetary value.
|
||
RelativeValue *RelativeValue `json:"relativeValue,omitempty"`
|
||
// Additional information about the fee, for example: the specific cases in which the fee is
|
||
// applicable (e.g.
|
||
Description string `json:"description,omitempty"`
|
||
// The accepted ways to pay the fee. Codelist: methodOfPayment.csv (open).
|
||
MethodOfPayment []string `json:"methodOfPayment,omitempty"`
|
||
// The physical address to which to submit non-electronic payments.
|
||
PaymentAddress *Address `json:"paymentAddress,omitempty"`
|
||
// The organization that receives the fee.
|
||
Payee *OrganizationReference `json:"payee,omitempty"`
|
||
}
|
||
|
||
// Period: Key events during a contracting process may have a known start date, end date,
|
||
// duration, or maximum extent (the latest date the period can extend to).
|
||
type Period struct {
|
||
// The start date for the period.
|
||
StartDate *time.Time `json:"startDate,omitempty"`
|
||
// The end date for the period.
|
||
EndDate *time.Time `json:"endDate,omitempty"`
|
||
// The period cannot be extended beyond this date.
|
||
MaxExtentDate *time.Time `json:"maxExtentDate,omitempty"`
|
||
// The maximum duration of this period in days.
|
||
DurationInDays *int `json:"durationInDays,omitempty"`
|
||
// The description of the period.
|
||
Description string `json:"description,omitempty"`
|
||
}
|
||
|
||
// Planning: Information from the planning phase of the contracting process.
|
||
type Planning struct {
|
||
// The rationale for the procurement provided in free text.
|
||
Rationale string `json:"rationale,omitempty"`
|
||
// Details of the budget that funds this contracting process.
|
||
Budget *Budget `json:"budget,omitempty"`
|
||
// A list of documents related to the planning process.
|
||
Documents []Document `json:"documents,omitempty"`
|
||
// A list of milestones associated with the planning stage.
|
||
Milestones []Milestone `json:"milestones,omitempty"`
|
||
// Any forecasts metrics for a future contracting process.
|
||
Forecasts []Metric `json:"forecasts,omitempty"`
|
||
}
|
||
|
||
// Prize: Information about an individual prize awarded in a design contest.
|
||
type Prize struct {
|
||
// The locally unique identifier for the prize.
|
||
ID string `json:"id"`
|
||
// The description of the prize.
|
||
Description string `json:"description,omitempty"`
|
||
// The value of the prize.
|
||
Value *Value `json:"value,omitempty"`
|
||
}
|
||
|
||
// Prizes: Information about the prizes awarded in a design contest.
|
||
type Prizes struct {
|
||
// The description of the prizes.
|
||
Description string `json:"description,omitempty"`
|
||
// Information about the individual prizes.
|
||
Details []Prize `json:"details,omitempty"`
|
||
}
|
||
|
||
// Procedure: Information about the procurement procedure.
|
||
type Procedure struct {
|
||
// Whether the time limit for receipt of bids or expressions of interest can be reduced due to
|
||
// a state of urgency.
|
||
IsAccelerated *bool `json:"isAccelerated,omitempty"`
|
||
// The justification for using an accelerated procedure.
|
||
AcceleratedRationale string `json:"acceleratedRationale,omitempty"`
|
||
// The main features of the procedure (e.g.
|
||
Features string `json:"features,omitempty"`
|
||
}
|
||
|
||
// Recurrence: Information on the recurrence of the contracting process.
|
||
type Recurrence struct {
|
||
// An estimate of the timing of subsequent initiations of contracting processes (e.g.
|
||
Dates []Period `json:"dates,omitempty"`
|
||
// Any further information on the recurrence of the contracting process.
|
||
Description string `json:"description,omitempty"`
|
||
}
|
||
|
||
// RelatedProcess: A reference to a related contracting process: generally one preceding or
|
||
// following on from the current process.
|
||
type RelatedProcess struct {
|
||
// A local identifier for this relationship, unique within this array.
|
||
ID string `json:"id,omitempty"`
|
||
// The type of relationship, using the open
|
||
// [relatedProcess](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#related-process)
|
||
// codelist. Codelist: relatedProcess.csv (open).
|
||
Relationship []string `json:"relationship,omitempty"`
|
||
// The title of the related process, where referencing an open contracting process, this field
|
||
// should match the tender/title field in the related process.
|
||
Title string `json:"title,omitempty"`
|
||
// The identification scheme used by this cross-reference, using the open
|
||
// [relatedProcessScheme](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#related-process-scheme)
|
||
// codelist. Codelist: relatedProcessScheme.csv (open).
|
||
Scheme string `json:"scheme,omitempty"`
|
||
// The identifier of the related process.
|
||
Identifier string `json:"identifier,omitempty"`
|
||
// A URI pointing to a machine-readable document, release or record package containing the
|
||
// identified related process.
|
||
URI string `json:"uri,omitempty"`
|
||
// The identifier of a part of a prior information notice, or another similar notice, that
|
||
// describes a planning process.
|
||
Part string `json:"part,omitempty"`
|
||
// The identifiers of the lots in the related process to which this process relates.
|
||
RelatedLots []string `json:"relatedLots,omitempty"`
|
||
}
|
||
|
||
// RelativeValue: The value of the participation fee, as a proportion of a monetary value.
|
||
type RelativeValue struct {
|
||
// The proportion of the monetary value, expressed as a decimal between 0 and 1.
|
||
Proportion *float64 `json:"proportion"`
|
||
// The name of the monetary value. Codelist: monetaryValue.csv (closed).
|
||
MonetaryValue string `json:"monetaryValue"`
|
||
}
|
||
|
||
// Renewal: Information about the options for the renewal of a contract.
|
||
type Renewal struct {
|
||
// A description of the options for the renewal of the contract.
|
||
Description string `json:"description,omitempty"`
|
||
// The minimum number of renewals.
|
||
MinimumRenewals *float64 `json:"minimumRenewals,omitempty"`
|
||
// The maximum number of renewals.
|
||
MaximumRenewals *float64 `json:"maximumRenewals,omitempty"`
|
||
// The period over which the contract can be renewed.
|
||
Period *Period `json:"period,omitempty"`
|
||
}
|
||
|
||
// SecondStage: Information about the second stage of a two-stage procedure (e.g.
|
||
type SecondStage struct {
|
||
// The minimum number of candidates to be invited for the second stage of the procedure.
|
||
MinimumCandidates *float64 `json:"minimumCandidates,omitempty"`
|
||
// The maximum number of candidates to be invited for the second stage of the procedure.
|
||
MaximumCandidates *float64 `json:"maximumCandidates,omitempty"`
|
||
// The procedure will take place in successive stages.
|
||
SuccessiveReduction *bool `json:"successiveReduction,omitempty"`
|
||
// The buyer or procuring entity reserves the right to award the contract on the basis of the
|
||
// initial bids without any further negotiations.
|
||
NoNegotiationNecessary *bool `json:"noNegotiationNecessary,omitempty"`
|
||
// The estimated date of dispatch of the invitations to participate or to submit bids.
|
||
InvitationDate *time.Time `json:"invitationDate,omitempty"`
|
||
}
|
||
|
||
// SelectionCriteria: Information about conditions for participation.
|
||
type SelectionCriteria struct {
|
||
// The sources in which the selection criteria are defined. Codelist: sources.csv (closed).
|
||
Sources []string `json:"sources,omitempty"`
|
||
// The selection criteria.
|
||
Criteria []SelectionCriterion `json:"criteria,omitempty"`
|
||
// The description of the criteria.
|
||
Description string `json:"description,omitempty"`
|
||
}
|
||
|
||
// SelectionCriterion: Information about the selection criterion.
|
||
type SelectionCriterion struct {
|
||
// The type of the criterion. Codelist: selectionCriterionType.csv (closed).
|
||
Type string `json:"type,omitempty"`
|
||
// The subtype of the criterion.
|
||
SubType string `json:"subType,omitempty"`
|
||
// The description of the criterion.
|
||
Description string `json:"description,omitempty"`
|
||
// The minimum value or level of compliance a candidate needs to meet in order to participate.
|
||
Minimum string `json:"minimum,omitempty"`
|
||
// Whether the criterion applies to suppliers, subcontractors, or both. Codelist:
|
||
// appliesTo.csv (closed).
|
||
AppliesTo []string `json:"appliesTo,omitempty"`
|
||
// Whether the criterion is used to select the potential suppliers to be invited to the second
|
||
// stage of the contracting process, if the number of invitations is limited.
|
||
ForReduction *bool `json:"forReduction,omitempty"`
|
||
// Numbers linked to the criterion.
|
||
Numbers []CriterionNumber `json:"numbers,omitempty"`
|
||
// The methods the buyer or procuring entity uses to verify the potential supplier satisfies
|
||
// the criterion.
|
||
VerificationMethod string `json:"verificationMethod,omitempty"`
|
||
}
|
||
|
||
// Shareholder: A shareholding in an organization.
|
||
type Shareholder struct {
|
||
// A local identifier for this shareholding, unique within this array.
|
||
ID string `json:"id"`
|
||
// The organization holding the share.
|
||
Shareholder *OrganizationReference `json:"shareholder,omitempty"`
|
||
// The proportion of the organization's shares held by the shareholder, expressed as a decimal
|
||
// between 0 and 1.
|
||
Shareholding *float64 `json:"shareholding,omitempty"`
|
||
// The type of voting rights associated with the shareholder's shares. Codelist:
|
||
// votingRights.csv (closed).
|
||
VotingRights string `json:"votingRights,omitempty"`
|
||
// Detailed information about the voting rights associated with the shareholder's shares: for
|
||
// example, when the shareholder voting rights are restricted, additional or enhanced.
|
||
VotingRightsDetails string `json:"votingRightsDetails,omitempty"`
|
||
// Additional notes on the shareholding or shareholder: for example, details on any caps on
|
||
// equity transfer, or lock-in arrangements, applicable to the shareholder.
|
||
Notes string `json:"notes,omitempty"`
|
||
}
|
||
|
||
// SimpleIdentifier: An unambiguous reference to a resource within a given context.
|
||
type SimpleIdentifier struct {
|
||
// The list, register or system from which the identifier is taken.
|
||
Scheme string `json:"scheme,omitempty"`
|
||
// The identifier taken from the scheme.
|
||
ID string `json:"id,omitempty"`
|
||
}
|
||
|
||
// Subcontract: A relationship that suppliers establish with a third party to perform part of
|
||
// the contract on their behalf.
|
||
type Subcontract struct {
|
||
// The locally unique identifier for the subcontract.
|
||
ID string `json:"id"`
|
||
// The organization that performs part of the contract on behalf of the suppliers.
|
||
Subcontractor *OrganizationReference `json:"subcontractor,omitempty"`
|
||
// The organizations to which the subcontractor will be subcontracted, if they are a subset of
|
||
// the tenderers submitting the bid or the suppliers receiving the award.
|
||
MainContractors []OrganizationReference `json:"mainContractors,omitempty"`
|
||
}
|
||
|
||
// Subcontracting: Information about the parts of the contract that will be subcontracted to
|
||
// third parties.
|
||
type Subcontracting struct {
|
||
// The description of the part of the contract that will be subcontracted to third parties.
|
||
Description string `json:"description,omitempty"`
|
||
// The maximum percentage of the contract value that will be subcontracted, expressed as a
|
||
// decimal proportion between 0 and 1.
|
||
MaximumPercentage *float64 `json:"maximumPercentage,omitempty"`
|
||
// The minimum percentage of the contract value that will be subcontracted, expressed as a
|
||
// decimal proportion between 0 and 1.
|
||
MinimumPercentage *float64 `json:"minimumPercentage,omitempty"`
|
||
// The maximum percentage of the contract value that the buyer or procuring entity allows the
|
||
// supplier to subcontract to third parties through a competitive procedure, expressed as a
|
||
// decimal proportion between 0 and 1.
|
||
CompetitiveMaximumPercentage *float64 `json:"competitiveMaximumPercentage,omitempty"`
|
||
// The minimum percentage of the contract value that the buyer or procuring entity requires
|
||
// the supplier to subcontract to third parties through a competitive procedure, expressed as
|
||
// a decimal proportion between 0 and 1.
|
||
CompetitiveMinimumPercentage *float64 `json:"competitiveMinimumPercentage,omitempty"`
|
||
// The estimated value of the part of the contract that will be subcontracted to third
|
||
// parties.
|
||
Value *Value `json:"value,omitempty"`
|
||
// Whether the supplier will subcontract part of the contract to third parties through a
|
||
// competitive procedure.
|
||
Competitive *bool `json:"competitive,omitempty"`
|
||
// Information about the subcontracts that will be established.
|
||
Subcontracts []Subcontract `json:"subcontracts,omitempty"`
|
||
}
|
||
|
||
// SubcontractingTerms: The obligations of the suppliers who subcontract.
|
||
type SubcontractingTerms struct {
|
||
// A description of the terms governing subcontracting.
|
||
Description string `json:"description,omitempty"`
|
||
// The maximum percentage of the contract value that the buyer or procuring entity allows the
|
||
// supplier to subcontract to third parties through a competitive procedure, expressed as a
|
||
// decimal proportion between 0 and 1.
|
||
CompetitiveMaximumPercentage *float64 `json:"competitiveMaximumPercentage,omitempty"`
|
||
// The minimum percentage of the contract value that the buyer or procuring entity requires
|
||
// the supplier to subcontract to third parties through a competitive procedure, expressed as
|
||
// a decimal proportion between 0 and 1.
|
||
CompetitiveMinimumPercentage *float64 `json:"competitiveMinimumPercentage,omitempty"`
|
||
}
|
||
|
||
// SubmissionTerms: Information about the submission terms to describe how, when and where the
|
||
// tenderers need to submit their bids or expressions of interest.
|
||
type SubmissionTerms struct {
|
||
// Whether tenderers are required, allowed or not allowed to submit bids or expressions of
|
||
// interest electronically. Codelist: permission.csv (closed).
|
||
ElectronicSubmissionPolicy string `json:"electronicSubmissionPolicy,omitempty"`
|
||
// Whether tenderers are required, allowed or not allowed to submit bids which fulfill the
|
||
// buyer's needs differently than as proposed in the procurement documents. Codelist:
|
||
// permission.csv (closed).
|
||
VariantPolicy string `json:"variantPolicy,omitempty"`
|
||
// Whether tenderers are required, allowed or not allowed to submit bids as electronic
|
||
// catalogs. Codelist: permission.csv (closed).
|
||
ElectronicCatalogPolicy string `json:"electronicCatalogPolicy,omitempty"`
|
||
// One or more languages in which bids or expressions of interest can be submitted, using
|
||
// either two-letter [ISO639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes), or
|
||
// extended [BCP47 language tags](http://www.w3.org/International/articles/language-tags/).
|
||
Languages []string `json:"languages,omitempty"`
|
||
// The period, from the bid submission deadline, for which bids must remain valid.
|
||
BidValidityPeriod *Period `json:"bidValidityPeriod,omitempty"`
|
||
// Information about the deposits or guarantees required from the tenderers.
|
||
DepositsGuarantees string `json:"depositsGuarantees,omitempty"`
|
||
// Whether an advanced or qualified electronic signature or seal is needed.
|
||
AdvancedElectronicSignatureRequired *bool `json:"advancedElectronicSignatureRequired,omitempty"`
|
||
// Whether tenderers can submit more than one bid.
|
||
MultipleBidsAllowed *bool `json:"multipleBidsAllowed,omitempty"`
|
||
// The information about subcontracting that needs to be provided in the bid.
|
||
SubcontractingClauses []string `json:"subcontractingClauses,omitempty"`
|
||
// Information about non-electronic submission requirements.
|
||
NonElectronicSubmission *SubmissionTermsNonElectronicSubmission `json:"nonElectronicSubmission,omitempty"`
|
||
}
|
||
|
||
// SubmissionTermsNonElectronicSubmission: Information about non-electronic submission
|
||
// requirements.
|
||
type SubmissionTermsNonElectronicSubmission struct {
|
||
// The rationale for electronic submission not being allowed.
|
||
Rationale string `json:"rationale,omitempty"`
|
||
// The address to which non-electronic bids or expressions of interest should be submitted.
|
||
Address *Address `json:"address,omitempty"`
|
||
}
|
||
|
||
// Techniques: Information about the use of techniques, such as framework agreements, dynamic
|
||
// purchasing systems and electronic auctions.
|
||
type Techniques struct {
|
||
// Whether a framework agreement is involved.
|
||
HasFrameworkAgreement *bool `json:"hasFrameworkAgreement,omitempty"`
|
||
// Information about the framework agreement.
|
||
FrameworkAgreement *FrameworkAgreement `json:"frameworkAgreement,omitempty"`
|
||
// Whether a dynamic purchasing system is involved.
|
||
HasDynamicPurchasingSystem *bool `json:"hasDynamicPurchasingSystem,omitempty"`
|
||
// Information about the dynamic purchasing system.
|
||
DynamicPurchasingSystem *DynamicPurchasingSystem `json:"dynamicPurchasingSystem,omitempty"`
|
||
// Whether an electronic auction is used.
|
||
HasElectronicAuction *bool `json:"hasElectronicAuction,omitempty"`
|
||
// Information about the electronic auction.
|
||
ElectronicAuction *ElectronicAuction `json:"electronicAuction,omitempty"`
|
||
}
|
||
|
||
// Tender: Data regarding tender process - publicly inviting prospective contractors to submit
|
||
// bids for evaluation and selecting a winner or winners.
|
||
type Tender struct {
|
||
// An identifier for this tender process.
|
||
ID ID `json:"id"`
|
||
// A title for this tender.
|
||
Title string `json:"title,omitempty"`
|
||
// A summary description of the tender.
|
||
Description string `json:"description,omitempty"`
|
||
// The current status of the tender, from the closed
|
||
// [tenderStatus](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#tender-status)
|
||
// codelist. Codelist: tenderStatus.csv (closed).
|
||
Status string `json:"status,omitempty"`
|
||
// The entity managing the procurement.
|
||
ProcuringEntity *OrganizationReference `json:"procuringEntity,omitempty"`
|
||
// The goods and services to be purchased, broken into line items wherever possible.
|
||
Items []Item `json:"items,omitempty"`
|
||
// The total upper estimated value of the procurement.
|
||
Value *Value `json:"value,omitempty"`
|
||
// The minimum estimated value of the procurement.
|
||
MinValue *Value `json:"minValue,omitempty"`
|
||
// The procurement method, from the closed
|
||
// [method](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#method)
|
||
// codelist. Codelist: method.csv (closed).
|
||
ProcurementMethod string `json:"procurementMethod,omitempty"`
|
||
// Additional detail on the procurement method used.
|
||
ProcurementMethodDetails string `json:"procurementMethodDetails,omitempty"`
|
||
// Rationale for the chosen procurement method.
|
||
ProcurementMethodRationale string `json:"procurementMethodRationale,omitempty"`
|
||
// The primary category describing the main object of this contracting process, from the
|
||
// closed
|
||
// [procurementCategory](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#procurement-category)
|
||
// codelist. Codelist: procurementCategory.csv (closed).
|
||
MainProcurementCategory string `json:"mainProcurementCategory,omitempty"`
|
||
// Any additional categories describing the objects of this contracting process, using the
|
||
// open
|
||
// [extendedProcurementCategory](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#extended-procurement-category)
|
||
// codelist. Codelist: extendedProcurementCategory.csv (open).
|
||
AdditionalProcurementCategories []string `json:"additionalProcurementCategories,omitempty"`
|
||
// The award criteria for the procurement, using the open
|
||
// [awardCriteria](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#award-criteria)
|
||
// codelist. Codelist: awardCriteria.csv (open).
|
||
AwardCriteria string `json:"awardCriteria,omitempty"`
|
||
// Any detailed or further information on the award or selection criteria.
|
||
AwardCriteriaDetails string `json:"awardCriteriaDetails,omitempty"`
|
||
// The methods by which bids are submitted, using the open
|
||
// [submissionMethod](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#submission-method)
|
||
// codelist. Codelist: submissionMethod.csv (open).
|
||
SubmissionMethod []string `json:"submissionMethod,omitempty"`
|
||
// Any detailed or further information on the submission method.
|
||
SubmissionMethodDetails string `json:"submissionMethodDetails,omitempty"`
|
||
// The period when the tender is open for submissions.
|
||
TenderPeriod *Period `json:"tenderPeriod,omitempty"`
|
||
// The period during which potential bidders may submit questions and requests for
|
||
// clarification to the entity managing procurement.
|
||
EnquiryPeriod *Period `json:"enquiryPeriod,omitempty"`
|
||
// A true/false field to indicate whether any enquiries were received during the tender
|
||
// process.
|
||
HasEnquiries *bool `json:"hasEnquiries,omitempty"`
|
||
// A description of any eligibility criteria for potential suppliers.
|
||
EligibilityCriteria string `json:"eligibilityCriteria,omitempty"`
|
||
// The period for decision making regarding the contract award.
|
||
AwardPeriod *Period `json:"awardPeriod,omitempty"`
|
||
// The period over which the contract is estimated or required to be active.
|
||
ContractPeriod *Period `json:"contractPeriod,omitempty"`
|
||
// The number of parties who submit a bid.
|
||
NumberOfTenderers *int `json:"numberOfTenderers,omitempty"`
|
||
// All parties who submit a bid on a tender.
|
||
Tenderers []OrganizationReference `json:"tenderers,omitempty"`
|
||
// All documents and attachments related to the tender, including any notices.
|
||
Documents []Document `json:"documents,omitempty"`
|
||
// A list of milestones associated with the tender.
|
||
Milestones []Milestone `json:"milestones,omitempty"`
|
||
// A tender amendment is a formal change to the tender, and generally involves the publication
|
||
// of a new tender notice/release.
|
||
Amendments []Amendment `json:"amendments,omitempty"`
|
||
// The use of individual amendment objects has been deprecated.
|
||
// Deprecated: since OCDS 1.1. The single amendment object has been deprecated in favour of
|
||
// including amendments in an amendments (plural) array.
|
||
Amendment *Amendment `json:"amendment,omitempty"`
|
||
// The date, time, place and other details of the public bid opening.
|
||
BidOpening *BidOpening `json:"bidOpening,omitempty"`
|
||
// Modalities of communication about key events.
|
||
Communication *Communication `json:"communication,omitempty"`
|
||
// Information about the terms governing the future contracts from the procedure.
|
||
ContractTerms *ContractTerms `json:"contractTerms,omitempty"`
|
||
// The international legal instruments that the contracting process is covered by. Codelist:
|
||
// coveredBy.csv (open).
|
||
CoveredBy []string `json:"coveredBy,omitempty"`
|
||
// Information about the organization of a design contest.
|
||
DesignContest *DesignContest `json:"designContest,omitempty"`
|
||
// Information about the assets used for the provision of public services.
|
||
EssentialAssets *EssentialAsset `json:"essentialAssets,omitempty"`
|
||
// Whether there is information about the assets used for the provision of public services.
|
||
HasEssentialAssets *bool `json:"hasEssentialAssets,omitempty"`
|
||
// Precise information concerning the time limits for the review procedures or contact
|
||
// information from which it can be obtained.
|
||
ReviewDetails string `json:"reviewDetails,omitempty"`
|
||
// The method used for calculating the estimated value of the concession.
|
||
ValueCalculationMethod string `json:"valueCalculationMethod,omitempty"`
|
||
// Legislative references and associated contact points for information.
|
||
LegislativeReferences []LegislativeReference `json:"legislativeReferences,omitempty"`
|
||
// In case of joint procurement, the public procurement legislation that applies to the
|
||
// procedure.
|
||
CrossBorderLaw string `json:"crossBorderLaw,omitempty"`
|
||
// The legal basis of the procedure.
|
||
LegalBasis *Classification `json:"legalBasis,omitempty"`
|
||
// A tender process can be divided into lots, where bidders can bid on one or more lots.
|
||
Lots []Lot `json:"lots,omitempty"`
|
||
// Details of any criteria that apply to bidding on the lots in this tender.
|
||
LotDetails *TenderLotDetails `json:"lotDetails,omitempty"`
|
||
// Where the buyer reserves the right to combine lots, or wishes to specify the total value
|
||
// for a group of lots, a lot group is used to capture this information.
|
||
LotGroups []LotGroup `json:"lotGroups,omitempty"`
|
||
// Any target metrics for this contracting process.
|
||
Targets []Metric `json:"targets,omitempty"`
|
||
// A description of the options.
|
||
Options *Options `json:"options,omitempty"`
|
||
// Whether the buyer is expected to reserve the right to make additional purchases from the
|
||
// supplier.
|
||
HasOptions *bool `json:"hasOptions,omitempty"`
|
||
// Other requirements to participate in the procedure.
|
||
OtherRequirements *OtherRequirements `json:"otherRequirements,omitempty"`
|
||
// Any fees applicable to bidders wishing to participate in the tender process.
|
||
ParticipationFees []ParticipationFee `json:"participationFees,omitempty"`
|
||
// Information about the procurement procedure.
|
||
Procedure *Procedure `json:"procedure,omitempty"`
|
||
// The classifications of the procurement method rationale.
|
||
ProcurementMethodRationaleClassifications []Classification `json:"procurementMethodRationaleClassifications,omitempty"`
|
||
// Information on the recurrence of the contracting process.
|
||
Recurrence *Recurrence `json:"recurrence,omitempty"`
|
||
// Whether the contracting process is recurrent.
|
||
HasRecurrence *bool `json:"hasRecurrence,omitempty"`
|
||
// Whether the buyer is expected to reserve the right to renew the future contract(s).
|
||
HasRenewal *bool `json:"hasRenewal,omitempty"`
|
||
// The options for the renewal of the contract(s).
|
||
Renewal *Renewal `json:"renewal,omitempty"`
|
||
// Information about the second stage of a two-stage procedure (e.g.
|
||
SecondStage *SecondStage `json:"secondStage,omitempty"`
|
||
// The minimum requirements for potential suppliers to participate in the contracting process.
|
||
SelectionCriteria *SelectionCriteria `json:"selectionCriteria,omitempty"`
|
||
// The local name of the Main Procurement Category
|
||
MainProcurementCategoryDetails string `json:"mainProcurementCategoryDetails,omitempty"`
|
||
// Additional detail on the status of the tender.
|
||
StatusDetails string `json:"statusDetails,omitempty"`
|
||
// Information about the terms governing subcontracting.
|
||
SubcontractingTerms *SubcontractingTerms `json:"subcontractingTerms,omitempty"`
|
||
// Information about the submission terms to describe how, when and where the tenderers need
|
||
// to submit their bids or expressions of interest for the procedure.
|
||
SubmissionTerms *SubmissionTerms `json:"submissionTerms,omitempty"`
|
||
// Information about the use of techniques, such as framework agreements, dynamic purchasing
|
||
// systems and electronic auctions.
|
||
Techniques *Techniques `json:"techniques,omitempty"`
|
||
// Whether this call-off is competitive or not.
|
||
Competitive *bool `json:"competitive,omitempty"`
|
||
// The primary classification of the contracting process.
|
||
Classification *Classification `json:"classification,omitempty"`
|
||
// Additional classifications of the contracting process.
|
||
AdditionalClassifications []Classification `json:"additionalClassifications,omitempty"`
|
||
}
|
||
|
||
// TenderLotDetails: Details of any criteria that apply to bidding on the lots in this tender.
|
||
type TenderLotDetails struct {
|
||
// The maximum number of lots that one supplier can bid on as part of this contracting
|
||
// process.
|
||
MaximumLotsBidPerSupplier *int `json:"maximumLotsBidPerSupplier,omitempty"`
|
||
// The maximum number of lots that can be awarded to one supplier as part of this contracting
|
||
// process.
|
||
MaximumLotsAwardedPerSupplier *int `json:"maximumLotsAwardedPerSupplier,omitempty"`
|
||
// Any detailed or further information on the award or selection criteria.
|
||
AwardCriteriaDetails string `json:"awardCriteriaDetails,omitempty"`
|
||
}
|
||
|
||
// Transaction: A spending transaction related to the contracting process.
|
||
type Transaction struct {
|
||
// A unique identifier for this transaction.
|
||
ID ID `json:"id"`
|
||
// Used to point either to a corresponding Fiscal Data Package, IATI file, or machine or
|
||
// human-readable source where users can find further information on the budget line item
|
||
// identifiers, or project identifiers, provided here.
|
||
Source string `json:"source,omitempty"`
|
||
// The date of the transaction
|
||
Date *time.Time `json:"date,omitempty"`
|
||
// The value of the transaction.
|
||
Value *Value `json:"value,omitempty"`
|
||
// An organization reference for the organization from which the funds in this transaction
|
||
// originate.
|
||
Payer *OrganizationReference `json:"payer,omitempty"`
|
||
// An organization reference for the organization which receives the funds in this
|
||
// transaction.
|
||
Payee *OrganizationReference `json:"payee,omitempty"`
|
||
// A URI pointing directly to a machine-readable record about this spending transaction.
|
||
URI string `json:"uri,omitempty"`
|
||
// (Deprecated in 1.1.
|
||
// Deprecated: since OCDS 1.1. This field has been replaced by the `transaction.value` field
|
||
// for consistency with the use of value and amount elsewhere in the standard.
|
||
Amount *Value `json:"amount,omitempty"`
|
||
// (Deprecated in 1.1.
|
||
// Deprecated: since OCDS 1.1. This field has been replaced by the `transaction.payer` field
|
||
// to resolve ambiguity arising from 'provider' being interpreted as relating to the goods or
|
||
// services procured rather than the flow of funds between the parties.
|
||
ProviderOrganization *Identifier `json:"providerOrganization,omitempty"`
|
||
// (Deprecated in 1.1.
|
||
// Deprecated: since OCDS 1.1. This field has been replaced by the `transaction.payee` field
|
||
// to resolve ambiguity arising from 'receiver' being interpreted as relating to the goods or
|
||
// services procured rather than the flow of funds between the parties.
|
||
ReceiverOrganization *Identifier `json:"receiverOrganization,omitempty"`
|
||
}
|
||
|
||
// UnstructuredChange: Unstructured or semi-structured change to an earlier notice.
|
||
type UnstructuredChange struct {
|
||
// The identifier of the lot to which this change relates, if any.
|
||
RelatedLot string `json:"relatedLot,omitempty"`
|
||
// The value of the data element referenced by the `where` field, before the change.
|
||
OldValue *UnstructuredChangeValue `json:"oldValue,omitempty"`
|
||
// The value of the data element referenced by the `where` field, after the change.
|
||
NewValue *UnstructuredChangeValue `json:"newValue,omitempty"`
|
||
// A reference to a data element on an earlier notice that is being changed.
|
||
Where *UnstructuredChangeWhere `json:"where,omitempty"`
|
||
}
|
||
|
||
// UnstructuredChangeWhere: A reference to a data element on an earlier notice that is being
|
||
// changed.
|
||
type UnstructuredChangeWhere struct {
|
||
// The identifier of the section containing the data element, if the earlier notice is
|
||
// organized into sections.
|
||
Section string `json:"section,omitempty"`
|
||
// The label for the data element.
|
||
Label string `json:"label,omitempty"`
|
||
}
|
||
|
||
// UnstructuredChangeValue: A value of a data element.
|
||
type UnstructuredChangeValue struct {
|
||
// A text.
|
||
Text string `json:"text,omitempty"`
|
||
// A list of classifications.
|
||
Classifications []Classification `json:"classifications,omitempty"`
|
||
// A date.
|
||
Date string `json:"date,omitempty"`
|
||
}
|
||
|
||
// Value: Financial values should be published with a currency attached.
|
||
type Value struct {
|
||
// Amount as a number.
|
||
Amount *float64 `json:"amount,omitempty"`
|
||
// The currency of the amount, from the closed
|
||
// [currency](https://standard.open-contracting.org/{{version}}/{{lang}}/schema/codelists/#currency)
|
||
// codelist. Codelist: currency.csv (closed).
|
||
Currency string `json:"currency,omitempty"`
|
||
}
|
||
|
||
// ID is used for schema fields typed as ["string", "integer"], such as Item.id
|
||
// and Award.id. It accepts a JSON string or number and always encodes as a string.
|
||
type ID string
|
||
|
||
func (id *ID) UnmarshalJSON(b []byte) error {
|
||
if string(b) == "null" {
|
||
*id = ""
|
||
return nil
|
||
}
|
||
var s string
|
||
if err := json.Unmarshal(b, &s); err == nil {
|
||
*id = ID(s)
|
||
return nil
|
||
}
|
||
var n json.Number
|
||
if err := json.Unmarshal(b, &n); err != nil {
|
||
return fmt.Errorf("ID must be a string or integer, got %s", b)
|
||
}
|
||
*id = ID(n.String())
|
||
return nil
|
||
}
|