Global.Church Developer Portal
Getting Started

Key Concepts

This page introduces the foundational ideas behind the Global.Church data model. You don't need to be an ontology expert — just a developer who wants to understand how the data is structured.

What's a Triple?

The knowledge graph stores everything as triples — simple subject-predicate-object statements. Think of them as sentences:

  • "Wycliffe is a Organization"
  • "Wycliffe serves the Somali people group"
  • "The Somali people group has population 25,377,558"

Each triple is a single fact. The knowledge graph is millions of these facts linked together. When you query the graph with SPARQL, you're pattern-matching across these triples to find answers.

A triple uses URIs (web addresses) to identify things unambiguously. The Wycliffe example above actually looks like this in the graph:

Code
<https://data.global.church/org/wycliffe> a gc:Organization .

Namespaces

Because URIs are long, we use short prefixes as abbreviations:

PrefixFull URIWhat it covers
gc:https://ontology.global.church/core#Core Global.Church concepts — the shared vocabulary
jp:https://ontology.global.church/joshuaproject#Joshua Project-owned concepts (engagement scales, JP metadata)
imb:https://ontology.global.church/imb#IMB-owned concepts (GSEC levels, SPI categories, assessment properties)
poe:https://ontology.global.church/poe#Phases of Engagement phase scheme (originated by the No Place Left movement)

So gc:Organization is shorthand for https://ontology.global.church/core#Organization.

Why four namespaces? Because ownership matters. Joshua Project designed the JP Scale and the 3D Insight model — those concepts belong in jp:. IMB defined GSEC levels and SPI categories — those belong in imb:. The No Place Left movement originated the Phases of Engagement phase scheme — those concepts belong in poe:. The gc: namespace holds the shared vocabulary that Global.Church maintains as the integration layer.

The Four Core Types

The knowledge graph is organized around four main types of things:

TypeWhat it representsExample
OrganizationA mission agency, denomination, or networkWycliffe, IMB, Southern Baptist Convention
ChurchA church (subclass of Organization with church-specific properties)First Baptist Church, Calvary Church
PeopleGroupAn ethnolinguistic people group, often scoped to a countrySomali in Kenya, Han Chinese in China
MinistryActivityA ministry event or ongoing work — church planting, Bible translation, trainingA prayer walk in Nairobi, a translation project
MissionResourceA resource used in ministry — Scripture, media, training materialsThe Jesus Film in Somali, a discipleship curriculum

These five types are what most queries revolve around: which organizations and churches are engaging which people groups, through what activities, using what resources.

gc:Church is a subclass of gc:Organization — every church is also an organization, so ?x a gc:Organization queries return both. Church has additional properties like gc:isMultiCampus, gc:hasCommunityState, and gc:hasGatheringState that don't apply to other organization types.

The PROV-O Foundation

Every type in the graph fits into one of three categories from the W3C PROV-O standard:

  • Agent — Who acts. Organizations, churches, teams, and people groups (as functional social collectives).
  • Activity — What happened. Ministry activities, assessments, endorsement issuances.
  • Entity — What was produced or tracked. Assessment results, resources, engagement claims.

This isn't just academic classification — it gives every piece of data a built-in provenance story. You can always trace back: who said this? When? Based on what evidence?

Reference data like language codes, religion codes, and geographic codes sit outside this system. They're stable classification vocabularies that data points to, not data that needs its own provenance trail.

Named Graphs

Data from different sources lives in separate named graphs. Think of them as labeled containers:

  • Joshua Project data lives in <https://data.global.church/joshua-project/>
  • IMB data lives in <https://data.global.church/imb/>
  • Organization data lives in <https://data.global.church/orgs/>
  • HIS registry codes live in <https://data.global.church/his-registries/>

This isolation model keeps provenance clear. If Joshua Project says a people group is at Phase 2 engagement and IMB says it's at a different level, both facts coexist in the graph — each in its own named graph. Neither is "wrong." They're different organizational perspectives, and the query layer can present both with their source attribution.

When you write SPARQL queries, you can target a specific graph or query across all of them.

Next Steps

Last modified on