Geographic information - Schema for coverage geometry and functions - Part 3: Processing fundamentals (ISO 19123-3:2023)

This document defines a coverage processing language for server-side extraction, filtering, processing, analytics, and fusion of multi-dimensional geospatial coverages representing, for example, spatio-temporal sensor, image, simulation, or statistics datacubes. Services implementing this language provide access to original or derived sets of coverage information, in forms that are useful for client-side consumption.
This document relies on the ISO 19123-1 abstract coverage model. In this edition, regular and irregular multi-dimensional grids are supported for axes that can carry spatial, temporal or any other semantics. Future editions will additionally support further axis types as well as further coverage types from ISO 19123-1, specifically, point clouds and meshes.

Geoinformation - Coverage Geometrie- und Funktionsschema - Teil 3: Grundlagen der Verarbeitung (ISO 19123-3:2023)

Information géographique - Schéma de la géométrie et des fonctions de couverture - Partie 3: Titre manque (ISO 19123-3:2023)

Le présent document définit un langage de traitement de couverture pour l'extraction, le filtrage, le traitement, l'analyse et la fusion côté serveur de couvertures géospatiales multidimensionnelles représentant, par exemple, des cubes de données spatio-temporelles de capteurs, d'images, de simulations ou de statistiques. Les services mettant en œuvre ce langage permettent d'accéder à des ensembles originaux ou dérivés d'informations de couverture, sous des formes utiles pour la consommation côté client.
Le présent document s'appuie sur le modèle de couverture abstrait de l'ISO 19123-1. Dans le présent document, les grilles multidimensionnelles régulières et irrégulières sont prises en charge pour des axes qui peuvent avoir une sémantique spatiale, temporelle ou autre. Les éditions suivantes incluront aussi d’autres types d’axes et d’autres types de couvertures provenant de l’ISO 19123-1, spécifiquement, les nuages de points et les maillages.

Geografske informacije - Shema za geometrijo podatkovnega sloja in funkcije - 3. del: Osnove obdelave (ISO 19123-3:2023)

Ta dokument določa jezik obdelave podatkovnega sloja za strežniško pridobivanje, filtriranje, obdelavo,
analitiko in združevanje večdimenzionalnih geoprostorskih podatkovnih slojev, ki na primer predstavljajo prostorsko-
časovne senzorične, slikovne, simulacijske ali statistične podatkovne kocke. Storitve, ki uporabljajo ta jezik, zagotavljajo dostop do izvirnih ali izpeljanih nizov informacij o podatkovnih slojih v oblikah, ki so uporabne za odjemalca.
Ta dokument temelji na abstraktnem modelu podatkovnega sloja iz standarda ISO 19123-1. V tej izdaji so podprte pravilne in nepravilne večdimenzionalne mreže za osi, ki lahko vsebujejo prostorski, časovni ali katerikoli drug pomen.
Prihodnje izdaje bodo dodatno podpirale dodatne vrste osi in dodatne vrste podatkovnih slojev iz standarda ISO 19123-1, zlasti oblake točk in mreže.

General Information

Status
Published
Public Enquiry End Date
14-Mar-2022
Publication Date
04-Oct-2023
Technical Committee
Current Stage
6060 - National Implementation/Publication (Adopted Project)
Start Date
01-Aug-2023
Due Date
06-Oct-2023
Completion Date
05-Oct-2023

Overview

SIST EN ISO 19123-3:2023 (ISO 19123-3:2023) defines a server-side coverage processing language for multi-dimensional geospatial coverages - e.g., spatio‑temporal sensor cubes, imagery, simulation outputs or statistical datacubes. The standard describes processing fundamentals that enable extraction, filtering, analytics, fusion and delivery of original or derived coverage datasets in formats suitable for client consumption. It builds on the abstract coverage model in ISO 19123‑1 and, in this edition, supports regular and irregular multi‑dimensional grids with axes carrying spatial, temporal or other semantics (with point clouds and meshes slated for future editions).

Keywords: ISO 19123-3, coverage processing language, geospatial coverages, datacubes, spatio-temporal, coverage model, server-side processing.

Key topics and technical requirements

  • Coverage model and domain: definitions for coverage identifiers, domain models (direct positions and grids), interpolation and range values/types based on ISO 19123‑1.
  • Coverage processing language: formal syntax and semantics for expressions used to process coverages. Sections define expression styles, operator precedence, evaluation sequencing, and result packaging.
  • Expression categories:
    • Coverage selection and identification: coverageIdExpr, coverageExpr
    • Processing orchestration: processCoveragesExpr, processingExpr
    • Coverage generation and construction: coverageConstructorExpr
    • Extraction and probing: scalarExpr, getComponentExpr, booleanScalarExpr, numericScalarExpr
    • Value transformations: inducedExpr, unary/binary/N‑ary induced operations, trigonometricExpr, scaleExpr
    • Derivation and reprojection: crsTransformExpr
    • Aggregation: condenseExpr, generalCondenseExpr, reduceExpr
    • Encoding/decoding: encodeCoverageExpr, decodeCoverageExpr
  • Conformance and interoperability: rules for testing and conformance (Annex A), normative syntax (Annex B) and informative syntax diagrams and sample service descriptions (Annex C/D).
  • Evaluation response: how servers return evaluation results and handle range type compatibility and extension.

Practical applications

  • Server-side analytics for large spatio‑temporal datacubes (remote sensing, environmental modelling, climate simulations)
  • On‑demand extraction and filtering of imagery and sensor data for visualization and analysis
  • Fusion of heterogeneous coverages (e.g., combining model outputs with observations)
  • Standardized service interfaces for spatial data infrastructures (SDIs), web coverage processing services (WCPS), and cloud geoprocessing platforms

Who should use this standard

  • GIS software vendors and backend service implementers
  • Spatial data infrastructure architects and operators
  • Remote sensing and environmental monitoring teams handling large datacubes
  • Developers building analytics pipelines for sensor networks, simulations and imagery
  • Standards bodies and interoperability test teams

