@prefix bldg: <https://dataset-dl.liris.cnrs.fr/rdf-owl-urban-data-ontologies/Ontologies/CityGML/3.0/building#> .
@prefix con: <https://dataset-dl.liris.cnrs.fr/rdf-owl-urban-data-ontologies/Ontologies/CityGML/3.0/construction#> .
@prefix core: <https://dataset-dl.liris.cnrs.fr/rdf-owl-urban-data-ontologies/Ontologies/CityGML/3.0/core#> .
@prefix iso19136-bt: <http://def.isotc211.org/iso19136/2007/BasicTypes#> .
@prefix iso19150-2: <http://def.isotc211.org/iso19150/-2/2012/base#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sc: <http://shapechange.net/resources/ont/base#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<https://dataset-dl.liris.cnrs.fr/rdf-owl-urban-data-ontologies/Ontologies/CityGML/3.0/building> a owl:Ontology ;
    rdfs:label "Building"@en ;
    owl:imports <http://def.isotc211.org/iso19150/-2/2012/base>,
        <http://shapechange.net/resources/ont/base>,
        <https://dataset-dl.liris.cnrs.fr/rdf-owl-urban-data-ontologies/Ontologies/CityGML/3.0/construction.ttl>,
        <https://dataset-dl.liris.cnrs.fr/rdf-owl-urban-data-ontologies/Ontologies/CityGML/3.0/core.ttl> ;
    skos:definition "The Building module supports representation of thematic and spatial aspects of buildings, building parts, building installations, building subdivisions, and interior building structures."@en .

bldg:AbstractBuilding.address a owl:ObjectProperty ;
    rdfs:label "address"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range core:Address ;
    skos:definition "Relates the addresses to the Building or BuildingPart."@en .

bldg:AbstractBuilding.adeOfAbstractBuilding a owl:ObjectProperty ;
    rdfs:label "adeOfAbstractBuilding"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range bldg:ADEOfAbstractBuilding ;
    skos:definition "Augments AbstractBuilding with properties defined in an ADE."@en .

bldg:AbstractBuilding.buildingConstructiveElement a owl:ObjectProperty ;
    rdfs:label "buildingConstructiveElement"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range bldg:BuildingConstructiveElement ;
    skos:definition "Relates the constructive elements to the Building or BuildingPart."@en .

bldg:AbstractBuilding.buildingFurniture a owl:ObjectProperty ;
    rdfs:label "buildingFurniture"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range bldg:BuildingFurniture ;
    skos:definition "Relates the furniture objects to the Building or BuildingPart."@en .

bldg:AbstractBuilding.buildingInstallation a owl:ObjectProperty ;
    rdfs:label "buildingInstallation"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range bldg:BuildingInstallation ;
    skos:definition "Relates the installation objects to the Building or BuildingPart."@en .

bldg:AbstractBuilding.buildingRoom a owl:ObjectProperty ;
    rdfs:label "buildingRoom"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range bldg:BuildingRoom ;
    skos:definition "Relates the rooms to the Building or BuildingPart."@en .

bldg:AbstractBuilding.buildingSubdivision a owl:ObjectProperty ;
    rdfs:label "buildingSubdivision"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range bldg:AbstractBuildingSubdivision ;
    skos:definition "Relates the logical subdivisions to the Building or BuildingPart."@en .

bldg:AbstractBuilding.function a owl:ObjectProperty ;
    rdfs:label "function"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the intended purposes of the Building or BuildingPart."@en .

bldg:AbstractBuilding.usage a owl:ObjectProperty ;
    rdfs:label "usage"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the actual uses of the Building or BuildingPart."@en .

bldg:AbstractBuildingSubdivision.adeOfAbstractBuildingSubdivision a owl:ObjectProperty ;
    rdfs:label "adeOfAbstractBuildingSubdivision"@en ;
    rdfs:domain bldg:AbstractBuildingSubdivision ;
    rdfs:range bldg:ADEOfAbstractBuildingSubdivision ;
    skos:definition "Augments AbstractBuildingSubdivision with properties defined in an ADE."@en .

