docs/workflow-standard.puml
changeset 1225 900f3c39d29e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/docs/workflow-standard.puml	Fri Jan 11 12:46:22 2019 +0100
@@ -0,0 +1,80 @@
+@startuml
+
+scale 1024 width
+
+skinparam arrow {
+    FontSize 9
+}
+skinparam state {
+    FontSize 8
+    FontStyle bold
+}
+skinparam state<<visible>> {
+    backgroundColor Lime
+}
+skinparam state<<updatable>> {
+    backgroundColor DarkGrey
+}
+
+[*] --> draft
+
+draft --> proposed : Publication\nrequest
+retired --> proposed : Publication\nrequest
+
+proposed --> canceled : Cancel publication\nrequest
+canceled --> draft : <i>automatic</i>\n(if never published)
+canceled --> retired : <i>automatic</i>\n(if already published)
+
+proposed --> refused : Refuse\npublication
+refused --> draft : <i>automatic</i>\n(if never published)
+refused --> retired : <i>automatic</i>\n(if already published)
+
+proposed --> prepublished : Publish\n(with future publication date)
+prepublished --> published : <i>system</i>\n(at publication date)
+prepublished --> proposed : Cancel\npublication
+
+proposed --> published : Publish
+
+published --> retiring : Request\nretiring
+published --> retired : <i>automatic</i>\n(passed expiration date)
+
+retiring --> published : Cancel retire\nrequest
+retiring --> retired : Retire
+
+retired --> archiving : Archive\nrequest
+archiving --> retired : Cancel archive\n request
+archiving --> archived : Archive
+
+published --> archived : <i>system</i>\n(new published version)
+retiring --> archived : <i>system</i>\n(new published version)
+retired --> archived : <i>system</i>\n(new published version)
+
+published --> draft : Create\nnew version
+retiring --> draft : Create\nnew version
+retired --> draft : Create\nnew version
+archiving --> draft : Create\nnew version
+archived --> draft : Create\nnew version
+
+draft --> [*] : Delete version
+
+state "draft" as draft <<updatable>>
+state "pre-published" as prepublished
+state "published" as published <<visible>>
+state "retiring" as retiring <<visible>>
+state "retired" as retired <<updatable>>
+
+state "Updatable states" as UpdatableStates <<updatable>>
+note right of UpdatableStates
+    This states are
+    updatable by
+    contributors
+end note
+
+state "Visible states" as VisibleStates <<visible>>
+note right of VisibleStates
+    This states
+    are visible in
+    front-office
+end note
+
+@enduml
\ No newline at end of file