Overview

classDiagram
	direction BT

	User

	Site 
	Site <-- Partnership
	Site <-- Neighbourhood
	Site <.. User : Site admin
	
	Neighbourhood <-- Address
	Neighbourhood <-- Partner : Service area
	
	Address <-- Event
	Address <-- Partner
	
	Partner <-- Event
	Partner <.. User : Partner admin

	Partnership <-- Partner
	Partnership <.. User : Partnership admin

	Calendar <-- Partner : Manages
	
	Event <-- Calendar : Imports

	Site : Displays listings	
	User : Controls access
	Neighbourhood : Political area
	Address : Actual location
	Calendar : External event source
	Partnership : Community of interest
	Partner : Organisation, group, institution
	Event : Single event

	

Data types

Partners

individual organisations, campaigns, groups, institutions, venues, etc. The coordinator (ideally a paid role) initially can write up descriptions of each group from public information sources, and then send the group a login to edit it. Partners can either be at an address (community centres, theatres, places of worship etc), have a service area (support lines, outreach services), or both.

Calendars

Individual event sources such as iCal feeds, APIs, etc. A calendar comes with a set of rules for how to import events. Are they all at the same location? Should each address be looked up and matched to a venue PlaceCal already knows about? Are they online? Calendars can have events for multiple partners, one partner can have multiple calendars, etc.

Neighbourhoods

UK political wards, districts, regions, counties etc (”communities of place”). This is the primary way people understand where things are and where they live (not “1.2km”, for example). It’s also how institutions run services on the ground so it matches up to existing political boundaries. PlaceCal sorts everything into neighbourhoods and allows listings based on various scales.

Events

Single event listings — just a note you can’t directly make these in PlaceCal! Events get assigned to a partner and sorted by neighbourhood using one of a number of heuristics.

Partnerships

Communities of interest, essentially collections of partners. E.g. The Trans Dimension, GMSC

Categories

Top down taxonomy of partner types e.g. age friendly, LGBT

Users

People who log in and add data. We work on a whitelist-only system: you need an invite from a local coordinator to add information. This is to keep the Nazis out. Less dramatically, it’s to make sure that the info is made based on a real life trust network and not any old reply guy. User permissions can be root (global), or based on neighbourhoods, partners, or tags (the details of this are fiddly). Note that most users don’t ever really have to log in, they just need to update their calendar.

Sites

individual frontends like hulme.placecal.org, trans-dimension.placecal.org. These are configured to show partners within a certain neighbourhood and (optionally) with certain tags. They have their own colour scheme, logo, cover photo, etc, and are personalisable by the groups.