bldg:AbstractBuildingSubdivision.buildingConstructiveElement a owl:ObjectProperty ;
    rdfs:label "buildingConstructiveElement"@en ;
    rdfs:domain bldg:AbstractBuildingSubdivision ;
    rdfs:range bldg:BuildingConstructiveElement ;
    skos:definition "Relates the constructive elements to the building subdivision."@en .

bldg:AbstractBuildingSubdivision.buildingFurniture a owl:ObjectProperty ;
    rdfs:label "buildingFurniture"@en ;
    rdfs:domain bldg:AbstractBuildingSubdivision ;
    rdfs:range bldg:BuildingFurniture ;
    skos:definition "Relates the furniture objects to the building subdivision."@en .

bldg:AbstractBuildingSubdivision.buildingInstallation a owl:ObjectProperty ;
    rdfs:label "buildingInstallation"@en ;
    rdfs:domain bldg:AbstractBuildingSubdivision ;
    rdfs:range bldg:BuildingInstallation ;
    skos:definition "Relates the installation objects to the building subdivision."@en .

bldg:AbstractBuildingSubdivision.buildingRoom a owl:ObjectProperty ;
    rdfs:label "buildingRoom"@en ;
    rdfs:domain bldg:AbstractBuildingSubdivision ;
    rdfs:range bldg:BuildingRoom ;
    skos:definition "Relates the rooms to the building subdivision."@en .

bldg:AbstractBuildingSubdivision.elevation a owl:ObjectProperty ;
    rdfs:label "elevation"@en ;
    rdfs:domain bldg:AbstractBuildingSubdivision ;
    rdfs:range con:Elevation ;
    skos:definition "Specifies qualified elevations of the building subdivision in relation to a well-defined surface which is commonly taken as origin (e.g. geoid or water level). [cf. INSPIRE]"@en .

bldg:AbstractBuildingSubdivision.function a owl:ObjectProperty ;
    rdfs:label "function"@en ;
    rdfs:domain bldg:AbstractBuildingSubdivision ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the intended purposes of the building subdivision."@en .

bldg:AbstractBuildingSubdivision.usage a owl:ObjectProperty ;
    rdfs:label "usage"@en ;
    rdfs:domain bldg:AbstractBuildingSubdivision ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the actual uses of the building subdivision."@en .

bldg:Building.adeOfBuilding a owl:ObjectProperty ;
    rdfs:label "adeOfBuilding"@en ;
    rdfs:domain bldg:Building ;
    rdfs:range bldg:ADEOfBuilding ;
    skos:definition "Augments the Building with properties defined in an ADE."@en .

bldg:Building.buildingPart a owl:ObjectProperty ;
    rdfs:label "buildingPart"@en ;
    rdfs:domain bldg:Building ;
    rdfs:range bldg:BuildingPart ;
    skos:definition "Relates the building parts to the Building."@en .

bldg:BuildingConstructiveElement.adeOfBuildingConstructiveElement a owl:ObjectProperty ;
    rdfs:label "adeOfBuildingConstructiveElement"@en ;
    rdfs:domain bldg:BuildingConstructiveElement ;
    rdfs:range bldg:ADEOfBuildingConstructiveElement ;
    skos:definition "Augments the BuildingConstructiveElement with properties defined in an ADE."@en .

bldg:BuildingConstructiveElement.function a owl:ObjectProperty ;
    rdfs:label "function"@en ;
    rdfs:domain bldg:BuildingConstructiveElement ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the intended purposes of the BuildingConstructiveElement."@en .

bldg:BuildingConstructiveElement.usage a owl:ObjectProperty ;
    rdfs:label "usage"@en ;
    rdfs:domain bldg:BuildingConstructiveElement ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the actual uses of the BuildingConstructiveElement."@en .

bldg:BuildingFurniture.adeOfBuildingFurniture a owl:ObjectProperty ;
    rdfs:label "adeOfBuildingFurniture"@en ;
    rdfs:domain bldg:BuildingFurniture ;
    rdfs:range bldg:ADEOfBuildingFurniture ;
    skos:definition "Augments the BuildingFurniture with properties defined in an ADE."@en .

