{
  "type": "Collection",
  "id": "calcofi_lines",
  "stac_version": "1.1.0",
  "description": "The eleven CalCOFI transect lines (60.0 to 93.3) as linestrings through the station positions CalCOFI publishes on its Station Positions page, vertices in station-number order (nearshore to offshore). A line is flagged `in_core_75` when any of its stations is in the 75-station standard pattern (the six lines 76.7 to 93.3); `n_core_75` counts them. The seven single-station SCCOOS inshore lines (81.7, 81.8, 85.4, 86.8, 88.5, 91.7, 93.4) have no second position, so they are not lines here: see calcofi_stations. Built by build.py from 1 source layer(s).",
  "links": [
    {
      "rel": "root",
      "href": "../catalog.json",
      "type": "application/json",
      "title": "Ocean Metrics gazetteer"
    },
    {
      "rel": "parent",
      "href": "../catalog.json",
      "type": "application/json",
      "title": "Ocean Metrics gazetteer"
    },
    {
      "rel": "agents",
      "href": "./AGENTS.md",
      "type": "text/markdown",
      "title": "Agent/LLM usage guide"
    },
    {
      "rel": "describedby",
      "href": "./README.md",
      "type": "text/markdown",
      "title": "Human-readable documentation"
    },
    {
      "rel": "pmtiles",
      "href": "./places.pmtiles",
      "type": "application/vnd.pmtiles",
      "pmtiles:layers": [
        "calcofi_lines"
      ]
    },
    {
      "rel": "license",
      "href": "https://creativecommons.org/licenses/by/4.0/",
      "type": "text/html",
      "title": "Stated by CalCOFI on https://calcofi.org/data/data-usage-policy/ (read 2026-10-08): \"CalCOFI oceanographic and biological data are licensed under the Creative Commons Attribution 4.0 International Lic"
    },
    {
      "rel": "via",
      "href": "https://calcofi.org/sampling-info/station-positions/",
      "type": "text/html",
      "title": "Upstream publisher page"
    },
    {
      "rel": "via",
      "href": "https://calcofi.org/downloads/maps/CalCOFIStationOrder.csv",
      "type": "text/html",
      "title": "Source layer"
    }
  ],
  "stac_extensions": [
    "https://stac-extensions.github.io/table/v1.2.0/schema.json",
    "https://stac-extensions.github.io/file/v2.1.0/schema.json",
    "https://schemas.portolan-sdi.org/portolan/v0.2.0/schema.json",
    "https://stac-extensions.github.io/web-map-links/v1.3.0/schema.json",
    "https://stac-extensions.github.io/projection/v2.0.0/schema.json"
  ],
  "geoparquet:geometry_type": "LineString",
  "geoparquet:feature_count": 11,
  "table:row_count": 11,
  "table:primary_geometry": "geometry",
  "table:columns": [
    {
      "name": "place_id",
      "type": "string",
      "description": "prefixed, unique id (e.g. BOEM:OCS-P 0561, BOEM:PA:SOC, AOA:N1-A)"
    },
    {
      "name": "authority",
      "type": "string",
      "description": "organisation that publishes the boundary (BOEM, AOA = NOAA Aquaculture Opportunity Areas)"
    },
    {
      "name": "source_id",
      "type": "string",
      "description": "the source layer's own identifier for the feature (lease number, planning-area code, OBJECTID, AOA code)"
    },
    {
      "name": "name",
      "type": "string",
      "description": "human-readable name"
    },
    {
      "name": "place_type",
      "type": "string",
      "description": "kind of place: lease, planning_area or aoa"
    },
    {
      "name": "geom_type",
      "type": "string",
      "description": "geometry type (LineString)"
    },
    {
      "name": "status",
      "type": "string",
      "description": "lifecycle status (e.g. active, cancelled, relinquished, settlement_pending, rescinded, draft_proposed, identified)"
    },
    {
      "name": "status_source",
      "type": "string",
      "description": "URL that documents the status"
    },
    {
      "name": "status_date",
      "type": "string",
      "description": "ISO date (or year) the status took effect or was last confirmed; may be empty"
    },
    {
      "name": "source_url",
      "type": "string",
      "description": "the service endpoint or download the boundary was fetched from"
    },
    {
      "name": "source_date",
      "type": "date32[day]",
      "description": "date of the source's last data edit (retrieval date when the source serves none)"
    },
    {
      "name": "retrieved",
      "type": "timestamp[ms, tz=UTC]",
      "description": "UTC time the boundary was fetched"
    },
    {
      "name": "version",
      "type": "string",
      "description": "collection release version this row was built for"
    },
    {
      "name": "license",
      "type": "string",
      "description": "SPDX identifier of the licence (CC-PDDC = public-domain U.S. government work)"
    },
    {
      "name": "attribution",
      "type": "string",
      "description": "credit line to show with the data"
    },
    {
      "name": "line_id",
      "type": "string",
      "description": "zero-padded CalCOFI line number, e.g. 093.3"
    },
    {
      "name": "line",
      "type": "double",
      "description": "CalCOFI line number (numeric)"
    },
    {
      "name": "n_stations",
      "type": "int64",
      "description": "number of listed station positions on the line (vertices)"
    },
    {
      "name": "n_core_75",
      "type": "int64",
      "description": "how many of them are in the 75-station standard pattern"
    },
    {
      "name": "in_core_75",
      "type": "bool",
      "description": "true when the line carries any 75-station standard station"
    },
    {
      "name": "station_min",
      "type": "double",
      "description": "lowest (most inshore) station number on the line"
    },
    {
      "name": "station_max",
      "type": "double",
      "description": "highest (most offshore) station number on the line"
    },
    {
      "name": "length_km",
      "type": "double",
      "description": "geodesic length of the linestring, km (WGS 84)"
    },
    {
      "name": "bbox",
      "type": "struct<xmin: double, ymin: double, xmax: double, ymax: double>",
      "description": "GeoParquet bbox-covering column (xmin, ymin, xmax, ymax)"
    },
    {
      "name": "geometry",
      "type": "binary",
      "description": "LINESTRING, EPSG:4326, split at +/-180 antimeridian"
    }
  ],
  "updated": "2026-10-08T17:36:01Z",
  "pmtiles:min_zoom": 0,
  "pmtiles:max_zoom": 10,
  "pmtiles:tile_type": "mvt",
  "pmtiles:center": [
    -126.386719,
    36.456507,
    10
  ],
  "pmtiles:layers": [
    "calcofi_lines"
  ],
  "gazetteer:authority": "CALCOFI",
  "gazetteer:place_type": "transect",
  "gazetteer:cadence": "monthly",
  "gazetteer:attribution": "California Cooperative Oceanic Fisheries Investigations (CalCOFI), calcofi.org. CC BY 4.0. Processed by Ocean Metrics.",
  "gazetteer:provenance": {
    "slug": "calcofi_lines",
    "version": "1.0.1",
    "built": "2026-10-08T17:03:19Z",
    "record_count": 11,
    "sources": [
      {
        "source_url": "https://calcofi.org/downloads/maps/CalCOFIStationOrder.csv",
        "source_item_id": "",
        "component": null,
        "data_last_edit": "2022-02-06T22:56:27Z",
        "retrieved": "2026-10-08T17:03:19Z",
        "record_count": 11,
        "checksum": "c955a8abe8ff8962b906bb25b2d36f23f2cc8f0a50e51a668317baafbb76a97b",
        "http": {
          "etag": "\"21b0-5d76164d7a3de\"",
          "last_modified": "Sun, 06 Feb 2022 22:56:27 GMT",
          "content_length": 8624
        },
        "core_75_source": "https://calcofi.org/downloads/CalCOFI_75StandardStations.kml",
        "core_75_stations": 76,
        "dropped": [
          "line 081.7 has one listed station (081.7 043.5, SCCOOS): no linestring",
          "line 081.8 has one listed station (081.8 046.9, ROS): no linestring",
          "line 085.4 has one listed station (085.4 035.8, SCCOOS): no linestring",
          "line 086.8 has one listed station (086.8 032.5, SCCOOS): no linestring",
          "line 088.5 has one listed station (088.5 030.1, SCCOOS): no linestring",
          "line 091.7 has one listed station (091.7 026.4, SCCOOS): no linestring",
          "line 093.4 has one listed station (093.4 026.4, SCCOOS): no linestring"
        ]
      }
    ],
    "dropped": [
      "line 081.7 has one listed station (081.7 043.5, SCCOOS): no linestring",
      "line 081.8 has one listed station (081.8 046.9, ROS): no linestring",
      "line 085.4 has one listed station (085.4 035.8, SCCOOS): no linestring",
      "line 086.8 has one listed station (086.8 032.5, SCCOOS): no linestring",
      "line 088.5 has one listed station (088.5 030.1, SCCOOS): no linestring",
      "line 091.7 has one listed station (091.7 026.4, SCCOOS): no linestring",
      "line 093.4 has one listed station (093.4 026.4, SCCOOS): no linestring"
    ]
  },
  "title": "CalCOFI transect lines",
  "extent": {
    "spatial": {
      "bbox": [
        [
          -126.48559,
          29.84637,
          -117.30538,
          37.84743
        ]
      ]
    },
    "temporal": {
      "interval": [
        [
          null,
          null
        ]
      ]
    }
  },
  "license": "CC-BY-4.0",
  "providers": [
    {
      "name": "California Cooperative Oceanic Fisheries Investigations (CalCOFI)",
      "roles": [
        "producer",
        "licensor"
      ],
      "url": "https://calcofi.org/"
    },
    {
      "name": "Ocean Metrics LLC",
      "roles": [
        "processor",
        "host"
      ],
      "url": "https://oceanmetrics.io"
    }
  ],
  "assets": {
    "places": {
      "href": "./places.parquet",
      "type": "application/vnd.apache.parquet",
      "file:size": 17914,
      "file:checksum": "1220b9d278ec9c6b34e2170dd61c8945adba14779d6f38876d585651067ef78c6404",
      "proj:code": "EPSG:4326",
      "roles": [
        "data"
      ]
    },
    "places-tiles": {
      "href": "./places.pmtiles",
      "type": "application/vnd.pmtiles",
      "title": "calcofi_lines (vector tiles)",
      "file:size": 96749,
      "file:checksum": "12201ce86c49a60a1b76cdde5916e6329c7e0cfef9e44a4677f4a3684df51f10da9f",
      "roles": [
        "visual"
      ]
    },
    "styles/default": {
      "href": "./styles/default.json",
      "type": "application/vnd.mapbox.style+json",
      "title": "Default",
      "file:size": 599,
      "file:checksum": "12209e4361dd08e89c04e7078cd30d5e5938382f4d65d37a2ac8ce2041b347aa8a64",
      "roles": [
        "style",
        "default"
      ]
    },
    "provenance": {
      "href": "./provenance.json",
      "type": "application/json",
      "title": "Source provenance and change-detection record",
      "file:size": 1912,
      "file:checksum": "122027161908b39d5d3e4bc2f05a418ea82f64111d1640314f8670565bd0b1519e91",
      "roles": [
        "metadata"
      ]
    },
    "documentation": {
      "href": "./README.md",
      "type": "text/markdown",
      "file:size": 4849,
      "file:checksum": "12208f57c4d1d2744df6e0a37c2186d487bb85814a455f989e9a8d413e651ab78ee8",
      "roles": [
        "documentation"
      ]
    },
    "thumbnail": {
      "href": "./places.thumb.jpg",
      "type": "image/jpeg",
      "roles": [
        "thumbnail"
      ],
      "file:size": 12937,
      "file:checksum": "1220b1ef2a57d160e6af77e0d1ff249c17b1e7aaf37d0d2718639209aa64e4d7a2a3"
    }
  }
}
