Skip to main content
Skip table of contents

Meetreeks

Diverse gegevenscatalogi definieren voor een aantal bepalingen een meetreeks als resultaat. Daarbij wordt op gezette tijden (of bij bepaalde waarden van een andere onafhankelijke grootheid) steeds een aantal grootheden bepaald.

Omdat het in deze situaties potentieel om een groot aantal waarden kan gaan, worden de waarden van de grootheden niet uitgeleverd als XML-elementen, maar wordt er gebruikt gemaakt van een compacte codering volgens de SWE standaard (Sensor Web Enablement) van het OGC (Open Geospatial Consortium). De meetreeks is daarbij gemodelleerd als een swe:DataArray. De gemeten of bepaalde waarden van de grootheden worden gemodelleerd als een swe: DataRecord.

Een swe:DataArray bestaat uit vier XML-elementen:

  • elementCount: het aantal meetpunten in de meetreeks.
  • elementType: beschrijving van een meetpunt als een reeks van onafhankelijke en afhankelijke grootheden in een swe:DataRecord.
  • encoding: aanduiding voor het gebruik van speciale scheidingstekens in de codering van de meetreeks:
    • Een decimalSeparator (decimaalscheidingsteken) voor het decimaalscheidingsteken in de waarde van een grootheid in een meetpunt.
    • Een tokenSeparator (tokenscheidingsteken) om de waarden van de grootheden binnen een meetpunt te scheiden.
    • Een blockSeparator (recordscheidingsteken) om de meetpunten binnen de meetreeks te scheiden.
  • values: de 'CSV'-gecodeerde reeks van waarden van de grootheden van de meetpunten van de meetreeks.

Volgens de SWE standaard kan het DataRecord, met de beschrijving van de onafhankelijke en afhankelijke grootheden, in-line worden opgenomen of extern gedefinieerd worden. Bij de BRO is ervoor gekozen om de definitie van de swe:DataRecords niet in-line op te nemen, maar om deze centraal vast te leggen. In een DataArray wordt dan een verwijzing (xlink:href) opgenomen naar het bestand met daarin het DataRecord. De bestanden met de DataRecords kunnen gedownload worden vanaf dezelfde locatie als de XSD-bestanden (zie bijvoorbeeld https://schema.broservices.nl/xsd/bhrgtcommon/2.1/).

Voor iedere grootheid moet een waarde opgenomen worden in de values met meetpunten van de meetreeks. Het DataRecord geeft aan hoe het ontbreken van een waarde moet worden weergegeven door middel van een nilValue

Hieronder een voorbeeld van een meetreeks voor de bhrgtcom:volumeChangeDuringConsolidation (volumeverloop bij consolidatie) bestaande uit 2 meetpunten, waarbij de waaarde voor de vierde grootheid in het tweede meetpunt ontbreekt:

<bhrgtcom:volumeChangeDuringConsolidation>
    <swe:elementCount>
        <swe:Count>
            <swe:value>2</swe:value>
        </swe:Count>
    </swe:elementCount>
    <swe:elementType name="VolumeAtSpecificConsolidation" xlink:href="https://schema.broservices.nl/xsd/bhrgtcommon/2.1/VolumeAtSpecificConsolidation.xml"/>
    <swe:encoding>
        <swe:TextEncoding collapseWhiteSpaces="false" decimalSeparator="." tokenSeparator="," blockSeparator=";"/>
    </swe:encoding>
        <bhrgtcom:values>120,2,400,180.12;240,8,8000,NaN</bhrgtcom:values>
</bhrgtcom:volumeChangeDuringConsolidation>


Als we als blockSeparator (recordscheidingsteken) een spatie gebruiken in plaats van een punt-komma en voor collapseWhiteSpaces de waarde true invullen (we mogen spaties toevoegen voor en na iedere tokenseparator en blockseparator), dan ontstaat het volgende voorbeeld, wat iets beter leesbaar is:

<bhrgtcom:volumeChangeDuringConsolidation>
    <swe:elementCount>
        <swe:Count>
            <swe:value>2</swe:value>
        </swe:Count>
    </swe:elementCount>
    <swe:elementType name="VolumeAtSpecificConsolidation" xlink:href="https://schema.broservices.nl/xsd/bhrgtcommon/2.1/VolumeAtSpecificConsolidation.xml"/>
    <swe:encoding>
        <swe:TextEncoding collapseWhiteSpaces="true" decimalSeparator="." tokenSeparator="," blockSeparator=" "/>
    </swe:encoding>
    <bhrgtcom:values>
        120, 2, 400, 180.12
        240, 8, 8000, NaN
    </bhrgtcom:values>
</bhrgtcom:volumeChangeDuringConsolidation>

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.