Skip to main content
v2026.11,858 entries · CC-BY 4.0
LAC HealthMedical & Research SuppliesReagents, PPE & instruments — chain-of-custody documented.Fast, traceable sourcing built for regulated research environments, from bench consumables to instrumentation.Shop lac.us CodeCASRAIlac.us

Geoportal: SDI Architecture, Metrics and Guide

A comprehensive guide to geoportals in spatial data infrastructure: standards, metadata completeness formulas, spatial IoU overlap, and service uptime.

Written and maintained by CASRAI Editorial Board

Last updated

A geoportal is a centralized, web-based gateway that enables researchers, geospatial analysts, and data managers to discover, view, query, and access geospatial datasets and cartographic web services across a Spatial Data Infrastructure (SDI). In geographic information science and research data management, geoportals operate as the discovery tier of distributed geospatial architectures, federating metadata compliant with ISO 19115 standards and executing query protocols defined by the Open Geospatial Consortium (OGC), including Catalogue Services for the Web (CSW) and OGC API – Records.

Definition in one paragraph

A geoportal is a web-based catalog application and discovery gateway that provides an authoritative, single point of access to query, evaluate, visualize, and retrieve spatial datasets and services organized within a Spatial Data Infrastructure. Built upon international standards such as ISO 19115-1:2014 for geographic metadata and OGC Catalogue Services, a geoportal harvests and indexes structured metadata from distributed repositories, enabling spatial, temporal, and thematic querying without requiring users to download massive raw GIS archives or maintain local server infrastructure. In academic and institutional workflows, geoportals integrate heterogeneous spatial assets—such as topographic lidar elevation models from OpenTopography, climate datasets following CF Conventions, cadastral surveys, and municipal planning boundaries—bridging enterprise platforms like ArcGIS Hub with cross-domain data catalog profiles such as DCAT-AP.

Formula and mathematical foundations

Evaluating the indexing quality, query precision, and operational reliability of a geoportal relies on three primary quantitative metrics: the Metadata Completeness Index (MCI), spatial bounding box Intersection over Union (IoU), and network service availability.

1. Metadata Completeness Index (MCI): The completeness of a single catalog record across K mandatory ISO 19115 / INSPIRE metadata elements is defined as:

MCI = (1 / K) × ∑k=1K mk × 100%

where K is the total number of mandatory elements evaluated (e.g., K = 10: Resource Title, Abstract, Resource Type, Locator URL, Unique Identifier, Topic Category, Geographic Bounding Box, Temporal Extent, Lineage, and Responsible Party) and mk ∈ {0, 1} is a binary indicator where mk = 1 if element k is validly populated and mk = 0 if missing or null. For a collection of N records, the collection-level completeness is:

MCI_mean = [1 / (N × K)] × ∑i=1N ∑k=1K mi,k × 100%

2. Spatial Query Bounding Box Overlap (Intersection over Union, IoU): Spatial retrieval relevance between a query bounding box Bq and a dataset bounding box Bd is measured via the Jaccard spatial overlap:

IoU(Bq, Bd) = Area(Bq ∩ Bd) / Area(Bq ∪ Bd) = Area(Bq ∩ Bd) / [Area(Bq) + Area(Bd) − Area(Bq ∩ Bd)]

where Bq = [xq,min, yq,min, xq,max, yq,max] and Bd = [xd,min, yd,min, xd,max, yd,max] denote coordinate extents in decimal degrees (EPSG:4326), and Bint = [max(xq,min, xd,min), max(yq,min, yd,min), min(xq,max, xd,max), min(yq,max, yd,max)]. If min > max on either axis, Area(Bq ∩ Bd) = 0.

3. Network Service Availability (A): Under European Commission Regulation (EC) No 976/2009 for INSPIRE discovery services, geoportals must maintain a minimum service availability of 99.0%:

A = [1 − (Tdowntime / Ttotal)] × 100%

where Tdowntime is cumulative unscheduled downtime and Ttotal is total scheduled operating duration (for 30 days, Ttotal = 30 × 24 × 60 = 43,200 minutes).

Worked example with real numbers and arithmetic shown