Related standards

  • ISO 19123‑1 (abstract coverage model) - foundational model that ISO 19123‑3 relies on
  • Other ISO/TC 211 standards for geospatial data models and service interfaces

Adopting ISO 19123‑3 helps organizations implement interoperable, standardized server-side coverage processing for scalable, multi-dimensional geospatial analytics.

Standard
SIST EN ISO 19123-3:2023
English language
86 pages
sale 10% off
Preview
sale 10% off
Preview
e-Library read for
1 day

Standards Content (Sample)


SLOVENSKI STANDARD
01-november-2023
Geografske informacije - Shema za geometrijo podatkovnega sloja in funkcije - 3.
del: Osnove obdelave (ISO 19123-3:2023)
Geographic information - Schema for coverage geometry and functions - Part 3:
Processing fundamentals (ISO 19123-3:2023)
Geoinformation - Coverage Geometrie- und Funktionsschema - Teil 3: Grundlagen der
Verarbeitung (ISO 19123-3:2023)
Information géographique - Schéma de la géométrie et des fonctions de couverture -
Partie 3: Titre manque (ISO 19123-3:2023)
Ta slovenski standard je istoveten z: EN ISO 19123-3:2023
ICS:
07.040 Astronomija. Geodezija. Astronomy. Geodesy.
Geografija Geography
35.240.70 Uporabniške rešitve IT v IT applications in science
znanosti
2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.

EN ISO 19123-3
EUROPEAN STANDARD
NORME EUROPÉENNE
July 2023
EUROPÄISCHE NORM
ICS 35.240.70
English Version
Geographic information - Schema for coverage geometry
and functions - Part 3: Processing fundamentals (ISO
19123-3:2023)
Information géographique - Schéma de la géométrie et Geoinformation - Coverage Geometrie- und
des fonctions de couverture - Partie 3: Principes de Funktionsschema - Teil 3: Grundlagen der
base du traitement (ISO 19123-3:2023) Verarbeitung (ISO 19123-3:2023)
This European Standard was approved by CEN on 20 May 2023.

CEN members are bound to comply with the CEN/CENELEC Internal Regulations which stipulate the conditions for giving this
European Standard the status of a national standard without any alteration. Up-to-date lists and bibliographical references
concerning such national standards may be obtained on application to the CEN-CENELEC Management Centre or to any CEN
member.
This European Standard exists in three official versions (English, French, German). A version in any other language made by
translation under the responsibility of a CEN member into its own language and notified to the CEN-CENELEC Management
Centre has the same status as the official versions.

CEN members are the national standards bodies of Austria, Belgium, Bulgaria, Croatia, Cyprus, Czech Republic, Denmark, Estonia,
Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Norway,
Poland, Portugal, Republic of North Macedonia, Romania, Serbia, Slovakia, Slovenia, Spain, Sweden, Switzerland, Türkiye and
United Kingdom.
EUROPEAN COMMITTEE FOR STANDARDIZATION
COMITÉ EUROPÉEN DE NORMALISATION

EUROPÄISCHES KOMITEE FÜR NORMUNG

CEN-CENELEC Management Centre: Rue de la Science 23, B-1040 Brussels
© 2023 CEN All rights of exploitation in any form and by any means reserved Ref. No. EN ISO 19123-3:2023 E
worldwide for CEN national Members.

Contents Page
European foreword . 3

European foreword
This document (EN ISO 19123-3:2023) has been prepared by Technical Committee ISO/TC 211
"Geographic information/Geomatics" in collaboration with Technical Committee CEN/TC 287
“Geographic Information” the secretariat of which is held by BSI.
This European Standard shall be given the status of a national standard, either by publication of an
identical text or by endorsement, at the latest by January 2024, and conflicting national standards shall
be withdrawn at the latest by January 2024.
Attention is drawn to the possibility that some of the elements of this document may be the subject of
patent rights. CEN shall not be held responsible for identifying any or all such patent rights.
Any feedback and questions on this document should be directed to the users’ national standards
body/national committee. A complete listing of these bodies can be found on the CEN website.
According to the CEN-CENELEC Internal Regulations, the national standards organizations of the
following countries are bound to implement this European Standard: Austria, Belgium, Bulgaria,
Croatia, Cyprus, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Iceland,
Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Norway, Poland, Portugal, Republic of
North Macedonia, Romania, Serbia, Slovakia, Slovenia, Spain, Sweden, Switzerland, Türkiye and the
United Kingdom.
Endorsement notice
The text of ISO 19123-3:2023 has been approved by CEN as EN ISO 19123-3:2023 without any
modification.
INTERNATIONAL ISO
STANDARD 19123-3
First edition
2023-06
Geographic information — Schema for
coverage geometry and functions —
Part 3:
Processing fundamentals
Information géographique — Schéma de la géométrie et des fonctions
de couverture —
Partie 3: Principes de base du traitement
Reference number
ISO 19123-3:2023(E)
ISO 19123-3:2023(E)
© ISO 2023
All rights reserved. Unless otherwise specified, or required in the context of its implementation, no part of this publication may
be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting on
the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address below
or ISO’s member body in the country of the requester.
ISO copyright office
CP 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Geneva
Phone: +41 22 749 01 11
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
ii
ISO/FDIS 19123-3:2023(E)
Contents
Foreword . v
Introduction . vi
1 Scope .1
2 Normative references .1
3 Terms and definitions .1
4 Conformance .2
4.1 Notation .2
4.2 Interoperability and conformance testing .2
4.3 Organization .2
5 Coverage model .2
5.1 Overview .2
5.2 Coverage model .2
5.3 Coverage identifier .3
5.4 Domain .4
5.4.1 Direct position .4
5.4.2 Grid .4
5.5 Interpolation .6
5.6 Range values .7
5.7 Range type .7
5.8 Coverage probing functions synopsis .7
6 Coverage processing language .9
6.1 Syntax and Semantics Definition Style .9
6.1.1 Expression Syntax.9
6.1.2 Expression Semantics . 10
6.2 Coverage Processing Expressions . 10
6.2.1 processCoveragesExpr . 10
6.2.2 processingExpr . 12
6.2.3 coverageExpr . 12
6.2.4 coverageIdExpr . 12
6.3 Coverage-Generating Expressions . 13
6.3.1 coverageConstructorExpr . 13
6.3.2 Examples . 16
6.4 Coverage Extraction Expressions. 18
6.4.1 scalarExpr . 18
6.4.2 getComponentExpr . 18
6.4.3 booleanScalarExpr . 19
6.4.4 numericScalarExpr. 19
6.4.5 stringScalarExpr . 20
6.5 Coverage range value-changing expressions. 20
6.5.1 inducedExpr. 20
6.5.2 unaryInducedExpr . 20
6.5.3 trigonometricExpr . 23
6.5.4 binaryInducedExpr . 28
6.5.5 N-ary Induced operations . 30
6.5.6 Coverage Domain-Changing Expressions. 33
6.5.7 scaleExpr . 37
6.6 Coverage Derivation Expressions . 38
6.6.1 crsTransformExpr . 38
ISO/FDIS 19123-3:2023(E)
6.7 Coverage Aggregation Expressions . 39
6.7.1 condenseExpr . 39
6.7.2 generalCondenseExpr . 39
6.7.3 reduceExpr . 42
6.8 Coverage Encode/Decode Expressions . 43
6.8.1 encodeCoverageExpr . 43
6.8.2 decodeCoverageExpr . 44
6.9 Expression evaluation . 45
6.9.1 Evaluation sequence . 45
6.9.2 Nesting . 45
6.9.3 Parentheses . 45
6.9.4 Operator precedence rules . 45
6.9.5 Range type compatibility and extension . 46
6.10 Evaluation response . 46
Annex A (normative) Conformance Tests. 48
Annex B (normative) Expression Syntax . 49
Annex C (informative) Syntax diagrams . 57
Annex D (informative) Sample service descriptions . 74
Bibliography . 77

