iho-ohi / S-100-Validation-Checks

S-100 Github repository for Validation Check development.
15 stars 2 forks source link

Part 7 - Check for number of patches in a surface #45

Open rmalyankar opened 6 months ago

rmalyankar commented 6 months ago

Part 10a states that "A surface has exactly one exterior boundary..." (10a-7.2.6.1 - Ed. 5.1). Figure 7-3 depicts a GM_Surface as having exactly one surface patch. This is an S-100 restriction of ISO 19107. Clause 7-4.2.13 (GM_Surface) says nothing explicit about the number of patches in a GM_Surface, only that a GM_Surface must be subtyped as GM_Polygon. Clause 7-4.2.5 (GM_Polygon) says nothing explicit about the number of exterior boundaries.

Shall the S-100 level validation checks add a validation check for the number of patches in a surface, based on Figure 7-3? Without a Part 7 check, the responsibility for satisfying the constraint in Figure 7-3 on the number of patches in a surface devolves to the data format.

rmalyankar commented 6 months ago

Discrepancy between Figure 7-3 and clause 7-4.2.14: The figure indicates a GM_SurfaceBoundary has exactly one exterior GM_Ring but clause 7-4.2.14 says "...at least one exterior GM_Ring...".

This hypothetical check is one of those which could be enforced by the data format - see #23.

Recommend it be enforced in the data format checks. The exact formulation for implementation purposes will depend on the data format (ISO 8211 or GML) anyway.

DavidGrant-NIWC commented 6 months ago

Part 10a states that "A surface has exactly one exterior boundary..." (10a-7.2.6.1 - Ed. 5.1). Figure 7-3 depicts a GM_Surface as having exactly one surface patch. This is an S-100 restriction of ISO 19107. Clause 7-4.2.13 (GM_Surface) says nothing explicit about the number of patches in a GM_Surface, only that a GM_Surface must be subtyped as GM_Polygon. Clause 7-4.2.5 (GM_Polygon) says nothing explicit about the number of exterior boundaries.

Shall the S-100 level validation checks add a validation check for the number of patches in a surface, based on Figure 7-3? Without a Part 7 check, the responsibility for satisfying the constraint in Figure 7-3 on the number of patches in a surface devolves to the data format.

S-100 doesn't support GM_Surface, so there is no need for this validation check.

image

DavidGrant-NIWC commented 6 months ago

Discrepancy between Figure 7-3 and clause 7-4.2.14: The figure indicates a GM_SurfaceBoundary has exactly one exterior GM_Ring but clause 7-4.2.14 says "...at least one exterior GM_Ring...".

This hypothetical check is one of those which could be enforced by the data format - see https://github.com/iho-ohi/S-100-Validation-Checks/issues/23.

Recommend it be enforced in the data format checks. The exact formulation for implementation purposes will depend on the data format (ISO 8211 or GML) anyway.

S-100 doesn't support instances of GM_Surface so clause 7-4.2.14 doesn't apply to Figure 7-3; the figure is indicating that because a surface can only be realized via a GM_Polygon there can only be one surface patch and one exterior boundary.

A GM_Polygon has a GM_SurfaceBoundary. It can only contain one exterior ring (or zero if it represents the universe): image