Description
An OrderedMember
is an object that sits between an OrderedCollection
and its "real world" member to provide the order of that entity in the collection; given that the same object can have different positions in different collections, you cannot put the order on the thing itself. The predicate providesOrderFor
links the OrderedMember
to that entity, and has either a sequence number or precedence relationships.
I have a use case for a temporal Membership
relation between something and a collection. It can hold dates and potentially other information about that membership (e.g., who added it?). It strikes me that this is a generalization of our OrderedMember
, and that if we replace OrderedMember
with Membership
the same object can store sequence, precedence, temporal relations, and any other information about that membership.
Predicate from Membership
to Collection
: isMemberOf
. Along the lines of offers
either directly connecting an offer giver to the thing being offered, or an offer node that sits between them (see issue #1102). If that's not palatable (a membership is not really a member), maybe isMembershipIn
.
Predicate from Membership
to thing: I propose isMembershipOf
. hasMember
is smoother but runs the risk of appearing to be the inverse of isMemberOf
.