iv © ISO 2023 – All rights reserved

ISO/FDIS 19123-3:2023(E)
Foreword
ISO (the International Organization for Standardization) is a worldwide federation of national standards
bodies (ISO member bodies). The work of preparing International Standards is normally carried out
through ISO technical committees. Each member body interested in a subject for which a technical
committee has been established has the right to be represented on that committee. International
organizations, governmental and non-governmental, in liaison with ISO, also take part in the work. ISO
collaborates closely with the International Electrotechnical Commission (IEC) on all matters of
electrotechnical standardization.
The procedures used to develop this document and those intended for its further maintenance are
described in the ISO/IEC Directives, Part 1. In particular, the different approval criteria needed for the
different types of ISO document should be noted. This document was drafted in accordance with the
editorial rules of the ISO/IEC Directives, Part 2 (see www.iso.org/directives).
ISO draws attention to the possibility that the implementation of this document may involve the use of
(a) patent(s). ISO takes no position concerning the evidence, validity or applicability of any claimed
patent rights in respect thereof. As of the date of publication of this document, ISO had not received notice
of (a) patent(s) which may be required to implement this document. However, implementers are
cautioned that this may not represent the latest information, which may be obtained from the patent
database available at www.iso.org/patents. ISO shall not be held responsible for identifying any or all
such patent rights.
Any trade name used in this document is information given for the convenience of users and does not
constitute an endorsement.
For an explanation of the voluntary nature of standards, the meaning of ISO specific terms and
expressions related to conformity assessment, as well as information about ISO's adherence to the World
Trade Organization (WTO) principles in the Technical Barriers to Trade (TBT), see
www.iso.org/iso/foreword.html.
This document was prepared by Technical Committee ISO/TC 211, Geographic information/Geomatics, in
collaboration with the European Committee for Standardization (CEN) Technical Committee CEN/TC 287,
Geographic Information, in accordance with the Agreement on technical cooperation between ISO and
CEN (Vienna Agreement), in collaboration with the Open Geospatial Consortium (OGC), and in
collaboration with the IEEE GRSS Earth Science Informatics Technical Committee.
A list of all parts in the ISO 19123 series can be found on the ISO website.
Any feedback or questions on this document should be directed to the user’s national standards body. A
complete listing of these bodies can be found at www.iso.org/members.html.
ISO/FDIS 19123-3:2023(E)
Introduction
This document defines, at a high level, implementation-independent operations on coverages, i.e. digital
representations of space-time varying geographic phenomena, as defined in ISO 19123-1. Specifically,
regular and irregular grid coverages are addressed. The operations can be applied through an expression
language allowing composition of unlimited complexity and combining an unlimited number of coverages
for data fusion.
The language is functionally defined and free of any side effects. Its conceptual foundation relies on only
two constructs: A “coverage constructor” builds a coverage, either from scratch or by deriving it from one
or more other coverages. A “coverage condenser” derives summary information from a coverage by
performing an aggregation such as count, sum, minimum, maximum and average.
The coverage processing language is independent from any request and response encoding, as no
concrete request/response protocol is assumed. Hence, this document does not define a concrete service,
but acts as the foundation for defining service standards functionality. One such standardization target is
[3]
the OGC Web Coverage Service (WCS).
Throughout this document, the following formatting conventions apply.
— Bold-Face in the text, such as processCoveragesExpr, represents syntax elements, normatively
defined in Annex B.
— Text in italics, such as succ(), represents mathematical functions and variables.
— Courier font, such as return and encode(), is used for code in the sense of the coverage processing
language.
vi © ISO 2023 – All rights reserved

FINAL DRAFT INTERNATIONAL STANDARD ISO/FDIS 19123-3:2023(E)