bldg:BuildingFurniture.function a owl:ObjectProperty ;
    rdfs:label "function"@en ;
    rdfs:domain bldg:BuildingFurniture ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the intended purposes of the BuildingFurniture."@en .

bldg:BuildingFurniture.usage a owl:ObjectProperty ;
    rdfs:label "usage"@en ;
    rdfs:domain bldg:BuildingFurniture ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the actual uses of the BuildingFurniture."@en .

bldg:BuildingInstallation.adeOfBuildingInstallation a owl:ObjectProperty ;
    rdfs:label "adeOfBuildingInstallation"@en ;
    rdfs:domain bldg:BuildingInstallation ;
    rdfs:range bldg:ADEOfBuildingInstallation ;
    skos:definition "Augments the BuildingInstallation with properties defined in an ADE."@en .

bldg:BuildingInstallation.function a owl:ObjectProperty ;
    rdfs:label "function"@en ;
    rdfs:domain bldg:BuildingInstallation ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the intended purposes of the BuildingInstallation."@en .

bldg:BuildingInstallation.usage a owl:ObjectProperty ;
    rdfs:label "usage"@en ;
    rdfs:domain bldg:BuildingInstallation ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the actual uses of the BuildingInstallation."@en .

bldg:BuildingPart.adeOfBuildingPart a owl:ObjectProperty ;
    rdfs:label "adeOfBuildingPart"@en ;
    rdfs:domain bldg:BuildingPart ;
    rdfs:range bldg:ADEOfBuildingPart ;
    skos:definition "Augments the BuildingPart with properties defined in an ADE."@en .

bldg:BuildingRoom.adeOfBuildingRoom a owl:ObjectProperty ;
    rdfs:label "adeOfBuildingRoom"@en ;
    rdfs:domain bldg:BuildingRoom ;
    rdfs:range bldg:ADEOfBuildingRoom ;
    skos:definition "Augments the BuildingRoom with properties defined in an ADE."@en .

bldg:BuildingRoom.boundary a owl:ObjectProperty ;
    rdfs:label "boundary"@en ;
    rdfs:domain bldg:BuildingRoom ;
    rdfs:range core:AbstractThematicSurface ;
    skos:definition "Relates to the surfaces that bound the BuildingRoom. This relation is inherited from the Core module."@en .

bldg:BuildingRoom.buildingFurniture a owl:ObjectProperty ;
    rdfs:label "buildingFurniture"@en ;
    rdfs:domain bldg:BuildingRoom ;
    rdfs:range bldg:BuildingFurniture ;
    skos:definition "Relates the furniture objects to the BuildingRoom."@en .

bldg:BuildingRoom.buildingInstallation a owl:ObjectProperty ;
    rdfs:label "buildingInstallation"@en ;
    rdfs:domain bldg:BuildingRoom ;
    rdfs:range bldg:BuildingInstallation ;
    skos:definition "Relates the installation objects to the BuildingRoom."@en .

bldg:BuildingRoom.function a owl:ObjectProperty ;
    rdfs:label "function"@en ;
    rdfs:domain bldg:BuildingRoom ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the intended purposes of the BuildingRoom."@en .

bldg:BuildingRoom.roomHeight a owl:ObjectProperty ;
    rdfs:label "roomHeight"@en ;
    rdfs:domain bldg:BuildingRoom ;
    rdfs:range bldg:RoomHeight ;
    skos:definition "Specifies qualified heights of the BuildingRoom."@en .

bldg:BuildingRoom.usage a owl:ObjectProperty ;
    rdfs:label "usage"@en ;
    rdfs:domain bldg:BuildingRoom ;
    rdfs:range owl:Class ;
    skos:definition "Specifies the actual uses of the BuildingRoom."@en .

bldg:BuildingUnit.address a owl:ObjectProperty ;
    rdfs:label "address"@en ;
    rdfs:domain bldg:BuildingUnit ;
    rdfs:range core:Address ;
    skos:definition "Relates to the addresses that are assigned to the BuildingUnit."@en .

