Versies vergeleken

Uitleg

  • Deze regel is toegevoegd.
  • Deze regel is verwijderd.
  • Opmaak is veranderd.

...

Validatie via DOV-webservices

Aan te spreken url: https://services.dov.vlaanderen.be/dov-xdov-server/import/validate (Type request: POST, Header: Content-Type: application/json)

Codeblok
languagebash
titlecURL
curl -X POST -d "@validate-post-body.json" -k https://services.dov.vlaanderen.be/dov-xdov-server/import/validate   -H 'Content-Type: application/json' --key my_key.key --cert my_cert.pem  -v

Een json-body moet hier mee gestuurd worden:

Codeblok
languagejs
titleJSON POST body
linenumberstrue
collapsetrue
{
  "id": null,
  "omschrijving": "opladen XML",
  "gebruikersnaam": "<username>",
  "datumOpladen": "2019-10-10",
  "datumProcessed": null,
  "aantalVerwerkt": 0,
  "aantalFouten": 0,
  "partner": "<kbonummer van uw organisatie>",
  "invoerwijze": {
    "code": "2",
    "beschrijving": "edov"
  },
  "status": {
    "code": "1",
    "beschrijving": "niet verwerkt"
  },
  "options": [
    {
      "id": null,
      "propertyValue": "true",
      "property": {
        "code": "20",
        "beschrijving": "Boring"
      }
    },
    {
      "id": null,
      "propertyValue": "true",
      "property": {
        "code": "21",
        "beschrijving": "Opmerkingen bij een boring"
      }
    },
    {
      "id": null,
      "propertyValue": "true",
      "property": {
        "code": "22",
        "beschrijving": "Alternatieve namen"
      }
    },
    {
      "id": null,
      "propertyValue": "true",
      "property": {
        "code": "101",
        "beschrijving": "Informele stratigrafie"
      }
    },
    {
      "id": null,
      "propertyValue": "true",
      "property": {
        "code": "103",
        "beschrijving": "Lithologische beschrijving"
      }
    },
    {
      "id": null,
      "propertyValue": "true",
      "property": {
        "code": "104",
        "beschrijving": "Gecodeerde lithologie"
      }
    },
    {
      "id": null,
      "propertyValue": "true",
      "property": {
        "code": "105",
        "beschrijving": "Hydrogeologische stratigrafie"
      }
    },
    {
      "id": null,
      "propertyValue": "true",
      "property": {
        "code": "108",
        "beschrijving": "Geotechnische codering"
      }
    },
    {
      "id": null,
      "propertyValue": "true",
      "property": {
        "code": "120",
        "beschrijving": "Opmerkingen bij een interpretatie"
      }
    }
  ],
  "bestand": {
    "id": "<BESTAND-ID>",
    "naam": "<BESTANDSNAAM>"
  }
}

In bovenstaand voorbeeld van post-data moet aandacht besteed worden aan de volgende velden:

  • Lijn 3: vul hier een beschrijving in van het bestand (bvb 'opladen data van december'). Dit is vrije tekst.
  • Lijn 4: hier moet de gebruikersnaam ingevuld worden; de bedrijfsnaam is ook goed.
  • Lijn 5: vul hier de datum van vandaag in - formaat is YYYY-MM-DD
  • Lijn 9: hier moet het KBO-nummer van uw organisatie ingevuld worden (zonder puntjes!)
  • Lijn 18: options, geven aan welke objecten in de XML voorkomen die je wilt laten valideren. Dit komt overeen met de aanvinkbare keuzes bij een manuele import via de webapplicatie. De codes voor andere mogelijke objecten staat hieronder.
  • Lijn 93-94: hier moet de data ingevuld worden die als response uit stap 1 gekomen is.


Mogelijke codes voor objecten in het veld 'options':

  • Opdracht: 10 (opdracht), 11 (opmerkingen opdracht),
  • Proefgegevens: 20 (boring), 21 (opmerkingen boring), 22 (alternatievenaam), 40 (sondering), 41 (opmerkingen sondering)
  • Interpretaties: 101 (informeel), 102 (formeel), 103 (lithologie), 104 (gecodeerd), 105 (hydrogeologisch), 106 (quartair), 108 (geotechnisch), 109 (informelehydro), 120 (opmerkingen interpretatie),
  • Watergegevens: 50 (put), 51 (opmerkingen put), 60 (filter), 61 (opmerkingen filter), 62 (peilmetingen), 63 (watermonster), 64 (kwaliteitsmetingen), 65 (onttrekkingen), 66 (gxgs), 67 (debietmeters), 68 (referentiepunten),
  • Grondmonstergegevens: 23 (grondmonster), 29 (opmerkingen grondmonster), 30 (laboproeven grondmonster),
  • Archeologie: 131 (referentieprofiel),
  • Bodem: 140 (bodemsite), 141 (bodemlocatie), 142 (bodemclassificatie), 143 (bodemopbouw), 144 (bodemmonster), 145 (bodemobservatie), 146 (bodem opmerkingen), 1412 (bijlagen bodemlocatie), 1414 (full bodemlocatie)