Geographic information — Schema for coverage geometry
and functions —
Part 3:
Processing fundamentals
1 Scope
This document defines a coverage processing language for server-side extraction, filtering, processing,
analytics, and fusion of multi-dimensional geospatial coverages representing, for example, spatio-
temporal sensor, image, simulation, or statistics datacubes. Services implementing this language provide
access to original or derived sets of coverage information, in forms that are useful for client-side
consumption.
This document relies on the ISO 19123-1 abstract coverage model. In this edition, regular and irregular
multi-dimensional grids are supported for axes that can carry spatial, temporal or any other semantics.
Future editions will additionally support further axis types as well as further coverage types from ISO
19123-1, specifically, point clouds and meshes.
2 Normative references
The following documents are referred to in the text in such a way that some or all of their content
constitutes requirements of this document. For dated references, only the edition cited applies. For
undated references, the latest edition of the referenced document (including any amendments) applies.
ISO 19111, Geographic information — Referencing by coordinates
ISO 19123-1, Geographic information — Schema for coverage geometry and functions — Part 1:
Fundamentals
3 Terms and definitions
For the purposes of this document, the terms and definitions given in ISO 19123-1 and the following apply.
ISO and IEC maintain terminology databases for use in standardization at the following addresses:
— ISO Online browsing platform: available at https://www.iso.org/obp
— IEC Electropedia: available at https://www.electropedia.org/
3.1
probing function
function extracting information from the coverage
ISO/FDIS 19123-3:2023(E)
4 Conformance
4.1 Notation
Table 1 lists the other International Standards and packages in which UML classes used in this document
have been defined.
Table 1 — Sources of externally defined UML classes
Prefix International Package
Standard
ISO 19123-1 Coverage Core,
Grid Coverage
4.2 Interoperability and conformance testing
As an abstract standard, this document allows for multiple different implementations and does not define
a standardized interoperable implementation. Rather, standardization targets are specifications of
coverage operations and services which may use this language to describe the semantics of their
operations.
Conformance testing shall be accomplished by validating a candidate concretization against all
requirements by exercising the tests set out in Annex A. As a prerequisite, a candidate shall also pass all
conformance tests of ISO 19123-1 Coverage Core and Grid Coverage.
4.3 Organization
Table 2 provides details of the conformance classes described in this document. The name and contact
information of the maintenance agency for this document can be found at
www.iso.org/maintenance_agencies.
Table 2 — Conformance classes
Conformance class Clause Identifying URL
Coverage Processing 6 https://standards.isotc211.org/19123/-3/1/conf/coverage-processing

5 Coverage model
5.1 Overview
This document defines a language whose expressions accept any number of input coverages (together
with further common inputs like numbers and strings) to generate any number of output coverages or
non-coverage results. Coverages are defined in ISO 19123-1.
5.2 Coverage model
Following the mathematical notion of a function that maps elements of a domain (such as spatio-temporal
coordinates) to a range (such as values of a “pixel”, “voxel”, etc.), a coverage consists of (Figure 1):
— an identifier which uniquely identifies a coverage in some context (here, the context of an
expression);
2 © ISO 2023 – All rights reserved

ISO/FDIS 19123-3:2023(E)
— a domain of coordinate points (expressed in a common Coordinate Reference System, CRS): “where
in the multi-dimensional space can I find values?”;
— a probing function which answers for each coverage coordinate in the domain (“direct position”):
“what is the value here?”;
— a range type: “what do those values mean?”.

Figure 1 — Coverage and GridCoverage (ISO 19123-1)
NOTE 1 Coverage in ISO 19123-1 defines an interface which describes such an object’s behaviour, but does not yet
assume any particular data structure. One interoperable concretization of it is the implementation standard
ISO 19123-2.
"Probing functions” are introduced below. Probing functions extract components from a given coverage.
For every component of a coverage a corresponding probing function exists so that altogether all
properties of a coverage can be retrieved. They serve to define this document’s language semantics.
NOTE 2 In the processing definition of this document, further probing functions, beyond the ISO 19123-1
probing function evaluate(), are used as a concise means to describe all aspects of coverage-valued function results.
5.3 Coverage identifier
Coverages in this document have an identifier which is used in a query to address a coverage to derive
from. Therefore, it is necessary for this identifier to be unique within some context (here: a query). No
assumptions are made on the realization of this identifier. In particular, when the context of the coverage
object changes (such as during delivery to a client) uniqueness is not necessarily guaranteed any longer.
Therefore querying the object in the new context is potentially no longer possible.
NOTE In a concrete service, coverages available would typically be those which are stored on this server, where
access control allows addressing the coverage according to the user sending the request, etc. All these aspects are
out of scope of this document.
ISO/FDIS 19123-3:2023(E)
The corresponding probing function for a coverage C is:
id( C )
5.4 Domain
5.4.1 Direct position
A coverage offers values for positions in its domain. These are called “direct positions”. Further values
can be derived through interpolation, depending on whether and what type of interpolation a coverage
allows.
For some direct position p = (p1,…,pd) from a domain whose d-dimensional CRS contains axes (a1,…,ad),
p[a ] is written for accessing the coordinate tuple component corresponding with axis a :
i i
p[a ] = p
i i
5.4.2 Grid
The domain contains the coordinate tuples describing the coverage’s direct positions, which for the
purpose of this document are on a multi-dimensional grid. Informally, this means that every direct
position inside the grid has exactly one next neighbour in both directions of every axis, except for the rim,
where obviously fewer neighbours are available. Figure 2 shows some regular and irregular grid
examples.
Figure 2 — Sample regular and irregular grid structures (ISO 19123-1)
The grid description depends on the complexity of the grid. As a grid is composed from an ordered
sequence of axes, the resulting complexity is determined by the types of axes (such as integer versus
Latitude versus time) as well as the rules determining the direct positions along these axes. The following
axis types defined in ISO 19123-1 are currently supported by this document:
— a Cartesian (“index”) axis, which just requires lower and upper bound (which are of type integer);
— a regular axis, which can be described by lower and upper bounds together with a constant
distance, the resolution;
— an irregular axis, which has individual distances, described by a sequence of coordinates.
As per ISO 19123-1, the coverage domain with its axes has a single CRS which can serve for geo-
referencing. The definition and interpretation of CRSs is in accordance with ISO 19111.
The CRS of a domain is obtained through function crs(C).
crs(C)
4 © ISO 2023 – All rights reserved

