PREFIX ontobuildingstructure: <https://www.theworldavatar.com/kg/ontobuildingstructure/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

ontobuildingstructure:Wall a rdfs:Class ;
  rdfs:label "Wall" ;
  rdfs:comment "Vertical construction usually in masonry or in concrete which bounds or subdivides a construction works and fulfills a load bearing or retaining function. It is also an assembly that can host doors and windows." ;
  rdfs:subClassOf ontobuildingstructure:Assembly .

ontobuildingstructure:consistsOf a rdf:Property ;
  rdfs:label "consists of" ;
  rdfs:comment "A relation between a facade and its comprising components. Each facade comprises of one or more instances of their corresponding component type, such as a roof or a wall." ;
  rdfs:range xsd:string .

ontobuildingstructure:TotalRoofArea a rdfs:Class ;
  rdfs:label "Total Roof Area " ;
  rdfs:comment "The total size of the roof of a building." ;
  rdfs:subClassOf ontobuildingstructure:RoofArea .

ontobuildingstructure:Floor a rdfs:Class ;
  rdfs:label "Floor" ;
  rdfs:comment "Lower support component of any space in a construction, building, or infrastructure. It include a slab and flooring finish." ;
  rdfs:subClassOf ontobuildingstructure:BuildingStructureComponent .

ontobuildingstructure:StairStructuralComponent a rdfs:Class ;
  rdfs:label "Stair Structural Component " ;
  rdfs:comment "A structural member designed to carry loads between or beyond points of support for a staircase." ;
  rdfs:subClassOf ontobuildingstructure:BuildingStructureComponent .

ontobuildingstructure:Door a rdfs:Class ;
  rdfs:label "Door" ;
  rdfs:comment "Construction for closing an opening, intended primarily for access with hinged, pivoted or sliding operation." ;
  rdfs:subClassOf ontobuildingstructure:BuildingStructureComponent .

ontobuildingstructure:Assembly a rdfs:Class ;
  rdfs:label "Assembly" ;
  rdfs:comment "A building structure component that is composed of at least two other components, including assemblies. For example, a wall is an assembly that can consist of a door or window." ;
  rdfs:subClassOf ontobuildingstructure:BuildingStructureComponent .

ontobuildingstructure:NorthWallFacade a rdfs:Class ;
  rdfs:label "North Wall Facade" ;
  rdfs:comment "The northern frontage  of a building. It can comprise of several walls." ;
  rdfs:subClassOf ontobuildingstructure:WallFacade .

ontobuildingstructure:comprisesOf a rdf:Property ;
  rdfs:label "comprises of" ;
  rdfs:comment "A relation between a facade and its comprising components. Each facade comprises of one or more instances of their corresponding component type, such as a roof or a wall." ;
  rdfs:range ontobuildingstructure:Wall , ontobuildingstructure:Roof .

ontobuildingstructure:Roof a rdfs:Class ;
  rdfs:label "Roof" ;
  rdfs:comment "Construction enclosing the building from above." ;
  rdfs:subClassOf ontobuildingstructure:BuildingStructureComponent .

ontobuildingstructure:isHeatSupportSuitable a rdf:Property ;
  rdfs:label "is heat support suitable" ;
  rdfs:comment "A Boolean indicator that is true when the roof is suitable for installation of heat support, and is false, otherwise." ;
  rdfs:domain ontobuildingstructure:Roof ;
  rdfs:range xsd:boolean .

ontobuildingstructure:isPVPanelSuitable a rdf:Property ;
  rdfs:label "is pv panel suitable" ;
  rdfs:comment "A Boolean indicator that is true when the roof is suitable for installation of photovoltaic panels, and is false, otherwise." ;
  rdfs:domain ontobuildingstructure:Roof ;
  rdfs:range xsd:boolean .

ontobuildingstructure:hasArea a rdf:Property ;
  rdfs:label "has area of" ;
  rdfs:comment "A relationship between the roof of a building and the area it covers." ;
  rdfs:domain ontobuildingstructure:Roof ;
  rdfs:range ontobuildingstructure:RoofArea ;
  rdfs:subPropertyOf ontobuildingstructure:hasQuantity .

