{ "$schema": "http://json-schema.org/draft-03/schema#", "id": "http://popoloproject.com/schemas/membership.json#", "title": "Membership", "description": "A relationship between a person and an organization", "type": "object", "properties": { "id": { "description": "The membership's unique identifier", "type": ["string", "null"] }, "label": { "description": "A label describing the membership", "type": ["string", "null"] }, "role": { "description": "The role that the person fulfills in the organization", "type": ["string", "null"] }, "person_id": { "description": "The ID of the person who is a party to the relationship", "type": ["string", "null"] }, "person": { "description": "The person who is a party to the relationship", "$ref": "http://popoloproject.com/schemas/person.json#" }, "organization_id": { "description": "The ID of the organization that is a party to the relationship", "type": ["string", "null"] }, "organization": { "description": "The organization that is a party to the relationship", "$ref": "http://popoloproject.com/schemas/organization.json#" }, "post_id": { "description": "The ID of the post held by the person in the organization through this membership", "type": ["string", "null"] }, "post": { "description": "The post held by the person in the organization through this membership", "$ref": "http://popoloproject.com/schemas/post.json#" }, "start_date": { "description": "The date on which the relationship began", "type": ["string", "null"], "pattern": "^[0-9]{4}(-[0-9]{2}){0,2}$" }, "end_date": { "description": "The date on which the relationship ended", "type": ["string", "null"], "pattern": "^[0-9]{4}(-[0-9]{2}){0,2}$" }, "contact_details": { "description": "Means of contacting the person who is a party to the relationship", "type": "array", "items": { "$ref": "http://popoloproject.com/schemas/contact_detail.json#" } }, "links": { "description": "URLs to documents about the membership", "type": "array", "items": { "$ref": "http://popoloproject.com/schemas/link.json#" } }, "created_at": { "description": "The time at which the resource was created", "type": ["string", "null"], "format": "date-time" }, "updated_at": { "description": "The time at which the resource was last modified", "type": ["string", "null"], "format": "date-time" }, "sources": { "description": "URLs to documents from which the membership is derived", "type": "array", "items": { "$ref": "http://popoloproject.com/schemas/link.json#" } } } }