bldg:BuildingUnit.adeOfBuildingUnit a owl:ObjectProperty ;
    rdfs:label "adeOfBuildingUnit"@en ;
    rdfs:domain bldg:BuildingUnit ;
    rdfs:range bldg:ADEOfBuildingUnit ;
    skos:definition "Augments the BuildingUnit with properties defined in an ADE."@en .

bldg:BuildingUnit.storey a owl:ObjectProperty ;
    rdfs:label "storey"@en ;
    rdfs:domain bldg:BuildingUnit ;
    rdfs:range bldg:Storey ;
    skos:definition "Relates to the storeys on which the BuildingUnit is located."@en .

bldg:Storey.adeOfStorey a owl:ObjectProperty ;
    rdfs:label "adeOfStorey"@en ;
    rdfs:domain bldg:Storey ;
    rdfs:range bldg:ADEOfStorey ;
    skos:definition "Augments the Storey with properties defined in an ADE."@en .

bldg:Storey.boundary a owl:ObjectProperty ;
    rdfs:label "boundary"@en ;
    rdfs:domain bldg:Storey ;
    rdfs:range core:AbstractThematicSurface ;
    skos:definition "Relates to the surfaces that bound the Storey. This relation is inherited from the Core module."@en .

bldg:Storey.buildingUnit a owl:ObjectProperty ;
    rdfs:label "buildingUnit"@en ;
    rdfs:domain bldg:Storey ;
    rdfs:range bldg:BuildingUnit ;
    skos:definition "Relates to the building units that belong to the Storey."@en .

bldg:ADEOfAbstractBuilding a owl:Class ;
    rdfs:label "ADEOfAbstractBuilding"@en ;
    iso19150-2:isAbstract true ;
    skos:definition "ADEOfAbstractBuilding acts as a hook to define properties within an ADE that are to be added to AbstractBuilding."@en .

bldg:ADEOfAbstractBuildingSubdivision a owl:Class ;
    rdfs:label "ADEOfAbstractBuildingSubdivision"@en ;
    iso19150-2:isAbstract true ;
    skos:definition "ADEOfAbstractBuildingSubdivision acts as a hook to define properties within an ADE that are to be added to AbstractBuildingSubdivision."@en .

bldg:ADEOfBuilding a owl:Class ;
    rdfs:label "ADEOfBuilding"@en ;
    iso19150-2:isAbstract true ;
    skos:definition "ADEOfBuilding acts as a hook to define properties within an ADE that are to be added to a Building."@en .

bldg:ADEOfBuildingConstructiveElement a owl:Class ;
    rdfs:label "ADEOfBuildingConstructiveElement"@en ;
    iso19150-2:isAbstract true ;
    skos:definition "ADEOfBuildingConstructiveElement acts as a hook to define properties within an ADE that are to be added to a BuildingConstructiveElement."@en .

bldg:ADEOfBuildingFurniture a owl:Class ;
    rdfs:label "ADEOfBuildingFurniture"@en ;
    iso19150-2:isAbstract true ;
    skos:definition "ADEOfBuildingFurniture acts as a hook to define properties within an ADE that are to be added to a BuildingFurniture."@en .

bldg:ADEOfBuildingInstallation a owl:Class ;
    rdfs:label "ADEOfBuildingInstallation"@en ;
    iso19150-2:isAbstract true ;
    skos:definition "ADEOfBuildingInstallation acts as a hook to define properties within an ADE that are to be added to a BuildingInstallation."@en .

bldg:ADEOfBuildingPart a owl:Class ;
    rdfs:label "ADEOfBuildingPart"@en ;
    iso19150-2:isAbstract true ;
    skos:definition "ADEOfBuildingPart acts as a hook to define properties within an ADE that are to be added to a BuildingPart."@en .

bldg:ADEOfBuildingRoom a owl:Class ;
    rdfs:label "ADEOfBuildingRoom"@en ;
    iso19150-2:isAbstract true ;
    skos:definition "ADEOfBuildingRoom acts as a hook to define properties within an ADE that are to be added to a BuildingRoom."@en .

