{
 "schemaVersion": "1.0.0",
 "constitutionVersion": "1.0.0",
 "createdAt": "2026-08-12T00:00:00Z",
 "description": "Append-only Evidence Passport records. Old revisions are immutable; corrections create a new revision and preserve the previous permalink.",
 "entity": {
  "type": "project",
  "id": "warsaw-open-data",
  "title": "Warsaw's Open Data API: Live Bus and Tram Positions Behind an API Key",
  "canonicalUrl": "https://1001smartcities.org/projects/warsaw-open-data/"
 },
 "currentRevisionId": "2026-10-17-baseline",
 "revisions": [
  {
   "id": "2026-10-17-baseline",
   "createdAt": "2026-10-17T22:21:35Z",
   "effectiveAt": "2026-10-17",
   "changeType": "baseline",
   "summary": "Created the first structured Evidence Passport with 17 claims and 8 source dossiers.",
   "preparedBy": {
    "type": "automation",
    "label": "AI-assisted evidence preparation",
    "humanApproved": false
   },
   "review": {
    "status": "unreviewed",
    "by": null,
    "date": null,
    "note": "Awaiting operator and domain-expert review; publication of this revision implies neither."
   },
   "changes": [
    {
     "operation": "add",
     "path": "/evidencePassport",
     "summary": "Added claim-level evidence mapping and source dossiers."
    },
    {
     "operation": "add",
     "path": "/revisionHistory",
     "summary": "Established a permanent, hash-addressed baseline revision."
    }
   ],
   "snapshotHash": "sha256:c912283b8aba1bd9995843f3d861b23008f527f3b35c02ce07442a7d300e2294",
   "snapshot": {
    "asOf": "2026-10-17",
    "projectFingerprint": "sha256:f14b885ee0733d159f453e4035557ce0e88d4786fc2dc49142f0b4875357baa2",
    "assurance": {
     "status": "unreviewed",
     "scope": "evidence-passport-revision",
     "statement": "AI-assisted structural preparation. This revision has not been reviewed by a human or subject-matter expert.",
     "machineChecks": [
      "schema",
      "publication-diff-contract",
      "material-project-fingerprint",
      "claim-text-drift",
      "source-reference-resolution",
      "complete-source-dossier",
      "snapshot-hash"
     ]
    },
    "projectState": {
     "status": "live",
     "outcome": "ongoing",
     "evidenceGrade": "official",
     "timeline": {
      "started": 2015,
      "ended": null
     }
    },
    "governance": {
     "operator": "Urząd m.st. Warszawy (Warsaw City Hall), Biuro Cyfryzacji; vehicle positions published by the City Hall, not by the transport authority ZTM",
     "actorTypes": [
      "city-government"
     ],
     "fundingModel": null,
     "fundingDescription": null,
     "cost": null,
     "ownership": null,
     "decisionRights": null,
     "exitConditions": null
    },
    "claims": [
     {
      "id": "clm-0cc4784d93a60fc6",
      "field": "snippet",
      "text": "Since 2015 Warsaw City Hall has run api.um.warszawa.pl, an open-data platform",
      "statementKind": "quantitative",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-4c0918fa2968146d"
      ],
      "supportNote": "The city release says the City Hall created the api platform for open data in 2015.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-5f1fb9f1015b73ff",
      "field": "snippet",
      "text": "serves city datasets through an API",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-4c0918fa2968146d"
      ],
      "supportNote": "All resources are available through an application programming interface prepared by the City Hall.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-399ad463c30768b7",
      "field": "snippet",
      "text": "the live positions of the city's buses and trams, refreshed every 15 seconds",
      "statementKind": "quantitative",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-4c0918fa2968146d"
      ],
      "supportNote": "The release lists online transport data showing the current position of buses and trams, updated every 15 seconds.",
      "caveat": "Other city documentation and reusers have given different refresh intervals over the years; 15 seconds is the city's 2022 statement.",
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-6ea538a92f8fa6fd",
      "field": "snippet",
      "text": "The city charges nothing for the data",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-4c0918fa2968146d"
      ],
      "supportNote": "The director of the City Hall's digitisation office: 'we charge no fees for it and do not ask who downloads it'.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-6058b99877897f5c",
      "field": "snippet",
      "text": "access needs a registration and a personal API key",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-bf124e09aab95477",
       "src-049cde5bbc346b76"
      ],
      "supportNote": "The catalogue record says access to the dataset requires registration at api.um.warszawa.pl; the 2018 thesis describes creating an account to obtain a unique API key, a mandatory call parameter.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-f18cd438ec43b8b1",
      "field": "snippet",
      "text": "In 2022 the city counted several million automated requests a week to the vehicle positions",
      "statementKind": "quantitative",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-4c0918fa2968146d"
      ],
      "supportNote": "The release says vehicle-position data draws the most interest and receives several million automated requests a week.",
      "caveat": "A usage count reported by the city, not an evaluation of what the data changed.",
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-e54d2e9b9851b5ed",
      "field": "snippet",
      "text": "from apps including Jak dojadę and Automapa",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-4c0918fa2968146d"
      ],
      "supportNote": "The release names the creators of Jak dojadę, Czy na czas, Gdzie ten tramwaj, Real bus and Automapa among the users.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-f129c33b0a5d95b6",
      "field": "snippet",
      "text": "The positions come from the City Hall, not from the transport authority ZTM",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-7070bfa09ae70b19"
      ],
      "supportNote": "The developer who republishes the feed notes that vehicle locations are supplied by Warsaw City Hall rather than by ZTM.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-9bc15a178cf6b4ab",
      "field": "snippet",
      "text": "the GTFS timetable feed that route planners use is built by an independent developer from ZTM schedule data shared through a restricted endpoint",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-80027485faae021d",
       "src-7070bfa09ae70b19"
      ],
      "supportNote": "The WarsawGTFS README says static data comes from a proprietary ZTM endpoint whose access is restricted and needs credentials; the developer's page publishes the resulting warsaw.zip under ZTM's data usage terms.",
      "caveat": "That route planners use this feed rests on the developer's own publication and on the app makers who credit it; no ZTM statement on its own feeds was read.",
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-a3d22492101c6abc",
      "field": "snippet",
      "text": "in his realtime feed some trip identifiers may not match that timetable",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-7070bfa09ae70b19"
      ],
      "supportNote": "Because positions come from the City Hall, the developer warns that some trip_ids in the realtime feed may not match any trip in the static GTFS.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-d9a3c3cabb17884a",
      "field": "snippet",
      "text": "The city says a new portal, dane.um.warszawa.pl, will fully replace the old platform",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-980abb36cbf4629f"
      ],
      "supportNote": "The city page announces that within the coming months the new Otwarte dane Warszawy service will fully replace api.um.warszawa.pl.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-f90dc9edb06d279b",
      "field": "lesson",
      "text": "The national catalogue labels the city's transit datasets CC BY 4.0",
      "statementKind": "quantitative",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-bf124e09aab95477",
       "src-090f01d8641b177d"
      ],
      "supportNote": "Both records filed by Warsaw City Hall, for tram positions and for public-transport timetables, carry the licence name 'CC BY 4.0'.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-db118f97fcb07968",
      "field": "lesson",
      "text": "gives 'Other (Public Domain)' as the licence description in the same record",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-bf124e09aab95477",
       "src-090f01d8641b177d"
      ],
      "supportNote": "The same records carry the licence description 'Other (Public Domain)' next to the CC BY 4.0 name.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-fda4cea7dd623e27",
      "field": "lesson",
      "text": "points to the city's own terms of use",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-bf124e09aab95477",
       "src-090f01d8641b177d"
      ],
      "supportNote": "Each record's description says the terms of use for the data are available on api.um.warszawa.pl.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-ac4f22bdff983d7e",
      "field": "lesson",
      "text": "the city told a European programme it shares data without legal restrictions",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-099eca9abd25d24b"
      ],
      "supportNote": "The city's good-practice entry lists 'making available without legal restrictions' among the platform's architecture principles.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-65aecea78037ddf8",
      "field": "lesson",
      "text": "a 2018 university thesis",
      "statementKind": "quantitative",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-049cde5bbc346b76"
      ],
      "supportNote": "The 2018 Warsaw University of Technology thesis states that reusers must give the date of creation and the source, i.e. Miasto Stołeczne Warszawa.",
      "caveat": null,
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-7eaf522c5e4812d8",
      "field": "lesson",
      "text": "the developer of the Warsaw GTFS feeds, read the terms as requiring credit to Miasto Stołeczne Warszawa with a date",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-7070bfa09ae70b19",
       "src-049cde5bbc346b76"
      ],
      "supportNote": "The developer states that the City Hall requires credit naming Miasto Stołeczne Warszawa, the data download date and a link to api.um.warszawa.pl; the thesis reads the same terms as requiring the date of creation and the source.",
      "caveat": "Both are readings by reusers; the city's own terms text is not among the sources.",
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     }
    ],
    "sources": [
     {
      "id": "src-4c0918fa2968146d",
      "title": "Toportal — Warszawa. Dane po warszawsku (republished city press release, 22 Jun 2022)",
      "url": "https://toportal.pl/warszawa-dane-po-warszawsku-44075",
      "publisher": {
       "name": null,
       "domain": "toportal.pl",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-0cc4784d93a60fc6",
       "clm-5f1fb9f1015b73ff",
       "clm-399ad463c30768b7",
       "clm-6ea538a92f8fa6fd",
       "clm-f18cd438ec43b8b1",
       "clm-e54d2e9b9851b5ed"
      ],
      "temporal": {
       "publishedAt": "2022-06-22",
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-10-17",
       "dossierCreatedAt": "2026-10-17",
       "retrievedAt": null,
       "status": "publication-and-record-dates-recorded"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "Regional daily reproducing a City Hall release (credited '/ um.warszawa.pl /'): the City Hall created the api platform in 2015; data served through an API; bus and tram positions updated every 15 seconds; several million automated requests a week to the vehicle-position resource, used by apps including Jak dojadę, Czy na czas, Gdzie ten tramwaj, Real bus and Automapa; Tadeusz Osowski, director of the City Hall's Biuro Cyfryzacji: the city charges no fees and does not ask who downloads the data.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-bf124e09aab95477",
      "title": "dane.gov.pl — catalogue record 'Lokalizacja pojazdów Tramwajów Warszawskich' (Urząd m.st. Warszawy)",
      "url": "https://api.dane.gov.pl/1.4/datasets/448",
      "publisher": {
       "name": null,
       "domain": "api.dane.gov.pl",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-6058b99877897f5c",
       "clm-f90dc9edb06d279b",
       "clm-db118f97fcb07968",
       "clm-fda4cea7dd623e27"
      ],
      "temporal": {
       "publishedAt": "2016-08-31",
       "updatedAt": "2024-03-19",
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-10-17",
       "dossierCreatedAt": "2026-10-17",
       "retrievedAt": null,
       "status": "publication-and-record-dates-recorded"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "National open-data catalogue record filed by Warsaw City Hall for the tram-position dataset (record created 31 Aug 2016, modified 19 Mar 2024): licence name 'CC BY 4.0', licence description 'Other (Public Domain)'; access requires registration at api.um.warszawa.pl; terms of use are given on api.um.warszawa.pl.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-090f01d8641b177d",
      "title": "dane.gov.pl — catalogue record 'Rozkład jazdy komunikacji publicznej' (Urząd m.st. Warszawy)",
      "url": "https://api.dane.gov.pl/1.4/datasets/49",
      "publisher": {
       "name": null,
       "domain": "api.dane.gov.pl",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-f90dc9edb06d279b",
       "clm-db118f97fcb07968",
       "clm-fda4cea7dd623e27"
      ],
      "temporal": {
       "publishedAt": "2016-08-31",
       "updatedAt": "2024-03-19",
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-10-17",
       "dossierCreatedAt": "2026-10-17",
       "retrievedAt": null,
       "status": "publication-and-record-dates-recorded"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "Catalogue record filed by Warsaw City Hall for the public-transport timetable dataset, with the same fields: licence name 'CC BY 4.0', licence description 'Other (Public Domain)', registration required, terms of use on api.um.warszawa.pl.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-099eca9abd25d24b",
      "title": "Interreg Europe — Good practice: Open data in the Warsaw way (20 Aug 2024)",
      "url": "https://www.interregeurope.eu/good-practices/open-data-in-warsaw-way",
      "publisher": {
       "name": null,
       "domain": "interregeurope.eu",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-ac4f22bdff983d7e"
      ],
      "temporal": {
       "publishedAt": "2024-08-20",
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-10-17",
       "dossierCreatedAt": "2026-10-17",
       "retrievedAt": null,
       "status": "publication-and-record-dates-recorded"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "Good-practice entry owned by the City of Warsaw (PROACTsme project): architecture principles include 'making available without legal restrictions'; the city cites nearly 2 million daily requests to the platform and over 6,000 registered users as evidence of success.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-049cde5bbc346b76",
      "title": "Warsaw University of Technology — Bondarzewska, bachelor's thesis on tram-delay notifications (2018)",
      "url": "https://www.ia.pw.edu.pl/~mkamola/Bondarzewska18.pdf",
      "publisher": {
       "name": null,
       "domain": "ia.pw.edu.pl",
       "classification": "not-classified"
      },
      "sourceType": "pdf",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-6058b99877897f5c",
       "clm-65aecea78037ddf8",
       "clm-7eaf522c5e4812d8"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-10-17",
       "dossierCreatedAt": "2026-10-17",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "Bachelor's thesis (supervisor Mariusz Kamola) building a tram-delay alert service on the city's tram-position API: reusers must state the date of creation and the source, Miasto Stołeczne Warszawa; some datasets need an API key obtained by creating an account.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-7070bfa09ae70b19",
      "title": "mkuran.pl — GTFS feeds: Warszawski Transport Publiczny (ZTM Warszawa)",
      "url": "https://mkuran.pl/gtfs/",
      "publisher": {
       "name": null,
       "domain": "mkuran.pl",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-f129c33b0a5d95b6",
       "clm-9bc15a178cf6b4ab",
       "clm-a3d22492101c6abc",
       "clm-7eaf522c5e4812d8"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-10-17",
       "dossierCreatedAt": "2026-10-17",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "Independent developer's feed page: the Warsaw GTFS is licensed under ZTM Warszawa's data usage terms (ODbL for bus shapes); the realtime vehicle-position feed falls under the Warsaw Open Data Project usage terms, which require crediting 'Miasto Stołeczne Warszawa', the data download date and a link; vehicle locations come from the City Hall, not ZTM, so some trip_ids may not match the static GTFS.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-80027485faae021d",
      "title": "WarsawGTFS — project README (GitHub)",
      "url": "https://raw.githubusercontent.com/MKuranowski/WarsawGTFS/master/readme.md",
      "publisher": {
       "name": null,
       "domain": "raw.githubusercontent.com",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-9bc15a178cf6b4ab"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-10-17",
       "dossierCreatedAt": "2026-10-17",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "README of the open-source tool that builds the Warsaw GTFS: static data comes from a proprietary endpoint shared by ZTM, with restricted access requiring credentials; realtime feeds use data from dane.um.warszawa.pl with an API key.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-980abb36cbf4629f",
      "title": "Warszawa 19115 — Dane po warszawsku",
      "url": "https://warszawa19115.pl/en/-/dane-po-warszawsku",
      "publisher": {
       "name": null,
       "domain": "warszawa19115.pl",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-d9a3c3cabb17884a"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": "2026-04-21",
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-10-17",
       "dossierCreatedAt": "2026-10-17",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "City contact-centre page on the 'Dane po warszawsku' project (updated 21 Apr 2026): announces the new portal dane.um.warszawa.pl, which within the coming months will fully replace api.um.warszawa.pl.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     }
    ],
    "coverage": {
     "claimsTotal": 17,
     "claimsMapped": 17,
     "sourcesTotal": 8,
     "sourcesUsedByClaims": 8,
     "sourcesWithPublicationDate": 4,
     "sourcesWithArchive": 0,
     "sourcesWithExactLocator": 0,
     "sourcesWithContentHash": 0
    },
    "limits": [
     "Publisher names and source languages have not yet been classified; domains are recorded without guessing.",
     "Existing source notes are descriptive locators, not page- or paragraph-exact citations.",
     "A missing archive, publication date or content hash is shown as null rather than inferred.",
     "The project-level evidence grade ranks the strongest source in the entry; it is not a truth score for every claim."
    ]
   }
  }
 ]
}
