SeriesIdentifiers¶
Discussion Area:¶
{{etherpad(series-identifiers, width=100%)}}
0. Definitions¶
ID = Identifier
PID = Persistent Identifier, a member of {ID}
SID = Series Identifier, a member of {ID}
1. PID and SID Requirement¶
Any object MUST have a PID and MAY have a SID assigned.
2. Recordation of PID and SID¶
The PID and SID are recorded in the System Metadata.
SID assignment is only possible for Version 2.0 and later System Metadata.
3. Uniqueness of PIDs and SIDs¶
The set of {PID} union {SID} yields the set of {ID}s with unique members. That is, each PID MUST be unique, each SID MUST be unique, and no SID can be the same as a PID.
4. Purpose of a SID¶
The purpose of a SID is to refer to the head of an obsolescence chain and to easily reference members of an obsolescence chain. That is, given:
Px = object with PID = "Px" Px(Sx) = object with PID = "Px" and SID = "Sx" Px -> Py indicates that object Py obsoletes object Px
hence, if:
P1(S1) -> P2(S1)
then:
- P2 obsoletes P1
- P1 and P2 have a series identifier S1
CN.resolve(S1)
returns P2
5. SID Assignment¶
A SID can not be used outside of an existing obsolescence chain. Hence:
P1(S1) -> P2(S1) P3(S1)
is invalid because P3 is not part of the obsolescence chain with members P1, P2.
6. SID Mutability¶
Once assigned, the SID for an object can not be changed.
7. SID Obsolescence Chain Scope¶
An obsolescence chain can be terminated by assigning a different SID to an obsoleting object, so:
P1(S1) -> P2(S1) -> P3(S2)
indicates that the series S1 terminates at P2 even though P3 obsoletes P2 since the SID S2 is assigned to P3. Note that because of [6], it is not possible to add P3 to S1 since the assigned SID can not be changed. In this scenario:
- CN.resolve(S1) returns P2 - CN.resolve(S2) returns P3