CargoAdmin, Bureaucrats, Moderators (CommentStreams), fileuploaders, Interface administrators, newuser, Push subscription managers, Suppressors, Administrators
5,287
edits
| Line 19: | Line 19: | ||
=== 1. What is a Knowledge Graph? (Quick Basics) === | === 1. What is a Knowledge Graph? (Quick Basics) === | ||
A knowledge graph is like a smart map of information: | A knowledge graph is like a smart map of information: | ||
* Nodes = things (entities), e.g., "FEMA", "Disaster Assistance Program", "Stafford Act". | * Nodes = things (entities), e.g., "FEMA", "Disaster Assistance Program", "Stafford Act". | ||
* Edges = relationships between them, e.g., "FEMA sponsors → Disaster Assistance Program", "Disaster Assistance Program is authorized by → Stafford Act", "Stafford Act funds flow to → multiple agencies". | * Edges = relationships between them, e.g., "FEMA sponsors → Disaster Assistance Program", "Disaster Assistance Program is authorized by → Stafford Act", "Stafford Act funds flow to → multiple agencies". | ||
* The power comes from being able to ask questions across connections, like "Show me all programs authorized by laws passed after 2010 that FEMA sponsors and that have >$100M funding." | * The power comes from being able to ask questions across connections, like "Show me all programs authorized by laws passed after 2010 that FEMA sponsors and that have >$100M funding." | ||
| Line 30: | Line 27: | ||
=== 2. How MediaWiki + Cargo Creates This === | === 2. How MediaWiki + Cargo Creates This === | ||
* MediaWiki handles the "Wikipedia-like" part: | * MediaWiki handles the "Wikipedia-like" part: | ||
**Each federal entity gets its own page (e.g., a page called "Federal Emergency Management Agency" or "Wildfire Mitigation Grant Program"). | **Each federal entity gets its own page (e.g., a page called "Federal Emergency Management Agency" or "Wildfire Mitigation Grant Program"). | ||
**Pages have readable narrative text, history, discussion tabs, and look official with a USWDS (U.S. Web Design System) skin. | **Pages have readable narrative text, history, discussion tabs, and look official with a USWDS (U.S. Web Design System) skin. | ||
**This makes it citizen-friendly — people read summaries, see context, and get directed to official .gov links. | **This makes it citizen-friendly — people read summaries, see context, and get directed to official .gov links. | ||
* Cargo turns those pages into structured, graph-like data: | * Cargo turns those pages into structured, graph-like data: | ||
**Templates act like fill-in-the-blank forms. For example, a "Federal Program" template might have fields like: | **Templates act like fill-in-the-blank forms. For example, a "Federal Program" template might have fields like: | ||
***Program Name | ***Program Name | ||
***Sponsoring Agency (links to the Agency page) | ***Sponsoring Agency (links to the Agency page) | ||
***Authorizing Legislation (links to the Statute page) | ***Authorizing Legislation (links to the Statute page) | ||
***Annual Funding Amount | ***Annual Funding Amount | ||
***Eligibility Summary | ***Eligibility Summary | ||
***Primary Official URL (always points back to the real .gov site) | ***Primary Official URL (always points back to the real .gov site) | ||
***Status (Active / Proposed / Expired) | ***Status (Active / Proposed / Expired) | ||
**When someone (or the AI pipeline) fills in the template on a page, Cargo automatically stores the answers in database tables — one table per template type. | **When someone (or the AI pipeline) fills in the template on a page, Cargo automatically stores the answers in database tables — one table per template type. | ||
***Example: All "Federal Program" templates feed into a single "Programs" table in the background, with columns matching the fields. | ***Example: All "Federal Program" templates feed into a single "Programs" table in the background, with columns matching the fields. | ||
This is where the knowledge graph emerges: | |||
*Because fields can link to other pages (e.g., "Sponsoring Agency" contains a link to the "FEMA" page), Cargo knows relationships exist. | |||
*The system doesn't need fancy triple-store tech (like RDF/OWL in heavier graphs); it uses simple relational tables but supports joins, list fields, and hierarchy traversal to mimic graph behavior. | |||
=== 3. Querying the Graph — The Real Power === | === 3. Querying the Graph — The Real Power === | ||
| Line 71: | Line 52: | ||
* Simple lookup: "List all active programs sponsored by NOAA with funding >$50 million." | * Simple lookup: "List all active programs sponsored by NOAA with funding >$50 million." | ||
**Cargo scans the "Programs" table, filters on Sponsor = "NOAA", Funding > 50M, Status = "Active". | **Cargo scans the "Programs" table, filters on Sponsor = "NOAA", Funding > 50M, Status = "Active". | ||
* Relationship traversal (graph-like): | * Relationship traversal (graph-like): | ||
**"Show every program authorized by legislation containing '42 U.S.C.' that is sponsored by an agency in the Department of the Interior." | **"Show every program authorized by legislation containing '42 U.S.C.' that is sponsored by an agency in the Department of the Interior." | ||
***Joins the Programs table to Agencies table (via Sponsor field) and checks the Authorizing Legislation field. | ***Joins the Programs table to Agencies table (via Sponsor field) and checks the Authorizing Legislation field. | ||
* Cross-entity discovery: | * Cross-entity discovery: | ||
**"Find all disaster-related programs connected to FEMA, including their authorizing laws and related agencies." | **"Find all disaster-related programs connected to FEMA, including their authorizing laws and related agencies." | ||
***Uses joins and list fields (e.g., if a program has multiple linked agencies or statutes). | ***Uses joins and list fields (e.g., if a program has multiple linked agencies or statutes). | ||
* Dynamic pages: | * Dynamic pages: | ||
**A task-oriented page like "Prepare for Wildland Fire" can embed live query results: a table of relevant programs, pulled fresh from Cargo data, with links back to official sites. | **A task-oriented page like "Prepare for Wildland Fire" can embed live query results: a table of relevant programs, pulled fresh from Cargo data, with links back to official sites. | ||
Queries can output as: | Queries can output as: | ||
* Tables/lists on wiki pages | * Tables/lists on wiki pages | ||
* Maps (if coordinates are stored) | * Maps (if coordinates are stored) | ||
* JSON/CSV exports (for feeding agency LLMs or dashboards) | * JSON/CSV exports (for feeding agency LLMs or dashboards) | ||
* Inline dynamic content (updates whenever source data changes) | * Inline dynamic content (updates whenever source data changes) | ||
=== 4. Why This Counts as a Knowledge Graph (Even If Lightweight) === | === 4. Why This Counts as a Knowledge Graph (Even If Lightweight) === | ||
* It has entities (pages/nodes) and typed relationships (via template fields and links). | * It has entities (pages/nodes) and typed relationships (via template fields and links). | ||
* You can traverse connections using joins, HOLDS (for lists), WITHIN (for hierarchies), etc. | * You can traverse connections using joins, HOLDS (for lists), WITHIN (for hierarchies), etc. | ||
* It's queryable at scale — supports parametric searches agencies need for AI (e.g., "programs related to arid land agriculture with >$50M funding"). | * It's queryable at scale — supports parametric searches agencies need for AI (e.g., "programs related to arid land agriculture with >$50M funding"). | ||
* Data stays fresh and attested — tied to official .gov sources via the AI pipeline, with confidence scores and always-link-back banners. | * Data stays fresh and attested — tied to official .gov sources via the AI pipeline, with confidence scores and always-link-back banners. | ||
* Unlike heavier graphs (e.g., Neo4j or RDF stores used in some federal pilots), it's simple, open-source, low-maintenance, and integrated with readable wiki pages. | * Unlike heavier graphs (e.g., Neo4j or RDF stores used in some federal pilots), it's simple, open-source, low-maintenance, and integrated with readable wiki pages. | ||
edits