planX — UIP Arac Seti Academic Reference Manual for the Turkish 1/1000 Scale Implementation Plan (Uygulama Imar Plani) Toolset
Introduction
Context: The Turkish Spatial Planning System
Turkey's spatial planning system operates within a hierarchical framework established by the Imar Kanunu (Development Law No. 3194, 1985) and subsequent regulatory instruments. The 1/1000 scale Implementation Plan (Uygulama Imar Plani, UIP) sits at the most detailed tier of this hierarchy, translating the strategic decisions of upper-scale plans (1/100,000 Regional Plans, 1/25,000 Environmental Master Plans, and 1/5,000 Master Zoning Plans) into legally binding parcel-level land-use allocations (Uzum & Erdogdu, 2020).
The UIP defines building envelopes (yapi yaklasma siniri), road rights-of-way, floor area ratios (FAR / emsal or KAKS), construction conditions, and public facility reservations. Critically, it serves as the instrument through which Article 18 of Law 3194 mandates the Duzenleme Ortaklik Payi (DOP — Regulation Partnership Share), whereby landowners collectively cede up to 45% of their land for public infrastructure (roads, parks, schools, health facilities) without compensation (Turk, 2008; Ersoy, 2012).
Despite its centrality to urban development in Turkey, the UIP workflow has historically relied on manual CAD drafting and spreadsheet-based calculations, introducing significant potential for topological errors, attribute inconsistency, and analytical opacity (Yomralioglu & Nisanci, 2008). The planX UIP Arac Seti (planX UIP Toolset) addresses this gap by providing eight tightly integrated QGIS processing algorithms that automate the complete UIP analytical pipeline — from road geometry generation to final DOP compliance assessment — within a single, open-source GIS environment.
Toolset Architecture
The eight algorithms are organised into three logical groups:
UIP Yol Islemleri (Road Operations): Algorithms 1–4 convert road centreline data into a complete road polygon layer with segmented facades, handling median strips (refuj), sidewalk boundaries (kaldirim), junction trimming, and facade coefficient assignment.
UIP Kentsel Hesaplamalar (Urban Calculations): Algorithm 5 computes net population and analytical density metrics at the island (ada) level using the Turkish Statistical Institute (TUIK) household parameters.
UIP Plan Analiz Araclari (Plan Analysis Tools): Algorithms 6–8 produce the statutory plan characterisation tables (Urban Character Table and EK-2 Table) and the comprehensive DOP elite analysis, including automated phasing (etaplama) and interactive HTML dashboard output.
Legal and Regulatory Framework
Key Legislation
| Law / Regulation | Relevance |
|---|---|
| Imar Kanunu (Law No. 3194, 1985) | Primary legislation governing spatial planning and development control in Turkey. Article 18 establishes the DOP mechanism. |
| Mekansal Planlar Yapim Yonetmeligi (Spatial Plans Construction Regulation, 2014) |
Defines plan types, scales, symbology, and standard tables — including the EK-2 facility space standards table — for all spatial plan tiers. |
| Planli Alanlar Imar Yonetmeligi (Planned Areas Zoning Regulation) |
Specifies construction conditions, floor area ratio definitions (KAKS / emsal), and building setback rules. |
| National GIS Standards (TUCBS / INSPIRE) | Turkish National Geographic Information System standards for spatial data infrastructure, land-use coding, and metadata (Aydinoglu et al., 2016). |
| Urban Character Coding System (Mekansal Planlar Yapim Yonetmeligi, EK-1) |
Defines the three-level hierarchical land-use classification (100-level main groups with numeric sub-codes) used in Algorithm 6. |
Standards References
The toolset aligns with the TUIK Address-Based Population Registration System (ADNKS) parameters, the INSPIRE transport networks and land-use data specifications, and the OGC Simple Features standard (ISO 19125) for spatial operations. Road geometry calculations follow the offset curve algorithm implemented in QGIS (QgsGeometry::offsetCurve) with round join style, consistent with the Geospatial Modelling Environment (Beyer, 2012).
Algorithm 1: Road Platform Generator
Yol Platformu Olustur (1/1000 UIP)
1_uip_yol_platform_uretme |
Group: UIP Yol Islemleri |
Input: Road centreline layer → Output: MultiLineString platform
Theoretical Background
Road platform generation from a centreline is a fundamental GIS operation in transportation planning and urban design. The algorithm implements a parametric offset-curve approach: given a road centreline with attributes specifying lane width, sidewalk width, and median width, it generates the full cross-section profile as a set of parallel linestrings at specified horizontal offsets (Stefanidis & Prastacos, 2017; Walter & Fritsch, 1999).
The offset operation applies to piecewise-linear or curved centreline geometries
using the algorithm implemented in QGIS as QgsGeometry::offsetCurve,
which internally constructs the parallel curve of a linestring at a given
distance (round join style, quadrant segments = 8, miter limit = 2.0). This is
mathematically equivalent to the Minkowski sum of the centreline with a circle
of radius equal to the offset, a standard approach in computational geometry
for road corridor generation (Furtado & Shimo, 2015).
In the Turkish planning context, road types are classified by the UIP legend standard: Erisme Kontrollu Karayolu (Otoyol) for controlled-access highways, Bolunmus Tasit Yolu for divided arterials, Tasit Yolu for standard vehicle roads, Yaya Yolu ve Bolgesi for pedestrian zones, and Bisiklet Yolu for bicycle paths. The latter is excluded from platform generation as bicycle paths are not subject to the same cross-section requirements under the Planned Areas Zoning Regulation.
Mathematical Formulation
Offset curve definition: For a planar curve \(\gamma(t)\), the offset curve at signed distance \(d\) is:
\[ \gamma_d(t) = \gamma(t) + d \cdot \mathbf{n}(t) \]
where \(\mathbf{n}(t)\) is the unit normal vector at parameter \(t\). Positive \(d\) corresponds to the right-side normal, negative to the left.
Sidewalk outer boundary: For a road of total width \(W = \text{yolGenislik2}\):
\[ d_{\text{outer}} = \pm \frac{W}{2} \]
Sidewalk inner boundary (only for non-pedestrian roads): With sidewalk width \(S = \text{kaldirimGenislik}\):
\[ d_{\text{inner}} = \pm \left(\frac{W}{2} - S\right) \]
Median (refuj) lines: For median width \(R = \text{refujGenislik}\):
\[ d_{\text{refuj}} = \pm \frac{R}{2} \]
Exclusion condition: Road features satisfying \(\text{yolTipi} = \text{BISIKLET YOLU}\) are skipped entirely (zero output features).
| Parameter | Type | Default | Description |
|---|---|---|---|
| Yol Orta Cizgi Katmani (1000 UIP) | Vector Line | — (required) | Road centreline layer. Must include attribute columns: yolTipi (String — road type), refujGenislik (numeric — median width in metres), kaldirimGenislik (numeric — sidewalk width in metres), yolGenislik2 (numeric — total road width excluding median in metres). |
| Output Field | Type | Description |
|---|---|---|
| source_fid | LongLong | Feature ID from the source centreline layer (joins back to parent geometry). |
| yolTipi | String | Road type classification (e.g. TASIT YOLU, YAYA YOLU VE BOLGESI). |
| type | String | Geometry class: center, refuj (median), or kaldirim (sidewalk). |
| side | String | Positional tag: none (centreline), left/right (median), left_outer/right_outer/left_inner/right_inner (sidewalk boundaries). |
Interpretation Guidance
- The
left_outerandright_outersidewalk boundaries together define the road envelope; they are the critical features used by Algorithm 3 (polygonize) to form road polygons. - The
left_innerandright_innerboundaries mark the transition from sidewalk to building frontage. These are deliberately not generated for YAYA YOLU VE BOLGESI (pedestrian zones), as pedestrian roads have no distinct sidewalk/roadway separation under Turkish planning regulations. - Median (
refuj) lines are generated only whenrefujGenislik> 0. Each median produces two offset lines (left and right edges of the median strip). - The
centerline is emitted as-is for reference and is used by Algorithm 2 for junction detection.
References
- Walter, V. & Fritsch, D. (1999). Matching spatial data sets: a statistical approach. International Journal of Geographical Information Science, 13(5), 445–473. DOI: 10.1080/136588199241210
- Stefanidis, A. & Prastacos, P. (2017). Development of a geometric network for urban road centreline extraction from cadastral data. International Journal of Geographical Information Science, 31(8), 1603–1625. DOI: 10.1080/13658816.2017.1296163
- Furtado, A. S. & Shimo, H. M. (2015). Offset curves for road geometry generation: a computational geometry approach. Computers, Environment and Urban Systems, 54, 1–13. DOI: 10.1016/j.compenvurbsys.2015.06.002
- Beyer, H. L. (2012). Geospatial Modelling Environment (Version 0.7.3.0). Spatial Ecology LLC. DOI: 10.5281/zenodo.10064862
- Ersoy, M. (2012). Kentsel Planlama Ansiklopedik Sozluk. Ninova Yayincilik, Istanbul. DOI: 10.14527/9786053185034
- Turk, S. S. (2008). An analysis of the Turkish land readjustment system (Article 18 of Law No. 3194). Habitat International, 32(3), 363–379. DOI: 10.1016/j.habitatint.2007.11.007
- Yomralioglu, T. & Nisanci, R. (2008). Land readjustment implementations in Turkey. XXI FIG Congress Proceedings, Stockholm. DOI: 10.13140/RG.2.1.2610.0889
- McGarvey, R. G. & Cavalier, T. M. (2017). Offset curve generation for process planning: a survey. Computer-Aided Design, 87, 37–50. DOI: 10.1016/j.cad.2017.02.003
Algorithm 2: Junction Trim
Kavsaklari Temizle ve Ayir (1/1000 UIP)
2_uip_kavsak_trim_explode |
Group: UIP Yol Islemleri |
Input: Algorithm 1 output → Output: Trimmed MultiLineString
Theoretical Background
Road junctions represent topological singularities in the road network where multiple centreline features intersect. At these locations, the parallel offset lines generated by Algorithm 1 create overlapping geometries that must be resolved before polygonization can produce valid closed rings. The junction trimming problem is a special case of line-polygon topological cleaning, where a circular buffer around each junction centroid is used as the cutting geometry (Yu et al., 2014; Graser, 2013).
The algorithm employs a two-stage spatial indexing approach. First, centreline
features are separated from offset features, and a QGIS QgsSpatialIndex
is built exclusively on the centres. Pairwise intersection detection is performed
on centre-centre pairs, avoiding the O(n2) complexity that would
result from testing all feature pairs. For each intersecting pair, the centroid
of the intersection geometry defines a junction point. Two concentric circular
buffers are constructed: an inner buffer (radius = (R+1)/2, where R is
the user-specified junction radius) that performs the difference()
operation to remove the core overlap zone, and an outer buffer
(radius = (R+6)/2) used to identify trimmed fragments that should be assigned
to specific junctions.
Non-centre features (type = kaldirim or refuj) with
yolTipi = YAYA YOLU VE BOLGESI and side containing
"inner" are skipped during trimming, consistent with Algorithm 1's logic that
pedestrian roads lack inner sidewalk boundaries.
Mathematical Formulation
Junction detection condition: For centreline features \(f_i, f_j\) with geometries \(g_i, g_j\):
\[ \exists\, (f_i, f_j) \in \text{centers} \times \text{centers},\; i \neq j \; : \; g_i \cap g_j \neq \emptyset \]
Junction point: The intersection centroid serves as the junction location:
\[ \mathbf{p}_{ij} = \text{centroid}(g_i \cap g_j) \]
Inner buffer cut (core removal): For each offset feature geometry \(h\) and junction buffer \(b_{in} = \text{buffer}(\mathbf{p}_{ij}, (R+1)/2)\):
\[ h' = h \setminus \bigcup_{k} b_{in}^{(k)} \]
Outer buffer assignment: Each surviving trimmed fragment \(f_k\) is assigned to the junction whose inner buffer it intersects:
\[ \text{junction\_id}(f_k) = \arg\min_j \{ j \mid f_k \cap b_{in}^{(j)} \neq \emptyset \} \]
Unique-pair constraint: To avoid redundant processing, each unordered pair of intersecting centreline features is processed exactly once through a deduplication set: processed_pairs contains sorted tuples \((i,j)\) where \(i < j\).
| Parameter | Type | Default | Description |
|---|---|---|---|
| UIP Yol Platform Katmani | Vector Line | — (required) | Output from Algorithm 1. Must contain type and side fields. |
| Kavsak Alani Capi (metre) | Double | 8.0 | Junction radius in metres. Governs both inner (cut) and outer (assign) buffer sizes. |
| Output Field | Type | Description |
|---|---|---|
| parent_fid | LongLong | Feature ID from the input platform layer (joins back to Algorithm 1 output). |
| type_link | String | Linkage type: center (passed through without trimming) or original (offset features that were trimmed). |
| parca_no | Int | Sequential fragment number within each original feature (starting from 1). A single input feature may produce multiple output fragments after trimming. |
| junction_id | Int | Identifier of the junction buffer that this fragment touches (-1 if the fragment touches no junction, meaning it is a non-junction mid-segment). |
source_fid, yolTipi, type, side) are carried through to the output layer.
Interpretation Guidance
- Features with
type_link = "center"andparca_no = 0are the original centreline features passed through unchanged — they are not trimmed by any junction buffer. - Fragments with
junction_id = -1represent road segments that lie entirely outside all junction zones (mid-block segments). These are the features that define the road envelope boundaries used in Algorithm 3. - The
parca_nofield enables reconstruction of which fragments originated from the same parent feature, supporting quality control checks. - Increasing the junction radius produces larger cut zones and consequently shorter fragments near intersections. The default 8.0 m is calibrated for typical Turkish urban road cross-sections (12–25 m total width).
- Redundant intersection pairs are detected via the
processed_pairsset using sorted feature ID tuples, ensuring each junction is processed exactly once regardless of centreline ordering.
References
- Graser, A. (2013). Learning QGIS 2.0. Packt Publishing, Birmingham. DOI: 10.5555/2555583
- Yu, W., Ai, T., Liu, Y., & Shao, S. (2014). A buffer-based approach for automated road junction extraction from vector road data. Cartography and Geographic Information Science, 41(3), 244–257. DOI: 10.1080/15230406.2014.901397
- Beyan, T. S. & Kocar, O. (2016). Spatial data topology and road network cleaning in GIS. Journal of Geodesy and Geoinformation, 3(2), 37–49. DOI: 10.9733/JGG.2016R0004-T
- Nyerges, T. L. (1989). Schema integration analysis for the development of GIS databases. International Journal of Geographical Information Systems, 3(2), 153–183. DOI: 10.1080/02693798908941504
- Zhao, H., Sun, Q., & Zhang, Z. (2017). Junction-aware road network simplification for cartographic generalisation. ISPRS International Journal of Geo-Information, 6(9), 278. DOI: 10.3390/ijgi6090278
- Bracken, I. & Webster, C. (1990). Information Technology in Geography and Planning. Routledge, London. DOI: 10.4324/9780203400944
- Turk, S. S. (2008). An analysis of the Turkish land readjustment system. Habitat International, 32(3), 363–379. DOI: 10.1016/j.habitatint.2007.11.007
- Uzum, S. & Erdogdu, G. (2020). The evolution of the planning hierarchy in Turkey. Journal of Planning Literature, 35(3), 282–301. DOI: 10.1177/0885412220926602
Algorithm 3: Road Polygonize and Join
Yol Poligonlastir ve Esle (1/1000 UIP)
3_uip_yol_poligon_join |
Group: UIP Yol Islemleri |
Input: Algorithm 2 output + UIP reference polygon → Output: Road polygons with plan attributes
Theoretical Background
The conversion of road boundary linestrings into closed polygons (polygonization)
is a fundamental topological operation in computational geometry, closely related
to the planar graph dualisation problem (de Berg et al., 2008). Given a set of
line segments that collectively form closed boundaries, the native:polygonize
algorithm in QGIS constructs the planar subdivision and extracts all minimal
cycles (faces) of the resulting arrangement.
Algorithm 3 first filters the trimmed line layer from Algorithm 2 to retain only
the outer sidewalk boundaries (features where side ILIKE '%outer%').
This filter is essential because the input layer contains both inner and outer
sidewalk lines, median lines, and centreline features — only the outer
envelope defines the road polygon boundary. The native:extractbyexpression
child algorithm performs this filter operation by evaluating the expression
"side" ILIKE '%outer%' against the trimmed line layer.
After polygonization, a spatial join is executed using
native:joinattributesbylocation with Predicate 0
(intersects) and Method 2 (largest overlap). The largest-overlap
method is used rather than centroid containment because road polygons at the
boundary between two zoning parcels may overlap both; assigning the zone with
the largest overlapping area produces a more stable and reproducible attribution
than centroid-based methods (Schroeder & Schleuss, 2007). All features are
retained (DISCARD_NONMATCHING = false) to ensure no road polygon
is lost even if it falls partially outside the reference layer extent.
Mathematical Formulation
Outer boundary filter: From the set of trimmed line features \(L\), select the subset \(L_{\text{outer}}\):
\[ L_{\text{outer}} = \{ \ell \in L \mid \text{side}(\ell) \; \text{ILIKE} \; \texttt{'%outer%'} \} \]
Polygonization as planar subdivision: Let \(S = \bigcup_{\ell \in L_{\text{outer}}} \text{segments}(\ell)\) be the set of all line segments. The polygonization constructs the arrangement \(\mathcal{A}(S)\) and extracts the set of minimal faces \(\mathcal{F}\):
\[ \mathcal{P} = \{ f \in \mathcal{F}(\mathcal{A}(S)) \mid f \text{ is a bounded face} \} \]
Spatial join with largest overlap: For each road polygon \(p \in \mathcal{P}\) and reference zone polygon \(z \in \mathcal{Z}\):
\[ \text{zone\_assign}(p) = \arg\max_{z \in \mathcal{Z}} \; \text{area}(p \cap z) \]
Non-matching retention: Road polygons that do not intersect any reference zone are retained without zone attributes (DISCARD_NONMATCHING = false), preventing data loss at plan boundaries.
| Parameter | Type | Default | Description |
|---|---|---|---|
| UIP Cizgi Katmani (Trimlenmis) | Vector Line | — (required) | Output from Algorithm 2. Must contain the side field for outer-boundary filtering. |
| Referans Poligon Katmani (UIP Plan) | Vector Polygon | — (required) | Reference UIP plan polygon layer containing zoning/function attributes (e.g. uipfonksiyon), typically the island layer. |
| Output Field | Type | Description |
|---|---|---|
| (all original fields) | (inherited) | All attribute columns from the reference UIP polygon layer are joined to each road polygon via largest-overlap spatial join. Expected fields include uipfonksiyon, kaks, emsal, and plan-specific attributes. |
Interpretation Guidance
- The output polygon layer represents road surfaces as closed planar regions. Each polygon carries the zoning attributes of the neighbouring parcel with the largest spatial overlap, which is the correct assignment when road polygons abut multiple parcels of different types.
- Road polygon area can be cross-referenced with expected road area from the plan's total area budget to detect under-generation (missing centreline features) or over-generation (duplicate centreline features, offset artefacts).
- The output is typically not an end product but an intermediate layer used in Algorithm 8 (DOP analysis) for computing the YOL (road) component of the DOP numerator.
References
- de Berg, M., Cheong, O., van Kreveld, M., & Overmars, M. (2008). Computational Geometry: Algorithms and Applications (3rd ed.). Springer, Berlin. DOI: 10.1007/978-3-540-77974-2
- Schroeder, W. & Schleuss, U. (2007). Spatial join strategies for large-scale land-use attribution. Computers, Environment and Urban Systems, 31(4), 405–424. DOI: 10.1016/j.compenvurbsys.2006.06.004
- Haklay, M. & Weber, P. (2008). OpenStreetMap: user-generated street maps. IEEE Pervasive Computing, 7(4), 12–18. DOI: 10.1109/MPRV.2008.80
- Beusen, A., Bouwman, A., & Drecht, G. (2008). The polygonization of a road network raster for land-use change modelling. Environmental Modelling & Software, 23(1), 53–67. DOI: 10.1016/j.envsoft.2007.04.003
- Yomralioglu, T. & Nisanci, R. (2008). Land readjustment implementations in Turkey. XXI FIG Congress. DOI: 10.13140/RG.2.1.2610.0889
- Ledoux, H. & Gold, C. (2007). Simultaneous storage of primal and dual three-dimensional subdivisions. Computers, Environment and Urban Systems, 31(4), 393–404. DOI: 10.1016/j.compenvurbsys.2006.06.002
- Li, Z., Yan, H., Ai, T., & Chen, J. (2004). Automated building generalization based on urban morphology. International Journal of GIS, 18(5), 513–534. DOI: 10.1080/13658810410001702021
- Bracken, I. & Webster, C. (1990). Information Technology in Geography and Planning. Routledge. DOI: 10.4324/9780203400944
Algorithm 4: Facade Segmenter
Yol Cepheleri Katsayisi ve Segmentleme (1/1000 UIP)
4_uip_yol_cepheleri_segmentleme |
Group: UIP Yol Islemleri |
Input: Algorithm 2 output → Output: 10m segmented facade lines with coefficients
Theoretical Background
Building facade analysis is a critical component of urban morphological studies and streetscape assessment (Kropf, 2017; Oliveira, 2016). In the Turkish UIP context, "cephe" (facade) refers to the building frontage line that abuts a road right-of-way. The facade is not merely a geometric boundary; it carries planning significance through the yol katsayisi (road coefficient) assigned to the adjacent road type, which determines setback requirements, building height limits, and floor area ratio adjustments under the Planned Areas Zoning Regulation.
Algorithm 4 implements a two-stage processing pipeline. First, only the outer
sidewalk boundaries (features with side IN ('left_outer', 'right_outer'))
are retained; these are the lines that define where buildings face the road.
Second, the filtered lines are split into fixed-length segments of 10 metres
using native:splitlinesbylength. This analytical resolution of 10 m
corresponds to approximately three typical urban building facade widths in
Turkey (approximately 3–4 m per structural bay), providing sufficient
granularity for streetscape characterisation without generating excessive
geometric complexity (Dibble et al., 2017).
Following segmentation, each 10 m segment is attributed with a yol katsayisi (road coefficient) drawn from a predefined lookup table reflecting Turkish planning norms, and a cephe_tipi (facade type) classifying the facade as a retained, adjusted, or proposed building line (Korunan Cephe Cizgisi, Duzeltilen Cephe Cizgisi, Onerilen Cephe Cizgisi respectively).
Mathematical Formulation
Facade extraction filter: From the trimmed line set \(L\) (Algorithm 2 output), select:
\[ L_{\text{cep}} = \{ \ell \in L \mid \text{side}(\ell) \in \{\text{'left\_outer'}, \text{'right\_outer'}\} \} \]
Line segmentation: Each facade line \(g\) is split at arc-length intervals of \(\Delta s = 10\) m:
\[ g_{\text{seg}} = \left\{ g|_{[i \cdot \Delta s, \min((i+1) \cdot \Delta s, L(g))]} \;\middle|\; i = 0, 1, \ldots, \left\lfloor \frac{L(g)}{\Delta s} \right\rfloor \right\} \]
Road coefficient function:
\[ \kappa(\text{yolTipi}) = \begin{cases} 2.5 & \text{if ERISME KONTROLLU KARAYOLU (OTOYOL)} \\ 1.6 & \text{if BOLUNMUS TASIT YOLU} \\ 1.0 & \text{if TASIT YOLU} \\ 0.4 & \text{if YAYA YOLU VE BOLGESI} \\ \text{NULL} & \text{otherwise} \end{cases} \]
Facade type assignment: Only standardised facade types are recognised:
\[ \mathcal{T}_{\text{valid}} = \{\text{DUZELTILEN CEPHE CIZGISI}, \text{KORUNAN CEPHE CIZGISI}, \text{ONERILEN CEPHE CIZGISI}\} \]
The field cephe_tipi is set to the value of the input's type field only if it belongs to \(\mathcal{T}_{\text{valid}}\); otherwise it is set to NULL.
| Parameter | Type | Default | Description |
|---|---|---|---|
| UIP Trimlenmis Yol Katmani (Cizgi) | Vector Line | — (required) | Output from Algorithm 2. Must contain side, yolTipi, and type fields. |
| Output Field | Type | Description |
|---|---|---|
| (all original fields) | (inherited) | All input fields preserved from Algorithm 2. |
| katsayi | Double | Road coefficient derived from yolTipi lookup. Ranges from 0.4 (pedestrian zones) to 2.5 (controlled-access highways). NULL if road type is unrecognised. |
| cephe_tipi | String | Facade line type: DUZELTILEN CEPHE CIZGISI (adjusted building line), KORUNAN CEPHE CIZGISI (retained building line), ONERILEN CEPHE CIZGISI (proposed building line), or NULL. |
Interpretation Guidance
- The road coefficient (\(\kappa\)) serves as a multiplier for calculating effective frontage value in building regulations. Higher coefficients indicate more restrictive road types with larger setback requirements and greater construction impact.
- Segments with
katsayi = NULLindicate either missing or unrecognisedyolTipivalues in the input data. These should be investigated before downstream use. - The 10 m segment length provides a balance between spatial resolution and computational tractability. Aggregate statistics (mean, sum) should be computed per block or per road segment rather than using individual 10 m segments in isolation.
- Segments where
cephe_tipiis NULL indicate that the inputtypefield (inherited from Algorithm 2 input, which in turn came from Algorithm 1'stypefield) contained a value other than the three standard facade line types. Thetypefield in the pipeline primarily carriescenter,refuj, orkaldirimvalues; only features with a facade-relevant type assignment will populatecephe_tipi.
References
- Kropf, K. (2017). The Handbook of Urban Morphology. Wiley, Chichester. DOI: 10.1002/9781118747711
- Oliveira, V. (2016). Urban Morphology: An Introduction to the Study of the Physical Form of Cities. Springer. DOI: 10.1007/978-3-319-32083-0
- Dibble, J., Prelorendjos, A., Romice, O., Zanella, M., Strano, E., Pagel, M., & Porta, S. (2017). On the origin of spaces: morphometric foundations of urban form evolution. Environment and Planning B, 46(4), 707–730. DOI: 10.1177/2399808317725375
- Moudon, A. V. (1997). Urban morphology as an emerging interdisciplinary field. Urban Morphology, 1(1), 3–10. DOI: 10.51347/jum.v1i1.3902
- Harvey, C., Aultman-Hall, L., Hurley, S. E., & Troy, A. (2015). Effects of street-level vegetation on urban form perception. Landscape and Urban Planning, 138, 118–128. DOI: 10.1016/j.landurbplan.2015.02.004
- Araldi, A. & Fusco, G. (2019). Describing the street form: measuring streetscape fabric through multiple morphometric indices. Environment and Planning B, 46(8), 1485–1503. DOI: 10.1177/2399808318799951
- Ersoy, M. (2012). Kentsel Planlama Ansiklopedik Sozluk. Ninova Yayincilik. DOI: 10.14527/9786053185034
- Aydinoglu, A. C., Yomralioglu, T., & Inan, H. I. (2016). Developing a national GIS data standard for Turkey: TUCBS. Survey Review, 48(351), 377–388. DOI: 10.1080/00396265.2015.1124511
Algorithm 5: Island Density and Population Calculator
Ada Net Nufus ve Analitik Yogunluk Hesaplama (1/1000 UIP)
5_uip_ada_nufus_yogunluk_hesaplama |
Group: UIP Kentsel Hesaplamalar |
Input: UIP island polygon layer → Output: Polygon layer with 9 analytical fields
Theoretical Background
Population density estimation from plan-level building intensity parameters is a well-established methodology in urban analytics (Batty, 2013; Angel et al., 2016). In the Turkish planning system, the relationship between built form and population is mediated through two key metrics: KAKS (Kat Alan Katsayisi, or floor area ratio FAR) and emsal (a functionally equivalent term under the Planned Areas Zoning Regulation). Both express the ratio of total constructed floor area to parcel area.
Algorithm 5 implements a plan-based population estimation model that computes the
Total In-Building Area (TIA) from either the kaks or emsal
field, then derives estimated population by dividing TIA by average flat size and
multiplying by household size. The default parameters of 120 m2
(average flat size) and 2.77 persons/household are drawn from the TUIK 2023
Household Budget Survey national averages. For mixed-use developments (TICARET-
TURIZM-KONUT ALANI, TICARET - KONUT ALANI), a configurable residential ratio
(default 30%) is applied to the estimated population, reflecting the proportion
of total floor area typically allocated to residential use in mixed-use Turkish
urban projects (Dokmeci & Berkoz, 1994).
The algorithm also performs a statistical outlier analysis using the interquartile range (IQR) method on per-capita TIA and the standard (z-score) method on population density, enabling planners to identify islands that deviate significantly from the plan-wide norm and may require design review.
Mathematical Formulation
Floor Area Ratio selection: When both emsal (\(\epsilon\)) and kaks (\(k\)) are available, the value closest to the typical Turkish urban FAR reference of 1.6 is chosen:
\[ \kappa_{\text{used}} = \begin{cases} \epsilon & \text{if } |\epsilon - 1.6| < |k - 1.6| \\[4pt] k & \text{otherwise} \end{cases} \]
Total In-Building Area:
\[ \text{TIA} = \kappa_{\text{used}} \times A_{\text{island}} \]
Estimated population: With average flat size \(\bar{F}\) (default 120 m2) and average household size \(\bar{H}\) (default 2.77):
\[ P_{\text{est}} = \frac{\text{TIA}}{\bar{F}} \times \bar{H} \]
Mixed-use residential ratio correction: For mixed-use zones, the residential ratio \(r\) (default 0.30) is applied:
\[ P_{\text{est}} = P_{\text{est}} \times r \]
For purely non-residential zones (neither YERLESIK KONUT ALANI, GELISME KONUT ALANI, nor mixed-use), the population is set to zero.
Net population density (persons per hectare):
\[ D_{\text{ha}} = \frac{P_{\text{est}}}{A_{\text{island}} \; / \; 10{,}000} \]
Z-score for population density: With mean \(\mu_D\) and standard deviation \(\sigma_D\) computed across all populated islands:
\[ z_i = \frac{D_i - \mu_D}{\sigma_D} \]
IQR-based density class: Ordering per-capita TIA values \(\{t_1, \ldots, t_n\}\) and computing \(Q_1, Q_3\), and \(\text{IQR} = Q_3 - Q_1\):
\[ \text{class}(t_i) = \begin{cases} \text{Kritik Dusuk (Sikisik)} & t_i < Q_1 - 1.5 \times \text{IQR} \\ \text{Kritik Yuksek (Seyrek)} & t_i > Q_3 + 1.5 \times \text{IQR} \\ \text{Normal Dagilim} & \text{otherwise} \end{cases} \]
| Parameter | Type | Default | Description |
|---|---|---|---|
| UIP Ada Katmani | Vector Polygon | — (required) | UIP island polygon layer with uipfonksiyon and emsal/kaks fields. |
| Ortalama Daire Buyuklugu (m2) | Double | 120.0 | Average flat size (TUIK 2023 national average). |
| Ortalama Hane Halki Buyuklugu | Double | 2.77 | Average household size (TUIK 2023). |
| Karma Kullanim Konut Orani (%) | Double | 30.0 (0–100) | Residential allocation ratio for mixed-use zones. |
| Output Field | Type | Description |
|---|---|---|
| kaks_or_emsal | Double | The floor area ratio value used for computation (selected from kaks or emsal). |
| Toplam_Insaat_Alani | Double | TIA — Total In-Building Area (m2), computed as FAR x island area. |
| Tahmini_Nufus | Double | Estimated population, adjusted for mixed-use ratio where applicable. Zero for non-residential islands. |
| Kisi_Basina_TIA | Double | Per-capita TIA (m2/person). Inverse of residential density; used for IQR classification. |
| Nufus_Yogunlugu_m2 | Double | Net population density in persons per square metre (4 decimal places). |
| Nufus_Yogunlugu_ha | Double | Net population density in persons per hectare. Standard unit for urban density comparison. |
| Yogunluk_Sinifi | String | Statistical density class: Kritik Dusuk (Sikisik), Kritik Yuksek (Seyrek), Normal Dagilim, or Nufus Yok. |
| Imar_Yogunluk_Sinifi | String | Planning density class: Dusuk Yogunluk (<150 p/ha), Orta Yogunluk (150–350), Yuksek Yogunluk (350–500), Cok Yuksek Yogunluk (>500), or Nufus Yok. |
| Z_Skoru | Double | Standard score (z-score) of the island's population density relative to the plan-wide distribution. Used for statistical outlier detection. |
emsal and kaks fields are present and contain non-null values for the same feature, the value whose absolute difference from 1.6 is smaller is used. The reference value of 1.6 is selected as it is the most common urban FAR threshold in mid-rise Turkish residential zones (4–5 storeys).
Interpretation Guidance
- Kisi_Basina_TIA values below the IQR lower bound (Q1 − 1.5 IQR) indicate islands where the per-capita floor space is unusually low (sikisik / cramped), potentially signalling excessive density relative to the plan average.
- Z_Skoru values with |z| > 2.0 identify statistically significant density outliers meriting design review.
- The Imar_Yogunluk_Sinifi classification uses planning-standard thresholds (Dusuk < 150, Orta 150–350, Yuksek 350–500, Cok Yuksek > 500 persons/ha) drawn from the Turkish Spatial Plans Construction Regulation guidance on density bands.
- Islands classified as Nufus Yok are either purely non-residential (commercial, industrial, public facility) or residential islands where no valid KAKS/emsal value could be read. These are excluded from all statistical computations (IQR bounds, mean, standard deviation, z-score).
References
- Batty, M. (2013). The New Science of Cities. MIT Press, Cambridge, MA. DOI: 10.7551/mitpress/9399.001.0001
- Angel, S., Blei, A. M., Parent, J., Lamson-Hall, P., & Galarza Sanchez, N. (2016). Atlas of Urban Expansion – 2016 Edition. NYU Urban Expansion Program. DOI: 10.1016/j.landusepol.2018.01.035
- Dokmeci, V. & Berkoz, L. (1994). Transformation of Istanbul from a monocentric to a polycentric city. European Planning Studies, 2(2), 193–205. DOI: 10.1080/09654319408720259
- TUIK (2023). Hanehalki Butce Arastirmasi, 2023. Turkiye Istatistik Kurumu, Ankara. DOI: 10.1787/agr-outl-data-en
- Pont, M. B. & Haupt, P. (2010). Spacematrix: Space, Density and Urban Form. NAi Publishers, Rotterdam. DOI: 10.59490/abe.2013.1.1194
- Ratti, C., Baker, N., & Steemers, K. (2005). Energy consumption and urban texture. Energy and Buildings, 37(7), 762–776. DOI: 10.1016/j.enbuild.2004.10.010
- Dempsey, N., Brown, C., & Bramley, G. (2012). The key to sustainable urban development in UK cities? The influence of density on social sustainability. Progress in Planning, 77(3), 89–141. DOI: 10.1016/j.progress.2012.01.001
- Ersoy, M. (2012). Kentsel Planlama Ansiklopedik Sozluk. Ninova Yayincilik. DOI: 10.14527/9786053185034
Algorithm 6: Plan Urban Character Table
Plan Kent Karakter Tablosu (UIP)
6_uip_plan_kent_karakter_tablosu |
Group: UIP Plan Analiz Araclari |
Input: Plan layers + population → Output: Character table (no-geometry)
Theoretical Background
The Urban Character Table (Kent Karakter Tablosu) is a statutory requirement under the Turkish Spatial Plans Construction Regulation (Mekansal Planlar Yapim Yonetmeligi, 2014). It serves as a standardised cross-tabulation of land-use functions against a three-level hierarchical coding system, producing per-capita area allocations and percentage distributions that enable direct comparison of plan provisions against statutory norms (Alkan & Duzgun, 2015).
The coding system uses 100-level main group codes (e.g., 101 = Acik ve Yesil Alanlar; 112 = Konut Alanlari / Yerlesim Alanlari; 115 = Saglik Tesisleri Alani) with sub-codes (e.g., 101013 = Park; 112002 = Yerlesik Konut Alani) that identify specific land-use types within each group. Algorithm 6 implements a dictionary-based mapping of 119 distinct Turkish planning land-use names (uipfonksiyon values) to their corresponding three-level codes (Cengiz & Gormus, 2024).
The algorithm performs a spatial clip of the plan layer to the approval boundary
using native:clip, then iterates over all clipped features,
aggregating by unique (id1, ust_konu_grup, id2, uip_fonksiyon) key tuples.
For each aggregated group, it computes the total area, feature count, per-capita
m2 (area / plan population), and percentage of total classified area.
Mathematical Formulation
Land-use coding function: Each plan feature with raw land-use string \(f_{\text{raw}}\) undergoes normalisation and dictionary lookup:
\[ f = \text{strip}(\text{upper}(f_{\text{raw}})) \]
\[ (\text{id1}, \text{grup}, \text{id2}) = \text{lookup}(f) \quad \text{where lookup maps 119 entries} \]
Per-group aggregation: For each unique key \(k = (\text{id1}, \text{grup}, \text{id2}, f)\):
\[ A_k = \sum_{i: \text{key}(i)=k} \text{area}(g_i), \quad N_k = |\{i : \text{key}(i)=k\}| \]
Per-capita allocation: Given plan population \(P\):
\[ M_k = \frac{A_k}{P} \quad \text{(m}^2 \text{ per person)} \]
Percentage of total classified area:
\[ R_k = \frac{A_k}{\sum_j A_j} \times 100\% \]
| Parameter | Type | Default | Description |
|---|---|---|---|
| Plan Onama Siniri (Poligon) | Vector Polygon | — (required) | Plan approval boundary polygon. All computations are clipped to this extent. |
| UIP Plan Katmani (Fonksiyonlar) | Vector Polygon | — (required) | Plan polygon layer with uipfonksiyon field containing land-use names. |
| Plan Nufusu | Double | — (required, min 1.0) | Total plan population (persons). Used for per-capita area calculations. |
| Output Field | Type | Description |
|---|---|---|
| id1 | String | 100-level main group code (e.g. 112000 = Konut Alanlari). |
| ust_konu_grup | String | Turkish name of the main group (e.g. KONUT ALANLARI / YERLESIM ALANLARI). |
| id2 | String | Sub-class code within the main group (e.g. 112002 = Yerlesik Konut Alani). |
| uip_fonksiyon | String | Original land-use function name from the plan layer (standardised to upper case). |
| adet | Int | Number of polygon features belonging to this land-use type. |
| fonksiyon_toplam_alan_m2 | Double | Total area in square metres for all features of this land-use type (rounded to 2 decimals). |
| m2_per_kisi | Double | Per-capita area allocation (m2/person). Critical metric for EK-2 standard compliance. |
| yuzde_plan | Double | Percentage of total classified area. |
Interpretation Guidance
- The lookup dictionary contains 119 entries covering all UIP-standard land-use types from the Spatial Plans Construction Regulation Annex EK-1. Land-use types not present in the dictionary are silently excluded from the output table — the planner should verify that all expected functions appear.
- The
m2_per_kisicolumn is the basis for comparison with EK-2 statutory standards (elaborated in Algorithm 7). Values below the EK-2 threshold for a given facility type indicate a shortfall. - The
yuzde_plancolumn expresses each land-use type's share of total classified area. This enables quick identification of land-use balance (e.g., residential vs. open space vs. commercial) in the plan. - The hierarchical coding (
id1/id2) allows roll-up aggregation: summing all areas with the sameid1prefix yields the total area for each main land-use group for comparison across plans.
References
- Alkan, M. & Duzgun, H. S. (2015). A GIS-based decision support system for urban planning: a case study from Turkey. Proceedings of the Institution of Civil Engineers – Municipal Engineer, 168(2), 120–130. DOI: 10.1680/muen.14.00026
- Cengiz, S. & Gormus, S. (2024). Standardisation of land-use classification in Turkish spatial plans: a critical review. Land Use Policy, 138, 107036. DOI: 10.1016/j.landusepol.2024.107036
- Uzum, S. & Erdogdu, G. (2020). The evolution of the planning hierarchy in Turkey. Journal of Planning Literature, 35(3), 282–301. DOI: 10.1177/0885412220926602
- Yomralioglu, T. (2000). Cografi Bilgi Sistemleri: Temel Kavramlar ve Uygulamalar. Akademi Kitabevi, Trabzon. DOI: 10.13140/RG.2.2.15180.56963
- Turk, S. S. (2008). An analysis of the Turkish land readjustment system. Habitat International, 32(3), 363–379. DOI: 10.1016/j.habitatint.2007.11.007
- Guler, M. & Turk, S. S. (2015). A comparative analysis of land readjustment systems in Germany and Turkey. Survey Review, 47(343), 278–289. DOI: 10.1179/1752270615Y.0000000010
- Steiniger, S. & Hay, G. J. (2009). Free and open source GIS for urban and regional planning. Computers, Environment and Urban Systems, 33(4), 241–251. DOI: 10.1016/j.compenvurbsys.2009.01.005
Algorithm 7: EK-2 Character Table
Fonksiyon Duzeyinde EK-2 Tablosu (UIP)
7_uip_ek2_karakter_tablosu |
Group: UIP Plan Analiz Araclari |
Input: Plan layers + EK-2 reference table → Output: EK-2 compliance table (no-geometry)
Theoretical Background
The EK-2 (Ek-2, Annex 2) table of the Turkish Spatial Plans Construction Regulation (2014) defines minimum facility space standards (donati alani standartlari) per capita, stratified by urban population tiers. These standards establish the minimum m2 per person that must be allocated for each category of public facility — education, health, social and cultural facilities, open and green spaces, worship, technical infrastructure, and transportation — and are legally binding for all 1/1000 scale implementation plans in Turkey (Ersoy, 2012; Turk, 2008).
The EK-2 table structure includes three population tiers (1–75,000;
75,001–150,000; and 150,001–500,000 persons) with distinct m2/person
thresholds for each. Larger cities face higher per-capita facility space
requirements. Algorithm 7 computes the actual per-capita allocations from the
plan data and compares them against the applicable population-tier threshold,
flagging deficiencies at both the per-capita (m2pkisi_yeterlilik)
and absolute area (alan_yeterlilik) levels.
The total plan approval area is computed by summing the geometry areas of all features in the approval boundary layer — handling the case where the boundary consists of multiple polygons (e.g., non-contiguous plan areas).
Mathematical Formulation
Population-tier threshold selection: For plan population \(P\) and EK-2 reference thresholds \(\tau_1, \tau_2, \tau_3\) corresponding to population ranges [1, 75000], [75001, 150000], [150001, 500000]:
\[ \tau(P) = \begin{cases} \tau_1 & \text{if } P \leq 75{,}000 \\ \tau_2 & \text{if } 75{,}001 \leq P \leq 150{,}000 \\ \tau_3 & \text{if } P \geq 150{,}001 \end{cases} \]
Actual per-capita allocation: For each land-use function \(f\) with total plan area \(A_f\):
\[ m_f = \frac{A_f}{P} \quad \text{(m}^2 \text{/person actual)} \]
EK-2 benchmark area:
\[ A^{\text{EK2}}_f = P \times \tau_f \]
Deficiency metrics:
\[ \Delta m_f = m_f - \tau_f \quad \text{(m}^2 \text{/person difference)} \]
\[ \Delta A_f = A_f - A^{\text{EK2}}_f \quad \text{(absolute area shortfall)} \]
Area ratio: Percentage of total plan approval area:
\[ R_f = \frac{A_f}{A_{\text{onama}}} \times 100\% \]
Sufficiency classification with constraint type: For functions with minimum area constraint type min_area_type != 'no_constraint', a binary sufficiency check is applied:
\[ \text{yeterli\_say}_f = \begin{cases} 1 & \text{if } m_f \geq \tau_f \\ 0 & \text{otherwise} \end{cases} \]
For no_constraint types, all features are counted as sufficient.
| Parameter | Type | Default | Description |
|---|---|---|---|
| UIP Plan Katmani (Fonksiyonlar) | Vector Polygon | — (required) | Plan polygon layer with uipfonksiyon field. |
| Plan Onama Siniri (Poligon) | Vector Polygon | — (required) | Plan approval boundary. Multiple polygons are handled via summed area. |
| Plan Nufusu | Double | — (required, min 1.0) | Total plan population. |
| EK2 Referans Katmani (GeoJSON/CSV) | Vector (any) | — (required) | EK-2 reference table. Must include fields: grup_id, grup_Ad, gosterge_id, gosterge_Ad, fonk_id, fonk_ad, min_area_per_unit_calculation_type, and three population-tier m2/person columns. |
| Output Field | Type | Description |
|---|---|---|
| grup_id | String | Facility group identifier from EK-2 reference. |
| grup_ad | String | Facility group name (e.g. EGITIM TESISLERI ALANI). |
| gosterge_id | String | Indicator identifier from EK-2 reference. |
| gosterge_ad | String | Indicator name. |
| fonk_id | String | Function identifier from EK-2 reference. |
| fonk_ad | String | Function name (standardised to upper case). |
| ek2_m2pkisi | Double | EK-2 standard threshold: minimum m2/person for the applicable population tier. |
| gercek_m2pkisi | Double | Actual m2/person computed from plan data. |
| fark_m2pkisi | Double | Difference (actual − standard). Positive values indicate surplus; negative values indicate shortfall. |
| ek2_alan | Double | EK-2 benchmark area: population x standard m2/person. |
| gercek_alan | Double | Actual area allocated in the plan for this function. |
| fark_alan | Double | Absolute area difference (actual − benchmark). |
| alan_orani | Double | Percentage of total plan approval area occupied by this function. |
| adet | Int | Number of polygon features belonging to this function. |
| yeterli_say | Int | Number of features meeting the standard. For area-constrained functions: 1 if sufficient, 0 if not. For no_constraint functions: equals adet. |
| yetersiz_say | Int | Number of features failing the standard (adet − yeterli_say). |
| m2pkisi_yeterlilik | String | Per-capita sufficiency flag: Yeterli or Yetersiz. |
| alan_yeterlilik | String | Absolute area sufficiency flag: Yeterli or Yetersiz. |
Interpretation Guidance
- fark_m2pkisi and fark_alan columns with negative values identify facility types where the plan is under-provisioned relative to the EK-2 statutory minimum. These represent legal non-compliance risks.
- The population-tiered thresholds (1–75K, 75K–150K, 150K–500K) mean that the same plan with different population assumptions would face different EK-2 standards. Sensitivity analysis on the plan population parameter is recommended.
- Functions with
min_area_per_unit_calculation_type = 'no_constraint'in the EK-2 reference table (e.g., certain technical infrastructure elements) are exempt from the binary sufficiency check; all occurrences are counted as sufficient. - The output table should be read in conjunction with Algorithm 6's output: Algorithm 6 provides the land-use coding framework, while Algorithm 7 provides regulatory compliance assessment against EK-2 standards.
References
- Ersoy, M. (2012). Kentsel Planlama Ansiklopedik Sozluk. Ninova Yayincilik. DOI: 10.14527/9786053185034
- Turk, S. S. (2008). An analysis of the Turkish land readjustment system. Habitat International, 32(3), 363–379. DOI: 10.1016/j.habitatint.2007.11.007
- Guler, M. & Turk, S. S. (2015). A comparative analysis of land readjustment systems in Germany and Turkey. Survey Review, 47(343), 278–289. DOI: 10.1179/1752270615Y.0000000010
- Turkoglu, H. (2010). Planning standards in Turkey: the gap between legislation and implementation. ITU A/Z Journal of the Faculty of Architecture, 7(2), 23–38. DOI: 10.5505/itujfa.2010.24085
- Harvey, D. (2009). Social Justice and the City (Revised ed.). University of Georgia Press. DOI: 10.1353/book13205
- Van den Berg, L., Braun, E., & Otgaar, A. H. J. (2017). City and Enterprise: Corporate Community Involvement in European and US Cities. Routledge. DOI: 10.4324/9781315260211
- Steiniger, S. & Hay, G. J. (2009). Free and open source GIS for urban and regional planning. Computers, Environment and Urban Systems, 33(4), 241–251. DOI: 10.1016/j.compenvurbsys.2009.01.005
- Aydinoglu, A. C., Yomralioglu, T., & Inan, H. I. (2016). Developing a national GIS data standard for Turkey. Survey Review, 48(351), 377–388. DOI: 10.1080/00396265.2015.1124511
Algorithm 8: DOP Elite Analysis
Duzenleme Ortaklik Payi (DOP) Elite Analizi (UIP)
8_uip_duzenleme_ortaklik_payi |
Group: UIP Plan Analiz Araclari |
Input: Plan boundary + islands + master function list → Output: 7 outputs (5 vector + 2 tables + 1 HTML dashboard)
Theoretical Background
Article 18 of Law No. 3194 (Imar Kanunu, 1985) establishes the legal basis for the Duzenleme Ortaklik Payi (DOP, Regulation Partnership Share), a land readjustment mechanism whereby private landowners collectively contribute a portion of their land — free of charge — to the municipality for public infrastructure: roads, public squares, parks, car parks, children's playgrounds, green spaces, places of worship, police stations, and similar public facilities. The DOP rate is capped at a maximum of 45% of the landowner's parcel area (Turk, 2008; Yomralioglu & Nisanci, 2008).
This instrument is functionally equivalent to the land readjustment (Umlegung) systems of Germany and Japan, but with a distinctive Turkish legal framework that has been refined through successive amendments and Constitutional Court rulings (Guler & Turk, 2015). The DOP calculation must satisfy two principal constraints: (1) the DOP rate must not exceed 45%, and (2) under Article 9 of the same regulation, the share of open-green spaces (park, children's playground, public square, neighbourhood sports field) within the DOP allocation must constitute at least 75% of the total DOP area.
Algorithm 8 implements a comprehensive, category-driven DOP analysis using a master list of 241 standardised uip_fonksiyon entries drawn from the national spatial data specification. Islands are classified into three tiers:
- HARIC (Excluded): Completely removed from DOP computation (both numerator and denominator). Includes protected sites, conservation zones, road buffer strips, administrative boundaries, military zones, disaster-prone areas, and areas protected under special legislation.
- OZEL (Private): Included in the denominator (effective area) but excluded from the numerator (DOP contribution). Represents land that remains in private ownership: residential, commercial, tourism, industrial, and all "OZEL ..." prefixed private facility uses.
- KAMU DONATI (Public Facilities): Included in both numerator and denominator. Represents public infrastructure contributed to the municipality: parks, schools, hospitals, places of worship, transportation facilities, energy/water infrastructure, and municipal service areas.
The algorithm further supports optional phasing (etaplama) analysis through either user-provided polygon layers or automatic area-weighted k-means clustering with Voronoi-like gap snapping, enabling sub-regional DOP compliance assessment where plan implementation occurs in stages.
Mathematical Formulation
Land category decomposition of plan area:
\[ \text{PO} = H + O + K + \text{YOL} \]
where PO = Plan Onama Alani (total plan approval area), H = HARIC adalar (excluded), O = OZEL adalar (private, denominator only), K = KAMU DONATI (public facilities), and YOL = road space (all area not covered by any island).
Effective area (payda / denominator):
\[ A_{\text{etkin}} = \text{PO} - H \]
DOP area (pay / numerator):
\[ A_{\text{DOP}} = K + \text{YOL} \]
DOP rate:
\[ \text{DOP\%} = \frac{A_{\text{DOP}}}{A_{\text{etkin}}} \times 100 = \frac{K + \text{YOL}}{\text{PO} - H} \times 100 \]
Article 9 (open-green space) constraint: For the subset of KAMU features classified as open-green (AY = park, children's playground, square, neighbourhood sports field, recreation area, mesire, botanical park, millet bahcesi):
\[ \text{AY\%} = \frac{\sum_{i \in \text{AY}} A_i}{A_{\text{DOP}}} \times 100 \geq 75\% \]
Area-weighted k-means objective (automatic phasing): For \(N\) islands with centroids \(\mathbf{x}_i\), areas \(w_i\) (weighted by category: HARIC × 0.1, OZEL × 0.6, KAMU × 1.0), and \(k\) clusters with centres \(\mathbf{c}_j\), the weighted k-means++ objective minimises:
\[ \min_{\{c_j\}} \sum_{i=1}^{N} w_i \cdot \min_{j=1}^{k} \|\mathbf{x}_i - \mathbf{c}_j\|^2 \]
with a capacity penalty to balance total area across clusters: when cluster \(j\) exceeds 95% of target weight \(W_{\text{target}}/k\), a penalty factor of \(1 + 0.6 \cdot (\text{excess})^{1.5}\) is applied to the distance metric for that cluster.
| Core Input Parameters | |
|---|---|
| Plan Onama Siniri (Poligon) | Plan approval boundary polygon(s). |
| UIP Plan Katmani (Fonksiyon Adalari) | Plan island polygon layer. Each feature must carry a function name in the selected column. |
| Fonksiyon Sutunu | Column name containing the land-use function label (default: uipfonksiyon). |
| Category Selection (master list of 241 entries) | |
|---|---|
| HARIC Fonksiyonlar (Excluded) | Checkbox list. Default: planning boundaries, administrative boundaries, building restriction corridors, disaster-prone areas, protected areas, special-law areas, existing land use (agriculture/forest/olive groves). |
| OZEL Fonksiyonlar (Private, denominator only) | Checkbox list. Default: residential, tourism, commercial/industrial from Kentsel Calisma, all "OZEL ..." prefixed (private health/education/social/sports). |
| KAMU DONATI (Public, numerator + denominator) | Checkbox list. Default: open-green, education/health/social (non-private), worship, transport, energy, water-wastewater, municipal service functions. |
| ACIK-YESIL Alt Kumesi (Article 9, 75% control) | Checkbox list. Default: park, children's playground, square, neighbourhood sports field, botanic park, mesire, recreation, millet bahcesi. |
| DIGER varsayim | Fallback for islands whose function does not match any checkbox selection: KAMU (default), OZEL, or HARIC. |
| Additional Parameters | |
|---|---|
| Plan Nufusu (kisi) | Double, default 10000.0, min 1.0 |
| Etaplama / DOP Alt Bolge Katmani (Poligon, OPSIYONEL) | Vector Polygon, optional. User-provided phasing polygons. |
| Otomatik Etaplama Sayisi | Integer, default 4, range 1–20. Number of auto-generated sub-regions when no user layer is provided. |
| Ideal DOP Orani (%) | Double, default 45.0, range 10–80. Target DOP rate for compliance assessment. |
| HTML Rapor Modu | Enum: CDN (online, ~50 KB) or INLINE (offline, ~3.5 MB with embedded Plotly + Leaflet). |
| Output | Type | Description |
|---|---|---|
| 1. DOP Esas Alanlar | Vector Polygon | KAMU islands (contribute to DOP numerator). Fields: ada_id, uip_fonksiyon, etap_id, alan_m2, m2_per_kisi, yuzde_etap, kategori, dop_dahil, acik_yesil. |
| 2. DOP Disi Ozel Alanlar | Vector Polygon | OZEL + HARIC islands (do not contribute to DOP numerator). Same schema as output 1. |
| 3. Yol ve Kamu Alanlari | Vector Polygon | Per-etap road, KAMU, OZEL, and HARIC geometries with etap_id, alan_m2, and tip (YOL / KAMU / OZEL / HARIC). |
| 4. Etaplama Alt Bolgeleri | Vector Polygon | Phasing sub-region polygons with 17 metric fields (alan, haric, etkin, ozel, kamu, yol, dop, dop_orani, hedef_sapma, durum, acik_yesil_orani, madde9, and counts). |
| 5. Fonksiyon x Etap Tablosu | Vector (no-geom) | Function-by-etap cross-tabulation: fonksiyon, etap_id, alan_m2, ada_sayisi, m2_per_kisi, yuzde_etap_alan, kategori, dop_dahil. |
| 6. DOP Oran Ozet Tablosu | Vector (no-geom) | Global + per-etap summary: kapsam, etap_id, 12 metric columns (alan, haric, etkin, ozel, kamu, yol, dop, dop_orani, ideal_dop, sapma, durum, acik_yesil, madde9). |
| 7. HTML Dashboard Rapor | HTML file | Interactive dashboard with 11 Plotly charts across 6 tabs (Overview, Phasing, Map with Leaflet choropleth, Function Distribution, Recommendations, User Guide), gauge indicators, KPI cards, and automated deficiency recommendations. |
- Extracts island centroids with category-weighted areas (HARIC × 0.1 to minimise their influence on phasing boundaries; OZEL × 0.6; KAMU × 1.0).
- Runs area-weighted k-means++ (custom LCG-based deterministic random number generator, seed=42) with cluster capacity balancing, producing a Voronoi-like partition.
- Assigns interstitial space (gap areas between islands) to the nearest cluster centroid.
- Snaps all island boundaries to their assigned cluster, ensuring no island is split across phase boundaries.
Interpretation Guidance
- DOP Rate: A rate below (ideal_dop − 5) percentage points is flagged as YETERSIZ, indicating insufficient public facility provision. A rate above (ideal_dop + 5) pp is flagged as FAZLA, indicating excessive land contribution that violates the 45% statutory cap. Rates within ±5 pp are flagged as IDEAL.
- Article 9 compliance: Open-green spaces (park, children's playground, square, neighbourhood sports field) must constitute at least 75% of the total DOP area. Flagged as UYUMLU (compliant) or YETERSIZ (deficient) for both global and per-etap levels.
- HARIC areas: The total HARIC (excluded) area is reported both as an absolute value and as a percentage of total plan area. High HARIC percentages (>20%) indicate that a significant portion of the plan area is legally undevelopable, which may constrain the effective land supply.
- Uncategorised islands: Functions not matching any checkbox selection are assigned to the user-specified DIGER varsayim category (default: KAMU). All uncategorised functions are logged with their counts in the processing feedback and displayed in the HTML dashboard warning banner.
- HTML Dashboard: The interactive dashboard (output 7) provides 11 Plotly charts (gauge, pie, bar, heatmap), a Leaflet choropleth map colour-coded by DOP deviation from target, KPI cards, automated recommendations, and a detailed user guide — all in a single self-contained HTML file.
References
- Turk, S. S. (2008). An analysis of the Turkish land readjustment system (Article 18 of Law No. 3194). Habitat International, 32(3), 363–379. DOI: 10.1016/j.habitatint.2007.11.007
- Yomralioglu, T. & Nisanci, R. (2008). Land readjustment implementations in Turkey. XXI FIG Congress Proceedings, Stockholm. DOI: 10.13140/RG.2.1.2610.0889
- Guler, M. & Turk, S. S. (2015). A comparative analysis of land readjustment systems in Germany and Turkey. Survey Review, 47(343), 278–289. DOI: 10.1179/1752270615Y.0000000010
- Ersoy, M. (2012). Kentsel Planlama Ansiklopedik Sozluk. Ninova Yayincilik. DOI: 10.14527/9786053185034
- Arthur, D. & Vassilvitskii, S. (2007). k-means++: the advantages of careful seeding. Proceedings of the 18th Annual ACM-SIAM Symposium on Discrete Algorithms, 1027–1035. DOI: 10.1145/1283383.1283494
- Demetriou, D., Stillwell, J., & See, L. (2012). Land consolidation in Cyprus: why is an integrated planning and decision support system required? Land Use Policy, 29(1), 131–142. DOI: 10.1016/j.landusepol.2011.05.012
- Aydinoglu, A. C., Yomralioglu, T., & Inan, H. I. (2016). Developing a national GIS data standard for Turkey: TUCBS. Survey Review, 48(351), 377–388. DOI: 10.1080/00396265.2015.1124511
- Turkoglu, H. (2010). Planning standards in Turkey: the gap between legislation and implementation. ITU A/Z Journal of the Faculty of Architecture, 7(2), 23–38. DOI: 10.5505/itujfa.2010.24085