open-contracting/european-union-support

OCDS-mapping of eForms-de, a national eForms variant

Closed this issue · 2 comments

rbi commented

We are currently implementing a mapping of the eForms-DE Standard ( SDK here ) to OCDS. We use this mapping for this purpose.

In eForms DE some codelists like buyer-legal-type have other values which are usually more detailed than the eForms EU codes. The eForms DE codes also define their counterpart code in eForms EU.

How should these national codes be mapped to OCDS? Currently we map them to their more corse grained EU counterparts and use these for the OCDS mapping. E.g.

  <cac:ContractingPartyType>
    <cbc:PartyTypeCode listName="buyer-legal-type">anst-oer-bund<</cbc:PartyTypeCode>
  </cac:ContractingPartyType>

becomes

  "parties": [
    {
      "id": "ORG-0001",
      "details": {
        "classifications": [
          {
            "scheme": "eu-buyer-legal-type",
            "id": "body-pl-cga",
            "description": "Body governed by public law, controlled by a central government authority."
          }
...

This way there is however some information loss as there are many eForms DE codes mapped to the same eForms EU codes. Thats why we thought of adding two classifications: one for the actual eForms DE code and one for the eForms EU code e.g.

  "parties": [
    {
      "id": "ORG-0001",
      "details": {
        "classifications": [
          {
            "scheme": "de-buyer-legal-type",
            "id": "anst-oer-bund",
            "description": "Body governed by public law, controlled by a central government authority."
          },
          {
            "scheme": "eu-buyer-legal-type",
            "id": "body-pl-cga",
            "description": "Body governed by public law, controlled by a central government authority."
          }

This way no information is lost when mapping to OCDS for national users and international users can use the broader known eForms EU codes. Is this the right way to do this? Should we just invent a proprietary scheme "de-buyer-legal-type" and define it in some proprietary "eForms-DE" extension we publish by our self or should this be considered in the official eForms-to-OCDS mapping as well?

Hi @rbi ,
Your proposed solution, of mapping the eu-buyer-legal-type as per the guidance and then repeating that using the DE specific codes, is good. As you say this way no information is lost.

As your codes are specific to Germany you should create a local extension yourselves to document these codes and the mapping. Details on how to create an OCDS extension can be found at here. There's also a template extension repository with all the necessary files. If you need any help with creating the extension you can either just reply here or email the OCDS helpdesk

rbi commented

@odscjen thanks for the guidance. We will do it this way.