(waarschuwing) Opgelet: voor gebruikers met de rol 'boorbedrijf' wordt een apart XML-schema gebruikt, waarin nog niet alle objecten opgenomen zitten, bv. putten en filters zitten er nog niet in. Dit leidt dan tot een foutmelding 'Het schema wordt niet ondersteund.be.vlaanderen.dov.schemas.kern.DovSchemaType'. Voor gebruikers met een andere rol kan je kiezen voor het uitgebreide XML-schema, door in het json-bestand als 'invoerwijze' te kiezen voor 'intern' ipv 'edov' (code 1 ipv code 2).


Het antwoord van de server is een json-bestand met daarin een overzicht van succes of fouten van elke element in de XML tegenover het edov-xml-schema.

Het belangrijkste is lijn 8. Daar moet staan 'validatie zonder fouten'; indien niet, is het een ongeldig bestand.

Codeblok
languagejs
titleResponse
collapsetrue
{
  "details": [
    {
      "id": "2",
      "context": null,
      "status": {
        "code": "7",
        "beschrijving": "validatie zonder fouten"
      },
      "messages": [],
      "identificatie": "1419-B-P6-Belle-Vue2",
      "boring": {
        "id": null,
        "partner": null,
        "uniekDOVId": "1419-B-P6-Belle-Vue2",
        "locatie": null,
        "displayName": "1419-B-P6-Belle-Vue2",
        "boringKey": null,
        "statusCode": null,
        "permKey": null
      }
    },
    {
      "id": null,
      "context": null,
      "status": {
        "code": "7",
        "beschrijving": "validatie zonder fouten"
      },
      "messages": [],
      "identificatie": "type 'informele stratigrafie' gekoppeld aan boring '1419-B-P6-Belle-Vue2' (datum '2010-11-13')",
      "interpretatie": {
        "id": null,
        "interpretatieKey": null,
        "partner": null,
        "type": {
          "code": "1",
          "beschrijving": "informele stratigrafie",
          "naam": "informele stratigrafie"
        },
        "datum": null,
        "auteurs": null,
        "moederBoring": {
          "id": null,
          "partner": null,
          "uniekDOVId": "1419-B-P6-Belle-Vue2",
          "locatie": null,
          "displayName": "1419-B-P6-Belle-Vue2",
          "boringKey": null,
          "statusCode": null,
          "permKey": null
        },
        "sondering": null,
        "statusCode": null,
        "permKey": null,
        "fase": null,
        "securityStatus": null
      }
    },
    {
      "id": null,
      "context": null,
      "status": {
        "code": "7",
        "beschrijving": "validatie zonder fouten"
      },
      "messages": [],
      "identificatie": "type 'lithologische beschrijving' gekoppeld aan boring '1419-B-P6-Belle-Vue2' (datum '2016-05-12')",
      "interpretatie": {
        "id": null,
        "interpretatieKey": null,
        "partner": null,
        "type": {
          "code": "3",
          "beschrijving": "lithologische beschrijving",
          "naam": "lithologische beschrijving"
        },
        "datum": null,
        "auteurs": null,
        "moederBoring": {
          "id": null,
          "partner": null,
          "uniekDOVId": "1419-B-P6-Belle-Vue2",
          "locatie": null,
          "displayName": "1419-B-P6-Belle-Vue2",
          "boringKey": null,
          "statusCode": null,
          "permKey": null
        },
        "sondering": null,
        "statusCode": null,
        "permKey": null,
        "fase": null,
        "securityStatus": null
      }
    }
  ],
  "summary": {
    "items": [
      {
        "option": {
          "code": "20",
          "beschrijving": "Boring"
        },
        "numberOfObjects": 1,
        "id": "20"
      },
      {
        "option": {
          "code": "101",
          "beschrijving": "Informele stratigrafie"
        },
        "numberOfObjects": 1,
        "id": "101"
      },
      {
        "option": {
          "code": "103",
          "beschrijving": "Lithologische beschrijving"
        },
        "numberOfObjects": 1,
        "id": "103"
      },
      {
        "option": {
          "code": "105",
          "beschrijving": "Hydrogeologische stratigrafie"
        },
        "numberOfObjects": 0,
        "id": "105"
      },
      {
        "option": {
          "code": "108",
          "beschrijving": "Geotechnische codering"
        },
        "numberOfObjects": 0,
        "id": "108"
      },
      {
        "option": {
          "code": "104",
          "beschrijving": "Gecodeerde lithologie"
        },
        "numberOfObjects": 0,
        "id": "104"
      }
    ],
    "id": null
  }
}