layout | title | id |
---|---|---|
class |
Membership | Popolo |
membership |
- Data Specification
- Classes and properties
- Membership
No one size fits all in representing the relationship between people and organizations.
In some cases, a simple binary relation is enough, e.g. a memberOf
property linking an organization and a person. In other cases, a complex n-ary relation is required, e.g. to describe the duration of the person's membership; in such cases, we create a new class to represent the relation, e.g. a Membership
class, and attach properties to it, like duration, to describe the relationship between the person and the organization.
According to this data specification, a person is a member of an organization, and may optionally hold a post in that organization through their membership, as illustrated by the class diagram below.
The Membership class should have properties for:
-
label
Chairman of the XYZ Party
-
the role that the member fulfills in the organization
Chairman
-
the person (or organization) that is a member of the organization
John Doe
-
the organization in which the person (or organization) is a member
XYZ Party
-
the post held by the member in the organization
Chairman of the XYZ Party
-
the organization on whose behalf the person is a member of the organization
Member of the W3C Open Government Community Group on behalf of XYZ Inc.
-
the geographic area to which the membership is related
Member of Parliament for Avalon
-
the date on which the relationship began
since 2000
-
the date on which the relationship ended
January 1, 2013
-
the means of contacting the member of the organization
1 Main Street
Anytown, USA
555-555-0100
[email protected] -
external links
A URL to a document about the membership.
Briefly, the survey of existing specifications concludes that only the Organization ontology offers a rich membership model for describing the relation between people and organizations. Given the complex encoding of time intervals in RDF, the schema:validFrom
and schema:validUntil
pair is used instead of org:memberDuring
, an alternative described by the original developers of the Organization ontology.
Term | Mapping | Definition |
---|---|---|
Membership | org:Membership |
A relationship between a member and an organization |
label | skos:prefLabel |
A label describing the membership |
role | org:role |
The role that the member fulfills in the organization |
member | org:member 1 |
The person or organization that is a member of the organization |
organization | org:organization 1 |
The organization in which the person or organization is a member |
post | opengov:post |
The post held by the member in the organization |
on behalf of | opengov:onBehalfOf |
The organization on whose behalf the person is a member of the organization |
geographic area | opengov:area |
The geographic area to which the membership is related |
start date | schema:validFrom |
The date on which the relationship began |
end date | schema:validUntil |
The date on which the relationship ended |
contact detail | opengov:contactDetail |
A means of contacting the member of the organization |
external links | rdfs:seeAlso |
A URL to a document about the membership |
1. The Organization ontology defines the inverse property org:hasMembership
.
A membership relation cannot exist without both a member and an organization. All memberships must assign values to either member
, person
, or person_id
and to either organization
, organization_id
, post
or post_id
.
JSON differences from other RDF serializations:
- The term
label
is used instead ofprefLabel
, to be consistent with the ContactDetail class. - The value of the
role
property is a string, instead of anorg:Role
. - The term
person
orperson_id
is used in the common case of relating a person to an organization. The termmember
may be used to relate either a person or an organization to an organization (see an example). - The terms
start_date
andend_date
2 are used instead ofvalidFrom
andvalidUntil
, for backwards compatibility and for better semantics. - The term
links
is used instead ofseeAlso
and is serialized as an array of link objects.
2. With respect to reuse, the terms start_date
and end_date
are used in the Participation ontology and others.
None.