ISO/FDIS 19123-3:2023(E)
Auxiliary probing function axisList()extracts the ordered list of axes (a ,…,a ) from a d-dimensional CRS:
1 d
axisList( crs )
NOTE In accordance with ISO 19123-1, all axis names in such a list are pairwise disjoint so that the names can
act as a unique identifier within their CRS.
Each axis contributes coordinates from a nonempty, totally ordered set of values which can be numeric
or, in the general case, strings (such as “2020-08-05T”).
For a given coverage C, probing function domain() delivers the coverage domain in its CRS:
domain( C )
The domain information describes the coverage’s grid and its extent for each axis:
— the lower and upper bound of the direct positions;
— additionally, the following information:
— for index axes: nothing further;
— for regular axes: the resolution, expressed in the unit of measure (uom) of the axis;
— for irregular axes: the sequence of points.
This information is accessible through extended variants of the abovementioned functions. For some
coverage domain D with axis a, the following expressions return lower and upper bounds, respectively:
domain( C, a ).lo
domain( C, a ).hi
For convenience, a function pair identical in effect but based on the domain is defined:
D[a].lo = domain( C, a ).lo
D[a].hi = domain( C, a ).hi
The grid of the coverage domain is represented implicitly through functions “walking” the grid from one
direct position to one of its neighbours. This is based on the topological structure of a grid where each
direct position has exactly one lower and one higher neighbour along each axis, with the exception of the
domain rims where no such neighbour is available. Therefore, at the rim, these functions are partial.
Let D be given as the domain of coverage C, so that D = domain(C). Let further a be some axis from the
CRS of D. Then, functions pred() and succ() each return a neighbouring direct position for some given
position. Function pred() returns the immediate preceding direct position along axis a, function succ()
returns the immediate succeeding direct position along a. Where there is no such direct position (because
the input position is sitting at the rim of the domain extent) the value is undefined, written as ⊥.
pred( D, a, p ) = x where
if p[a] = D[a].lo domain(C,a).lo then x = ⊥
else x is given by: x[a ] = p[a ] for all a ∈ domain( C ) \ {a}, and x[a] = max( x’ | x’ ∈ domain( C, a )
x x x
and x’ < p[a] )
succ( D, a, p ) = x where
if p[a] = D[a].hi domain(C,a).hi then x = ⊥
ISO/FDIS 19123-3:2023(E)
else x is given by: x[a ] = p[a ] for all a ∈ domain( C ) \ {a}, and x[a] = min( x’ | x’ ∈ domain( C, a )
x x x
and x’ > p[a] )
EXAMPLE In Figure 3, neighbours of p in coverage domain D with axes x and y can be reached as follows:
a = succ( D, y, pred( D, x, p ) ) = pred( D, x, succ( D, y, p ) )
b = succ( D, y, p )
c = succ( D, y, succ( D, x, p ) ) = succ( D, x, succ( D, y, p ) )
d = pred( D, x, p )
e = succ( D, x, p )
f = pred( D, x, pred( D, y, p ) ) = pred( D, y, pred( D, x, p ) )
g = pred( D, y, p )
h = succ( D, x, pred( D, y, p ) ) = pred( D, y, succ( D, x, p ) )
In this document, for the user’s convenience, basic arithmetic functions are assumed on this grid navigation:

Figure 3 — Sample grid neighbourhood
5.5 Interpolation
In ISO 19123-1 a coverage contains an indication on possible interpolation between direct positions. Such
interpolation can be set for all axes in a coverages simultaneously or, following a more fine-grain
approach, individually per axis.
NOTE 1 In ISO 19123-1 every coverage has exactly one associated interpolation method (for all axes or per axis).
In practice, coverages can allow users to pick one of several interpolation methods, such as with imagery where
linear, quadratic and cubic interpolation are applicable on principle, and users can choose any one of those.
Conceptually, however, two coverages differing only in the interpolation methods are distinct as they will deliver
identical range values on their direct positions, but differing values inbetween those. At the abstract level of
ISO 19123-1 and ISO 19123-3, this ambiguity is not desirable.
For the purpose of this document a special interpolation method none is assumed as defined, for example,
in ISO 19123-1:2023, Annex B. None indicates that no interpolation is possible along the axis under
consideration.
NOTE 2 The interpolation method none is different from nearest-neighbor: An interpolation of nearest-
neighbor provides values inbetween direct positions which are derived from the closest direct position.
Interpolation none means that no values are provided between direct positions. In other words: the evaluation
function is undefined on any non-direct position and will in practice result in an exception.
Function interpolation(C,a) returns the interpolation method applicable on each axis of coverage C, in
order of the CRS axis sequence. For dimension(C)=d the probing function delivers interpolation method
list (m ,…,m ) with interpolation method m applying to axis number i:
1 d i
6 © ISO 2023 – All rights reserved

