Technology Overview

The PDC is built on the principle that any technology used to develop the data commons should be non-proprietary, extensible, and interoperable with other systems (e.g., grant management systems, data platform providers, etc.). This structure provides maximum flexibility to build on the PDC in post-pilot stages, ensures that the pilot is not tied to any particular vendor, and provides an opportunity for all organizations, regardless of systems and technical capabilities, to access and participate in the PDC as it grows.

The Philanthropy Data Commons development team leverages GitHub for all transparency and visibility. The main location for all this ongoing work is:

https://github.com/PhilanthropyDataCommons

Architecture

PDC Archirecture snapshot 20231010

Most current version is always here

Concepts

  • The core of the PDC is its API. All third party integrations and user interfaces are powered by that API.
  • GMS Scrapers pull data from a GMS api on a regular basis and inject that data into the PDC.
  • GMS Ingesters are provided data by a GMS (e.g. in the form of batch exports) and inject that data into the PDC.
  • Integrated GMSs are GMSs that know how to inject data into the PDC directly.
  • Infomediaries are third party information sources, and might be scraped / ingested (TBD based on what we learn).

Entity Relationship Diagram

Most current version is always here

Narrative

  1. An Applicant submits a Proposal

  2. Proposal is a response to an Opportunity. An Opportunity represents a given challenge, RFP, etc.

  3. An Opportunity establishes an Application Form. An application form is the set of fields that make up an application. An Opportunity might update its Application Form over time, which is why an Opportunity can have many Application Forms.

  4. An Application Form will define many Application Form Fields.

  5. An Application Form Field represents a Base Field.

Meanwhile…

  1. Proposal can have more than one Proposal Version. This occurs as a proposal is updated or revised.

  2. Proposal Version contains a set of Proposal Field Values. These are the responses that were provided by the Applicant.

  3. Proposal Field Value contains a response to a given Application Form Field. Some fields might allow multiple responses, which is why we provide a position.

The thinking is that when a new proposal is being written, a Grant Management System could ask the PDC “is there any pre-populated data we should use for this organization?”

Repositories

Key PDC repositories are directly linked below.