{
  "schemaVersion": 1,
  "retrievedAtUtc": "2026-09-09T02:16:08.668541+00:00",
  "selectedSource": "OpenStreetMap",
  "decision": "Official Denver terms contain warranty waiver and indemnification, but no explicit open commercial redistribution grant. Per task fallback instruction, NO Denver official geometry or heights are incorporated. OSM open-data licensing is explicitly verified at its copyright page.",
  "officialCandidate": {
    "itemUrl": "https://www.arcgis.com/sharing/rest/content/items/04e5069b4cf843d2bfe15ad0d1c66e00?f=json",
    "layerUrl": "https://services1.arcgis.com/zdB7qR0BtYrg0Xpl/arcgis/rest/services/ODC_PROP_BUILDINGOUTLINES_A/FeatureServer/111?f=json",
    "itemMetadataFull": {
      "id": "04e5069b4cf843d2bfe15ad0d1c66e00",
      "owner": "The_City_and_County_of_Denver",
      "ownerId": "29b52b20128e4a4d9fea6522096df01a",
      "orgId": "zdB7qR0BtYrg0Xpl",
      "created": 1570735313000,
      "modified": 1720806290000,
      "guid": null,
      "name": "ODC_PROP_BUILDINGOUTLINES_A_Publish",
      "title": "Building Outlines 2022",
      "type": "Feature Service",
      "typeKeywords": [
        "ArcGIS Server",
        "Data",
        "Feature Access",
        "Feature Service",
        "Metadata",
        "Service",
        "Singlelayer",
        "Hosted Service"
      ],
      "description": "<div style='text-align:Left;'><div><div><p><span>Building roofprints delineated from 2022 aerial imagery. CAPTURE CRITERIA: Building roofprint polygons are stereocompiled in 3D. Outlines of permanent, visible structures are captured at the corners of the roof (eave). Buildings with area greater than or equal to 48 square feet and over 5 feet in height are collected. Arms and indentations must be 2.5 feet or greater to be captured. Canopies, carport covers, and sheds are included. For multi-level commercial and/or industrial buildings, each level is captured as a unique record if the building is greater than or equal to 1000 square feet and the multi-level roof levels are greater than or equal to 400 square feet in area and over 5 feet in height. Each polygon is a separate record. Polygons that are part of the same building have the same building ID. For pitched roofs, the highest point is used to determine the building height. The lowest point is the common lowest point if the building is multi-level. ATTRIBUTION: Unique ID, Height (feet), Ground Elevation (feet), Building Type (Residential, Commercial, Industrial, Medical, Public, Garage/Shed, Parking Structure, Tank, Foundation/Ruin, Miscellaneous). Building addresses are available for project partners, courtesy of BuildingFootprintsUSA. CHANGE FEATURES: This dataset is an update to previously collected data. Features were originally delineated from 2014 aerial imagery, updated in 2016, 2018, 2020, and then again in 2022 to create this dataset. Examples of change that are captured include but are not limited to: new features, change in attribution, and modifications that reach or exceed the threshold for initial collection of this feature. Additions refer not only to truly new features in the built environment but also to features that are added based on a larger extent of capture. Please refer to extent shapefiles for 2014, 2016, 2018, 2020, and 2022 feature captures before doing change analysis. Modifications are marked even if only a small portion of the feature has been changed. A separate change layer is available to show only those features that were delineated in 2022. SOURCE DATA: This feature was compiled from DRCOG 2022 Denver Regional Aerial Photography Project (DRAPP) imagery. This imagery is 4-band RGBIR color orthoimagery with a GSD (Ground Sample Distance) of 0.5 foot for 3-inch imagery, 1 foot for 6-inch imagery, and 2 feet for 12-inch imagery. Imagery was collected in the spring with a Vexcel Ultracam Eagle aerial sensor. Imagery is projected in the State Plane Coordinate System, Colorado Central Zone using the Lambert Conformal Conic map projection parameters. Horizontal and vertical datums are NAD83(11) and NAVD88(GEOID12A), respectively.</span></p></div></div></div>",
      "tags": [
        "ODC"
      ],
      "snippet": "Building roofprints delineated from 2022 aerial imagery.",
      "thumbnail": "thumbnail/ago_downloaded.png",
      "documentation": null,
      "extent": [
        [
          -105.40121037447163,
          39.49332712428511
        ],
        [
          -104.59937978251035,
          39.921451720826056
        ]
      ],
      "categories": [
        "/Categories/Property"
      ],
      "spatialReference": "2877",
      "accessInformation": "The City and County of Denver",
      "classification": null,
      "licenseInfo": "USE CONSTRAINTS — The City and County of Denver is not responsible and shall not be liable to any user or recipient for damages of any kind arising out of the use of data or information provided by the City and County of Denver, including the installation of the data or information, its use, or the results obtained from its use. ANY DATA OR INFORMATION PROVIDED BY THE City and County of Denver IS PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, AND THE RECIPIENT HEREBY WAIVES ANY AND ALL SUCH WARRANTIES, INCLUDING, BUT NOT LIMITED TO, ANY WARANTY AS TO THE ACCURACY OR COMPLETENESS OF THE INFORMATION AND THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Data or information provided by the City and County of Denver shall be used and relied upon only at the user's sole risk, and the user agrees to indemnify and hold harmless the City and County of Denver, its officials, officers and employees from any liability arising out of the use, reproduction or dissemination of the data/information provided. NOT FOR ENGINEERING PURPOSES.",
      "culture": "en-us",
      "properties": null,
      "advancedSettings": null,
      "url": "https://services1.arcgis.com/zdB7qR0BtYrg0Xpl/arcgis/rest/services/ODC_PROP_BUILDINGOUTLINES_A/FeatureServer",
      "proxyFilter": null,
      "access": "public",
      "size": 328589312,
      "subInfo": 0,
      "appCategories": [],
      "industries": [],
      "languages": [],
      "largeThumbnail": null,
      "banner": null,
      "screenshots": [],
      "listed": false,
      "commentsEnabled": false,
      "numComments": 0,
      "numRatings": 0,
      "avgRating": 0,
      "numViews": 36868,
      "contentStatus": "public_authoritative",
      "scoreCompleteness": 78,
      "groupDesignations": null,
      "apiToken1ExpirationDate": -1,
      "apiToken2ExpirationDate": -1,
      "lastViewed": 1788915600000
    },
    "layerMetadataFull": {
      "currentVersion": 12,
      "id": 111,
      "name": "PROP_BUILDINGOUTLINES_A",
      "type": "Feature Layer",
      "serviceItemId": "04e5069b4cf843d2bfe15ad0d1c66e00",
      "cacheMaxAge": 30,
      "displayField": "CREATEDATE",
      "description": "SD.PROP_BUILDINGOUTLINES_A",
      "copyrightText": "",
      "defaultVisibility": false,
      "editingInfo": {
        "lastEditDate": 1780416087290,
        "schemaLastEditDate": 1780416087290,
        "dataLastEditDate": 1727810153245
      },
      "relationships": [],
      "isDataVersioned": false,
      "hasContingentValuesDefinition": false,
      "supportsAppend": true,
      "supportsCalculate": true,
      "supportsASyncCalculate": true,
      "supportsTruncate": true,
      "supportsAttachmentsByUploadId": true,
      "supportsAttachmentsResizing": true,
      "supportsRollbackOnFailureParameter": true,
      "supportsStatistics": true,
      "supportsExceedsLimitStatistics": true,
      "supportsAdvancedQueries": true,
      "supportsValidateSql": true,
      "supportsCoordinatesQuantization": true,
      "supportsLayerOverrides": true,
      "supportsTilesAndBasicQueriesMode": true,
      "supportsFieldDescriptionProperty": true,
      "supportsQuantizationEditMode": true,
      "supportsColumnStoreIndex": true,
      "supportsApplyEditsWithGlobalIds": false,
      "supportsMultiScaleGeometry": true,
      "supportsReturningQueryGeometry": true,
      "enableNullGeometry": false,
      "hasGeometryProperties": true,
      "geometryProperties": {
        "shapeAreaFieldName": "Shape__Area",
        "shapeLengthFieldName": "Shape__Length",
        "units": "esriFeet"
      },
      "advancedQueryCapabilities": {
        "supportsPagination": true,
        "supportsPaginationOnAggregatedQueries": true,
        "supportsQueryRelatedPagination": true,
        "supportsQueryWithDistance": true,
        "supportsOutDistance": true,
        "supportsReturningQueryExtent": true,
        "supportsStatistics": true,
        "supportsOrderBy": true,
        "supportsDistinct": true,
        "supportsQueryWithResultType": true,
        "supportsSqlExpression": true,
        "supportsTimeRelation": true,
        "supportsAdvancedQueryRelated": true,
        "supportsCountDistinct": true,
        "supportsPercentileStatistics": true,
        "supportsApproxPercentileStatistics": true,
        "supportsSpatialAggregationStatistics": true,
        "supportsTrueCurve": true,
        "supportedSpatialAggregationStatistics": [
          "EnvelopeAggregate",
          "CentroidAggregate",
          "ConvexHullAggregate"
        ],
        "supportsLod": true,
        "supportsQueryWithLodSR": false,
        "supportedLodTypes": [
          "geohash"
        ],
        "supportsReturningGeometryCentroid": true,
        "supportsReturningGeometryEnvelope": true,
        "supportsReturningGeometryProperties": true,
        "supportsQueryWithDatumTransformation": true,
        "supportsCurrentUserQueries": true,
        "supportsHavingClause": true,
        "supportsOutFieldSQLExpression": true,
        "supportsMaxRecordCountFactor": true,
        "supportsTopFeaturesQuery": true,
        "supportsDisjointSpatialRel": true,
        "supportsQueryWithCacheHint": true,
        "supportedOperationsWithCacheHint": [
          "query",
          "queryTopFilter",
          "queryAnalytics",
          "queryAttachments",
          "queryRelated",
          "queryBins",
          "queryPivot"
        ],
        "supportsQueryAnalytic": true,
        "supportsQueryPivot": true,
        "supportsQueryBins": true,
        "supportsDefaultSR": true,
        "supportsTranslations": false,
        "supportsAggIds": true,
        "supportsQueryWithCollation": true,
        "supportsISODOW": true,
        "supportsISOWeek": true,
        "supportsFullTextSearch": true,
        "fullTextSearchCapabilities": {
          "supportsAccentSensitivity": true,
          "supportsStopWords": true,
          "supportsSearchOperator": true,
          "supportsOperator": true
        },
        "fullTextSearchableFields": [
          "CREATEUSER"
        ]
      },
      "advancedQueryAnalyticCapabilities": {
        "supportsLinearRegression": true,
        "supportsTrendlineRegression": true,
        "supportsAsync": true,
        "supportsPercentileAnalytic": true
      },
      "queryBinsCapabilities": {
        "supportsAsync": true,
        "supportsAutoIntervalBin": true,
        "supportsFixedIntervalBin": true,
        "supportsFixedBoundariesBin": true,
        "supportsDateBin": true,
        "supportsClassificationBin": true,
        "supportsStackBy": true,
        "supportsSplitBy": true,
        "supportsFirstDayOfWeek": true,
        "supportsSnapToData": true,
        "supportsReturnFullIntervalBin": true,
        "supportsReturnStackValueRange": true,
        "supportsNormalization": true,
        "supportedStatisticTypes": [
          "COUNT",
          "SUM",
          "AVG",
          "VAR",
          "STDDEV",
          "MIN",
          "MAX",
          "PERCENTILE_CONT",
          "PERCENTILE_DISC",
          "APPROX_PERCENTILE_CONT",
          "APPROX_PERCENTILE_DISC",
          "CentroidAggregate",
          "EnvelopeAggregate",
          "ConvexHullAggregate"
        ],
        "supportedNormalizationTypes": [
          "boxCox",
          "field",
          "inverse",
          "log",
          "naturalLog",
          "percentOfTotal",
          "squareRoot"
        ]
      },
      "supportedOperationsWithCollation": "query,addField,updateField",
      "advancedEditingCapabilities": {
        "supportedSqlFormatsInCalculate": [
          "standard"
        ],
        "supportsAsyncApplyEdits": true,
        "supportsReturnEditResults": true,
        "supportsApplyEditsbyUploadID": true,
        "supportedApplyEditsUploadIDFormats": "JSON,PBF",
        "supportsTranslation": false,
        "supportsMaxTranslations": 10
      },
      "infoInEstimates": [
        "extent",
        "count"
      ],
      "useStandardizedQueries": true,
      "geometryType": "esriGeometryPolygon",
      "minScale": 0,
      "maxScale": 0,
      "extent": {
        "xmin": 3027878.1953580678,
        "ymin": 1605817.9538431317,
        "xmax": 3252627.17860198,
        "ymax": 1760539.5725488812,
        "spatialReference": {
          "wkid": 2877,
          "latestWkid": 2877
        }
      },
      "spatialReference": {
        "wkid": 2877,
        "latestWkid": 2877
      },
      "drawingInfo": {
        "renderer": {
          "type": "simple",
          "symbol": {
            "type": "esriSFS",
            "style": "esriSFSSolid",
            "color": [
              207,
              252,
              194,
              255
            ],
            "outline": {
              "type": "esriSLS",
              "style": "esriSLSSolid",
              "color": [
                110,
                110,
                110,
                255
              ],
              "width": 0.7
            }
          }
        },
        "scaleSymbols": true,
        "transparency": 0,
        "labelingInfo": null
      },
      "allowGeometryUpdates": true,
      "trueCurveSupportMode": "OGC",
      "supportedCurveTypes": [
        "esriGeometryCircularArc"
      ],
      "supportedTrueCurvePbfFeatureEncodings": [
        "esriCompressedShapeBuffer",
        "esriDefault"
      ],
      "allowTrueCurvesUpdates": true,
      "onlyAllowTrueCurveUpdatesByTrueCurveClients": true,
      "hasAttachments": false,
      "htmlPopupType": "esriServerHTMLPopupTypeAsHTMLText",
      "hasMetadata": true,
      "hasM": false,
      "hasZ": false,
      "objectIdField": "OBJECTID",
      "uniqueIdField": {
        "name": "OBJECTID",
        "isSystemMaintained": true
      },
      "globalIdField": "",
      "typeIdField": "",
      "collation": {
        "locale": "neutral",
        "caseSensitive": false,
        "accentSensitive": true
      },
      "fields": [
        {
          "name": "OBJECTID",
          "type": "esriFieldTypeOID",
          "alias": "FID",
          "sqlType": "sqlTypeOther",
          "nullable": false,
          "editable": false,
          "domain": null,
          "defaultValue": null
        },
        {
          "name": "CREATEDATE",
          "type": "esriFieldTypeDate",
          "alias": "CREATEDATE",
          "sqlType": "sqlTypeOther",
          "length": 8,
          "nullable": true,
          "editable": true,
          "domain": null,
          "defaultValue": null,
          "precision": 1
        },
        {
          "name": "CREATEUSER",
          "type": "esriFieldTypeString",
          "alias": "CREATEUSER",
          "sqlType": "sqlTypeOther",
          "length": 32,
          "nullable": true,
          "editable": true,
          "domain": null,
          "defaultValue": null
        },
        {
          "name": "BUILDING_I",
          "type": "esriFieldTypeInteger",
          "alias": "BUILDING_I",
          "sqlType": "sqlTypeOther",
          "nullable": true,
          "editable": true,
          "domain": null,
          "defaultValue": null
        },
        {
          "name": "BLDG_HEIGH",
          "type": "esriFieldTypeInteger",
          "alias": "BLDG_HEIGH",
          "sqlType": "sqlTypeOther",
          "nullable": true,
          "editable": true,
          "domain": null,
          "defaultValue": null
        },
        {
          "name": "GROUND_ELE",
          "type": "esriFieldTypeInteger",
          "alias": "GROUND_ELE",
          "sqlType": "sqlTypeOther",
          "nullable": true,
          "editable": true,
          "domain": null,
          "defaultValue": null
        },
        {
          "name": "BLDG_TYPE",
          "type": "esriFieldTypeString",
          "alias": "BLDG_TYPE",
          "sqlType": "sqlTypeOther",
          "length": 50,
          "nullable": true,
          "editable": true,
          "domain": null,
          "defaultValue": null
        },
        {
          "name": "SOURCE",
          "type": "esriFieldTypeString",
          "alias": "SOURCE",
          "sqlType": "sqlTypeOther",
          "length": 20,
          "nullable": true,
          "editable": true,
          "domain": null,
          "defaultValue": null
        },
        {
          "name": "COMMENTS",
          "type": "esriFieldTypeString",
          "alias": "COMMENTS",
          "sqlType": "sqlTypeOther",
          "length": 100,
          "nullable": true,
          "editable": true,
          "domain": null,
          "defaultValue": null
        },
        {
          "name": "UPDATE_STA",
          "type": "esriFieldTypeString",
          "alias": "UPDATE_STA",
          "sqlType": "sqlTypeOther",
          "length": 4,
          "nullable": true,
          "editable": true,
          "domain": null,
          "defaultValue": null
        },
        {
          "name": "Shape__Area",
          "type": "esriFieldTypeDouble",
          "alias": "Shape__Area",
          "sqlType": "sqlTypeDouble",
          "nullable": true,
          "editable": false,
          "domain": null,
          "defaultValue": null
        },
        {
          "name": "Shape__Length",
          "type": "esriFieldTypeDouble",
          "alias": "Shape__Length",
          "sqlType": "sqlTypeDouble",
          "nullable": true,
          "editable": false,
          "domain": null,
          "defaultValue": null
        }
      ],
      "indexes": [
        {
          "name": "PK__ODC_PROP__F4B70D854B54D1C0",
          "fields": "OBJECTID",
          "isAscending": true,
          "isUnique": true,
          "description": "",
          "indexType": "Attribute"
        },
        {
          "name": "user_7647.ODC_PROP_BUILDINGOUTLINES_A_PROP_BUILDINGOUTLINES_A_Shape_sidx",
          "fields": "SHAPE",
          "isAscending": true,
          "isUnique": false,
          "description": "",
          "indexType": "Spatial"
        },
        {
          "name": "Shape__Area_Index",
          "fields": "Shape__Area",
          "isAscending": true,
          "isUnique": false,
          "description": "",
          "indexType": "Attribute"
        },
        {
          "name": "Shape__Length_Index",
          "fields": "Shape__Length",
          "isAscending": true,
          "isUnique": false,
          "description": "",
          "indexType": "Attribute"
        },
        {
          "name": "exb_CREATEUSER",
          "fields": "CREATEUSER",
          "isAscending": true,
          "isUnique": false,
          "description": "",
          "indexType": "Attribute"
        },
        {
          "name": "exb_CREATEUSER_total",
          "fields": "CREATEUSER",
          "description": "",
          "indexType": "FullText"
        },
        {
          "name": "BLDG_TYPE_Index",
          "fields": "BLDG_TYPE",
          "isAscending": true,
          "isUnique": false,
          "description": "BLDG_TYPE_Index",
          "indexType": "Attribute"
        }
      ],
      "dateFieldsTimeReference": {
        "timeZone": "UTC",
        "timeZoneIANA": "Etc/UTC",
        "respectsDaylightSaving": false
      },
      "preferredTimeReference": null,
      "types": [],
      "templates": [
        {
          "name": "PROP_BUILDINGOUTLINES_A",
          "description": "",
          "drawingTool": "esriFeatureEditToolPolygon",
          "prototype": {
            "attributes": {
              "COMMENTS": null,
              "UPDATE_STA": null,
              "CREATEDATE": null,
              "CREATEUSER": null,
              "BUILDING_I": null,
              "BLDG_HEIGH": null,
              "GROUND_ELE": null,
              "BLDG_TYPE": null,
              "SOURCE": null
            }
          }
        }
      ],
      "supportedQueryFormats": "JSON, geoJSON, PBF",
      "supportedAppendFormats": "sqlite,geoPackage,shapefile,filegdb,featureCollection,geojson,csv,excel,jsonl,featureService,pbf",
      "supportedAppendSourceFilterFormats": "sqlite,geoPackage,shapefile,filegdb,featureService",
      "supportedExportFormats": "csv,shapefile,sqlite,geoPackage,filegdb,featureCollection,geojson,kml,excel,parquet",
      "supportedConvertFileFormats": "JSON,PBF,Parquet",
      "supportedConvertContentFormats": "LayerEditCollection,FeatureCollection",
      "supportedSpatialRelationships": [
        "esriSpatialRelIntersects",
        "esriSpatialRelContains",
        "esriSpatialRelCrosses",
        "esriSpatialRelEnvelopeIntersects",
        "esriSpatialRelIndexIntersects",
        "esriSpatialRelOverlaps",
        "esriSpatialRelTouches",
        "esriSpatialRelWithin",
        "esriSpatialRelDisjoint",
        "esriSpatialRelRelation"
      ],
      "guidFormat": "",
      "supportsContingentValues": true,
      "supportsEditingContingentValues": true,
      "supportedContingentValuesFormats": "JSON, PBF",
      "supportsFieldGroups": true,
      "supportedSyncDataOptions": 260,
      "hasStaticData": false,
      "maxRecordCount": 2000,
      "standardMaxRecordCount": 2000,
      "maxIdsCount": 1000000,
      "standardMaxRecordCountNoGeometry": 32000,
      "tileMaxRecordCount": 4000,
      "maxRecordCountFactor": 1,
      "capabilities": "Query,Extract"
    },
    "status": "not used; rights for intended redistribution unclear"
  },
  "selectedSourceMetadata": {
    "publisher": "OpenStreetMap contributors / OpenStreetMap Foundation",
    "queryUrl": "https://overpass-api.de/api/interpreter?data=%5Bout%3Ajson%5D%5Btimeout%3A35%5D%3Bway%5B%22building%22%5D%2839.738%2C-105.006%2C39.757%2C-104.978%29%3Bout+meta+geom%3B",
    "query": "[out:json][timeout:35];way[\"building\"](39.738,-105.006,39.757,-104.978);out meta geom;",
    "httpStatus": 200,
    "responseHeader": {
      "version": 0.6,
      "generator": "Overpass API 0.7.62.11 87bfad18",
      "osm3s": {
        "timestamp_osm_base": "2026-09-09T02:11:46Z",
        "copyright": "The data included in this document is from www.openstreetmap.org. The data is made available under ODbL."
      }
    },
    "downloadBytes": 2932694,
    "downloadSha256": "71414d2a43f8eabc19e847e2fa1ac86e8d90d8b6915a7a7e745a4cbe25ad436d",
    "license": "ODbL-1.0",
    "licenseUrl": "https://opendatacommons.org/licenses/odbl/1-0/",
    "copyrightUrl": "https://www.openstreetmap.org/copyright",
    "copyrightPageHttpStatus": 200,
    "copyrightPageHtmlFull": "<!DOCTYPE html>\n<html lang=\"en\" dir=\"ltr\">\n  \n<head data-locale=\"en\" data-preferred-editor=\"id\" data-preferred-languages=\"[]\">\n  \n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<link rel=\"apple-touch-icon\" type=\"image/png\" href=\"/assets/apple-touch-icon-57x57-0af2b52ac2b1a8cb0aba42f17aa901bfdedb9174bd978f838e3b3e1dd8602f52.png\" sizes=\"57x57\" />\n<link rel=\"apple-touch-icon\" type=\"image/png\" href=\"/assets/apple-touch-icon-60x60-cff74c9066d8e7fd08b29407712edbae5613cc9a4c03ee0398a89502a6a41d1f.png\" sizes=\"60x60\" />\n<link rel=\"apple-touch-icon\" type=\"image/png\" href=\"/assets/apple-touch-icon-72x72-63c6fdf3ddf65feebac1c0441bf6a378d1e4bde7107f598ae86733c402895eae.png\" sizes=\"72x72\" />\n<link rel=\"apple-touch-icon\" type=\"image/png\" href=\"/assets/apple-touch-icon-76x76-1740d6e7a59521693c496dd8fbe1caf3d5ad302017cb0f5073b6914b4f5b7544.png\" sizes=\"76x76\" />\n<link rel=\"apple-touch-icon\" type=\"image/png\" href=\"/assets/apple-touch-icon-114x114-20ba9df1a8f9b341040d661b7942b7b10288b9b4c4ce0663e10018958dc7f4a8.png\" sizes=\"114x114\" />\n<link rel=\"apple-touch-icon\" type=\"image/png\" href=\"/assets/apple-touch-icon-120x120-c304991e604d1be82639709b96fb87f7b6b6688cc0d04d5f6141604259299648.png\" sizes=\"120x120\" />\n<link rel=\"apple-touch-icon\" type=\"image/png\" href=\"/assets/apple-touch-icon-144x144-fbf20bdf9d2f7c1fe8eb85d7869a9bda285be88c93a39438150f5eb5955758ce.png\" sizes=\"144x144\" />\n<link rel=\"apple-touch-icon\" type=\"image/png\" href=\"/assets/apple-touch-icon-152x152-af45dc979e972cab863517b2cb33a3dcf3e04e02a2eb2734c6f93edc21fa395d.png\" sizes=\"152x152\" />\n<link rel=\"apple-touch-icon\" type=\"image/png\" href=\"/assets/apple-touch-icon-180x180-ea6361d7ae5b3f08c6290652ad703fa239364cc09c84873044f3299845f24652.png\" sizes=\"180x180\" />\n<link rel=\"icon\" type=\"image/png\" href=\"/assets/favicon-32x32-99b88fcadeef736889823c8a886b89d8cada9d4423a49a27de29bacc0a6bebd1.png\" sizes=\"32x32\" />\n<link rel=\"icon\" type=\"image/png\" href=\"/assets/favicon-194x194-79d3fb0152c735866e64b1d7535d504483cd13c2fad0131a6142bd9629d30de2.png\" sizes=\"194x194\" />\n<link rel=\"icon\" type=\"image/png\" href=\"/assets/favicon-96x96-6ffbc38962fddb870f9577b76430a0ee4db5fb4eca485f850cd45436d7f3eb87.png\" sizes=\"96x96\" />\n<link rel=\"icon\" type=\"image/png\" href=\"/assets/android-chrome-192x192-f970b9be3965dfda6ea9481b305c39b2ec794e296f802235e30d4671f0f896e1.png\" sizes=\"192x192\" />\n<link rel=\"icon\" type=\"image/png\" href=\"/assets/favicon-16x16-474476c1b2381628a81361a9e2bf04b936d21f77c59e84b48c6c69ea376fb6cf.png\" sizes=\"16x16\" />\n<link rel=\"mask-icon\" href=\"/assets/tab-icon-07d8c4247610d2f043ac298b3905536230b9615b08e23e69026c8d55790da13b.svg\" color=\"#7ebc6f\">\n<link rel=\"manifest\" href=\"/assets/manifest-97cb57bafa7f7f002cc5fe5532b856c4246eef5cbbd21c78b4c6bc2ffa46747a.json\">\n<meta name=\"msapplication-config\" content=\"/assets/browserconfig-c59184dc0264731151cbf50ae58f7fa8ae5153138013f125203e1193800f862f.xml\">\n<meta name=\"msapplication-TileColor\" content=\"#00a300\">\n<meta name=\"msapplication-TileImage\" content=\"/assets/mstile-144x144-02723f6f7cb2c18e6f8041c93f80982decb52b24a7e447477bc2ce3136d75806.png\">\n<meta name=\"theme-color\" content=\"#ffffff\">\n<meta name=\"turbo-refresh-method\" content=\"morph\">\n<meta name=\"turbo-refresh-scroll\" content=\"preserve\">\n<link href=\"https://www.openstreetmap.org/copyright\" rel=\"canonical\" />\n<link rel=\"search\" type=\"application/opensearchdescription+xml\" title=\"OpenStreetMap Search\" href=\"/assets/osm-42b7b3fbcee2193e455a773db6cd3d34a2f48ca94547fed54901dd9d8307b02b.xml\">\n<meta name=\"description\" content=\"OpenStreetMap is a map of the world, created by people like you and free to use under an open license.\">\n<meta property=\"og:site_name\" content=\"OpenStreetMap\">\n<meta property=\"og:title\" content=\"Copyright and License\">\n<meta property=\"og:type\" content=\"website\">\n<meta property=\"og:url\" content=\"https://www.openstreetmap.org/copyright\">\n<meta property=\"og:description\" content=\"OpenStreetMap is a map of the world, created by people like you and free to use under an open license.\">\n<meta property=\"og:image\" content=\"https://www.openstreetmap.org/assets/osm_logo_256-ed028f90468224a272961c380ecee0cfb73b8048b34f4b4b204b7f0d1097875d.png\">\n<meta property=\"og:image:alt\" content=\"OpenStreetMap logo\">\n\n  <script src=\"/assets/turbo-c17cce38062be94687ab3e688cf14213be635ee2b55e63d9d5778659fab0c27b.js\" type=\"module\"></script>\n  <script src=\"/assets/application-46917e2b000a6fe1de6547a111a4aea6dca49c39537988673cadda6f0df59bf3.js\"></script>\n  <script src=\"/assets/i18n/en-68ae657fcb9ec003f75724965c0b5093e341bdcd580a61958a5dffb0cb117b0a.js\"></script>\n    <link rel=\"stylesheet\" href=\"/assets/screen-auto-ltr-ec1e9d9d5ce9501d4541908d9162a602dcd97bed70706590c0fb015061b64521.css\" media=\"screen\" />\n  <link rel=\"stylesheet\" href=\"/assets/print-ltr-97dee1ca487394c852f28c2906a930316ab6d2cacf7f73e47c1c31fad8919051.css\" media=\"print\" />\n  <link rel=\"stylesheet\" href=\"/assets/leaflet-all-d3e8505f47e0f0615d3daf2619f2267c086cbe9e17e276f393ee686dca54e0d3.css\" media=\"screen, print\" />\n  <link rel=\"stylesheet\" href=\"/assets/maplibre-gl-all-671191c247be2831d2737d30b396112dc1041453bd6291863062bbaea52a940a.css\" media=\"screen, print\" />\n  \n  \n  <meta name=\"csrf-param\" content=\"authenticity_token\" />\n<meta name=\"csrf-token\" content=\"9ZlLseRoESIpCcoxHfmwGxFbhRBFUpXgI21UqnPEAztz2USSlc9NlcbspGA7FIlWO1w1NqgnqU_6npUZxG9-6w\" />\n  <meta name=\"csp-nonce\" content=\"LCScQwMY/vbtZitEwcNUbuKV3DBFm0ud\" />\n  <title>Copyright and License | OpenStreetMap</title>\n</head>\n  <body class=\"site site-copyright\">\n    \n<header class=\"navbar navbar-expand-md bg-body flex-column flex-md-row align-items-stretch p-0 position-relative flex-nowrap z-3\">\n  <h1 class=\"d-flex m-0 align-items-center fw-semibold\">\n    <a href=\"/\" class=\"icon-link gap-1 me-auto text-body-emphasis text-decoration-none geolink\">\n      <img alt=\"OpenStreetMap logo\" src=\"/assets/osm_logo-cc7d94392992162133be3baa21a37eb84f19f9b91178f704005378fbeecabb4e.svg\" width=\"30\" height=\"30\" />\n      OpenStreetMap\n    </a>\n    \n<button type=\"button\" class=\"btn btn-outline-secondary align-self-stretch px-2 border-secondary border-opacity-10 d-md-none\" title=\"Select Language\" data-bs-toggle=\"modal\" data-bs-target=\"#select_language_dialog\"><i class=\"bi bi-translate fs-5 lh-1\"></i></button>\n\n    <button class=\"navbar-toggler p-0 border-0 collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#header-nav\" aria-controls=\"header-nav\" aria-expanded=\"false\" aria-label=\"Main\">\n      <span class=\"navbar-toggler-icon\"></span>\n    </button>\n  </h1>\n  <section id=\"header-nav\" class=\"flex-grow-1 collapse d-md-block\">\n    \n    <nav class=\"navbar-nav gap-2 flex-grow-1\" aria-label=\"Main navigation\">\n      <div id=\"edit_tab\" class=\"btn-group\">\n        <a class=\"btn btn-outline-primary geolink editlink\" id=\"editanchor\" data-editor=\"id\" href=\"/edit\">Edit</a>\n        <button class=\"btn btn-outline-primary dropdown-toggle dropdown-toggle-split flex-grow-0\" type=\"button\" data-bs-toggle=\"dropdown\"></button>\n        <ul class=\"dropdown-menu position-absolute\">\n            <li>\n              <a data-editor=\"id\" class=\"geolink editlink dropdown-item\" href=\"/edit?editor=id\">Edit with iD (in-browser editor)</a>\n            </li>\n            <li>\n              <a data-editor=\"remote\" class=\"geolink editlink dropdown-item\" href=\"/edit?editor=remote\">Edit with Remote Control (JOSM, Potlatch, Merkaartor)</a>\n            </li>\n        </ul>\n      </div>\n      <ul id=\"secondary-nav-menu\" class=\"nav flex-grow-1 ms-md-2 align-items-center justify-content-center justify-content-md-start\" data-turbo-permanent>\n          <li class=\"nav-item\">\n            <a class=\"nav-link px-1 py-2 py-md-1 text-secondary geolink\" href=\"/history\">History</a>\n          </li>\n          <li class=\"nav-item\">\n            <a class=\"nav-link px-1 py-2 py-md-1 text-secondary geolink\" href=\"/export\">Export</a>\n          </li>\n          <li class=\"nav-item\">\n            <a class=\"nav-link px-1 py-2 py-md-1 text-secondary\" href=\"/traces\">GPS Traces</a>\n          </li>\n          <li class=\"nav-item\">\n            <a class=\"nav-link px-1 py-2 py-md-1 text-secondary\" href=\"/diary\">User Diaries</a>\n          </li>\n          <li class=\"nav-item\">\n            <a class=\"nav-link px-1 py-2 py-md-1 text-secondary\" href=\"/communities\">Communities</a>\n          </li>\n          <li class=\"nav-item\">\n            <a class=\"nav-link px-1 py-2 py-md-1 active text-secondary-emphasis\" href=\"/copyright\">Copyright</a>\n          </li>\n          <li class=\"nav-item\">\n            <a class=\"nav-link px-1 py-2 py-md-1 text-secondary\" href=\"/help\">Help</a>\n          </li>\n          <li class=\"nav-item\">\n            <a class=\"nav-link px-1 py-2 py-md-1 text-secondary\" target=\"new\" href=\"https://supporting.openstreetmap.org/donate/\">Donate</a>\n          </li>\n          <li class=\"nav-item\">\n            <a class=\"nav-link px-1 py-2 py-md-1 text-secondary\" href=\"/about\">About</a>\n          </li>\n        <li id=\"compact-secondary-nav\" class=\"dropdown nav-item ms-auto collapse\">\n          <button class=\"dropdown-toggle nav-link btn btn-outline-secondary px-1 py-2 py-md-1 border-0 bg-body text-secondary\" type=\"button\" data-bs-toggle=\"dropdown\">More</button>\n          <ul class=\"dropdown-menu\">\n          </ul>\n        </li>\n      </ul>\n\n      \n<button type=\"button\" class=\"btn btn-outline-secondary align-self-stretch px-2 d-none d-md-block py-0\" title=\"Select Language\" data-bs-toggle=\"modal\" data-bs-target=\"#select_language_dialog\"><i class=\"bi bi-translate fs-5 lh-1\"></i></button>\n\n          <div class=\"d-flex btn-group login-menu\">\n            <a class=\"geolink btn btn-outline-secondary\" href=\"/login?referer=%2Fcopyright\">Log In</a>\n            <a class=\"btn btn-outline-secondary\" href=\"/user/new\">Sign Up</a>\n          </div>\n    </nav>\n  </section>\n</header>\n\n<div class=\"modal fade\" id=\"select_language_dialog\" tabindex=\"-1\" aria-labelledby=\"select_language_dialog_label\" role=\"dialog\" aria-hidden=\"true\">\n  <div class=\"modal-dialog modal-lg modal-dialog-scrollable\">\n    <div class=\"modal-content\">\n      <div class=\"modal-header\">\n        <h1 class=\"modal-title fs-5\" id=\"select_language_dialog_label\">Select Language</h1>\n        <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n      </div>\n      <div class=\"modal-body px-1\">\n        <turbo-frame id=\"select_language_list\" data-src=\"/panes/languages\">\n          <div class=\"text-center py-3\">\n<div class=\"spinner-border\" role=\"status\">\n  <span class=\"visually-hidden\">Loading...</span>\n</div>\n</div>\n        </turbo-frame>\n      </div>\n    </div>\n  </div>\n</div>\n\n<div class=\"modal fade\" id=\"osm_alert_modal\" tabindex=\"-1\" aria-labelledby=\"osm_alert_title\" role=\"alertdialog\" aria-hidden=\"true\">\n  <div class=\"modal-dialog modal-dialog-centered\">\n    <div class=\"modal-content\">\n      <div class=\"modal-header\">\n        <h1 class=\"modal-title fs-5\" id=\"osm_alert_title\"></h1>\n        <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n      </div>\n      <div class=\"modal-body\" id=\"osm_alert_message\">\n      </div>\n      <div class=\"modal-footer\">\n        <button type=\"button\" class=\"btn btn-primary\" data-bs-dismiss=\"modal\">Close</button>\n      </div>\n    </div>\n  </div>\n</div>\n\n    \n<div id=\"content\" class=\"\">\n    \n\n      <div class=\"content-heading bg-body-secondary border-bottom border-secondary-subtle\">\n        <div class=\"content-inner position-relative m-auto \">\n              <!-- Maybe note that this page has been translated -->\n\n    <h1 lang=\"en\" dir=\"ltr\">\n      Copyright and License\n</h1>\n        </div>\n      </div>\n    <div class=\"content-body\">\n      <div class=\"content-inner position-relative m-auto\">\n        \n  <div lang=\"en\" dir=\"ltr\">\n    <p class=\"lead\">\n      OpenStreetMap provides open map data for thousands of websites, mobile apps, and hardware devices.\nOpenStreetMap is built by a community of people like you who contribute and maintain mapping data\nabout roads, trails, cafés, railway stations, and much more, all over the world.\n\n    </p>\n    <p class=\"lead\">\n      <a href=\"https://wiki.openstreetmap.org/wiki/About_OpenStreetMap\">Learn more about OpenStreetMap</a> and <a href=\"/user/new\">get started mapping</a>!\nYou can read more on the <a href=\"https://blog.openstreetmap.org/\">OpenStreetMap Blog</a>, and subscribe to <a href=\"https://weeklyosm.eu/\">weeklyOSM</a>.\nFind other mappers in your local <a href=\"/communities\">OSM community</a>.\nSupport the project by joining the <a href=\"https://osmfoundation.org/\">OSM Foundation</a> and <a href=\"https://supporting.openstreetmap.org/donate/\">making a donation</a>.\n\n    </p>\n    <h3>OpenStreetMap licensing</h3>\n    <p>\n      OpenStreetMap is <em>open</em> data, licensed under the\n<a href=\"https://opendatacommons.org/licenses/odbl/\">Open Data Commons Open Database License</a> (ODbL) by the <a href=\"https://osmfoundation.org/\">OpenStreetMap Foundation</a> (OSMF). In summary:\n\n    </p>\n    <p>\n      You are free to copy, distribute, transmit and adapt our data,\nas long as you credit OpenStreetMap and its\ncontributors. If you alter or build upon our data, you\nmay distribute the result only under the same license. The\n<a href=\"https://opendatacommons.org/licenses/odbl/1-0/\">full legal code at Open Data Commons</a> explains your rights and responsibilities.\n\n    </p>\n    <p>\n      Our documentation is licensed under the <a href=\"https://creativecommons.org/licenses/by-sa/2.0/\">Creative Commons Attribution-ShareAlike 2.0 license</a> (CC BY-SA 2.0).\n\n    </p>\n    <p>\n      Read more about using our data at the <a href=\"https://osmfoundation.org/Licence\">OSMF Licence page</a>.\n\n    </p>\n\n    <h3>How to credit OpenStreetMap</h3>\n    <p>\n      Where you use OpenStreetMap data, you are required to do the following two things:\n\n    </p>\n    <ul>\n      <li>Provide credit to OpenStreetMap by displaying our attribution notice.</li>\n      <li>Make clear that the data is available under the Open Database License.</li>\n    </ul>\n    <p>\n      For the attribution notice, we have different <a href=\"https://osmfoundation.org/wiki/Licence/Attribution_Guidelines\">requirements on how this should be displayed</a>, depending on how you are using our data.\nFor example, different rules apply on how to show the attribution notice depending on whether you have\ncreated a browsable map, a printed map or a static image.\nMore details can be found in the <a href=\"https://osmfoundation.org/wiki/Licence/Attribution_Guidelines\">attribution guidelines</a> section of <a href=\"https://osmfoundation.org/wiki/Licence\">the licensing requirements</a>.\n\n    </p>\n    <p>\n      Generally speaking,\nto make clear that the data is available under the Open\nDatabase License, you may link to <a href=\"/copyright\">this copyright page</a>.\nIf you are distributing OSM in\ndata form, please name and link directly to the license(s). In media\nwhere links are not possible (e.g. printed works),\nplease include the full URL on the page, e.g. https://www.openstreetmap.org/copyright.\n\n    </p>\n    <p>\n      In this example, the credit appears in the corner of the map:\n\n    </p>\n    <p><img alt=\"Example of how to attribute OpenStreetMap on a webpage\" class=\"img-fluid\" title=\"Attribution example\" src=\"/assets/attribution_example-596eda9fe262e5ebfc3b410483c4a73dd38847e2db14967741ae45ffa3b8bddf.png\" /></p>\n\n    <h3>Copyright infringement</h3>\n    <p>\n      OSM contributors are reminded never to add data from any\ncopyrighted sources (e.g. Google Maps or printed maps) without\nexplicit permission from the copyright holders.\n\n    </p>\n    <p>\n      If you believe that copyrighted material has been inappropriately\nadded to the OpenStreetMap database or this site, please refer\nto our <a href=\"https://osmfoundation.org/wiki/Takedown_procedure\">takedown procedure</a> or file directly at our\n<a href=\"https://dmca.openstreetmap.org/\">on-line filing page</a>.\n\n    </p>\n\n    <h3 id=\"trademarks\">Trademarks</h3>\n    <p>\n      OpenStreetMap, the magnifying glass logo, and State of the Map are registered trademarks of the\nOpenStreetMap Foundation. If you have questions about your use of the marks, please see our\n<a href=\"https://osmfoundation.org/wiki/Trademark_Policy\">Trademark Policy</a>.\n\n    </p>\n\n    <h3>Additional services</h3>\n    <p>\n      Although OpenStreetMap is open data, we cannot provide a\nfree-of-charge map API or map tiles for third-parties.\nSee our <a href=\"https://operations.osmfoundation.org/policies/api/\">API Usage Policy</a>, <a href=\"https://operations.osmfoundation.org/policies/tiles/\">Tile Usage Policy</a> and <a href=\"https://operations.osmfoundation.org/policies/nominatim/\">Nominatim Usage Policy</a>.\n\n    </p>\n\n    <h3>Our contributors</h3>\n    <p>Our contributors are thousands of individuals. We also include\nopenly-licensed data from national mapping agencies\nand other sources, among them:\n</p>\n    <ul id=\"contributors\">\n      <li>\n        <strong>Austria</strong>: Contains data from <a href=\"https://data.wien.gv.at/\">Stadt Wien</a> (under <a href=\"https://creativecommons.org/licenses/by/3.0/at/deed.de\">CC BY</a>), <a href=\"https://www.vorarlberg.at/vorarlberg/bauen_wohnen/bauen/vermessung_geoinformation/weitereinformationen/services/wmsdienste.htm\">Land Vorarlberg</a>\nand Land Tirol (under <a href=\"https://www.tirol.gv.at/data/nutzungsbedingungen/\">CC BY AT with amendments</a>).\n\n      </li>\n      <li>\n        <strong>Australia</strong>: Incorporates or developed using Administrative Boundaries &copy; <a href=\"https://geoscape.com.au/legal/data-copyright-and-disclaimer/\">Geoscape Australia</a>\nlicensed by the Commonwealth of Australia under <a href=\"https://creativecommons.org/licenses/by/4.0/\">Creative Commons Attribution 4.0 International licence (CC BY 4.0)</a>.\n\n      </li>\n      <li>\n        <strong>Canada</strong>: Contains data from\nGeoBase&reg;, GeoGratis (&copy; Department of Natural\nResources Canada), CanVec (&copy; Department of Natural\nResources Canada), and StatCan (Geography Division,\nStatistics Canada).\n\n      </li>\n      <li>\n        <strong>Czechia</strong>: Contains data from the State Administration of Land Surveying\nand Cadastre licensed under <a href=\"https://creativecommons.org/licenses/by/4.0/\">Creative Commons Attribution 4.0 International licence (CC BY 4.0)</a>\n\n      </li>\n      <li>\n        <strong>Finland</strong>: Contains data from the\nNational Land Survey of Finland's Topographic Database\nand other datasets, under the <a href=\"https://www.maanmittauslaitos.fi/en/opendata-licence-version1\">NLSFI License</a>.\n\n      </li>\n      <li>\n        <strong>France</strong>: Contains data sourced from\nDirection Générale des Impôts.\n\n      </li>\n      <li>\n        <strong>Croatia</strong>: Contains data from the <a href=\"https://dgu.gov.hr/\">State Geodetic Administration of Croatia</a> and <a href=\"https://data.gov.hr/\">National Open Data Portal</a>\n(public information of Croatia).\n\n      </li>\n      <li>\n        <strong>Netherlands</strong>: Contains &copy; AND data, 2007\n\n      </li>\n      <li>\n        <strong>New Zealand</strong>: Contains data sourced from the <a href=\"https://data.linz.govt.nz/\">LINZ Data Service</a>\nand licensed for reuse under <a href=\"https://creativecommons.org/licenses/by/4.0/\">CC BY 4.0</a>.\n\n      </li>\n      <li>\n        <strong>Serbia</strong>: Contains data from the <a href=\"https://geosrbija.rs/\">Serbian Geodetic Authority</a> and <a href=\"https://data.gov.rs/sr/\">National Open Data Portal</a>\n(public information of Serbia), 2018.\n\n      </li>\n      <li>\n        <strong>Slovenia</strong>: Contains data from the <a href=\"https://www.gov.si/en/state-authorities/bodies-within-ministries/surveying-and-mapping-authority/\">Surveying and Mapping Authority</a> and <a href=\"https://www.gov.si/en/state-authorities/ministries/ministry-of-agriculture-forestry-and-food/\">Ministry of Agriculture, Forestry and Food</a>\n(public information of Slovenia).\n\n      </li>\n      <li>\n        <strong>Spain</strong>: Contains data sourced from the\nSpanish National Geographic Institute (<a href=\"https://www.ign.es/\">IGN</a>) and\nNational Cartographic System (<a href=\"https://www.scne.es/\">SCNE</a>)\nlicensed for reuse under <a href=\"https://creativecommons.org/licenses/by/4.0/\">CC BY 4.0</a>.\n\n      </li>\n      <li>\n        <strong>South Africa</strong>: Contains data sourced from <a href=\"https://ngi.dlrrd.gov.za/\">Chief Directorate: National Geo-Spatial Information</a>, State copyright reserved.\n\n      </li>\n      <li>\n        <strong>United Kingdom</strong>: Contains Ordnance\nSurvey data &copy; Crown copyright and database right\n2010-2023.\n\n      </li>\n    </ul>\n    <p>\n      For further details of these, and other sources that have been used\nto help improve OpenStreetMap, please see the <a href=\"https://wiki.openstreetmap.org/wiki/Contributors\">Contributors page</a> on the OpenStreetMap Wiki.\n\n    </p>\n    <p>Inclusion of data in OpenStreetMap does not imply that the original\ndata provider endorses OpenStreetMap, provides any warranty, or\naccepts any liability.\n</p>\n</div>\n      </div>\n    </div>\n</div>\n\n    <noscript><p><img class=\"matomo\" alt=\"\" src=\"https://matomo.openstreetmap.org/matomo.php?idsite=1\" /></p></noscript>\n</body></html>",
    "verifiedLicenseQuote": "You are free to copy, distribute, transmit and adapt our data, as long as you credit OpenStreetMap and its contributors. If you alter or build upon our data, you may distribute the result only under the same license.",
    "legalCodeFetchStatus": "Direct legal-code URL returned HTTP 403; licensing grant and ODbL identification verified on official OSM copyright page. No claim full legal-code text fetched.",
    "attributionRequired": "© OpenStreetMap contributors",
    "distribution": "This derived database is offered under ODbL-1.0. Retain attribution and license URL; show attribution when producing a map/render and comply with applicable share-alike/database obligations."
  },
  "coordinateFrame": {
    "originWgs84": {
      "longitude": -104.992,
      "latitude": 39.7475,
      "ellipsoidHeightMeters": 0
    },
    "units": "meters",
    "coordinateOrder": [
      "east",
      "north"
    ],
    "projection": "WGS84 geodetic to ECEF (ellipsoid height 0), then tangent-plane EN projection at origin; not Web Mercator",
    "ellipsoid": {
      "semiMajorAxisMeters": 6378137.0,
      "eccentricitySquared": 0.0066943799901413165
    },
    "roundingMeters": 0.001,
    "threeJsMapping": "x=east; z=-north; y=height above a separately sourced ground plane. No ground elevation supplied.",
    "warning": "Horizontal projection only: origin height 0 is a computational reference, NOT surveyed Denver ground. Do not use ECEF tangent up as terrain elevation."
  },
  "processing": {
    "selection": "closed building-tagged ways entirely inside bbox only; boundary-crossing ways excluded, not clipped",
    "limitations": [
      "No multipolygon relations: courtyard holes and relation-only buildings not reconstructed.",
      "No building:part-only ways queried; roof levels and detailed shapes incomplete.",
      "Some closed ways may be members of relations; way polygon does not encode relation holes.",
      "No building:levels to height inference. Missing/unparsed/nonpositive heights remain null.",
      "No terrain, surveyed vertical position, facade textures, invented buildings or invented heights.",
      "OSM heights are contributed tags, not a claim of survey accuracy."
    ],
    "rawSourceTagsRetained": true
  },
  "validation": {
    "result": "PASS",
    "downloadedWayCount": 2370,
    "savedPolygonCount": 2253,
    "excluded": {
      "crosses_query_boundary": 117
    },
    "heightStatusCounts": {
      "explicit": 443,
      "missing": 1810
    },
    "explicitHeightRangeMeters": [
      1.0,
      218.0
    ],
    "localBoundsMeters": [
      -1192.082,
      -1053.645,
      1197.196,
      1054.581
    ],
    "vertexCountIncludingClosures": 23440,
    "tests": [
      "JSON reload",
      "unique source IDs",
      "closed rings >=4 vertices",
      "finite 2D coordinates",
      "nondegenerate counterclockwise signed area",
      "all source vertices inside query bbox",
      "positive explicit heights and exact documented unit conversion"
    ],
    "notTested": [
      "self-intersections/topological validity",
      "survey accuracy",
      "current skyline completeness",
      "facade/roof fidelity"
    ]
  },
  "asset": {
    "path": "assets/denver-buildings.json",
    "bytes": 1632810,
    "sha256": "97f826a1cb4e56a77e4a0c808d10082c303a225b05139ab131f9c70d76d86c53"
  }
}