bldg:ADEOfBuildingUnit a owl:Class ;
    rdfs:label "ADEOfBuildingUnit"@en ;
    iso19150-2:isAbstract true ;
    skos:definition "ADEOfBuildingUnit acts as a hook to define properties within an ADE that are to be added to a BuildingUnit."@en .

bldg:ADEOfStorey a owl:Class ;
    rdfs:label "ADEOfStorey"@en ;
    iso19150-2:isAbstract true ;
    skos:definition "ADEOfStorey acts as a hook to define properties within an ADE that are to be added to a Storey."@en .

bldg:AbstractBuilding.class a owl:ObjectProperty ;
    rdfs:label "class"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range owl:Class ;
    skos:definition "Indicates the specific type of the Building or BuildingPart."@en .

bldg:AbstractBuilding.roofType a owl:ObjectProperty ;
    rdfs:label "roofType"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range owl:Class ;
    skos:definition "Indicates the shape of the roof of the Building or BuildingPart."@en .

bldg:AbstractBuilding.storeyHeightsAboveGround a owl:ObjectProperty ;
    rdfs:label "storeyHeightsAboveGround"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range iso19136-bt:MeasureOrNilReasonList ;
    skos:definition "Lists the heights of each storey above ground. The first value in the list denotes the height of the storey closest to the ground level, the last value denotes the height furthest away."@en .

bldg:AbstractBuilding.storeyHeightsBelowGround a owl:ObjectProperty ;
    rdfs:label "storeyHeightsBelowGround"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range iso19136-bt:MeasureOrNilReasonList ;
    skos:definition "Lists the height of each storey below ground. The first value in the list denotes the height of the storey closest to the ground level, the last value denotes the height furthest away."@en .

bldg:AbstractBuilding.storeysAboveGround a owl:DatatypeProperty ;
    rdfs:label "storeysAboveGround"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range xsd:integer ;
    skos:definition "Indicates the number of storeys positioned above ground level."@en .

bldg:AbstractBuilding.storeysBelowGround a owl:DatatypeProperty ;
    rdfs:label "storeysBelowGround"@en ;
    rdfs:domain bldg:AbstractBuilding ;
    rdfs:range xsd:integer ;
    skos:definition "Indicates the number of storeys positioned below ground level."@en .

bldg:AbstractBuildingSubdivision.class a owl:ObjectProperty ;
    rdfs:label "class"@en ;
    rdfs:domain bldg:AbstractBuildingSubdivision ;
    rdfs:range owl:Class ;
    skos:definition "Indicates the specific type of the building subdivision."@en .

bldg:AbstractBuildingSubdivision.sortKey a owl:DatatypeProperty ;
    rdfs:label "sortKey"@en ;
    rdfs:domain bldg:AbstractBuildingSubdivision ;
    rdfs:range xsd:double ;
    skos:definition "Defines an order among the objects that belong to the building subdivision. An example is the sorting of storeys."@en .

bldg:Building a owl:Class ;
    rdfs:label "Building"@en ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom bldg:ADEOfBuilding ;
            owl:onProperty bldg:Building.adeOfBuilding ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingPart ;
            owl:onProperty bldg:Building.buildingPart ],
        bldg:AbstractBuilding ;
    owl:disjointWith bldg:BuildingPart ;
    skos:definition "A Building is a free-standing, self-supporting construction that is roofed, usually walled, and can be entered by humans and is normally designed to stand permanently in one place. It is intended for human occupancy (e.g. a place of work or recreation), habitation and/or shelter of humans, animals or things."@en .

bldg:BuildingConstructiveElement.class a owl:ObjectProperty ;
    rdfs:label "class"@en ;
    rdfs:domain bldg:BuildingConstructiveElement ;
    rdfs:range owl:Class ;
    skos:definition "Indicates the specific type of the BuildingConstructiveElement."@en .

bldg:BuildingFurniture.class a owl:ObjectProperty ;
    rdfs:label "class"@en ;
    rdfs:domain bldg:BuildingFurniture ;
    rdfs:range owl:Class ;
    skos:definition "Indicates the specific type of the BuildingFurniture."@en .