ISO/FDIS 19123-3:2023(E)
interpolation(C)
This function is overloaded to extract the interpolation method associated with axis a of C:
interpolation(C, a)
NOTE 3 Interpolation is particularly relevant with functions scale() and project().
5.6 Range values
The range value at a direct position p can be obtained with function evaluate (p) which, for a given
C
coverage C, returns the value associated with p∈domain(C) expressed in the coverage’s CRS.
The corresponding probing function is:
value( C, p ) = evaluate ( p ) for some direct position p∈domain( C )
C
Interpolation guides whether the value() function is defined on coordinates outside the set of direct
positions, and how this value is determined from the values available at the direct positions.
NOTE The range value set can contain one or more null values, as determined by the range type. This document
does not make any assumption on this.
5.7 Range type
A coverage’s range type description can be obtained through probing function rangeType() which
delivers a set of tuples containing at least field names and field type:
rangeType( C )
This function gets overloaded to obtain the coverage range type of a particular range field component f:
rangeType( C, f )
For the purpose of this document, only the common programming language data types are considered,
and only on a high, abstract level. These are Boolean, integer, float and complex, as well as records over
those assumed to be available. However, an implementation specification based on this document may
add its own data types as long as these are coherent with this document overall.
NOTE The concrete range types available in coverage processing are determined by concretizations of this
document. Typically, the standard programming language data types will be available, such as (unsigned) short, int,
and long, as well as float and double. For example, the range type (aka pixel) of an 8-bit RGB image normally is given
by the triple < red: unsigned char; green: unsigned char; blue: unsigned char>. Further, a concretization can add
more information such as null values, accuracy, etc.
5.8 Coverage probing functions synopsis
Requirement 1 https://standards.isotc211.org/19123/-3/1/req/core/probingFunctions
The semantics of the probing functions used for the ISO 19123-1 language semantics definition shall be
given by Table 3.
Table 3 —Coverage probing functions synopsis
ISO/FDIS 19123-3:2023(E)
Coverage Probing function Comment
characteristic for a coverage C,
based on ISO 19123-1
Coverage identifier id( C ) Identifier of the coverage.
Coverage CRS crs( C ) CRS of the coverage.
= crs ( domain( C ) )
as per ISO 19123-1
CRS axis list List of all axis names of the CRS, in
axisList( c )
proper sequence.
= (a ,…,a ) for some d-dimensional CRS c
1 d
establishing this axis sequence
Domain extent of domain( C ) Extent of the coverage in CRS
coverage coordinates.
domain( C, a )
= domain extent along axis a
domain( C, a ).lo
= lower bound of domain extent along axis
a
domain( C, a ).hi
= upper bound of domain extent along axis
a
Grid neighbour pred( C, a, p ) These functions allow to traverse a grid
in steps relative to some given position,
succ( C, a, p )
such as for convolution operations and,
generally, Tomlin’s non-local
as defined in 5.4.2
operations.
Range type rangeType( C ) The range type record is described by a
list describing its components in
rangeType( C, f )
sequence; for the purpose of this
= t where (f:t,.) ∈rangeType( C )
document only component name and its
data type are considered.
Range field name list rangeFieldNames( C ) Ordered list of all the coverage’s range
fields names and their data types;
= (f1, …, fn) where
possible further constituents in a record
rangeType( C) = ( (f ;t ,…), …, (f :t ,…) ),
1 1 n n
component are ignored in this
with field names f and types t
i i
document, their values are to be defined
elsewhere (e.g. implementation
dependent).
Range values value(C,p) Range values of the coverage at a direct
position (or some position inbetween,
= evaluate (p),p∈domain(C)
C
interpolation permitting).
with evaluate() as per 19123-1
8 © ISO 2023 – All rights reserved

ISO/FDIS 19123-3:2023(E)
Coverage Probing function Comment
characteristic for a coverage C,
based on ISO 19123-1
Interpolation interpolation( C ) List of the interpolation method allowed
as per ISO 19123-1 per axis, in axis order; in case the
coverage has only one interpolation
interpolation( C, a )
defined for all axes, this method is
= interpolation method of axis a
multiplied into all positions of the
output list.
Interpolation associated with a
particular axis.
6 Coverage processing language
This clause establishes the conformance class Coverage Processing.
This coverage processing language defines expressions on coverages which evaluate to ordered lists of
either coverages or scalars (whereby “scalar” here is used as a summary term of all data structures that
are not coverages). In the remainder of this document, the terms processing expression and query are used
interchangeably.
A coverage processing expression consists of a processCoveragesExpr (see 6.2). Each International
Standard claiming to support this document shall provide the coverage processing operations as
specified in the following subclauses. A sample application is provided in Annex D.
NOTE 1 This language has been designed to be “safe in evaluation”, i.e. implementations are possible where any
valid request can be evaluated in a finite number of steps, based on the operation primitives. Hence, services based
on the language constructs can be built in a way that no single request can render the service permanently
unavailable. This notwithstanding, it still is possible to send requests that will impose high workload on a server.
NOTE 2 Data items within a query result list can be heterogeneous in size and structure. In particular, the
coverages within an evaluation result list can have different dimensions, domains, range types, etc. However, a
result list always consists of either coverages or scalar values, not a mix of both.
6.1 Syntax and Semantics Definition Style
6.1.1 Expression Syntax
The language primitives plus the nesting capabilities form an expression language which is independent
from any specific encoding and service protocol. Collectively it is referred to as the coverage processing
language. In the following subclauses, the language elements are detailed. The complete syntax is listed
in Annex B.
A coverage processing expression is called admissible if and only if it adheres to the syntax of the
language definition of this document.
Requirement 2 https://standards.isotc211.org/19123/-3/1/req/core/syntax
Coverage processing expressions shall adhere to the syntax definition of Annex B.
NOTE A railroad diagram of the syntax in Annex B is provided in Annex C for visualization of the grammar.
EXAMPLE The coverage expression fragment $c * 2is admissible as it adheres to language syntax whereas
abc seen as a coverage expression violates the syntax and, hence, is not admissible.
ISO/FDIS 19123-3:2023(E)
6.1.2 Expression Semantics
The semantics of a coverage processing expression is defined recursively by indicating, for all admissible
expressions, the semantics. An expression is valid if and only if it is admissible and complies with all rules
imposed by the language semantics.
Requirement 3 https://standards.isotc211.org/19123/-3/1/req/core/semantics
Coverage processing expressions shall adhere to all semantics rules of this document.
EXAMPLE The following coverage expression is valid if and only if the coverage bound to variable $c has a
numeric range component named red.
$c.red * 2.5
NOTE In the remainder of this clause, tables are used to describe the effect of an operation on each coverage
constituent.
The semantics of coverage processing expressions is defined via so-called probing functions which extract
information from a coverage.
6.2 Coverage Processing Expressions
6.2.1 processCoveragesExpr
A processCoveragesExpr element processes a list of coverages in turn. Each coverage is optionally
checked first for fulfilling some predicate, and gets selected, i.e. contributes to an element of the result
list, only if the predicate evaluates to true. Each coverage selected will be processed, and the result will
be appended to the result list. This result list, finally, is returned as the ProcessCoverages response unless
any exception was generated.
Requirement 4 https://standards.isotc211.org/19
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.