ontobuildingstructure:isSolarCollectorSuitable a rdf:Property ;
  rdfs:label "is solar collector suitable" ;
  rdfs:comment "A Boolean indicator that is true when the roof is suitable for installation of solar collectors, and is false, otherwise." ;
  rdfs:domain ontobuildingstructure:Roof ;
  rdfs:range xsd:boolean .

<http://www.ontology-of-units-of-measure.org/resource/om-2/Angle> a rdfs:Class .

ontobuildingstructure:FlatRoof a rdfs:Class ;
  rdfs:label "Flat Roof" ;
  rdfs:comment "Roof with a slope angle that is less than 9.46 degree." ;
  rdfs:subClassOf ontobuildingstructure:Roof .

ontobuildingstructure:Window a rdfs:Class ;
  rdfs:label "Window" ;
  rdfs:comment "Construction for closing a vertical or near vertical opening in a wall or pitched roof that will admit light and may admit fresh air." ;
  rdfs:subClassOf ontobuildingstructure:BuildingStructureComponent .

ontobuildingstructure:Ceiling a rdfs:Class ;
  rdfs:label "Ceiling" ;
  rdfs:comment "Upper interior surface component of any space in a construction, building, or infrastructure." ;
  rdfs:subClassOf ontobuildingstructure:BuildingStructureComponent .

<https://w3id.org/bot#Building> a rdfs:Class .

ontobuildingstructure:hasFacade a rdf:Property ;
  rdfs:label "has facade" ;
  rdfs:comment "A relation that links a building to their roof and wall facades." ;
  rdfs:domain <https://w3id.org/bot#Building> ;
  rdfs:range xsd:string .

<http://www.ontology-of-units-of-measure.org/resource/om-2/Quantity> a rdfs:Class .

ontobuildingstructure:WestWallFacade a rdfs:Class ;
  rdfs:label "West Wall Facade" ;
  rdfs:comment "The westhern frontage  of a building. It can comprise of several walls." ;
  rdfs:subClassOf ontobuildingstructure:WallFacade .

ontobuildingstructure:Stair a rdfs:Class ;
  rdfs:label "Stair" ;
  rdfs:comment "Construction comprising a succession of horizontal stages (steps or landings) that make it possible to pass on foot to other levels. It can be treater as an assembly consisting of the following types: stair flights, railings, landings, and stair structural components." ;
  rdfs:subClassOf ontobuildingstructure:Assembly .

ontobuildingstructure:SouthWallFacade a rdfs:Class ;
  rdfs:label "South Wall Facade" ;
  rdfs:comment "The southern frontage  of a building. It can comprise of several walls." ;
  rdfs:subClassOf ontobuildingstructure:WallFacade .

ontobuildingstructure:RoofArea a rdfs:Class ;
  rdfs:label "Roof Area" ;
  rdfs:comment "The size of the roof on a building" ;
  rdfs:subClassOf <http://www.ontology-of-units-of-measure.org/resource/om-2/Area> .

ontobuildingstructure:BuildingStructureComponent a rdfs:Class ;
  rdfs:label "Building Structure Component " ;
  rdfs:comment "An abstract class defining the attached construction parts of a building that constitute the building, such as walls, built-in partitions, roofs, doors, and columns. Generally, the building and all of its structural components are treated as a whole when the building is acquired, constructed, reconstructed, or erected and first placed in service." ;
  rdfs:subClassOf <https://w3id.org/bot#Element> .

ontobuildingstructure:InclinedRoof a rdfs:Class ;
  rdfs:label "Inclined Roof" ;
  rdfs:comment "Roof with a slope angle that is greater than or equal to 9.46 degree." ;
  rdfs:subClassOf ontobuildingstructure:Roof .

ontobuildingstructure:hasSlope a rdf:Property ;
  rdfs:label "has slope" ;
  rdfs:comment "A relationship between a roof and its slope angle." ;
  rdfs:domain ontobuildingstructure:InclinedRoof ;
  rdfs:range <http://www.ontology-of-units-of-measure.org/resource/om-2/Angle> ;
  rdfs:subPropertyOf ontobuildingstructure:hasQuantity .