bldg:BuildingInstallation.class a owl:ObjectProperty ;
    rdfs:label "class"@en ;
    rdfs:domain bldg:BuildingInstallation ;
    rdfs:range owl:Class ;
    skos:definition "Indicates the specific type of the BuildingInstallation."@en .

bldg:BuildingRoom.class a owl:ObjectProperty ;
    rdfs:label "class"@en ;
    rdfs:domain bldg:BuildingRoom ;
    rdfs:range owl:Class ;
    skos:definition "Indicates the specific type of the BuildingRoom."@en .

bldg:RoomHeight.highReference a owl:ObjectProperty ;
    rdfs:label "highReference"@en ;
    rdfs:domain bldg:RoomHeight ;
    rdfs:range owl:Class ;
    skos:definition "Indicates the high point used to calculate the value of the room height."@en .

bldg:RoomHeight.lowReference a owl:ObjectProperty ;
    rdfs:label "lowReference"@en ;
    rdfs:domain bldg:RoomHeight ;
    rdfs:range owl:Class ;
    skos:definition "Indicates the low point used to calculate the value of the room height."@en .

bldg:RoomHeight.status a owl:DatatypeProperty ;
    rdfs:label "status"@en ;
    rdfs:domain bldg:RoomHeight ;
    rdfs:range con:HeightStatusValue ;
    skos:definition "Indicates the way the room height has been captured."@en .

bldg:RoomHeight.value a owl:DatatypeProperty ;
    rdfs:label "value"@en ;
    rdfs:domain bldg:RoomHeight ;
    rdfs:range sc:Measure ;
    skos:definition "Specifies the value of the room height."@en .

bldg:BuildingPart a owl:Class ;
    rdfs:label "BuildingPart"@en ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom bldg:ADEOfBuildingPart ;
            owl:onProperty bldg:BuildingPart.adeOfBuildingPart ],
        bldg:AbstractBuilding ;
    skos:definition "A BuildingPart is a physical or functional subdivision of a Building. It would be considered a Building, if it were not part of a collection of other BuildingParts."@en .

bldg:BuildingUnit a owl:Class ;
    rdfs:label "BuildingUnit"@en ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom bldg:ADEOfBuildingUnit ;
            owl:onProperty bldg:BuildingUnit.adeOfBuildingUnit ],
        [ a owl:Restriction ;
            owl:allValuesFrom core:Address ;
            owl:onProperty bldg:BuildingUnit.address ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:Storey ;
            owl:onProperty bldg:BuildingUnit.storey ],
        bldg:AbstractBuildingSubdivision ;
    owl:disjointWith bldg:Storey ;
    skos:definition "A BuildingUnit is a logical subdivision of a Building. BuildingUnits are formed according to some homogeneous property like function, ownership, management, or accessibility. They may be separately sold, rented out, inherited, managed, etc."@en .

bldg:RoomHeight a owl:Class ;
    rdfs:label "RoomHeight"@en ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:onClass owl:Class ;
            owl:onProperty bldg:RoomHeight.highReference ;
            owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ],
        [ a owl:Restriction ;
            owl:onDataRange sc:Measure ;
            owl:onProperty bldg:RoomHeight.value ;
            owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:RoomHeight.highReference ],
        [ a owl:Restriction ;
            owl:onClass owl:Class ;
            owl:onProperty bldg:RoomHeight.lowReference ;
            owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:RoomHeight.lowReference ],
        [ a owl:Restriction ;
            owl:onDataRange con:HeightStatusValue ;
            owl:onProperty bldg:RoomHeight.status ;
            owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ],
        [ a owl:Restriction ;
            owl:allValuesFrom sc:Measure ;
            owl:onProperty bldg:RoomHeight.value ],
        [ a owl:Restriction ;
            owl:allValuesFrom con:HeightStatusValue ;
            owl:onProperty bldg:RoomHeight.status ] ;
    skos:definition "The RoomHeight represents a vertical distance (measured or estimated) between a low reference and a high reference. [cf. INSPIRE]"@en .