An institutional SDI assessment evaluates an operational geoportal catalog holding N = 250 spatial dataset records across K = 10 mandatory ISO 19115-1 elements, tests spatial bounding box retrieval, and evaluates monthly service uptime.

Step 1: Collection Metadata Completeness. The 250 catalog records encompass a total possible score of N × K = 250 × 10 = 2,500 element evaluations. Automated catalog validation through the geoportal CSW endpoint identifies 2,190 valid mandatory elements (∑i=1250 ∑k=110 mi,k = 2,190). The mean collection completeness is:

MCI_mean = (2,190 / 2,500) × 100% = 0.8760 × 100% = 87.60%

For a specific record (Record #42, “Metropolitan Land Use Layer”), 9 of the 10 elements are populated (Lineage statement missing):

MCI42 = (9 / 10) × 100% = 90.0%

Step 2: Spatial Query Overlap (IoU). A researcher executes a bounding box search for a municipal study zone Bq = [−74.05°, 40.65°, −73.85°, 40.85°]:

  • Widthq = −73.85 − (−74.05) = 0.20°; Heightq = 40.85 − 40.65 = 0.20°
  • Area(Bq) = 0.20 × 0.20 = 0.0400 deg2

Record #42 encompasses a regional extent Bd = [−74.15°, 40.60°, −73.90°, 40.80°]:

  • Widthd = −73.90 − (−74.15) = 0.25°; Heightd = 40.80 − 40.60 = 0.20°
  • Area(Bd) = 0.25 × 0.20 = 0.0500 deg2

The intersection bounding box Bint is:

  • xint,min = max(−74.05, −74.15) = −74.05°; yint,min = max(40.65, 40.60) = 40.65°
  • xint,max = min(−73.85, −73.90) = −73.90°; yint,max = min(40.85, 40.80) = 40.80°
  • Widthint = −73.90 − (−74.05) = 0.15°; Heightint = 40.80 − 40.65 = 0.15°
  • Area(Bq ∩ Bd) = 0.15 × 0.15 = 0.0225 deg2

The union area and spatial IoU are computed as:

Area(Bq ∪ Bd) = 0.0400 + 0.0500 − 0.0225 = 0.0675 deg2

IoU(Bq, Bd) = 0.0225 / 0.0675 = 1 / 3 ≈ 0.3333 (or 33.33%)

Step 3: Service Availability. Over a 30-day monitoring window (Ttotal = 43,200 minutes), 152 minutes of unscheduled downtime occurred:

A = [1 − (152 / 43,200)] × 100% = [1 − 0.0035185] × 100% = 99.6481% ≈ 99.65%

Because 99.65% ≥ 99.00%, the geoportal conforms to the legal availability standard of Regulation (EC) No 976/2009.

Interpretation and reading guidance

Geoportal evaluation metrics guide data administrators and researchers in benchmarking repository health, data usability, and harvesting eligibility:

Metric Threshold Value Operational Classification Interpretation and Action
Metadata Completeness (MCI) ≥ 90.0% High Conformity / Production Ready Records are fully discoverable and ready for federated OGC CSW harvesting without remediation.
Metadata Completeness (MCI) 75.0% – 89.9% Moderate Deficit / Audit Warning Missing secondary elements (such as lineage or temporal bounds); requires remediation prior to international federation.
Metadata Completeness (MCI) < 75.0% Non-Conforming / Harvest Blocked Critical metadata omitted; records should be suppressed from public CSW endpoints until corrected.
Spatial Overlap (IoU) ≥ 0.700 High Spatial Congruence Dataset boundary tightly aligns with the target study area; minimal extraneous features downloaded.
Spatial Overlap (IoU) 0.250 – 0.699 Partial Spatial Coverage Dataset encloses or overlaps study area; spatial subsetting or clipping required prior to analysis.
Spatial Overlap (IoU) < 0.250 Peripheral Boundary Overlap Incidental corner contact; high processing overhead for negligible spatial overlap.
Service Availability (A) ≥ 99.00% INSPIRE Compliant Satisfies legal discovery service criteria; stable for automated research pipelines and harvesting.
Service Availability (A) < 99.00% Service Level Deficit Violates regulatory availability threshold; automated harvesters risk timeout and synchronization failures.

Assumptions and common mistakes

Rigorous geoportal utilization requires avoiding several widespread technical and methodological errors:

  • Assuming Coordinate Reference Systems Align Automatically: Spatial bounding box queries return false positives or empty results when queries in WGS84 (EPSG:4326) are executed against catalog databases indexed in projected coordinate reference systems (e.g., UTM or State Plane) without explicit datum transformations.
  • Equating Metadata Presence with Data Availability: An indexed ISO 19115 metadata record in a geoportal does not guarantee that underlying Web Map Service (WMS) or Web Feature Service (WFS) endpoints are active. Complete audits must verify that resource locators return HTTP 200 responses with valid capabilities XML documents.
  • Mishandling Antimeridian and Polar Bounding Boxes: Bounding boxes crossing the 180th meridian or enclosing polar regions generate inverted or invalid bounding boxes if software naively assumes xmin ≤ xmax without antimeridian normalization.
  • Omitting Temporal Extent Constraints: Querying spatial datasets solely by geographic coordinates often returns obsolete historical survey revisions. Geoportal filters must combine spatial predicates with ISO 8601 temporal bounds to ensure contemporary data retrieval.
  • Conflating Metadata Profiles: Mixing ISO 19115:2003, ISO 19115-1:2014, and US FGDC CSDGM schema models leads to XML validation failures during federated CSW harvesting.

How to report it (APA example)

When documenting geoportal evaluations and spatial catalog audits in academic publications, present methodology and findings following APA 7th guidelines:

“A comprehensive metadata completeness and service performance audit of the regional spatial data infrastructure (SDI) geoportal evaluated N = 250 spatial dataset records across K = 10 mandatory metadata elements defined by ISO 19115-1:2014 and Commission Regulation (EC) No 1205/2008. The catalog exhibited a mean Metadata Completeness Index of 87.60% (SD = 8.42%). Core identification elements (Resource Title, Unique Identifier, and Geographic Bounding Box) demonstrated 100.0% conformity (n = 250), whereas Lineage statements showed the highest omission rate (34.0% non-compliant, n = 85). Spatial retrieval efficiency evaluated across 50 municipal bounding box queries yielded a mean Intersection over Union (IoU) of 0.482 (SD = 0.164). Network service monitoring over a continuous 30-day period (T = 43,200 min) recorded 152 minutes of unscheduled downtime, corresponding to a service availability of 99.65%, satisfying the minimum 99.00% operational requirement mandated by Commission Regulation (EC) No 976/2009.”

How to calculate it in Excel, R or Python

The following reproducible scripts demonstrate how to compute the Metadata Completeness Index (MCI) and spatial bounding box Intersection over Union (IoU) across standard software environments.

Excel Calculation

For a dataset record with 10 mandatory metadata elements recorded as binary flags (1 = present, 0 = absent) in cells B2:K2:

=AVERAGE(B2:K2) * 100

For spatial bounding box Intersection over Union with a query box in A2:D2 (xq,min, yq,min, xq,max, yq,max) and a dataset box in E2:H2 (xd,min, yd,min, xd,max, yd,max):

Intersection Width:  =MAX(0, MIN(C2, G2) - MAX(A2, E2))
Intersection Height: =MAX(0, MIN(D2, H2) - MAX(B2, F2))
Intersection Area:   =I2 * J2
Union Area:          =((C2 - A2) * (D2 - B2)) + ((G2 - E2) * (H2 - F2)) - K2
Spatial IoU:         =K2 / L2

R Calculation

# Compute Metadata Completeness Index (MCI) and Spatial IoU in R
compute_mci <- function(record, mandatory_fields) {
  present <- sum(!is.na(record[mandatory_fields]) & record[mandatory_fields] != "")
  (present / length(mandatory_fields)) * 100
}

compute_bbox_iou <- function(box_q, box_d) {
  # Format: c(min_x, min_y, max_x, max_y)
  int_w <- max(0, min(box_q[3], box_d[3]) - max(box_q[1], box_d[1]))
  int_h <- max(0, min(box_q[4], box_d[4]) - max(box_q[2], box_d[2]))
  area_int <- int_w * int_h
  
  area_q <- (box_q[3] - box_q[1]) * (box_q[4] - box_q[2])
  area_d <- (box_d[3] - box_d[1]) * (box_d[4] - box_d[2])
  area_union <- area_q + area_d - area_int
  
  if (area_union > 0) area_int / area_union else 0
}

# Example verification
fields <- c("title", "abstract", "type", "locator", "identifier",
            "topic", "bbox", "temporal", "lineage", "contact")
sample_rec <- list(title = "Metropolitan Land Use", abstract = "Parcels", type = "dataset",
                   locator = "https://geoportal.org/d1", identifier = "urn:uuid:1",
                   topic = "planningCadastre", bbox = c(-74.15, 40.60, -73.90, 40.80),
                   temporal = "2024", lineage = "", contact = "[email protected]")

mci_score <- compute_mci(sample_rec, fields)
iou_score <- compute_bbox_iou(c(-74.05, 40.65, -73.85, 40.85), sample_rec$bbox)
cat(sprintf("MCI: %.1f%% | Spatial IoU: %.4fn", mci_score, iou_score))

Python Calculation

# Compute Metadata Completeness Index (MCI) and Spatial IoU in Python
def compute_mci(metadata_dict, mandatory_fields):
    """Calculates percentage completeness across mandatory metadata fields."""
    present = sum(1 for f in mandatory_fields if metadata_dict.get(f))
    return (present / len(mandatory_fields)) * 100.0

def compute_bbox_iou(box_q, box_d):
    """Calculates Intersection over Union for bounding boxes: [min_x, min_y, max_x, max_y]."""
    int_w = max(0.0, min(box_q[2], box_d[2]) - max(box_q[0], box_d[0]))
    int_h = max(0.0, min(box_q[3], box_d[3]) - max(box_q[1], box_d[1]))
    area_int = int_w * int_h
    
    area_q = (box_q[2] - box_q[0]) * (box_q[3] - box_q[1])
    area_d = (box_d[2] - box_d[0]) * (box_d[3] - box_d[1])
    area_union = area_q + area_d - area_int
    
    return area_int / area_union if area_union > 0 else 0.0

fields = ["title", "abstract", "type", "locator", "identifier",
          "topic", "bbox", "temporal", "lineage", "contact"]
record_42 = {
    "title": "Metropolitan Land Use and Parcel Boundary Layer",
    "abstract": "High-resolution parcel-level cadastral survey.",
    "type": "dataset",
    "locator": "https://geoportal.example.org/layers/parcels",
    "identifier": "urn:uuid:7c9e6679-7425-40de-944b-e07fc1f90ae7",
    "topic": "planningCadastre",
    "bbox": [-74.15, 40.60, -73.90, 40.80],
    "temporal": "2024-01-01/2024-12-31",
    "lineage": None,
    "contact": "[email protected]"
}

mci = compute_mci(record_42, fields)
iou = compute_bbox_iou([-74.05, 40.65, -73.85, 40.85], record_42["bbox"])
print(f"MCI: {mci:.1f}% | Spatial IoU: {iou:.4f}")

Frequently Asked Questions

What is the difference between a geoportal and a spatial data infrastructure (SDI)?

A Spatial Data Infrastructure (SDI) is the overarching framework encompassing institutional policies, governance, data agreements, technical standards, and computing infrastructure that coordinates spatial data sharing across organizations. A geoportal is the specific, web-accessible catalog interface and client application that serves as the visible entry point to the SDI, enabling users to search, preview, and download spatial datasets.

What is the difference between OGC CSW and OGC API – Records?

OGC Catalogue Service for the Web (CSW 2.0.2) is a mature, XML/SOAP-based catalog protocol defining standard operations (GetCapabilities, GetRecords, DescribeRecord) to query ISO 19139 metadata. In contrast, OGC API – Records is the modern, cloud-native successor built on RESTful principles, OpenAPI specifications, and JSON/GeoJSON payloads, enabling seamless integration with modern web search engines and browser clients.

How do geoportals harvest metadata from distributed repositories?

Geoportals employ automated harvesters that execute scheduled CSW GetRecords requests or Web Accessible Folder (WAF) crawls against remote server endpoints. The harvester extracts ISO 19139 XML metadata, validates syntax against schema profiles, extracts spatial bounding boxes and keywords, and indexes records into high-performance search databases such as Elasticsearch or PostgreSQL/PostGIS for faceted discovery.

What open-source software packages are used to deploy geoportals?

Common open-source geoportal solutions include GeoNetwork opensource (a mature Java-based catalog supporting ISO 19115 and CSW), pycsw (an OGC-certified lightweight Python CSW server), CKAN with the ckanext-spatial extension (an enterprise open data portal adapted for geospatial discovery), and GeoNode (an integrated Django-based platform combining GeoServer, pycsw, and web mapping interfaces).

Sources

  • Open Geospatial Consortium. (2007). OpenGIS Catalogue Services Specification (Version 2.0.2; OGC Document 07-006r1). OGC. https://docs.ogc.org/is/07-006r1/07-006r1.html (Read 2026-11-08)
  • Open Geospatial Consortium. (2007). OGC Catalogue Services 2.0.2 – ISO Metadata Application Profile (Version 1.0.0; OGC Document 07-045). OGC. https://www.ogc.org/standard/cat/ (Read 2026-11-08)
  • European Commission. (2008). Commission Regulation (EC) No 1205/2008 of 3 December 2008 implementing Directive 2007/2/EC of the European Parliament and of the Council as regards metadata. Official Journal of the European Union, L 326, 12–30. https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32008R1205 (Read 2026-11-08)
  • European Commission. (2009). Commission Regulation (EC) No 976/2009 of 19 October 2009 implementing Directive 2007/2/EC of the European Parliament and of the Council as regards the Network Services. Official Journal of the European Union, L 274, 9–18. https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32009R0976 (Read 2026-11-08)
  • European Commission. (2019). Commission Implementing Decision (EU) 2019/1372 of 19 August 2019 implementing Directive 2007/2/EC of the European Parliament and of the Council as regards monitoring and reporting. Official Journal of the European Union, L 220, 1–5. https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32019D1372 (Read 2026-11-08)
  • International Organization for Standardization. (2014). Geographic information — Metadata — Part 1: Fundamentals (ISO Standard No. 19115-1:2014). ISO. https://www.iso.org/standard/53798.html (Read 2026-11-08)
  • Federal Geographic Data Committee. (2020). National Spatial Data Infrastructure Strategic Plan 2021–2024. FGDC. https://www.fgdc.gov/nsdi/nsdi.html (Read 2026-11-08)
  • University Consortium for Geographic Information Science. (2021). Spatial Data Infrastructures [Topic DM-07-060]. Geographic Information Science & Technology Body of Knowledge. https://gistbok-topics.ucgis.org/ (Read 2026-11-08)

Follow CASRAI

Research-administration guidance, standards updates and independent tool reviews.

Ask CASRAI · free to try

Ask about Geoportal: SDI Architecture, Metrics and Guide

Ask your first 2 questions free below. Subscribers get 150 a day for $29 a month.

An AI assistant specialized in research administration. It cites the sources behind every answer, labels web answers and says when it can't answer.

Answers draw on CASRAI's guides and dictionary plus the federal and funder documents we index: Federal Register, Grants.gov, Regulations.gov and UKRI.

Works on this site and inside Claude, Cursor and the AI tools you already use.

Everything CASRAI publishes — this page, the dictionary, the guides and the news — stays free to read, with no account and no card.

Referenced across the research world

University of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logoUniversity of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logo
  • University of Cambridge logo
  • Columbia University logo
  • Crossref logo
  • University of Edinburgh logo
  • Harvard University logo
  • University of Oxford logo
  • Princeton University logo
  • Stanford School of Medicine logo
  • University College London logo
  • ORCID logo

View CASRAI adoption →