In de BRO wordt een onderscheid gemaakt tussen beheerde waardenlijsten en niet-beheerde waardenlijsten.

In de gegevenscatalogus en de XSD-bestanden noemen we een beheerde waardenlijst een codelijst. Het domein van een codelijst is een uitbreidbare opsomming van toegestane waarden.

De BRO volgt voor een codelijst de GML XML encoding rules het patroon voor een CodeType. Dit patroon voegt een XML-attribuut codeSpace toe aan een XML-element. De waarde van de codeSpace verwijst naar een catalogus, thesaurus, classificatie schema of autoriteit waar de toegestane waarden in de codelijst worden gedefinieerd. Als conventie binnen de BRO bestaat de waarde van het XML-attribuut uit een URN, b.v.: urn:bro:gmw:DeliveryContext

In een XSD-bestand leidt een codelijst tot een restrictie van het complexType CodeWithAuthority, bijvoorbeeld:

<complexType name = "DeliveryContext" >
    <simpleContent>
        <restriction base = "gml:CodeWithAuthorityType" >
            <attribute name = "codeSpace" type = "anyURI" use = "required" fixed = "urn:bro:gmw:DeliveryContext" />
        </restriction>
    </simpleContent>
</complexType >


Onderstaand een voorbeeld van het gebruik van een codelijst uit het algemene XSD-bestand brocommon.xsd en een uit GMW (Grondwatermonitoringput). Het XML-element heeft een attribuut codeSpace, met als waarde de URN van de codelijst. De waarde van het XML-element is een toegestane waarde van de codelijst.

<brocom:registrationStatus codeSpace="urn:bro:RegistrationStatus">voltooid</brocom:registrationStatus>
...
<gmwcom:deliveryContext codeSpace="urn:bro:gmw:DeliveryContext">publiekeTaak</bhrgtcom:deliveryContext>
CODE


Merk op dat in de gegevenscatalogus de lijst met toegestane waarden expliciet zijn opgenomen. De lijst van toegestane waarden van een codelijst wordt niet opgenomen in het XSD-bestand. Als dat wel zou gebeuren, dan zou een wijziging in de codelijst leiden tot een wijziging van het XSD-bestand. Het gebruik van een toegestane waarde wordt niet afgedwongen door het XSD-bestand. In plaats daarvan valideert het BRO-systeem de gebruikte waarde softwarematig. Het gebruik van een niet-toegestane waarde leidt tot een gepaste foutmelding.

De berichtencatalogus bevat een overzicht van de codelijsten en hun URN.

Via de refcode service kunnen op basis van de URN van een codelijst de toegestane waarden worden opgevraagd: https://publiek.broservices.nl/bro/refcodes/v1/. Aanvullende informatie over deze REST-service kunt u vinden op de pagina URL's publieke REST services (onderaan de pagina). Merk op dat een waarde in een codelijst wel of niet toegestaan kan zijn onder het kwaliteitsregime IMBRO en voor het kwaliteitsregime IMBRO/A.