bldg:Storey a owl:Class ;
    rdfs:label "Storey"@en ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom bldg:ADEOfStorey ;
            owl:onProperty bldg:Storey.adeOfStorey ],
        [ a owl:Restriction ;
            owl:allValuesFrom core:AbstractThematicSurface ;
            owl:onProperty bldg:Storey.boundary ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingUnit ;
            owl:onProperty bldg:Storey.buildingUnit ],
        bldg:AbstractBuildingSubdivision ;
    skos:definition "A Storey is typically a horizontal section of a Building. Storeys are not always defined according to the building structure, but can also be defined according to logical considerations."@en .

bldg:BuildingConstructiveElement a owl:Class ;
    rdfs:label "BuildingConstructiveElement"@en ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom bldg:ADEOfBuildingConstructiveElement ;
            owl:onProperty bldg:BuildingConstructiveElement.adeOfBuildingConstructiveElement ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingConstructiveElement.usage ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingConstructiveElement.function ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingConstructiveElement.class ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onClass owl:Class ;
            owl:onProperty bldg:BuildingConstructiveElement.class ],
        con:AbstractConstructiveElement ;
    skos:definition "A BuildingConstructiveElement is an element of a Building which is essential from a structural point of view. Examples are walls, slabs, staircases, beams."@en .

bldg:BuildingFurniture a owl:Class ;
    rdfs:label "BuildingFurniture"@en ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom bldg:ADEOfBuildingFurniture ;
            owl:onProperty bldg:BuildingFurniture.adeOfBuildingFurniture ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingFurniture.usage ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingFurniture.function ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingFurniture.class ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onClass owl:Class ;
            owl:onProperty bldg:BuildingFurniture.class ],
        con:AbstractFurniture ;
    skos:definition "A BuildingFurniture is an equipment for occupant use, usually not fixed to the building. [cf. ISO 6707-1]"@en .

bldg:BuildingInstallation a owl:Class ;
    rdfs:label "BuildingInstallation"@en ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom bldg:ADEOfBuildingInstallation ;
            owl:onProperty bldg:BuildingInstallation.adeOfBuildingInstallation ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingInstallation.usage ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingInstallation.function ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingInstallation.class ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onClass owl:Class ;
            owl:onProperty bldg:BuildingInstallation.class ],
        con:AbstractInstallation ;
    skos:definition "A BuildingInstallation is a permanent part of a Building (inside and/or outside) which has not the significance of a BuildingPart. Examples are stairs, antennas, balconies or small roofs."@en .

bldg:BuildingRoom a owl:Class ;
    rdfs:label "BuildingRoom"@en ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onClass owl:Class ;
            owl:onProperty bldg:BuildingRoom.class ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingRoom.usage ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingFurniture ;
            owl:onProperty bldg:BuildingRoom.buildingFurniture ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingInstallation ;
            owl:onProperty bldg:BuildingRoom.buildingInstallation ],
        [ a owl:Restriction ;
            owl:allValuesFrom core:AbstractThematicSurface ;
            owl:onProperty bldg:BuildingRoom.boundary ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingRoom.class ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:ADEOfBuildingRoom ;
            owl:onProperty bldg:BuildingRoom.adeOfBuildingRoom ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:RoomHeight ;
            owl:onProperty bldg:BuildingRoom.roomHeight ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:BuildingRoom.function ],
        core:AbstractUnoccupiedSpace ;
    skos:definition "A BuildingRoom is a space within a Building or BuildingPart intended for human occupancy (e.g. a place of work or recreation) and/or containment of animals or things. A BuildingRoom is bounded physically and/or virtually (e.g. by ClosureSurfaces or GenericSurfaces)."@en .

