About this project
Methodology
Senate.ph is an independent civic information project. It is not affiliated with, endorsed by, or operated by the Senate of the Philippines, the House of Representatives, or any government body.
Provenance on every record
Each bill, vote, senator and news item stores its source URL, the time we retrieved it, the source publication time when the source provides one, and the ingestion version that produced it. If we cannot cite a source, we do not present a value as a fact.
Freshness, not “live”
We say Updated rather than Live until a measured source publication delay supports a stronger claim. Each source page shows its last successful update and is flagged stale or outage when it stops returning fresh data.
Vote-state semantics
A vote applies to one dated motion or stage. We keep Yes, No, Abstain, Absent and Unknown / not published strictly distinct. A missing individual record is shown as unknown and is never converted into absence, abstention or a no vote.
Sponsorship and authorship are filing actions. They are modelled separately from vote choice and never imply how anyone voted.
Identity and terms
People are keyed to a stable internal ID plus a chamber and congressional term, so a name change or a new Congress never merges two different people and a historical role is not shown as current.
Pending cases and absences
When a senator is charged, detained, suspended or absent from the chamber, we record it as a dated note on their profile with at least one linked news report, usually two. We describe charges as charges and allegations as allegations, never as findings of guilt, and we include the senator's stated response where the source reports it. A note is updated or removed when the underlying situation changes and a source reports it.
Bloc membership is shown only where a sourced list names the senator. Senators absent from every sourced list carry no bloc rather than an inferred one.
Corrections
When a source corrects a record, we retain the correction note and replace the value in place rather than creating a duplicate. See Corrections to report an error.