@prefix : <https://w3id.org/citydata/part2/v1/> .
@prefix cc: <http://creativecommons.org/ns#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix i72: <https://w3id.org/citydata/21972/v1/> .
@prefix vann: <http://purl.org/vocab/vann/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix cdm1: <https://w3id.org/citydata/part1/v1/> .
@base <https://w3id.org/citydata/part2/v1/> .

<https://w3id.org/citydata/part2/v1/InfrastructurePattern> rdf:type owl:Ontology ;
                                                            owl:imports :ContactPattern ;
                                                            cc:license "http://creativecommons.org/licenses/by/4.0/" ;
                                                            dcterms:creator "Kenneth Vaughn" ,
                                                                            "Mark Fox" ,
                                                                            "Megan Katsumi" ;
                                                            dcterms:modified "2026-02-12"^^xsd:date ;
                                                            dcterms:title "Information technology - City data model - Part 2: City level concepts - Infrastructure pattern" ;
                                                            dcterms:bibliographicCitation "ISO/IEC 5087-2:2024" ;
                                                            vann:preferredNamespacePrefix "cdm2" ;
                                                            vann:preferredNamespaceUri "https://w3id.org/citydata/part2/v1/" ;
                                                            rdfs:seeAlso <https://www.iso.org/standard/80742.html> ;
                                                            rdfs:comment "The prior version of this ontology used a different ontology IRI. This update remains semantically consistent with the version adopted as ISO 5087-2:2024." ;
                                                            owl:priorVersion <https://standards.iso.org/iso-iec/5087/-2/ed-1/en/ontology/Infrastructure/> ;
                                                            owl:versionIRI <https://w3id.org/citydata/part2/v1/InfrastructurePattern/r3.0/> ;
                                                            owl:versionInfo "1.3.0" ;
                                                            skos:definition "This ontology specifies the city-level concepts for the infrastructure pattern of the city data model. The Infrastructure pattern defines the concepts needed to capture various types of city infrastructure, such as buildings and roads. The Infrastructure pattern reuses the Spatial Location pattern (from ISO 5087-1) in order to capture the location of these infrastructure elements." .

#################################################################
#    Classes
#################################################################

###  https://w3id.org/citydata/part2/v1/InfrastructureElement
:InfrastructureElement rdf:type owl:Class ;
                       rdfs:subClassOf :InfrastructureThing ,
                                       [ rdf:type owl:Restriction ;
                                         owl:onProperty :hasAddress ;
                                         owl:allValuesFrom :Address
                                       ] ,
                                       [ rdf:type owl:Restriction ;
                                         owl:onProperty cdm1:hasDescription ;
                                         owl:allValuesFrom xsd:string
                                       ] ,
                                       [ rdf:type owl:Restriction ;
                                         owl:onProperty cdm1:hasIdentifier ;
                                         owl:allValuesFrom xsd:string
                                       ] ,
                                       [ rdf:type owl:Restriction ;
                                         owl:onProperty cdm1:hasLocation ;
                                         owl:allValuesFrom cdm1:Location
                                       ] ,
                                       [ rdf:type owl:Restriction ;
                                         owl:onProperty cdm1:hasName ;
                                         owl:allValuesFrom xsd:string
                                       ] ,
                                       [ rdf:type owl:Restriction ;
                                         owl:onProperty cdm1:hasProperPart ;
                                         owl:allValuesFrom :InfrastructureElement
                                       ] ,
                                       [ rdf:type owl:Restriction ;
                                         owl:onProperty i72:hasValue ;
                                         owl:allValuesFrom cdm1:MonetaryValue
                                       ] ;
                       skos:definition "An Infrastructure Element is a generic representation of a city structure of interest." .


###  https://w3id.org/citydata/part2/v1/InfrastructureThing
:InfrastructureThing rdf:type owl:Class ;
                     rdfs:subClassOf :CityThing ;
                     skos:definition "Added for organizational purposes, to identify classes defined in the Infrastructure pattern." .
