@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/CityPattern> rdf:type owl:Ontology ;
                                                  owl:imports :LandUsePattern ;
                                                  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 - City pattern" ;
                                                  vann:preferredNamespacePrefix "cdm2" ;
                                                  vann:preferredNamespaceUri "https://w3id.org/citydata/part2/v1/" ;
                                                  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/City/> ;
                                                  owl:versionIRI <https://w3id.org/citydata/part2/v1/CityPattern/r3.0/> ;
                                                  owl:versionInfo "1.3.0" ;
                                                  skos:definition "This ontology specifies the city-level concepts for the city pattern of the city data model. The City pattern captures basic information about the geospatial aspects of the city.  In particular it represents the different ways in which the city is administratively divided." .

#################################################################
#    Object Properties
#################################################################

###  https://w3id.org/citydata/part2/v1/CityPatternObjectProperty
:CityPatternObjectProperty rdf:type owl:ObjectProperty ;
                           rdfs:subPropertyOf :CityObjectProperty ;
                           skos:definition "Added for organizational purposes, to identify object properties defined in the City-level CDM ontology." .


###  https://w3id.org/citydata/part2/v1/administrativeArea
:administrativeArea rdf:type owl:ObjectProperty ;
                    rdfs:subPropertyOf :CityPatternObjectProperty ;
                    owl:inverseOf :administrativeAreaOf ;
                    rdfs:domain :JurisdictionalArea ;
                    rdfs:range :JurisdictionalArea ;
                    skos:definition "Identifies administrative areas within the JurisdictionalArea." ;
                    skos:note "Boundaries of an administrative area do not have to be distinct." ,
                              "Jurisdictional areas can have a hierarchy of administrative areas." .


###  https://w3id.org/citydata/part2/v1/administrativeAreaOf
:administrativeAreaOf rdf:type owl:ObjectProperty ;
                      rdfs:subPropertyOf :CityPatternObjectProperty ;
                      skos:definition "Identifies the jurisdictional area that an administrative area belongs to." .


###  https://w3id.org/citydata/part2/v1/residentPopulation
:residentPopulation rdf:type owl:ObjectProperty ;
                    rdfs:subPropertyOf :CityPatternObjectProperty ;
                    rdfs:domain :JurisdictionalArea ;
                    rdfs:range i72:Population ;
                    skos:definition "Number of residents of the area." ;
                    skos:note "This number can be distinct from the population associated with the Land Area that an Administrative Area occupies. The resident population is determined based on the definition of a resident which is often times more specific than an occupant of an area." .


#################################################################
#    Data properties
#################################################################

###  https://w3id.org/citydata/part2/v1/CityPatternDataProperty
:CityPatternDataProperty rdf:type owl:DatatypeProperty ;
                         rdfs:subPropertyOf :CityDataProperty ;
                         skos:definition "Added for organizational purposes, to identify data properties defined in the City-level ontology." .


###  https://w3id.org/citydata/part2/v1/legalName
:legalName rdf:type owl:DatatypeProperty ;
           rdfs:subPropertyOf :CityPatternDataProperty ;
           rdfs:range xsd:string ;
           skos:definition "Identifies the legal name of the domain object." .


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

###  https://w3id.org/citydata/part2/v1/City
:City rdf:type owl:Class ;
      rdfs:subClassOf :JurisdictionalArea ,
                      [ rdf:type owl:Restriction ;
                        owl:onProperty :legalName ;
                        owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
                        owl:onDataRange xsd:string
                      ] ;
      skos:definition "A City is a specialization of a Jurisdictional Area that is formally identified as such." .


###  https://w3id.org/citydata/part2/v1/CityAdministrativeArea
:CityAdministrativeArea rdf:type owl:Class ;
                        rdfs:subClassOf :JurisdictionalArea ,
                                        [ rdf:type owl:Restriction ;
                                          owl:onProperty :administrativeAreaOf ;
                                          owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
                                          owl:onClass :City
                                        ] ;
                        skos:definition "Jurisdictional Area that has been identified for use by a City to reflect its unique areas such as districts, wards, neighbourhoods, or prefectures. " .


###  https://w3id.org/citydata/part2/v1/CityPatternThing
:CityPatternThing rdf:type owl:Class ;
                  rdfs:subClassOf :CityThing ;
                  skos:definition "Added for organizational purposes, to identify classes defined in the City Services part of the City Data Model." .


###  https://w3id.org/citydata/part2/v1/JurisdictionalArea
:JurisdictionalArea rdf:type owl:Class ;
                    rdfs:subClassOf :CityPatternThing ,
                                    [ rdf:type owl:Restriction ;
                                      owl:onProperty :administrativeArea ;
                                      owl:allValuesFrom :JurisdictionalArea
                                    ] ,
                                    [ rdf:type owl:Restriction ;
                                      owl:onProperty :administrativeAreaOf ;
                                      owl:allValuesFrom :JurisdictionalArea
                                    ] ,
                                    [ rdf:type owl:Restriction ;
                                      owl:onProperty :hasLandArea ;
                                      owl:allValuesFrom :LandArea
                                    ] ,
                                    [ rdf:type owl:Restriction ;
                                      owl:onProperty cdm1:hasName ;
                                      owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
                                      owl:onDataRange xsd:string
                                    ] ,
                                    [ rdf:type owl:Restriction ;
                                      owl:onProperty :residentPopulation ;
                                      owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
                                      owl:onClass i72:Population
                                    ] ;
                    skos:definition "A Jurisdictional Area is an abstract entity that is characterized not only by its location, but by the objects that occupy it (persons, buildings, etc), the governing body(s) it is subject to, and the activities that occur within it." .
