6 box "PolicyDesign" #LightBlue
7 participant PolicyDesign
13 API_User --> PolicyDesign : Get Policy Type Reference
14 PolicyDesign --> PolicyDB : Get Policy Type Artifact and Metadata
15 PolicyDesign --> API_User : Return Policy Type Reference and Metadata
16 API_User --> PolicyDesign : Get Policy Reference and Metadata
17 PolicyDesign --> PolicyDB : Get Policy Metadata
19 alt Policy Artifact exists
20 PolicyDesign --> API_User : Return Policy Reference and Metadata
21 else Policy Artifact does not exist
22 PolicyDesign --> API_User : Return Policy Not Found
25 API_User --> API_User : Policy Editing and Generation Session\nto get Policy Parameters from user
31 API_User --> PolicyDesign : Use Policy Type specification
32 API_User --> PolicyDesign : Create Policy PolicyDesign --> PolicyDesign : Create Policy
34 deactivate PolicyDesign
35 PolicyDesign --> PolicyDB : Save Policy Artifact and Metadata
36 PolicyDesign --> API_User : Policy Creation Result