ontobuildingstructure:hasOrientation a rdf:Property ;
  rdfs:label "has orientation" ;
  rdfs:comment "A relationship between a roof and its angle/position relative to the Sun." ;
  rdfs:domain ontobuildingstructure:InclinedRoof ;
  rdfs:range <http://www.ontology-of-units-of-measure.org/resource/om-2/Angle> ;
  rdfs:subPropertyOf ontobuildingstructure:hasQuantity .

ontobuildingstructure:EastWallFacade a rdfs:Class ;
  rdfs:label "East Wall Facade" ;
  rdfs:comment "The easthern frontage  of a building. It can comprise of several walls." ;
  rdfs:subClassOf ontobuildingstructure:WallFacade .

ontobuildingstructure:Column a rdfs:Class ;
  rdfs:label "Column" ;
  rdfs:comment "A vertical load-bearing structural member that is designed to support and transmit the load of the slab on the higher floors to the foundation through compression." ;
  rdfs:subClassOf ontobuildingstructure:BuildingStructureComponent .

ontobuildingstructure:Landing a rdfs:Class ;
  rdfs:label "Landing" ;
  rdfs:comment "A floor section that is connected to one or more stair flights or ramp flights." ;
  rdfs:subClassOf ontobuildingstructure:BuildingStructureComponent .

<https://w3id.org/bot#Element> a rdfs:Class .

ontobuildingstructure:RoofFacade a rdfs:Class ;
  rdfs:label "Roof Facade" ;
  rdfs:comment "The visible surface of a building's roof at aerial view. It can comprise of several roofs." .

<http://www.ontology-of-units-of-measure.org/resource/om-2/Area> a rdfs:Class .

ontobuildingstructure:SolarSuitableRoofArea a rdfs:Class ;
  rdfs:label "Solar Suitable Roof Area" ;
  rdfs:comment "The size of the roof area of a building that is suitable for solar use." ;
  rdfs:subClassOf ontobuildingstructure:RoofArea .

ontobuildingstructure:WallFacade a rdfs:Class ;
  rdfs:label "Wall Facade" ;
  rdfs:comment "The frontage  of a building. It can comprise of several walls." .

ontobuildingstructure:StairFlight a rdfs:Class ;
  rdfs:label "Stair Flight" ;
  rdfs:comment "An assembly of building components in a single &quot;run&quot; of stair steps that are not interrupted by a landing." ;
  rdfs:subClassOf ontobuildingstructure:BuildingStructureComponent .

ontobuildingstructure:hasNumOfRise a rdf:Property ;
  rdfs:label "has number of risers" ;
  rdfs:comment "Defines the number of risers on a stair flight." ;
  rdfs:domain ontobuildingstructure:StairFlight ;
  rdfs:range xsd:integer .

ontobuildingstructure:hasRiserHeight a rdf:Property ;
  rdfs:label "has riser height" ;
  rdfs:comment "Defines the height of each riser on a stair flight." ;
  rdfs:domain ontobuildingstructure:StairFlight ;
  rdfs:range xsd:double .

ontobuildingstructure:hasTreadLength a rdf:Property ;
  rdfs:label "has tread length" ;
  rdfs:comment "Defines the length of each tread on a stair flight." ;
  rdfs:domain ontobuildingstructure:StairFlight ;
  rdfs:range xsd:double .

ontobuildingstructure:hasNumOfTread a rdf:Property ;
  rdfs:label "has number of treads" ;
  rdfs:comment "Defines the number of treads on a stair flight." ;
  rdfs:domain ontobuildingstructure:StairFlight ;
  rdfs:range xsd:integer .

ontobuildingstructure:Railing a rdfs:Class ;
  rdfs:label "Railing" ;
  rdfs:comment "A frame assembly that is adjacent to human circulation spaces and at some space boundaries, in which it is used in lieu of walls or to complement walls. It is usually designed to aid humans, either as an optional physical support, or to prevent injury by falling." ;
  rdfs:subClassOf ontobuildingstructure:BuildingStructureComponent .

ontobuildingstructure:hasQuantity a rdf:Property ;
  rdfs:label "has quantity" ;
  rdfs:comment "Links any entity to a specific quantity defined in the OM ontology. This relationship is not intended to be stated explicitly, but inferred from its sub-properties. For application, only the sub-properties are used." ;
  rdfs:range <http://www.ontology-of-units-of-measure.org/resource/om-2/Quantity> .
