Skip to main content

ISO 19107:2019 — Spatial schema

View Markdown versionEdit this page on GitHub

ISO 19107:2019 is the spatial-schema edition selected by the Product Owner for LongitudeOne. The official OGC Abstract Specification catalogue records it as OGC 19-092, Topic 1.0 — ISO 19107:2019 Geographic information — Spatial schema, version 2.0, document type AS (Abstract Specification). The catalogue's document link leads directly to the ISO 19107:2019 record. This identifies the adopted reference; it does not supply its normative clauses.

LongitudeOne uses geometry-family and dimension classifications in its PHP model. The implementation evidence below explains how those classifications are checked; it does not establish compliance with ISO 19107:2019.

Normative reference and accessible scope​

ReferenceEdition or versionSource and accessible evidence
ISO 19107:2019Edition 2, December 2019ISO catalogue: title, publication metadata and abstract
OGC 19-092, Abstract Specification Topic 1.0Version 2.0, ASOGC catalogue: identification and direct ISO link

The OGC catalogue identifies ISO 19107:2019 as its Topic 1.0 reference. No separate OGC publication date, complete OGC 19-092 text or declaration that an independently available OGC text is normatively identical has been verified. The identifier's 19 prefix is not used as evidence of a publication date.

The official ISO catalogue Abstract describes conceptual schemas for spatial characteristics of geographic entities and consistent spatial operations. Its scope includes vector geometry and topology, and access, query, management, processing and exchange of geographic information. It describes applicability normally up to three spatial dimensions, one temporal dimension and spatially dependent parameters, with spatial projections of topological dimension at most three. This is an informative scope summary from the catalogue, not a clause-level statement of dimensional constraints or conformance requirements.

LongitudeOne does not have the budget to acquire the published ISO standards. The official OGC source and selected edition were verified on 2026-10-11; the OGC catalogue links to the ISO record rather than an accessible full text. No complete ISO 19107:2019 or OGC 19-092 normative text has been verified. Consequently, the following remain Not assessed:

  • geometry and topology class definitions and constraints;
  • applicable coordinate and topological dimension requirements;
  • spatial operation contracts and relationships;
  • conformance classes, requirement identifiers, amendments and corrigenda.

These subjects require exact clauses from the selected edition before a direct LongitudeOne comparison can be completed. The reference choice is resolved; access to those clauses remains the evidence gap for Task #65 and Story #61. A complete normative assessment requires that text, or explicit Product Owner acceptance of a reduced assessment scope.

Historical references​

OGC Simple Feature Access 1.2.1, OGC 06-103r4, Introduction, identifies its model as a profile of ISO 19107:2003. Its Annex A describes the correspondence but is informative. The official document remains relevant to the separate Simple Features reference; it does not substitute for ISO 19107:2019.

The project-held ISO/IEC CD 13249-3:201x(E), dated 2009-01-16, cites ISO 19107 without an edition in 2.2 and imports spatial terms in 3.1.3. This is a SQL/MM Committee Draft, not an ISO 19107 draft. See the SQL/MM source record.

How LongitudeOne uses spatial-schema concepts​

Geometry families and implementation availability​

LongitudeOne identifies families with GeometryTypeEnum: Point, curve and surface families, collections and additional model families. Its isInstantiable() classification is checked for every enum case by GeometryTypeEnumTest::testInstantiabilityClassification().

The separate SpatialTypeImplementationStatus::isFullyImplemented() check records class availability.

The SQL/MM reference records the verified SQL/MM comparison for its geometry family.

Geometry dimension and coordinate layouts​

LongitudeOne keeps the geometry's intrinsic dimension separate from the number of coordinate ordinates. TopologicalDimensionEnum distinguishes points (0), curves (1), surfaces (2) and volumes (3), with a separate empty value (-1). GeometryTypeEnum::topologicalDimension() maps families to that classification; mixed collections have no single type-level dimension.

CoordinateDimensionEnum separately describes XY, XYZ, XYM and XYZM layouts. Its tests check ordinate counts, order and Z/M presence. Consequently, an XYZM point remains point-dimensional even though its coordinate has four ordinates. This is LongitudeOne implementation behavior, not a claim that an ISO edition requires these exact PHP enums or the empty sentinel.

TopologicalDimensionEnumTest checks the dimension categories, while GeometryTypeEnumTest checks their family mapping. These tests establish the expected PHP classification. Direct ISO verification would additionally need the selected edition's definitions and applicable object constraints.

LongitudeOne support and assessment limits​

Core denotes Spatial Core 1.3.0, revision 1289582288e8954243de5ccb1f28ab7e78f4e9a4. Types denotes the Spatial Types pre-1.0 development snapshot after 0.0.1-alpha.4, revision ceaee5d142c77fc3922ab50c762fa6648fea0e30. Snapshot findings do not promise released availability. No DBMS scope is assessed.

The supported records describe PHP features only. Their equivalence to individual ISO 19107:2019 requirements remains Not assessed.

FeatureImplementation scopeStatusLimitationsImplementation decisionExtensionsEvidence
Family classificationCoreSupportedPHP metadata onlyExplicit enum casesNot assessedEnum; tests
Dimension distinctionCoreSupportedPHP primitives onlySeparate enumsNot assessedTopology tests; layout tests
Geometry classesTypesPartially supportedSubset belowPHP objectsNot assessedTypes catalogue
ISO conformanceCore and TypesNot assessed2019 clauses unavailableNo blanket claimNot assessedNo direct ISO audit

The Types catalogue documents Point, LineString, Polygon, CircularString, CompoundCurve, Triangle, GeometryCollection, MultiPoint, MultiLineString and MultiPolygon in XY/XYZ/XYM/XYZM, and PolyhedralSurface in XYZ/XYZM. It also identifies unavailable families, including CurvePolygon, MultiCurve, MultiSurface, TIN and BRepSolid. These are implementation gaps in the assessed snapshot, not an inventory of all ISO 19107 requirements.

No LongitudeOne extension to ISO 19107:2019 is asserted: deciding whether a model feature exceeds that edition requires its verified clauses. The OGC 19-092 identification resolves the reference choice but does not complete that assessment.