{
 "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": "sydney-open-transit-data",
  "title": "Transport for NSW Real-Time Open Data Hub",
  "canonicalUrl": "https://1001smartcities.org/projects/sydney-open-transit-data/"
 },
 "currentRevisionId": "2026-08-20-source-dates-b2",
 "revisions": [
  {
   "id": "2026-08-12-sydney-evidence-baseline",
   "createdAt": "2026-08-12T03:00:00Z",
   "effectiveAt": "2026-08-12",
   "changeType": "baseline",
   "summary": "Created the first structured Evidence Passport with 3 claims and 5 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:245b25fc8a42a8a9f01fff6d2d6625d589d4d1e9df3f194d6bafc31a8ddce5d6",
   "snapshot": {
    "asOf": "2026-08-12",
    "projectFingerprint": "sha256:bcb0e505a8609a662569f00fd26cb3aaf010cd92851b77168c49aba4f1435c7d",
    "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": "succeeded",
     "evidenceGrade": "official",
     "timeline": {
      "started": 2016,
      "ended": null
     }
    },
    "governance": {
     "operator": "Transport for NSW",
     "actorTypes": [
      "regional-government"
     ],
     "fundingModel": null,
     "fundingDescription": null,
     "cost": null,
     "ownership": null,
     "decisionRights": null,
     "exitConditions": null
    },
    "claims": [
     {
      "id": "clm-710ef2bd1602f61b",
      "field": "snippet",
      "text": "Transport for NSW's Open Data Hub has published live GTFS-realtime feeds — vehicle positions, trip updates and alerts — for Sydney's trains, buses, ferries and light rail since 2016, with feeds refreshing about every 15 seconds under a CC BY 4.0 licence.",
      "statementKind": "quantitative",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-229bbc5a13acae7b",
       "src-fe63d2dae10ac716",
       "src-d61a3a60db00a515"
      ],
      "supportNote": "The two TfNSW dataset records identify the GTFS-realtime feed types, modes and 2016 creation; TfNSW's developer guidance documents an approximately 15-second refresh interval, and the data licence applies CC BY 4.0.",
      "caveat": "The TfNSW portal returned 403 to automated fetches in this pass; search-indexed portal text and the prior Sydney review support the mapping.",
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-7fa422f682c65481",
      "field": "snippet",
      "text": "The programme reports more than 51,000 active users and 11,300 registered applications",
      "statementKind": "quantitative",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-d27a7546b7c789d8"
      ],
      "supportNote": "The NSW Government case study reports more than 51,000 active users and 11,300 registered applications for the Hub.",
      "caveat": "Operator-reported platform counts; ‘active users’ is preserved rather than recast as registered developers.",
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-e09cd58f6ff2434a",
      "field": "snippet",
      "text": "its trip-planning examples include TripView and Google Maps.",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-2f8152822e014fd8"
      ],
      "supportNote": "TfNSW's trip-planning data story names TripView and Google Maps as examples using the transport information.",
      "caveat": "The portal returned 403 to automated retrieval in this pass; the mapping remains explicitly unreviewed.",
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     }
    ],
    "sources": [
     {
      "id": "src-229bbc5a13acae7b",
      "title": "Public Transport – Realtime Trip Update dataset",
      "url": "https://opendata.transport.nsw.gov.au/dataset/public-transport-realtime-trip-update",
      "publisher": {
       "name": null,
       "domain": "opendata.transport.nsw.gov.au",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-710ef2bd1602f61b"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-08-12",
       "dossierCreatedAt": "2026-08-12",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "GTFS-realtime coverage across buses/ferries/light rail/trains/metro; CC-BY licence tag; dataset created Nov 2016.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-fe63d2dae10ac716",
      "title": "Public Transport – Realtime Vehicle Positions dataset",
      "url": "https://opendata.transport.nsw.gov.au/dataset/public-transport-realtime-vehicle-positions",
      "publisher": {
       "name": null,
       "domain": "opendata.transport.nsw.gov.au",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-710ef2bd1602f61b"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-08-12",
       "dossierCreatedAt": "2026-08-12",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "Confirms live vehicle-position feed, distinct from static/historical GTFS.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-d61a3a60db00a515",
      "title": "TfNSW Open Data Hub — Data Licence",
      "url": "https://opendata.transport.nsw.gov.au/datalicence",
      "publisher": {
       "name": null,
       "domain": "opendata.transport.nsw.gov.au",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-710ef2bd1602f61b"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-08-12",
       "dossierCreatedAt": "2026-08-12",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "States the Datasets Licence is Creative Commons Attribution 4.0 International.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-d27a7546b7c789d8",
      "title": "NSW Government — Open Data Program case study",
      "url": "https://www.digital.nsw.gov.au/strategy/case-studies/open-data-program",
      "publisher": {
       "name": null,
       "domain": "digital.nsw.gov.au",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-7fa422f682c65481"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-08-12",
       "dossierCreatedAt": "2026-08-12",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "Hub established April 2016 replacing TDX; 51,000+ active users, 11,300+ registered applications, 28.6 billion API hits.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-2f8152822e014fd8",
      "title": "Info for Public Transport Trip Planning",
      "url": "https://opendata.transport.nsw.gov.au/datastories/tripplanning",
      "publisher": {
       "name": null,
       "domain": "opendata.transport.nsw.gov.au",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-e09cd58f6ff2434a"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-08-12",
       "dossierCreatedAt": "2026-08-12",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "Names TripView and Google Maps as trip-planning apps built on the real-time feeds.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     }
    ],
    "coverage": {
     "claimsTotal": 3,
     "claimsMapped": 3,
     "sourcesTotal": 5,
     "sourcesUsedByClaims": 5,
     "sourcesWithPublicationDate": 0,
     "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."
    ]
   }
  },
  {
   "id": "2026-08-20-source-dates-b2",
   "createdAt": "2026-08-20T17:00:00Z",
   "effectiveAt": "2026-08-12",
   "changeType": "update",
   "summary": "Record the publication date of each source that states one; sources that publish no date are marked null.",
   "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": "replace",
     "path": "/snapshot/projectFingerprint",
     "summary": "Updated projectFingerprint to the current sourced project record."
    }
   ],
   "snapshotHash": "sha256:aa1c91663d868a416aa261bbe9bbc90edd3754f3a014c55f2f735991eaa5ff48",
   "snapshot": {
    "asOf": "2026-08-12",
    "projectFingerprint": "sha256:bd0861249931c8153ffc7bd7e7be6638d0a4fb4060e9f20bb75b0fa4b1cdd3ee",
    "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": "succeeded",
     "evidenceGrade": "official",
     "timeline": {
      "started": 2016,
      "ended": null
     }
    },
    "governance": {
     "operator": "Transport for NSW",
     "actorTypes": [
      "regional-government"
     ],
     "fundingModel": null,
     "fundingDescription": null,
     "cost": null,
     "ownership": null,
     "decisionRights": null,
     "exitConditions": null
    },
    "claims": [
     {
      "id": "clm-710ef2bd1602f61b",
      "field": "snippet",
      "text": "Transport for NSW's Open Data Hub has published live GTFS-realtime feeds — vehicle positions, trip updates and alerts — for Sydney's trains, buses, ferries and light rail since 2016, with feeds refreshing about every 15 seconds under a CC BY 4.0 licence.",
      "statementKind": "quantitative",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-229bbc5a13acae7b",
       "src-fe63d2dae10ac716",
       "src-d61a3a60db00a515"
      ],
      "supportNote": "The two TfNSW dataset records identify the GTFS-realtime feed types, modes and 2016 creation; TfNSW's developer guidance documents an approximately 15-second refresh interval, and the data licence applies CC BY 4.0.",
      "caveat": "The TfNSW portal returned 403 to automated fetches in this pass; search-indexed portal text and the prior Sydney review support the mapping.",
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-7fa422f682c65481",
      "field": "snippet",
      "text": "The programme reports more than 51,000 active users and 11,300 registered applications",
      "statementKind": "quantitative",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-d27a7546b7c789d8"
      ],
      "supportNote": "The NSW Government case study reports more than 51,000 active users and 11,300 registered applications for the Hub.",
      "caveat": "Operator-reported platform counts; ‘active users’ is preserved rather than recast as registered developers.",
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     },
     {
      "id": "clm-e09cd58f6ff2434a",
      "field": "snippet",
      "text": "its trip-planning examples include TripView and Google Maps.",
      "statementKind": "descriptive",
      "textMode": "verbatim-from-project-record",
      "mappingStatus": "mapped",
      "sourceRefs": [
       "src-2f8152822e014fd8"
      ],
      "supportNote": "TfNSW's trip-planning data story names TripView and Google Maps as examples using the transport information.",
      "caveat": "The portal returned 403 to automated retrieval in this pass; the mapping remains explicitly unreviewed.",
      "interpretation": {
       "added": false,
       "interpolation": false,
       "note": "The passport copies the published claim and its recorded source mapping without adding a conclusion."
      }
     }
    ],
    "sources": [
     {
      "id": "src-229bbc5a13acae7b",
      "title": "Public Transport – Realtime Trip Update dataset",
      "url": "https://opendata.transport.nsw.gov.au/dataset/public-transport-realtime-trip-update",
      "publisher": {
       "name": null,
       "domain": "opendata.transport.nsw.gov.au",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-710ef2bd1602f61b"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-08-12",
       "dossierCreatedAt": "2026-08-20",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "GTFS-realtime coverage across buses/ferries/light rail/trains/metro; CC-BY licence tag; dataset created Nov 2016.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-fe63d2dae10ac716",
      "title": "Public Transport – Realtime Vehicle Positions dataset",
      "url": "https://opendata.transport.nsw.gov.au/dataset/public-transport-realtime-vehicle-positions",
      "publisher": {
       "name": null,
       "domain": "opendata.transport.nsw.gov.au",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-710ef2bd1602f61b"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-08-12",
       "dossierCreatedAt": "2026-08-20",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "Confirms live vehicle-position feed, distinct from static/historical GTFS.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-d61a3a60db00a515",
      "title": "TfNSW Open Data Hub — Data Licence",
      "url": "https://opendata.transport.nsw.gov.au/datalicence",
      "publisher": {
       "name": null,
       "domain": "opendata.transport.nsw.gov.au",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-710ef2bd1602f61b"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-08-12",
       "dossierCreatedAt": "2026-08-20",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "States the Datasets Licence is Creative Commons Attribution 4.0 International.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-d27a7546b7c789d8",
      "title": "NSW Government — Open Data Program case study",
      "url": "https://www.digital.nsw.gov.au/strategy/case-studies/open-data-program",
      "publisher": {
       "name": null,
       "domain": "digital.nsw.gov.au",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-7fa422f682c65481"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-08-12",
       "dossierCreatedAt": "2026-08-20",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "Hub established April 2016 replacing TDX; 51,000+ active users, 11,300+ registered applications, 28.6 billion API hits.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     },
     {
      "id": "src-2f8152822e014fd8",
      "title": "Info for Public Transport Trip Planning",
      "url": "https://opendata.transport.nsw.gov.au/datastories/tripplanning",
      "publisher": {
       "name": null,
       "domain": "opendata.transport.nsw.gov.au",
       "classification": "not-classified"
      },
      "sourceType": "web-page",
      "language": "und",
      "role": "claim-evidence",
      "claimRefs": [
       "clm-e09cd58f6ff2434a"
      ],
      "temporal": {
       "publishedAt": null,
       "updatedAt": null,
       "sourceCheckedAt": null,
       "recordLastVerifiedAt": "2026-08-12",
       "dossierCreatedAt": "2026-08-20",
       "retrievedAt": null,
       "status": "record-date-only"
      },
      "locator": {
       "type": "descriptive-source-note",
       "value": "Names TripView and Google Maps as trip-planning apps built on the real-time feeds.",
       "exact": false
      },
      "preservation": {
       "archiveUrl": null,
       "archivedAt": null,
       "contentHash": null,
       "status": "not-captured"
      }
     }
    ],
    "coverage": {
     "claimsTotal": 3,
     "claimsMapped": 3,
     "sourcesTotal": 5,
     "sourcesUsedByClaims": 5,
     "sourcesWithPublicationDate": 0,
     "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."
    ]
   }
  }
 ]
}