Loading comments...

Frequently Asked Questions

SIST EN ISO 19123-3:2023 is a standard published by the Slovenian Institute for Standardization (SIST). Its full title is "Geographic information - Schema for coverage geometry and functions - Part 3: Processing fundamentals (ISO 19123-3:2023)". This standard covers: This document defines a coverage processing language for server-side extraction, filtering, processing, analytics, and fusion of multi-dimensional geospatial coverages representing, for example, spatio-temporal sensor, image, simulation, or statistics datacubes. Services implementing this language provide access to original or derived sets of coverage information, in forms that are useful for client-side consumption. This document relies on the ISO 19123-1 abstract coverage model. In this edition, regular and irregular multi-dimensional grids are supported for axes that can carry spatial, temporal or any other semantics. Future editions will additionally support further axis types as well as further coverage types from ISO 19123-1, specifically, point clouds and meshes.

This document defines a coverage processing language for server-side extraction, filtering, processing, analytics, and fusion of multi-dimensional geospatial coverages representing, for example, spatio-temporal sensor, image, simulation, or statistics datacubes. Services implementing this language provide access to original or derived sets of coverage information, in forms that are useful for client-side consumption. This document relies on the ISO 19123-1 abstract coverage model. In this edition, regular and irregular multi-dimensional grids are supported for axes that can carry spatial, temporal or any other semantics. Future editions will additionally support further axis types as well as further coverage types from ISO 19123-1, specifically, point clouds and meshes.

SIST EN ISO 19123-3:2023 is classified under the following ICS (International Classification for Standards) categories: 07.040 - Astronomy. Geodesy. Geography; 35.240.70 - IT applications in science. The ICS classification helps identify the subject area and facilitates finding related standards.

You can purchase SIST EN ISO 19123-3:2023 directly from iTeh Standards. The document is available in PDF format and is delivered instantly after payment. Add the standard to your cart and complete the secure checkout process. iTeh Standards is an authorized distributor of SIST standards.

The SIST EN ISO 19123-3:2023 standard presents a comprehensive framework for a coverage processing language, which is essential for effective server-side operations involving geospatial data. The scope of this standard is extensive, targeting the extraction, filtering, processing, analytics, and fusion of multi-dimensional geospatial coverages. It is particularly relevant for applications that deal with spatio-temporal sensors, imaging, simulations, or statistical data cubes. This structured approach allows for the sophisticated handling of complex data sets, making it an invaluable resource for developers and data scientists working within the geospatial information domain. One of the key strengths of this standard lies in its reliance on the ISO 19123-1 abstract coverage model, which ensures consistency and interoperability across various geospatial applications. By supporting both regular and irregular multi-dimensional grids, the standard accommodates a wider range of geospatial data types, making it adaptable to different needs and technologies involved in the analytics process. The inclusion of axes that represent spatial, temporal, or other semantics further enhances its applicability, facilitating seamless integration with existing datasets. Moreover, the document's commitment to evolving its support for future axis types and coverage types, such as point clouds and meshes, emphasizes its forward-thinking approach. This adaptability positions SIST EN ISO 19123-3:2023 as a relevant standard not just for the current landscape, but also for emerging trends and technologies in geospatial data processing. The ability to provide both original and derived sets of coverage information ensures that users can maximize data utility, which is essential in a rapidly evolving digital environment. In summary, the SIST EN ISO 19123-3:2023 standard is a significant step forward in the standardization of coverage geometry and functions. Its strengths lie in its comprehensive scope, alignment with prior established models, and its proactive approach to future developments, making it a crucial reference for those engaged in geospatial information and related fields.

La norme SIST EN ISO 19123-3:2023 définit un langage de traitement des couvertures, essentiel pour l'extraction, le filtrage, le traitement, l'analyse et la fusion de couvertures géospatiales multidimensionnelles. Ces couvertures peuvent représenter des données spatio-temporelles provenant de capteurs, d'images, de simulations ou de cubes de données statistiques. Grâce à cette norme, les services sont en mesure d'offrir un accès à des ensembles d'informations de couverture, qu'il s'agisse de données originales ou dérivées, présentées sous des formes adaptées à la consommation côté client. Un des principaux atouts de cette norme réside dans sa base sur le modèle de couverture abstrait de l'ISO 19123-1, ce qui lui confère une grande compatibilité et une intégration facile avec d'autres standards déjà établis. De plus, la norme prend en charge des grilles multidimensionnelles à la fois régulières et irrégulières, permettant l'utilisation d'axes porteurs de sémantiques spatiales, temporelles ou d'autres types. Cela élargit considérablement le champ d'application et la flexibilité du traitement des données géospatiales. La pertinence de la norme SIST EN ISO 19123-3:2023 est accentuée par son orientation vers l'avenir. Les futures éditions prévues devraient supporter encore plus de types d'axes, ainsi que des types de couverture comme les nuages de points et les maillages, issus de l'ISO 19123-1. Cela montre une clairvoyance dans le développement de la norme, afin de répondre aux évolutions et aux besoins croissants du secteur de l'information géographique. En résumé, le document SIST EN ISO 19123-3:2023 pose des fondations solides pour le traitement des couvertures géospatiales, favorisant une meilleure accessibilité et une utilisation optimisée des données à travers divers services. Son développement continu promet de renforcer son application dans la communauté géospatiale.

