Commit 29a42b47 authored by uschwar1's avatar uschwar1
Browse files

add Internals of the Global PID Registration and Resolution

parent e4a6a70d
......@@ -123,34 +123,30 @@ PIDconsumer *--> PIDreg : "requests Prefix"
```
## Overview
## Internals of the Global PID Registration and Resolution
The complete description of all internal relations is given in the following diagram:
The same diagram with and unfolding of the internals of the global pid registration and resolution
```plantuml
actor User
actor "Type Registrar" as DTRboard
actor "Organisation/Community" as Cmty
agent Repository as Repo
'actor User
'actor "Type Registrar" as DTRboard
'actor "Organisation/Community" as Cmty
'agent Repository as Repo
agent "PID consumer" as PIDconsumer
database "PID Service" as PIDserv
database "Global PID Registry" as GPR
database "Data Type Registry" as DTR
database "Profile Registry" as ProfR
'database "Data Type Registry" as DTR
'database "Profile Registry" as ProfR
rectangle "Local PID Provider" as PIDprov
rectangle "Top-level Registration Authority" as TRA
rectangle "Second-level Registration Authority" as SRA
rectangle "Second-level Prefix Registrar" as SPR
User o--> Repo : "registers Data"
User <--* Repo : "issues credential"
User --> Repo : "accesses Data"
User --> GPR : "queries PID"
'Repo --> Repo : "manages Data"
Repo o--> PIDserv : "registers/modifies PID"
PIDserv ..> User : "resolves PID"
PIDserv <--o Repo : "accesses Prefix"
PIDserv *..> Repo : "issues credential"
Repo ..> DTR : "looks up Type"
PIDconsumer --> GPR : "queries PID"
PIDconsumer o--> PIDserv : "registers/modifies PID"
PIDserv ..> PIDconsumer : "resolves PID"
PIDserv <--o PIDconsumer : "accesses Prefix"
PIDserv *..> PIDconsumer : "issues credential"
SRA *..> SPR : "registers Prefix namespace"
SPR o..> GPR : "registers Prefix"
TRA o..> GPR : "assigns Prefix namespace"
......@@ -160,17 +156,10 @@ GPR ..> PIDserv : "resolves Prefix namespace"
SPR *....> PIDprov : "retrieves allocated Prefix"
SPR <....* PIDprov : "provides PID service info"
PIDserv <..o PIDprov : "implements and runs PID service"
Repo *--> SRA : "requests Prefix"
DTRboard o--> DTR : "registers/modifies Type"
DTRboard <--* DTR : "issues credential"
PIDserv ..> DTR : "refers to Types"
Cmty o--> ProfR : "registers/modifies Profile"
Cmty <--* ProfR : "issues credential"
Repo ..> ProfR : "looks up Profile"
PIDserv ..> ProfR : "complies to Profile"
PIDconsumer *--> SRA : "requests Prefix"
```
## Overview without Types and Profiles
## Overview
The same diagram without types and profiles:
......@@ -216,3 +205,51 @@ Repo *--> SRA : "requests Prefix"
'Repo ..> ProfR : "looks up Profile"
'PIDserv ..> ProfR : "complies to Profile"
```
## Overview Including Types and Profiles
The complete description of all internal relations including types and
profiles is given in the following diagram:
```plantuml
actor User
actor "Type Registrar" as DTRboard
actor "Organisation/Community" as Cmty
agent Repository as Repo
database "PID Service" as PIDserv
database "Global PID Registry" as GPR
database "Data Type Registry" as DTR
database "Profile Registry" as ProfR
rectangle "Local PID Provider" as PIDprov
rectangle "Top-level Registration Authority" as TRA
rectangle "Second-level Registration Authority" as SRA
rectangle "Second-level Prefix Registrar" as SPR
User o--> Repo : "registers Data"
User <--* Repo : "issues credential"
User --> Repo : "accesses Data"
User --> GPR : "queries PID"
'Repo --> Repo : "manages Data"
Repo o--> PIDserv : "registers/modifies PID"
PIDserv ..> User : "resolves PID"
PIDserv <--o Repo : "accesses Prefix"
PIDserv *..> Repo : "issues credential"
Repo ..> DTR : "looks up Type"
SRA *..> SPR : "registers Prefix namespace"
SPR o..> GPR : "registers Prefix"
TRA o..> GPR : "assigns Prefix namespace"
TRA o..> GPR : "implements and runs GPR service"
TRA *..> SPR : "issues credential"
GPR ..> PIDserv : "resolves Prefix namespace"
SPR *....> PIDprov : "retrieves allocated Prefix"
SPR <....* PIDprov : "provides PID service info"
PIDserv <..o PIDprov : "implements and runs PID service"
Repo *--> SRA : "requests Prefix"
DTRboard o--> DTR : "registers/modifies Type"
DTRboard <--* DTR : "issues credential"
PIDserv ..> DTR : "refers to Types"
Cmty o--> ProfR : "registers/modifies Profile"
Cmty <--* ProfR : "issues credential"
Repo ..> ProfR : "looks up Profile"
PIDserv ..> ProfR : "complies to Profile"
```
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment