# MIM vocabulary
# Currently based on mim 1.0
# Adapted to comply with version 1.1 (Werkversie 17 juli 2019)
#
# Source: https://www.geonovum.nl/geo-standaarden/metamodel-informatiemodellering/nationaal-metamodel-voor-informatiemodellering
# Adaptation source: https://geonovum.github.io/MIM-Werkomgeving
#

# TODO's
# - Referentiebestand goed maken
# - Onderzoeken of het wenselijk is om begrippen afzonderlijk te definieren (lijkt in ieder geval handig voor controle);
# - Toelichtingen ook opnemen? -> Maar dan wel bij begrippen??
# - Alternatief 1 (relatiesoort is leidend) is uitgewerkt, beter zou zijn om beide alternatieven uit te werken

@prefix mim: <http://bp4mc2.org/def/mim#>.
@prefix mimdoc: <http://bp4mc2.org/def/mimdoc#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix owl: <http://www.w3.org/2002/07/owl#>.
@prefix skos: <http://www.w3.org/2004/02/skos/core#>.
@prefix dct: <http://purl.org/dc/terms/>.

#
# Classes
#

# Objecten en attributen
mim:Objecttype a owl:Class;
  rdfs:label "Objecttype"@nl;
  rdfs:comment "De typering van een groep objecten (in de werkelijkheid) die binnen een domein relevant zijn en als gelijksoortig worden beschouwd."@nl;
  dct:source mimdoc:sectie2.2.1.1-Objecttype;
.
mim:Attribuutsoort a owl:Class;
  rdfs:label "Attribuutsoort"@nl;
  rdfs:comment "De typering van gelijksoortige gegevens die voor een objecttype van toepassing is."@nl;
  dct:source mimdoc:sectie2.2.1.2-Attribuutsoort;
.
mim:Gegevensgroep a owl:Class;
  rdfs:label "Gegevensgroep"@nl;
  rdfs:comment "Een typering van een groep van gelijksoortige gegevens die voor een objecttype van toepassing is."@nl;
  dct:source mimdoc:sectie2.2.1.3-Gegevensgroep;
.
mim:Gegevensgroeptype a owl:Class;
  rdfs:label "Gegevensgroeptype"@nl;
  rdfs:comment "Een groep van met elkaar samenhangende attribuutsoorten. Een gegevensgroeptype is altijd een type van een gegevensgroep."@nl;
  dct:source mimdoc:sectie2.2.1.4-Gegevensgroeptype;
.

# Relaties
mim:Generalisatie a owl:Class;
  rdfs:label "Generalisatie"@nl;
  rdfs:comment "De typering van het hiërarchische verband tussen een meer generiek object van een objecttype en een meer specifiek object van een ander objecttype waarbij het laatstgenoemde object eigenschappen van het eerstgenoemde object overerft."@nl;
  rdfs:comment "De typering van het hiërarchische verband tussen een meer generieke structuur van data in de vorm van een datatype, en een meer specifieke structuur van data in de vorm van een ander datatype, waarbij het laatstgenoemde datatype de eigenschappen van het eerstgenoemde datatype overerft, én een verbijzondering hierin aanbrengt in de vorm van een meer restrictieve definitie, of een meer restrictief patroon/formeel patroon.";
  dct:source mimdoc:sectie2.2.2-5-Generalisatie;
  #ISSUE: Meerdere definities
.
mim:Relatiesoort a owl:Class;
  rdfs:label "Relatiesoort"@nl;
  rdfs:comment "De typering van het structurele verband tussen een object van een objecttype en een (ander) object van een ander (of hetzelfde) objecttype."@nl;
  dct:source mimdoc:sectie2.2.2-6-Relatiesoort;
.
mim:Relatieklasse a owl:Class;
  rdfs:subClassOf mim:Relatiesoort;
  rdfs:label "Relatieklasse"@nl;
  rdfs:comment "Een relatiesoort met eigenschappen."@nl;
  dct:source mimdoc:sectie2.2.2-7-Relatieklasse;
.
mim:ExterneKoppeling a owl:Class;
  rdfs:label "Externe koppeling"@nl;
  rdfs:comment "Een associatie waarmee vanuit het perspectief van het eigen informatiemodel een objecttype uit het 'eigen' informatiemodel gekoppeld wordt aan een objecttype van een extern informatiemodel. De relatie zelf hoort bij het 'eigen' objecttype. Zie ook 3.14."@nl;
  dct:source mimdoc:sectie2.2.2-8-ExterneKoppeling;
.
mim:Relatierol a owl:Class;
  rdfs:label "Relatierol (abstract)"@nl;
  rdfs:comment "De benaming van de manier waarop een object deelneemt aan een relatie met een ander object."@nl;
  dct:source mimdoc:sectie2.2.2-9-Relatierol;
.

# Waardelijsten
mim:Referentielijst a owl:Class;
  rdfs:subClassOf mim:Datatype;
  rdfs:label "Referentielijst"@nl;
  rdfs:comment "Een lijst met een opsomming van de mogelijke domeinwaarden van een attribuutsoort, die buiten het model in een externe waardenlijst worden beheerd. De domeinwaarden in de lijst kunnen in de loop van de tijd aangepast, uitgebreid, of verwijderd worden, zonder dat het informatiemodel aangepast wordt (in tegenstelling tot bij een enumeratie)."@nl;
  dct:source mimdoc:sectie2.2.3-10-Referentielijst;
.
mim:ReferentieElement a owl:Class;
  rdfs:label "Referentie element"@nl;
  rdfs:comment "Een eigenschap van een object in een referentielijst in de vorm van een gegeven."@nl;
  dct:source mimdoc:sectie2.2.3-11-ReferentieElement;
.
mim:Enumeratie a owl:Class;
  rdfs:subClassOf mim:Datatype;
  rdfs:label "Enumeratie"@nl;
  rdfs:comment "Een datatype waarvan de mogelijke waarden limitatief zijn opgesomd in een statische lijst."@nl;
  dct:source mimdoc:sectie2.2.3-12-Enumeratie;
.
mim:Enumeratiewaarde a owl:Class;
  rdfs:label "Enumeratiewaarde"@nl;
  rdfs:comment "Een gedefinieerde waarde, in de vorm van een eenmalig vastgesteld constant gegeven."@nl;
  dct:source mimdoc:sectie2.2.3-13-Enumeratiewaarde;
.
mim:Codelist a owl:Class;
  rdfs:subClassOf mim:Datatype;
  rdfs:label "Codelist"@nl;
  rdfs:comment "Een referentielijst die extern wordt beheerd, en geen onderdeel is van het informatiemodel"@nl;
  rdfs:comment "De definitie van een codelist is gelijk aan de definitie van een referentielijst."@nl;
  dct:source mimdoc:sectie2.2.3-14-Codelist;
.

# Datatypen
mim:Datatype a owl:Class;
  rdfs:label "Datatype"@nl;
  rdfs:comment "Een datatype"; #In het brondocument wordt geen definitieve gegeven van het abstracte datatype
  #ISSUE: Niet gedefinieerd
.
mim:PrimitiefDatatype a owl:Class;
  rdfs:subClassOf mim:Datatype;
  rdfs:label "Primitief datatype"@nl;
  rdfs:comment "Een in het eigen model gedefinieerd primitieve datatype. Deze worden wel door de modelleur gecreëerd, met een eigen naam en een eigen definitie (en eigen metagegevens)."@nl;
  dct:source mimdoc:sectie2.2.4-15-PrimitiefDatatype;
.
mim:GestructureerdDatatype a owl:Class;
  rdfs:subClassOf mim:Datatype;
  rdfs:label "Gestructureerd datatype"@nl;
  rdfs:comment "Specifiek benoemd gestructureerd datatype dat de structuur van een gegeven beschrijft, samengesteld uit minimaal twee elementen."@nl;
  dct:source mimdoc:sectie2.2.4-16-GestructureerdDatatype;
.
mim:DataElement a owl:Class;
  rdfs:label "Data element"@nl;
  rdfs:comment "Een onderdeel/element van een Gestructureerd datatype die als type een datatype heeft."@nl;
  dct:source mimdoc:sectie2.2.4-17-DataElement;
.
mim:Union a owl:Class;
  rdfs:subClassOf mim:Datatype;
  rdfs:label "Union"@nl;
  rdfs:comment "Gestructureerd datatype, waarmee wordt aangegeven dat er meer dan één mogelijkheid is voor het datatype van een attribuut. Het attribuut zelf krijgt als datatype de union. De union biedt een keuze uit verschillende datatypes, elk afzonderlijk beschreven in een union element."@nl;
  dct:source mimdoc:sectie2.2.4-18-Union;
.
mim:UnionElement a owl:Class;
  rdfs:label "Union element"@nl;
  rdfs:comment "Een type dat gebruikt kan worden voor het attribuut zoals beschreven in de definitie van Union. Het union element is een onderdeel van een Union, uitgedrukt in een eigenschap (attribute) van een union, die als keuze binnen de Union is gerepresenteerd."@nl;
  dct:source mimdoc:sectie2.2.4-19-UnionElement;
.

# Packages
mim:Package a owl:Class;
  rdfs:label "Package"@nl;
  rdfs:comment "Een package is een benoemde en begrensde verzameling/groepering van modelelementen."@nl;
.
mim:Informatiemodel a owl:Class;
  rdfs:subClassOf mim:Package;
  rdfs:label "Informatiemodel"@nl;
  rdfs:comment "Hoofdpackage waar alle subpackages die een informatiemodel beschrijven onder vallen."@nl;
.
mim:Domein a owl:Class;
  rdfs:subClassOf mim:Package;
  rdfs:label "Domein"@nl;
  rdfs:comment "Een groepering van constructies die een semantisch samenhangend gedeelte van een informatiemodel beschrijven."@nl;
.
mim:Extern a owl:Class;
  rdfs:subClassOf mim:Package;
  rdfs:label "Extern"@nl;
  rdfs:comment "Een groepering van constructies die een externe instantie beheert en beschikbaar stelt aan een informatiemodel en die in het informatiemodel ongewijzigd gebruikt worden."@nl;
  dct:source mimdoc:sectie2.2.5-20-Extern;
.
mim:View a owl:Class;
  rdfs:subClassOf mim:Package;
  rdfs:label "View"@nl;
  rdfs:comment "Een groepering van objecttypen die gespecificeerd zijn in een extern informatiemodel en vanuit het perspectief van het eigen informatiemodel inzicht geeft welke gegevens van deze objecttypen relevant zijn binnen het eigen informatiemodel."@nl;
  dct:source mimdoc:sectie2.2.5-21-View;
.

# Overige
#mim:Id a owl:Class;
#  rdfs:subClassOf mim:RelatierolTarget;
#  rdfs:label "id"@nl;
#  rdfs:comment "Aanduiding dat de relatiesoort waarop de «id» is gedefinieerd een onderdeel is van de unieke aanduiding van een objecttype."@nl;
#.
# ISSUE: Dit nog even nader uitzoeken: lijkt nu identificerend te zijn geworden, maar nu breder ingezet?
mim:Identificerend a owl:Class;
  rdfs:label "Identificerend"@nl;
  rdfs:comment "Een kenmerk van een objecttype die aangeeft of deze eigenschap uniek identificerend is voor alle objecten in de populatie van objecten van dit objecttype."@nl;
  dct:source mimdoc:sectie2.2.6-22-Identificerend;
.
mim:Constraint a owl:Class;
  rdfs:label "Constraint"@nl;
  rdfs:comment "Een constraint is een conditie of een beperking, die over een of meerdere modelelementen uit het informatiemodel geldt."@nl;
  dct:source mimdoc:sectie2.2.6-23-Constraint;
.

# Relatierol
mim:RelatierolSource a owl:Class;
  rdfs:subClassOf mim:Relatierol;
  rdfs:label "Relatierol source"@nl;
  #ISSUE: Niet gedefinieerd
.
mim:RelatierolTarget a owl:Class;
  rdfs:subClassOf mim:Relatierol;
  rdfs:label "Relatierol target"@nl;
  #ISSUE: Niet gedefinieerd
.

#
# Properties (nog controleren welke datatype en welke objecttype)
#

#
# Properties worden in het MIM (nu) metagegevens genoemd: "Elk modelelement kent een aantal metagegevens, die bepaalde aspecten van het modelelement specificeren."
#

# Gedefinieerde metagegevens
mim:naam a owl:DatatypeProperty;
  rdfs:label "naam"@nl;
  rdfs:comment "De naam van een modelelement"@nl;
  dct:source mimdoc:sectie2.3-Naam;
.
mim:alias a owl:DatatypeProperty;
  rdfs:label "alias"@nl;
  rdfs:comment "De alternatieve weergave van de naam."@nl;
  dct:source mimdoc:sectie2.4-Alias;
.
mim:begrip a owl:ObjectProperty;
  rdfs:label "begrip"@nl;
  rdfs:comment "Verwijzing naar een begrip, vanuit een modelelement, waarmee wordt aangegeven op welk begrip, of begrippen, het informatiemodel element is gebaseerd.";
.
mim:begripsterm a owl:DatatypeProperty;
  rdfs:label "begripsterm"@nl;
  rdfs:comment "Verwijzing naar een begrip in de vorm van de term, vanuit een modelelement, waarmee wordt aangegeven op welk begrip, of begrippen, het informatiemodel element is gebaseerd.";
.
mim:definitie a owl:DatatypeProperty;
  rdfs:label "definitie"@nl;
  rdfs:comment "De beschrijving van de betekenis van dit modelelement."@nl;
  dct:source mimdoc:sectie2.3-Definitie;
.
mim:toelichting a owl:DatatypeProperty;
  rdfs:label "toelichting"@nl;
  rdfs:comment "Een inhoudelijke toelichting op de definitie, ter verheldering of nadere duiding."@nl;
  dct:source mimdoc:sectie2.3-Toelichting;
.
mim:herkomst a owl:DatatypeProperty;
  rdfs:label "herkomst"@nl;
  rdfs:comment "De registratie of het informatiemodel waaraan het modelelement ontleend is dan wel de eigen organisatie indien het door de eigen organisatie toegevoegd is."@nl;
  dct:source mimdoc:sectie2.3-Herkomst;
.
mim:herkomstDefinitie a owl:DatatypeProperty;
  rdfs:label "herkomst definitie"@nl;
  rdfs:comment "De registratie of het informatiemodel waaruit de definitie is overgenomen dan wel een aanduiding die aangeeft uit welke bronnen de definitie is samengesteld."@nl;
  dct:source mimdoc:sectie2.3-HerkomstDefinitie;
.
mim:datumOpname a owl:DatatypeProperty;
  rdfs:label "datum opname"@nl;
  rdfs:comment "De datum waarop het modelelement is opgenomen in het informatiemodel."@nl;
  dct:source mimdoc:sectie2.3-DatumOpname;
.
mim:indicatieMaterieleHistorie a owl:DatatypeProperty;
  rdfs:label "Indicatie materiële historie"@nl;
  rdfs:comment "Indicatie of de materiële historie van het kenmerk van het object te bevragen is."@nl;
  dct:source mimdoc:sectie2.3-IndicatieMaterieleHistorie;
.
mim:indicatieFormeleHistorie a owl:DatatypeProperty;
  rdfs:label "Indicatie formele historie"@nl;
  rdfs:comment "Indicatie of de formele historie van het kenmerk van het object bijgehouden wordt en te bevragen is."@nl;
  dct:source mimdoc:sectie2.3-IndicatieFormeleHistorie;
.
mim:kardinaliteit a owl:DatatypeProperty;
  rdfs:label "kardinaliteit"@nl;
  rdfs:comment "De kardinaliteit geeft aan hoeveel keer waarden van dit kenmerk van een object kunnen voorkomen bij een object van het betreffende objecttype."@nl;
  dct:source mimdoc:sectie2.3-Kardinaliteit;
.
mim:authentiek a owl:ObjectProperty;
  rdfs:label "authentiek"@nl;
  rdfs:comment "Aanduiding of het kenmerk een authentiek gegeven betreft."@nl;
  dct:source mimdoc:sectie2.3-Authentiek;
.
mim:indicatieAfleidbaar a owl:DatatypeProperty;
  rdfs:label "indicatie afleidbaar"@nl;
  rdfs:comment "Aanduiding dat gegeven afleidbaar is uit andere attribuut- en/of relatiesoorten."@nl;
  dct:source mimdoc:sectie2.3-IndicatieAfleidbaar;
.
mim:mogelijkGeenWaarde a owl:DatatypeProperty;
  rdfs:label "mogelijk geen waarde"@nl;
  rdfs:comment "Aanduiding dat van een aspect geen waarde is geregistreerd, maar dat onduidelijk is of de waarde er werkelijk ook niet is."@nl;
  dct:source mimdoc:sectie2.3-MogelijkGeenWaarde;
.
mim:locatie a owl:DatatypeProperty;
  rdfs:label "locatie"@nl;
  rdfs:comment "Als het type van het attribuutsoort een waardenlijst is, dan wordt hier de locatie waar deze te vinden is opgegeven."@nl;
  dct:source mimdoc:sectie2.3-Locatie;
.
mim:type a owl:ObjectProperty;
  rdfs:label "type"@nl;
  rdfs:comment "Het datatype waarmee waarden van deze attribuutsoort worden vastgelegd."@nl;
  dct:source mimdoc:sectie2.3-Type;
.
mim:lengte a owl:DatatypeProperty;
  rdfs:label "lengte"@nl;
  rdfs:comment "De aanduiding van de lengte van een gegeven."@nl;
  dct:source mimdoc:sectie2.3-Lengte;
.
mim:patroon a owl:DatatypeProperty;
  rdfs:label "patroon"@nl;
  rdfs:comment "De verzameling van waarden die gegevens van deze attribuutsoort kunnen hebben, oftewel het waardenbereik, uitgedrukt in een specifieke structuur."@nl;
  dct:source mimdoc:sectie2.3-Patroon;
.
mim:formeelPatroon a owl:DatatypeProperty;
  rdfs:label "formeel patroon"@nl;
  rdfs:comment "Zoals patroon, formeel vastgelegd, uitgedrukt in een formele taal die door de computer wordt herkend."@nl;
  dct:source mimdoc:sectie2.3-FormeelPatroon;
.

# Properties die in de tabel voorkomen (maar niet afzonderlijk zijn gedefinieerd)

# Bij Objecttype
mim:uniekeAanduiding a owl:DatatypeProperty;
  rdfs:label "unieke aanduiding"@nl;
  rdfs:comment "Voor objecttypen die deel uitmaken van een (basis)registratie of informatiemodel betreft dit de wijze waarop daarin voorkomende objecten (van dit type) uniek in de registratie worden aangeduid."@nl;
.
mim:populatie a owl:DatatypeProperty;
  rdfs:label "populatie"@nl;
  rdfs:comment "Voor objecttypen die deel uitmaken van een (basis)registratie betreft dit de beschrijving van de exemplaren van het gedefinieerde objecttype die in de desbetreffende (basis)- registratie voorhanden zijn."@nl;
.
mim:kwaliteit a owl:DatatypeProperty;
  rdfs:label "kwaliteit"@nl;
  rdfs:comment "Voor objecttypen die deel uitmaken van een registratie betreft dit de waarborgen voor de juistheid van de in de registratie opgenomen objecten van het desbetreffende type."@nl;
.
mim:indicatieAbstractObject a owl:DatatypeProperty;
  rdfs:label "indicatie abstract object"@nl;
  rdfs:comment "Conceptueel model: indicatie dat het objecttype een generalisatie is, waarvan een object als specialisatie altijd voorkomt in de hoedanigheid van een (en slechts één) van de specialisaties van het betreffende objecttype."@nl;
  rdfs:comment "Logisch model: Indicatie dat er geen instanties (objecten) voor het betreffende objecttype mogen voorkomen."@nl;
  # ISSUE: Twee definities, dan zijn het andere dingen?
  # ISSUE: Er is een afhankelijkheid met "Identificerend"
.

# Bij Attribuutsoort (komt ook terug bij referentie-element)
mim:identificerend a owl:DatatypeProperty;
  rdfs:label "identificerend"@nl;
  rdfs:comment "Aanduiding dat attribuutsoort onderdeel uitmaakt van de unieke aanduiding van een object"@nl;
  #ISSUE: Dit lijkt nu bij de klasse terecht te zijn gekomen. Mogelijk dat dit kan, maar nog even onderzoeken
.

# Bij Gegevensgroep
mim:gegevensgroeptype a owl:ObjectProperty;
  rdfs:label "gegevensgroeptype"@nl;
  rdfs:comment "De verwijzing naar het bijbehorende gegevensgroeptype"@nl;
.

# Bij Relatiesoort en/of Externe koppeling
mim:unidirectioneel a owl:DatatypeProperty;
  rdfs:label "uni-directioneel"@nl;
  # Relatiesoort
  rdfs:comment "Het gerelateerde objecttype (de target) waarvan het objecttype, die de eigenaar is van deze relatie (de source), kennis heeft."@nl;
  # Externe koppeling
  rdfs:comment "Het gerelateerde objecttype uit een extern informatiemodel (de target) waarvan het objecttype die de eigenaar van deze relatie is (de source) kennis heeft. Het aggregation type van de source is altijd 'composition'. Alle relaties zijn altijd gericht van het objecttype (source) naar het gerelateerde objecttype (target)."@nl;
.
mim:bron a owl:ObjectProperty;
  rdfs:label "bron";
  # Relatiesoort
  rdfs:comment "Het objecttype waarvan de relatie een eigenschap is."@nl;
  # Externe koppeling
  rdfs:comment "Het objecttype waarvan de relatie een eigenschap is."@nl;
.
mim:gerelateerdObjecttype a owl:ObjectProperty;
  rdfs:label "gerelateerd objecttype";
  # Relatiesoort
  rdfs:comment "Het objecttype waarmee een objecttype een logisch verband heeft"@nl;
  # Generalisatie (objecttype)
  rdfs:comment "Het objecttype dat de generalisatie is van een (ander) objecttype."@nl;
  # Externe koppeling
  rdfs:comment "Het objecttype uit een extern informatiemodel waarmee een objecttype een logische verbinding heeft."@nl;
.
mim:typeAggregatie a owl:ObjectProperty;
  rdfs:label "type aggregatie";
  # Relatiesoort
  rdfs:comment "Standaard betreft het geen aggregatie (None). Het type aggregatie mag 'composite' zijn. Dit wordt gedaan als er een afhankelijkheid is in die zin dat de target niet kan bestaan zonder de source: de target vervalt als de source vervalt."@nl;
  # Externe koppeling
  # Eigenlijk geen definitie, maar dit is wat er in het brondocument staat...
  rdfs:comment "Aanduiding dat het een compositie relatie is. Waarde is altijd Composite bij externe koppeling."@nl;
.

# Generalisatie
mim:subtype a owl:ObjectProperty;
  rdfs:label "subtype";
  rdfs:comment "Het objecttype dat een specialisatie is van een (ander) objecttype."@nl;
.
mim:supertype a owl:ObjectProperty;
  rdfs:label "supertype";
  rdfs:comment "Het objecttype dat de generalisatie is van een (ander) objecttype."@nl;
.

# Enumeratiewaarde
mim:code a owl:DatatypeProperty;
  rdfs:label "code"@nl;
  rdfs:comment "De in een registratie of informatiemodel aan de enumeratiewaarde toegekend unieke code"@nl;
.

# Constraint
mim:specificatieTekst a owl:DatatypeProperty;
  rdfs:label "specificatie tekst"@nl;
  rdfs:comment "De specificatie van de constraint in normale tekst."@nl;
.
mim:specificatieFormeel a owl:DatatypeProperty;
  rdfs:label "specificatie formeel"@nl;
  rdfs:comment "De beschrijving van de constraint in een formele specificatietaal, in OCL"@nl;
.

# Properties uit het model die niet gedefinieerd zijn
mim:attribuut a owl:ObjectProperty;
  rdfs:label "attribuut"@nl;
.
mim:gegevensgroep a owl:ObjectProperty;
  rdfs:label "gegevensgroep"@nl;
.
mim:waarde a owl:ObjectProperty;
  rdfs:label "waarde"@nl;
.
mim:constraint a owl:ObjectProperty;
  rdfs:label "constraint"@nl;
.
mim:element a owl:ObjectProperty;
  rdfs:label "element"@nl;
.

#
# Instanties
#

# Primitieve Datatypen
mim:CharacterString a mim:PrimitiefDatatype;
  rdfs:label "CharacterString"@nl;
  mim:naam "CharacterString"@nl;
  mim:definitie "Zie ISO 19103. Vrij vertaald: alle alfanumerieke tekens en speciale tekens die horen bij de gekozen characterset (standaard UTF-8), dus met diakrieten, white spaces, \-teken en newlines of HTML opmaak e.d. Mag starten met spatie. De maximale lengte is onbepaald."@nl;
.
mim:Integer a mim:PrimitiefDatatype;
  rdfs:label "Integer"@nl;
  mim:naam "Integer"@nl;
  mim:definitie "Zie ISO11404 (subtype van ISO Number). Vrij vertaald: geheel getal, lengte is minimaal 1 en maximale lengte is onbepaald, zonder voorloopnullen."@nl;
.
mim:Real a mim:PrimitiefDatatype;
  rdfs:label "Real"@nl;
  mim:naam "Real"@nl;
  mim:definitie "Zie ISO11404 (subtype van ISO Number). Vrij vertaald: een reëel getal, oftewel een rationeel getal zoals een Integer of een Decimal, of niet rationeel getal, zoals pi of de wortel van 2. Deze bestaat uit een (oneindig) aantal getallen, al dan niet achter de komma (floating point)."@nl;
.
mim:Boolean a mim:PrimitiefDatatype;
  rdfs:label "Boolean"@nl;
  mim:naam "Boolean"@nl;
  mim:definitie "Indicatie met mogelijke waarden True, false, 1 of 0. True en 1 hebben een identieke betekenis: Ja. False en 0 hebben een identieke betekenis: Nee."@nl;
.
mim:Date a mim:PrimitiefDatatype;
  rdfs:label "Date"@nl;
  mim:naam "Date"@nl;
  mim:definitie "4-cijferig jaar, 2-cijferig maand, 2-cijferig dag uitgedrukt in yyyy-mm-dd conform https://en.wikipedia.org/wiki/ISO_8601"@nl;
.
mim:DateTime a mim:PrimitiefDatatype;
  rdfs:label "DateTime"@nl;
  mim:naam "DateTime"@nl;
  mim:definitie "yyyy-mm-ddThh:mm:ss conform https://en.wikipedia.org/wiki/ISO_8601"@nl;
.
mim:Year a mim:PrimitiefDatatype;
  rdfs:label "Year"@nl;
  mim:naam "Year"@nl;
  mim:definitie "4-cijferig jaar uitgedrukt in yyyy conform https://en.wikipedia.org/wiki/ISO_8601"@nl;
.
mim:Day a mim:PrimitiefDatatype;
  rdfs:label "Day"@nl;
  mim:naam "Day"@nl;
  mim:definitie "2-cijferige dag uitgedrukt in dd conform https://en.wikipedia.org/wiki/ISO_8601"@nl;
.
mim:Month a mim:PrimitiefDatatype;
  rdfs:label "Month"@nl;
  mim:naam "Month"@nl;
  mim:definitie "2-cijferige maand uitgedrukt in mm conform https://en.wikipedia.org/wiki/ISO_8601"@nl;
.
mim:URI a mim:PrimitiefDatatype;
  rdfs:label "URI"@nl;
  mim:naam "URI"@nl;
  mim:definitie "Unieke identificatie op internet conform RFC3986 en de URI-strategie Linked Open Data. Gestandaardiseerde manier om op het internet dingen (pagina's met informatie, objecten, datasets) uniek te identificeren."@nl;
.

# type aggregaties
mim:Aggregatietypen a skos:ConceptScheme;
  rdfs:label "Aggregatietypen";
  rdfs:comment "Aggregatietypen conform UML";
.
mim:Geen a skos:Concept;
  skos:inScheme mim:Aggregatietypen;
  rdfs:label "Geen"@nl;
  skos:prefLabel "Geen"@nl;
  skos:altLabel "None"@en;
  skos:definitie "Er is geen sprake van een aggregate"@nl;
.
mim:Compositie a mim:Enumeratiewaarde;
  skos:inScheme mim:Aggregatietypen;
  rdfs:label "Compositie"@nl;
  skos:prefLabel "Compositie"@nl;
  skos:altLabel "Composition"@en;
  skos:definitie "Compositie (gesloten wiebertje)"@nl;
.
mim:Gedeeld a mim:Enumeratiewaarde;
  skos:inScheme mim:Aggregatietypen;
  rdfs:label "Gedeeld"@nl;
  skos:prefLabel "Gedeeld"@nl;
  skos:altLabel "Shared"@en;
  skos:definitie "Gedeeld (open wiebertje)"@nl;
.

# authenticiteit
mim:Authenticiteit a skos:ConceptScheme;
  rdfs:label "Authenticiteit";
  rdfs:comment "Authenticiteit zoals gedefinieerd in MIM";
.
mim:Authentiek a skos:Concept;
  skos:inScheme mim:Authenticiteit;
  rdfs:label "Authentiek";
  skos:prefLabel "Authentiek";
  skos:definition "Indien het een authentiek (landelijk) basisgegeven of een als relatiesoort gemodelleerd authentiek (landelijk) basisgegeven is. Basisgegevens zijn altijd gegevens afkomstig uit de landelijke registraties."@nl;
.
mim:Basisgegeven a skos:Concept;
  skos:inScheme mim:Authenticiteit;
  rdfs:label "Basisgegeven";
  skos:prefLabel "Basisgegeven";
  skos:definition "Indien het een landelijk basisgegeven of een als relatiesoort gemodelleerd (landelijk) basisgegeven is in een landelijke registratie, maar in die registratie géén authentiek gegeven is."@nl;
.
mim:LandelijkKerngegeven a skos:Concept;
  skos:inScheme mim:Authenticiteit;
  rdfs:label "LandelijkKerngegeven";
  skos:prefLabel "Landelijk kerngegeven";
  skos:definition "Indien het een gegeven of een als relatiesoort gemodelleerd gegeven is in een landelijk sector- en domein-overstijgend informatiemodel en geen authentiek gegeven en geen basisgegeven is."@nl;
.
mim:GemeentelijkKerngegeven a skos:Concept;
  skos:inScheme mim:Authenticiteit;
  rdfs:label "Gemeentelijk kerngegeven";
  skos:prefLabel "Gemeentelijk kerngegeven";
.
mim:OverigeAuthenticiteit a skos:Concept;
  skos:inScheme mim:Authenticiteit;
  rdfs:label "Overige authenticiteit";
  skos:prefLabel "Overig";
  skos:definition "Indien het géén van de voorgaande categorieën betreft. Veelal gaat het dan om proces-, taakveld- of domeinspecifieke gegevens."@nl;
.