SIST EN ISO 19123-3:2023は、地理情報に関する標準であり、特にカバレッジの処理の基礎を定義する文書です。この標準の主な範囲は、サーバーサイドでのマルチ次元ジオスペーシャルカバレッジの抽出、フィルタリング、処理、分析、および融合に関連するカバレッジ処理言語を確立することにあります。このカバレッジは、時空間センサー、画像、シミュレーション、または統計データキューブなどの形式で表現されます。 このドキュメントは、ISO 19123-1の抽象的カバレッジモデルに依存しており、今版では空間的、時間的、またはその他の意味を持つことができる軸のために、正規および不規則な多次元グリッドをサポートしています。今後の版では、さらなる軸の種類やISO 19123-1からのカバレッジの種類、特に点群やメッシュもサポートされる予定です。 この標準の強みは、クライアントサイドでの消費に便利な形式での元または派生したカバレッジ情報へのアクセスを提供するサービスの実装にあります。これにより、ユーザーは多様なデータソースから価値ある情報を効果的に取得できるようになります。また、マルチ次元データの処理に特化しているため、広範な用途に対応できる柔軟性も持っています。 SIST EN ISO 19123-3:2023の関連性は、現代のデジタルデータ環境において、地理情報を活用した高度な解析や意思決定を促進する点にあります。したがって、この標準は、データ処理や解析を行う技術者や研究者にとって、極めて重要な参照基準となるでしょう。

Die Norm SIST EN ISO 19123-3:2023 bietet eine detaillierte Definition einer Coverage-Verarbeitungssprache, die speziell für die serverseitige Extraktion, Filterung, Verarbeitung, Analyse und Fusion von mehrdimensionalen geospatialen Abdeckungen konzipiert ist. Diese geospatialen Abdeckungen können verschiedene Datenarten repräsentieren, darunter spatio-temporale Sensoren, Bilder, Simulationen oder statistische Datacubes, was die Norm äußerst relevant für moderne Anwendungen im Bereich der Geoinformation und Datenanalyse macht. Ein herausragendes Merkmal dieser Norm ist die Unterstützung sowohl regularer als auch irregularer mehrdimensionaler Raster, die es ermöglichen, räumliche, zeitliche oder andere Semantiken zu tragen. Durch die Berücksichtigung dieser unterschiedlichen Grid-Typen erweitert die Norm den Anwendungsspielraum für Fachleute, die mit komplexen Datensätzen arbeiten. Dies verbessert nicht nur die Flexibilität, sondern auch die Effizienz von geospatialen Analysen erheblich. Ein weiterer starker Punkt der SIST EN ISO 19123-3:2023 ist ihre Abhängigkeit vom ISO 19123-1 abstrakten Coverage-Modell, welches eine solide Grundlage für die Definition und Anwendung der neuen Coverage-Verarbeitungssprache bietet. Die Norm ist auch zukunftsweisend, da sie in künftigen Ausgaben zusätzliche Achsentypen sowie weitere Coverage-Typen, wie Punktwolken und Netze, unterstützen wird. Dies zeigt, dass die Norm proaktiv auf die Weiterentwicklungen in der Geoinformationswissenschaft reagiert. Die Relevanz der Norm erstreckt sich über verschiedene Anwendungsbereiche, da sie eine strukturierte Methode zur Verarbeitung von geospatialen Daten bereitstellt, die für viele Branchen von Bedeutung sind, einschließlich Umweltwissenschaften, meteorologischer Analysen, Smart City Entwicklungen und vielen weiteren Bereichen, in denen präzise räumliche Informationen benötigt werden. Die Norm leistet somit einen bedeutenden Beitrag zur Standardisierung von Prozessen in der Geoinformationsverarbeitung und bietet eine wertvolle Ressource für Entwickler und Fachleute, die Geodaten effektiv nutzen möchten.

SIST EN ISO 19123-3:2023 표준은 지리 정보 분야에서 커버리지 기하학 및 함수의 스키마에 관해 매우 중요한 역할을 하며, 그 핵심 내용은 커버리지 처리 언어를 정의하는 것입니다. 이 문서는 서버 측에서 다차원 지리공간 커버리지를 추출, 필터링, 처리, 분석 및 융합하는 과정에 필요한 기본 원칙을 제공합니다. 이러한 지리공간 커버리지는 시공간 센서, 이미지, 시뮬레이션 또는 통계 데이터 큐브와 같은 다양한 자료를 포함할 수 있습니다. 주요 강점으로는, 이 표준이 원래 또는 유도된 커버리지 정보를 클라이언트 측에서 소비하는 데 유용한 형태로 제공하는 서비스를 구현하는 데 중점을 둔다는 점입니다. 이러한 접근 방식은 사용자들에게 직관적이고 효율적인 지리 정보 활용을 가능하게 하여, 실제 활용에 있어 큰 장점을 제공합니다. 또한, SIST EN ISO 19123-3:2023는 ISO 19123-1 추상 커버리지 모델에 기반해 있으며, 정규 및 비정규 다차원 그리드를 지원하여 공간적, 시간적 또는 기타 의미론을 가진 축을 유연하게 처리할 수 있는 점도 큰 장점입니다. 앞으로의 판에서는 추가적인 축 유형과 ISO 19123-1의 포인트 클라우드 및 메쉬와 같은 커버리지 유형도 지원할 예정이어서, 표준의 적용 범위는 더욱 넓어질 것입니다. 이 표준의 중요성은 단순히 기술적 규정에 그치지 않고, 다양한 분야에서 지리 정보를 보다 효율적으로 처리하고 활용할 수 있는 기반을 제공하는 데 있습니다. 따라서 SIST EN ISO 19123-3:2023는 현대의 지리 정보 처리 시스템에 필수적인 표준으로 자리 잡을 것입니다.