bldg:AbstractBuildingSubdivision a owl:Class ;
    rdfs:label "AbstractBuildingSubdivision"@en ;
    iso19150-2:isAbstract true ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onDataRange xsd:double ;
            owl:onProperty bldg:AbstractBuildingSubdivision.sortKey ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingFurniture ;
            owl:onProperty bldg:AbstractBuildingSubdivision.buildingFurniture ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingRoom ;
            owl:onProperty bldg:AbstractBuildingSubdivision.buildingRoom ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:ADEOfAbstractBuildingSubdivision ;
            owl:onProperty bldg:AbstractBuildingSubdivision.adeOfAbstractBuildingSubdivision ],
        [ a owl:Restriction ;
            owl:allValuesFrom con:Elevation ;
            owl:onProperty bldg:AbstractBuildingSubdivision.elevation ],
        [ a owl:Restriction ;
            owl:allValuesFrom xsd:double ;
            owl:onProperty bldg:AbstractBuildingSubdivision.sortKey ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingConstructiveElement ;
            owl:onProperty bldg:AbstractBuildingSubdivision.buildingConstructiveElement ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:AbstractBuildingSubdivision.class ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onClass owl:Class ;
            owl:onProperty bldg:AbstractBuildingSubdivision.class ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingInstallation ;
            owl:onProperty bldg:AbstractBuildingSubdivision.buildingInstallation ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:AbstractBuildingSubdivision.usage ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:AbstractBuildingSubdivision.function ],
        core:AbstractLogicalSpace ;
    skos:definition "AbstractBuildingSubdivision is the abstract superclass for different kinds of logical building subdivisions."@en .

bldg:AbstractBuilding a owl:Class ;
    rdfs:label "AbstractBuilding"@en ;
    iso19150-2:isAbstract true ;
    rdfs:subClassOf [ a owl:Restriction ;
            owl:allValuesFrom iso19136-bt:MeasureOrNilReasonList ;
            owl:onProperty bldg:AbstractBuilding.storeyHeightsBelowGround ],
        [ a owl:Restriction ;
            owl:allValuesFrom xsd:integer ;
            owl:onProperty bldg:AbstractBuilding.storeysBelowGround ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingInstallation ;
            owl:onProperty bldg:AbstractBuilding.buildingInstallation ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onClass iso19136-bt:MeasureOrNilReasonList ;
            owl:onProperty bldg:AbstractBuilding.storeyHeightsBelowGround ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:AbstractBuilding.class ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:ADEOfAbstractBuilding ;
            owl:onProperty bldg:AbstractBuilding.adeOfAbstractBuilding ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onClass iso19136-bt:MeasureOrNilReasonList ;
            owl:onProperty bldg:AbstractBuilding.storeyHeightsAboveGround ],
        [ a owl:Restriction ;
            owl:allValuesFrom iso19136-bt:MeasureOrNilReasonList ;
            owl:onProperty bldg:AbstractBuilding.storeyHeightsAboveGround ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onClass owl:Class ;
            owl:onProperty bldg:AbstractBuilding.roofType ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onClass owl:Class ;
            owl:onProperty bldg:AbstractBuilding.class ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:AbstractBuilding.usage ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingConstructiveElement ;
            owl:onProperty bldg:AbstractBuilding.buildingConstructiveElement ],
        [ a owl:Restriction ;
            owl:allValuesFrom xsd:integer ;
            owl:onProperty bldg:AbstractBuilding.storeysAboveGround ],
        [ a owl:Restriction ;
            owl:allValuesFrom core:Address ;
            owl:onProperty bldg:AbstractBuilding.address ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingFurniture ;
            owl:onProperty bldg:AbstractBuilding.buildingFurniture ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:BuildingRoom ;
            owl:onProperty bldg:AbstractBuilding.buildingRoom ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:AbstractBuilding.roofType ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onDataRange xsd:integer ;
            owl:onProperty bldg:AbstractBuilding.storeysAboveGround ],
        [ a owl:Restriction ;
            owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
            owl:onDataRange xsd:integer ;
            owl:onProperty bldg:AbstractBuilding.storeysBelowGround ],
        [ a owl:Restriction ;
            owl:allValuesFrom owl:Class ;
            owl:onProperty bldg:AbstractBuilding.function ],
        [ a owl:Restriction ;
            owl:allValuesFrom bldg:AbstractBuildingSubdivision ;
            owl:onProperty bldg:AbstractBuilding.buildingSubdivision ],
        con:AbstractConstruction ;
    skos:definition "AbstractBuilding is an abstract superclass representing the common attributes and associations of the classes Building and BuildingPart."@en .

