API Reference#
- oc4idskit.transforms.check_type(item, item_type)[source]#
Check type and if incorrect return empty version of type so that future processing works with bad data. Should be used with dicts or lists that are then accessed later.
- oc4idskit.transforms.cast_number_or_zero(item)[source]#
Cast to decimal if fail return 0 so summing still works.
- oc4idskit.transforms.cast_string(item)[source]#
Cast to string if possible. Does not try to convert dict, list, or None to string. Returns empty string on failure so future processing works.
- oc4idskit.transforms.run_transforms(config, releases, project_id=None, records=None, output=None)[source]#
Transforms a list of OCDS releases into a OC4IDS project.
- Parameters:
config (dict) – contains optional transform options.
releases (list) – list of OCDS releases or release packages
project_id (string) – project ID of resulting project
records (list) – pre computed list of records
output (dict) – initial project output template project where transformed data will be added
- class oc4idskit.transforms.InitialTransformState(releases_or_release_packages, project_id=None, records=None, output=None)[source]#
- oc4idskit.transforms.copy_document(state, document)[source]#
Copies a document. If it finds clashing ids change ids to autoincrement numbers
- oc4idskit.transforms.copy_document_by_type(state, documents, document_type)[source]#
Copies documents of specific documentType from planning.documents to documents
- oc4idskit.transforms.concat_ocid_and_string(state, path_to_string)[source]#
Places the ocid of a release in front of a string (eg. description or title) so that it can be joined unambiguously with others, separated by new lines
- oc4idskit.transforms.contracting_process_setup(state)[source]#
This will initially create the contracting process objects and the summary object within. All transforms that use contracting processes need to run this transform first.
- oc4idskit.transforms.administrative_entity(state)[source]#
CoST IDS element: Contract administrative entity
- oc4idskit.transforms.number_of_tenderers(state)[source]#
CoST IDS element: Number of firms tendering
- oc4idskit.transforms.land_and_settlement_impact(state)[source]#
CoST IDS element: Land and settlement impact
- oc4idskit.transforms.contract_process_description(state)[source]#
CoST IDS element: Contract scope of work
- oc4idskit.transforms.contract_period(state)[source]#
CoST IDS element: Contract start date and contract period (duration)
- oc4idskit.transforms.project_scope(state)[source]#
CoST IDS element: Project Scope (main output) and Project Scope (projected)
- oc4idskit.transforms.project_scope_summary(state)[source]#
CoST IDS element: Project Scope (main output)
- oc4idskit.transforms.final_audit(state)[source]#
CoST IDS element: Reference to audit and evaluation reports
- oc4idskit.combine.combine_project_packages(packages, uri='', publisher=None, published_date='', version='0.9')[source]#
Collects the projects from the project packages into one project package.
Warns
~oc4idskit.exceptions.MissingProjectsWarning
if the “projects” field is missing from a project package.