From 652696394e178e34a6aab22da4cae0a3ad5051c9 Mon Sep 17 00:00:00 2001
From: Valentin Rigal <rigal@teklia.com>
Date: Mon, 23 Nov 2020 13:42:22 +0000
Subject: [PATCH] Endpoint to list group memberships

---
 arkindex/dataimport/tests/test_imports.py     |    4 +-
 arkindex/documents/fixtures/data.json         | 1566 +++++++++--------
 .../management/commands/build_fixtures.py     |   19 +-
 arkindex/project/api_v1.py                    |    2 +
 arkindex/project/tests/__init__.py            |    1 +
 arkindex/users/api.py                         |   24 +-
 arkindex/users/models.py                      |   18 +
 arkindex/users/serializers.py                 |   22 +-
 arkindex/users/tests/test_membership.py       |   99 +-
 9 files changed, 1009 insertions(+), 746 deletions(-)

diff --git a/arkindex/dataimport/tests/test_imports.py b/arkindex/dataimport/tests/test_imports.py
index 33fe9ab543..67b64c2442 100644
--- a/arkindex/dataimport/tests/test_imports.py
+++ b/arkindex/dataimport/tests/test_imports.py
@@ -186,9 +186,9 @@ class TestImports(FixtureAPITestCase):
         self.assertEqual(response.json(), {'creator': "User with email or id 'blabla@blabla.fr' does not exist"})
 
         self.client.force_login(self.user)
-        response = self.client.get(reverse('api:import-list'), {'creator': '5'})
+        response = self.client.get(reverse('api:import-list'), {'creator': '1337'})
         self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
-        self.assertEqual(response.json(), {'creator': "User with email or id '5' does not exist"})
+        self.assertEqual(response.json(), {'creator': "User with email or id '1337' does not exist"})
 
     def test_list_filter_id(self):
         self.client.force_login(self.user)
diff --git a/arkindex/documents/fixtures/data.json b/arkindex/documents/fixtures/data.json
index 5d3b2c8d43..66ca52c088 100644
--- a/arkindex/documents/fixtures/data.json
+++ b/arkindex/documents/fixtures/data.json
@@ -1,33 +1,33 @@
 [
 {
     "model": "dataimport.repository",
-    "pk": "5e396627-e235-40d5-b726-fe108be8fb1b",
+    "pk": "6ebe4309-aa8d-4e40-af8f-6db4a0b086f7",
     "fields": {
         "url": "http://my_repo.fake/workers/worker",
         "type": "worker",
         "hook_token": "worker-hook-token",
-        "credentials": "5665e36b-ae6c-4830-84ab-c283e363c1c5",
+        "credentials": "9fb76b0e-6529-4c2c-acc4-02d616554102",
         "provider_name": "GitLabProvider"
     }
 },
 {
     "model": "dataimport.repository",
-    "pk": "cdb5b204-1a2a-4cd2-be2f-18987a524946",
+    "pk": "7a51c052-445a-4b37-80d1-2ffa8ca293b9",
     "fields": {
         "url": "http://gitlab/repo",
         "type": "iiif",
         "hook_token": "hook-token",
-        "credentials": "5665e36b-ae6c-4830-84ab-c283e363c1c5",
+        "credentials": "9fb76b0e-6529-4c2c-acc4-02d616554102",
         "provider_name": "GitLabProvider"
     }
 },
 {
     "model": "dataimport.revision",
-    "pk": "0f0342f5-de30-435e-82e1-ae49f8ba7531",
+    "pk": "7a7a1e1d-d1e3-4ea8-a2bb-60ba4af7cab9",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "repo": "cdb5b204-1a2a-4cd2-be2f-18987a524946",
+        "repo": "7a51c052-445a-4b37-80d1-2ffa8ca293b9",
         "hash": "42",
         "message": "a",
         "author": "me"
@@ -35,11 +35,11 @@
 },
 {
     "model": "dataimport.revision",
-    "pk": "8a3312dd-2bd3-4945-b698-18665e4067ee",
+    "pk": "ffb8a683-836f-4e6a-a59b-17062885330f",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "repo": "5e396627-e235-40d5-b726-fe108be8fb1b",
+        "repo": "6ebe4309-aa8d-4e40-af8f-6db4a0b086f7",
         "hash": "1337",
         "message": "My w0rk3r",
         "author": "Test user"
@@ -47,80 +47,80 @@
 },
 {
     "model": "dataimport.worker",
-    "pk": "594c0947-bc77-4789-885f-d25c3f3002d6",
+    "pk": "1f70863f-fe00-42e9-b8b1-905fa8d88aac",
     "fields": {
         "name": "Recognizer",
         "slug": "reco",
         "type": "recognizer",
-        "repository": "5e396627-e235-40d5-b726-fe108be8fb1b"
+        "repository": "6ebe4309-aa8d-4e40-af8f-6db4a0b086f7"
     }
 },
 {
     "model": "dataimport.worker",
-    "pk": "77a92b42-6ef7-4f64-a13f-91aa428c027f",
+    "pk": "851c8902-ca57-42ff-9f16-06b6a8317bbd",
     "fields": {
         "name": "Document layout analyser",
         "slug": "dla",
         "type": "dla",
-        "repository": "5e396627-e235-40d5-b726-fe108be8fb1b"
+        "repository": "6ebe4309-aa8d-4e40-af8f-6db4a0b086f7"
     }
 },
 {
     "model": "dataimport.workerversion",
-    "pk": "6d9e758b-fc18-4c14-b0bc-94a15163625e",
+    "pk": "5aeac49b-03b7-4c1c-8593-9d2e27b6a6df",
     "fields": {
-        "worker": "594c0947-bc77-4789-885f-d25c3f3002d6",
-        "revision": "8a3312dd-2bd3-4945-b698-18665e4067ee",
+        "worker": "851c8902-ca57-42ff-9f16-06b6a8317bbd",
+        "revision": "ffb8a683-836f-4e6a-a59b-17062885330f",
         "configuration": {
             "test": 42
         },
         "state": "available",
-        "docker_image": "462af040-499c-4b7b-85d1-25d2d1b349e8",
+        "docker_image": "b795d482-d08d-4599-ae82-db16ea4331e8",
         "docker_image_iid": null
     }
 },
 {
     "model": "dataimport.workerversion",
-    "pk": "b0aa5214-ac0f-48b8-800a-e8a66545e0fd",
+    "pk": "db7dc219-1cc6-4f2a-a372-14a42e76cf0d",
     "fields": {
-        "worker": "77a92b42-6ef7-4f64-a13f-91aa428c027f",
-        "revision": "8a3312dd-2bd3-4945-b698-18665e4067ee",
+        "worker": "1f70863f-fe00-42e9-b8b1-905fa8d88aac",
+        "revision": "ffb8a683-836f-4e6a-a59b-17062885330f",
         "configuration": {
             "test": 42
         },
         "state": "available",
-        "docker_image": "462af040-499c-4b7b-85d1-25d2d1b349e8",
+        "docker_image": "b795d482-d08d-4599-ae82-db16ea4331e8",
         "docker_image_iid": null
     }
 },
 {
     "model": "documents.corpus",
-    "pk": "0549780c-bce1-445e-8f07-7e32889fe71e",
+    "pk": "dab98946-799e-415f-abcb-869cf1bda854",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
         "name": "Unit Tests",
         "description": "",
-        "repository": "cdb5b204-1a2a-4cd2-be2f-18987a524946",
+        "repository": "7a51c052-445a-4b37-80d1-2ffa8ca293b9",
         "public": true
     }
 },
 {
     "model": "documents.elementtype",
-    "pk": "3536ef92-ad56-4b63-b243-d71afc4fdded",
+    "pk": "46ea8eee-f118-4706-a288-084bb64bcee0",
     "fields": {
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "slug": "volume",
-        "display_name": "Volume",
-        "folder": true,
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "slug": "surface",
+        "display_name": "Surface",
+        "folder": false,
         "allowed_transcription": null
     }
 },
 {
     "model": "documents.elementtype",
-    "pk": "419898d9-287c-48fb-9fce-22dc237bec14",
+    "pk": "5f84f077-bd8f-4d7f-ab18-e8388fcf0325",
     "fields": {
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
         "slug": "word",
         "display_name": "Word",
         "folder": false,
@@ -129,9 +129,9 @@
 },
 {
     "model": "documents.elementtype",
-    "pk": "433202e9-f8c1-4f76-9b65-7fff323798b2",
+    "pk": "729a81f4-e38e-4e79-b2dc-eafbd00b447e",
     "fields": {
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
         "slug": "act",
         "display_name": "Act",
         "folder": false,
@@ -140,316 +140,316 @@
 },
 {
     "model": "documents.elementtype",
-    "pk": "611f5a3e-1137-4984-b27c-a07d3c7ff728",
+    "pk": "7b5938ee-dc1e-4e37-890a-1e5988e99099",
     "fields": {
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "slug": "text_line",
-        "display_name": "Line",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "slug": "page",
+        "display_name": "Page",
         "folder": false,
-        "allowed_transcription": "line"
+        "allowed_transcription": null
     }
 },
 {
     "model": "documents.elementtype",
-    "pk": "68ac563f-b627-4f16-b941-f3a136a0ed26",
+    "pk": "97ec5a9a-06fc-4d72-8a11-f107b76af6f2",
     "fields": {
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "slug": "page",
-        "display_name": "Page",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "slug": "text_line",
+        "display_name": "Line",
         "folder": false,
-        "allowed_transcription": null
+        "allowed_transcription": "line"
     }
 },
 {
     "model": "documents.elementtype",
-    "pk": "bff5642d-b6a9-4856-bc8f-1c01cb58c0b0",
+    "pk": "dc3affbd-6a01-4aea-abce-c9f322698254",
     "fields": {
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "slug": "surface",
-        "display_name": "Surface",
-        "folder": false,
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "slug": "volume",
+        "display_name": "Volume",
+        "folder": true,
         "allowed_transcription": null
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "1010dfe8-1285-44d7-9c2e-f1e5f212b218",
+    "pk": "0aacf1f9-41d7-4dfc-9d2a-b903e63f035d",
     "fields": {
-        "element": "19dfd0e1-1517-4674-8d28-0b0d402afce6",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\"]",
-        "ordering": 4
+        "element": "a1c3c97c-2240-4c00-961e-12ca69b627a0",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\"]",
+        "ordering": 1
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "1a10ea74-7d77-497f-8ecb-7cfb71711a8d",
+    "pk": "134b9415-c240-4d55-beb0-9adec4b138f8",
     "fields": {
-        "element": "550014fa-b5b4-46ee-b70d-7c00bb913ac7",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\"]",
-        "ordering": 1
+        "element": "525de37a-190f-4760-b831-4bf9bd4909f5",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\"]",
+        "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "1f1affd5-6ea3-4200-9b17-cdbce7ea367d",
+    "pk": "32b3ceb2-a64e-48d6-9429-8b5acdb953a5",
     "fields": {
-        "element": "ed7a03cb-199f-4b54-b659-9567703cd361",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"ad7283c3-6643-49e2-a966-2e5c55cf4638\"]",
+        "element": "bcfc8f66-d7a5-48bb-a17e-f08b209911c0",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"bf4d6982-d8c0-4b81-8f49-3352d2ac90ee\"]",
         "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "235ba787-53d5-460a-94ec-6de1db578d4b",
+    "pk": "50d6646e-c7e3-4c02-a843-aa66abcbc264",
     "fields": {
-        "element": "c0007432-82e1-4420-8075-173af982ba6f",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"4ad6a90c-f4ba-48e5-91ce-14d3bd3c6ba3\"]",
+        "element": "edb4eec4-4860-446a-977e-acf83c031df9",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"1b2a3adb-3740-49d3-95e7-ce14dfc7da93\"]",
         "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "29424414-5fbf-480e-b61b-1e2a109f8bf2",
+    "pk": "5e770ea3-3e6f-4f9c-b433-92b2c86da2c8",
     "fields": {
-        "element": "69a25981-0e8e-4cf3-93a0-9a5c17030f4f",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"e6b3aed3-c443-4df2-98c2-f7da41eaceec\"]",
-        "ordering": 2
+        "element": "0f83e510-f4f6-4048-86a4-f314c7f88223",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\"]",
+        "ordering": 4
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "2faf7133-54c1-46fd-b4f0-3498984d4a1a",
+    "pk": "5e802dbb-4877-410a-b136-52c9438d03d5",
     "fields": {
-        "element": "c7295c75-b855-4b70-9475-a00e7ef9a572",
-        "path": "[\"3df1ce74-6f2d-473d-bd0d-b20bf6b913ef\"]",
-        "ordering": 2
+        "element": "e9e92536-f98a-4dad-bb7e-0aa7e486b894",
+        "path": "[\"bb910784-dcb4-4b26-aab0-916313c3eb91\"]",
+        "ordering": 1
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "31640292-df9c-4101-b4c0-1179e6152a4d",
+    "pk": "6ec3009d-e3ec-41dd-9f27-291f2aeca87b",
     "fields": {
-        "element": "9433969b-792e-44bf-93ad-db17c6bcd3de",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"19dfd0e1-1517-4674-8d28-0b0d402afce6\"]",
-        "ordering": 0
+        "element": "408ff192-649a-4f93-9a1a-0603641b4725",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\"]",
+        "ordering": 2
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "4a36de70-76b4-4671-819f-39f7a881a661",
+    "pk": "6fa0b074-35f6-44f2-bf90-585c410cf550",
     "fields": {
-        "element": "28ce8c14-2514-4fd5-bd6f-bd7fb668e36a",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"bee8c02b-98f6-4185-9897-762b62f73b3b\"]",
+        "element": "6e829b5f-2f51-4c93-babb-418d5f01c8b0",
+        "path": "[\"bb910784-dcb4-4b26-aab0-916313c3eb91\"]",
         "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "5275e23b-de55-4fc4-8d5f-b3a07d803aa4",
+    "pk": "73da7671-4e08-478a-9b89-066e5428ac58",
     "fields": {
-        "element": "816b5708-411d-4763-b03b-66ef5a3531d6",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"84013d64-a85b-47c7-b734-722de1ae0d4b\"]",
-        "ordering": 1
+        "element": "a965eed2-b66c-41ec-b8fe-a9fab12eee9e",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"bf4d6982-d8c0-4b81-8f49-3352d2ac90ee\"]",
+        "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "60a579da-f473-4519-ac0a-4ca681be33d5",
+    "pk": "74b57d81-ebf5-4135-a82b-6aabc4e74840",
     "fields": {
-        "element": "de4cd51c-3f98-4b97-92c7-fd8b7c15feea",
-        "path": "[\"3df1ce74-6f2d-473d-bd0d-b20bf6b913ef\"]",
+        "element": "eb3bb68f-918b-4b90-90f2-27df023e4772",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"a1c3c97c-2240-4c00-961e-12ca69b627a0\"]",
         "ordering": 1
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "6176fe99-ca33-4fa3-aaa9-2af038475466",
+    "pk": "8370b7f0-be3b-4e83-937b-b7b383485536",
     "fields": {
-        "element": "bee8c02b-98f6-4185-9897-762b62f73b3b",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\"]",
-        "ordering": 2
+        "element": "af5f778a-0b86-4422-8594-91de359aa795",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"525de37a-190f-4760-b831-4bf9bd4909f5\"]",
+        "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "6a8148b3-f9d3-4179-bd61-4e368c7afdb5",
+    "pk": "8c278e8f-8690-4e6f-adf2-560de42e18de",
     "fields": {
-        "element": "4721e07a-2d53-4066-85a5-1c3a99e0840a",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"4ad6a90c-f4ba-48e5-91ce-14d3bd3c6ba3\"]",
-        "ordering": 2
+        "element": "1b2a3adb-3740-49d3-95e7-ce14dfc7da93",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\"]",
+        "ordering": 3
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "76ee2d3a-7509-4cb4-ad96-ed4ea18a174e",
+    "pk": "90949826-ca71-42cc-ad6e-3c3c91563f3f",
     "fields": {
-        "element": "ef787c30-b839-43f3-8a5e-cc87498cffd1",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"facee923-af23-4d71-8882-b20d621a66fd\"]",
+        "element": "2b33730b-a381-4a99-9463-b4faeb9bfde2",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"ce0dc249-37ee-4e2e-89a4-d1383b25ff8c\"]",
         "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "814eb8ab-4cef-4fd0-8fe7-8265529bc5c7",
+    "pk": "93a66f20-d5de-4588-b198-20aa3dfb4fc2",
     "fields": {
-        "element": "c143d67e-aed5-4404-aa76-f47605dbf919",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"550014fa-b5b4-46ee-b70d-7c00bb913ac7\"]",
-        "ordering": 2
+        "element": "ce0dc249-37ee-4e2e-89a4-d1383b25ff8c",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\"]",
+        "ordering": 1
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "8313a9af-2c02-42c8-869e-d9de2ccaa420",
+    "pk": "95cafbdd-7201-41b0-aeca-76580be557c0",
     "fields": {
-        "element": "f7921f4f-be7b-4e41-9c27-37447d9f622c",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"550014fa-b5b4-46ee-b70d-7c00bb913ac7\"]",
-        "ordering": 1
+        "element": "a22c9f39-95df-45de-98b9-59a9f358611d",
+        "path": "[\"bb910784-dcb4-4b26-aab0-916313c3eb91\"]",
+        "ordering": 2
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "92d7e7aa-b8a9-47c5-a85f-2fe4afff5eb2",
+    "pk": "9e3798f8-c75a-4a5e-a989-a39c1dc43213",
     "fields": {
-        "element": "2ea41a99-a805-4364-966d-60761d28dcb4",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"84013d64-a85b-47c7-b734-722de1ae0d4b\"]",
-        "ordering": 0
+        "element": "d489659c-9c67-4fb9-8758-cf70f6750e18",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"408ff192-649a-4f93-9a1a-0603641b4725\"]",
+        "ordering": 1
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "9c737671-d173-4667-bf84-4d791c0e84d2",
+    "pk": "a0c38196-4285-452b-9956-31edf88714ea",
     "fields": {
-        "element": "0e7121f8-efdd-4ef8-b5a7-ca5b4457e83c",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"e6b3aed3-c443-4df2-98c2-f7da41eaceec\"]",
+        "element": "2b269b30-fda3-4630-9784-b1c3b9a0d77f",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"bf4d6982-d8c0-4b81-8f49-3352d2ac90ee\"]",
         "ordering": 1
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "9fce56f4-7f1a-4740-9eb7-e2875e5ca4a2",
+    "pk": "b1d6b0a2-b1ee-4b89-b4fb-7b93f63b6aad",
     "fields": {
-        "element": "1477b9c2-dedf-4d44-b4bd-b1162cf8a998",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"4ad6a90c-f4ba-48e5-91ce-14d3bd3c6ba3\"]",
-        "ordering": 1
+        "element": "9c860370-6242-4ef9-87ea-351caa3a22e4",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"408ff192-649a-4f93-9a1a-0603641b4725\"]",
+        "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "a1448951-4d6f-4c6a-b34c-682deee5849f",
+    "pk": "b46d58cd-4f4b-4731-99b6-447a6373a391",
     "fields": {
-        "element": "4ad6a90c-f4ba-48e5-91ce-14d3bd3c6ba3",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\"]",
-        "ordering": 2
+        "element": "651fd593-e5ef-4f9a-b5cf-75630a5a0eb3",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"1a9d2c4e-9bf8-4c14-896f-b498de08a082\"]",
+        "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "d0013169-fb83-437a-b77f-220cfc541b15",
+    "pk": "b710f950-71eb-46ac-b24e-18df836993a1",
     "fields": {
-        "element": "e6b3aed3-c443-4df2-98c2-f7da41eaceec",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\"]",
-        "ordering": 0
+        "element": "adfcdb63-1bec-4b44-a855-3dd765dda5d8",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"408ff192-649a-4f93-9a1a-0603641b4725\"]",
+        "ordering": 2
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "d267f759-8b50-41ff-9878-b266d1883570",
+    "pk": "cf828aca-1205-4407-b261-87f3bf8d767e",
     "fields": {
-        "element": "facee923-af23-4d71-8882-b20d621a66fd",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\"]",
-        "ordering": 0
+        "element": "03e444f2-63ca-47ae-9928-efd8c790a485",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"ce0dc249-37ee-4e2e-89a4-d1383b25ff8c\"]",
+        "ordering": 1
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "e965bc59-8a71-46e9-9a99-bacc9376d94a",
+    "pk": "d17a8748-6fbb-4d09-a2c5-ee452d854208",
     "fields": {
-        "element": "71c62984-5fec-4f8c-b821-8cd8c1349a72",
-        "path": "[\"3df1ce74-6f2d-473d-bd0d-b20bf6b913ef\"]",
-        "ordering": 0
+        "element": "03d374b1-6560-438c-9fde-4e88051ab3e1",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"a1c3c97c-2240-4c00-961e-12ca69b627a0\"]",
+        "ordering": 2
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "edd68d22-aa3c-4ed0-b605-e6ae63aa8432",
+    "pk": "d1a5a6a4-7f2e-4c5a-bb16-a4909f081bb9",
     "fields": {
-        "element": "84013d64-a85b-47c7-b734-722de1ae0d4b",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\"]",
-        "ordering": 1
+        "element": "e4205894-9169-4fee-9823-e0bbc61e8724",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"bf4d6982-d8c0-4b81-8f49-3352d2ac90ee\"]",
+        "ordering": 2
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "f116e2b6-e1b4-4afa-901e-c040e2e58595",
+    "pk": "e4dfe612-52d5-4828-b60d-97cb7c4572dc",
     "fields": {
-        "element": "de16de7e-79a5-42a7-94de-6a61d04ee721",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"e6b3aed3-c443-4df2-98c2-f7da41eaceec\"]",
+        "element": "f2be38ee-c57c-4935-bf40-c15723f4e793",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"0f83e510-f4f6-4048-86a4-f314c7f88223\"]",
         "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "f43a5721-6c09-428c-93dc-93ec49d0ff9c",
+    "pk": "ec4d9260-038d-480c-b089-10ceed6b009d",
     "fields": {
-        "element": "69b51bc9-1d7d-4c9d-9289-9fb837892cad",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"550014fa-b5b4-46ee-b70d-7c00bb913ac7\"]",
+        "element": "7393f32f-1bb4-4a00-a7e6-7a05659423ea",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\", \"a1c3c97c-2240-4c00-961e-12ca69b627a0\"]",
         "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "f5053c64-2472-4edc-88b1-b0b9aff45939",
+    "pk": "f1834c5f-6535-490d-8922-b37ee621b325",
     "fields": {
-        "element": "506f4447-6bdc-4d29-9bd8-f82976116c0e",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\", \"e6b3aed3-c443-4df2-98c2-f7da41eaceec\"]",
-        "ordering": 0
+        "element": "1a9d2c4e-9bf8-4c14-896f-b498de08a082",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\"]",
+        "ordering": 2
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "faf93d73-34c0-4faa-be3c-9755076033cf",
+    "pk": "f667cee8-8beb-4afe-98ce-924f8607a0eb",
     "fields": {
-        "element": "ad7283c3-6643-49e2-a966-2e5c55cf4638",
-        "path": "[\"afe50fbe-eb97-4366-8e18-1713aa711f4a\"]",
-        "ordering": 3
+        "element": "bf4d6982-d8c0-4b81-8f49-3352d2ac90ee",
+        "path": "[\"5d4887e4-a9bd-4d75-aa82-0c63a40be1ee\"]",
+        "ordering": 0
     }
 },
 {
     "model": "documents.element",
-    "pk": "0e7121f8-efdd-4ef8-b5a7-ca5b4457e83c",
+    "pk": "03d374b1-6560-438c-9fde-4e88051ab3e1",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "419898d9-287c-48fb-9fce-22dc237bec14",
-        "name": "ROY",
-        "zone": "0ce0b1e6-e1a2-45f4-93f1-f9986fd4eb2e",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "5f84f077-bd8f-4d7f-ab18-e8388fcf0325",
+        "name": "DATUM",
+        "zone": "8dc267fe-76ab-4e76-9b0a-3009b57b2ab2",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "1477b9c2-dedf-4d44-b4bd-b1162cf8a998",
+    "pk": "03e444f2-63ca-47ae-9928-efd8c790a485",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "419898d9-287c-48fb-9fce-22dc237bec14",
-        "name": "ROY",
-        "zone": "8ef76685-65b7-435b-b6eb-c80ca6d8710a",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "46ea8eee-f118-4706-a288-084bb64bcee0",
+        "name": "Surface C",
+        "zone": "2478f4f6-5c23-43dc-99c5-422b5338f3b0",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "19dfd0e1-1517-4674-8d28-0b0d402afce6",
+    "pk": "0f83e510-f4f6-4048-86a4-f314c7f88223",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "433202e9-f8c1-4f76-9b65-7fff323798b2",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "729a81f4-e38e-4e79-b2dc-eafbd00b447e",
         "name": "Act 5",
         "zone": null,
         "source": null,
@@ -458,433 +458,433 @@
 },
 {
     "model": "documents.element",
-    "pk": "28ce8c14-2514-4fd5-bd6f-bd7fb668e36a",
+    "pk": "1a9d2c4e-9bf8-4c14-896f-b498de08a082",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "bff5642d-b6a9-4856-bc8f-1c01cb58c0b0",
-        "name": "Surface D",
-        "zone": "41e685c0-9a8d-4802-8f72-d56bdb03c879",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "729a81f4-e38e-4e79-b2dc-eafbd00b447e",
+        "name": "Act 3",
+        "zone": null,
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "2ea41a99-a805-4364-966d-60761d28dcb4",
+    "pk": "1b2a3adb-3740-49d3-95e7-ce14dfc7da93",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "bff5642d-b6a9-4856-bc8f-1c01cb58c0b0",
-        "name": "Surface B",
-        "zone": "dd1e7d88-a7bd-4444-8643-b99360267c42",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "729a81f4-e38e-4e79-b2dc-eafbd00b447e",
+        "name": "Act 4",
+        "zone": null,
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "3df1ce74-6f2d-473d-bd0d-b20bf6b913ef",
+    "pk": "2b269b30-fda3-4630-9784-b1c3b9a0d77f",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "3536ef92-ad56-4b63-b243-d71afc4fdded",
-        "name": "Volume 2",
-        "zone": null,
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "5f84f077-bd8f-4d7f-ab18-e8388fcf0325",
+        "name": "ROY",
+        "zone": "14c535d6-7b24-4366-a19c-4e56f3a7d073",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "4721e07a-2d53-4066-85a5-1c3a99e0840a",
+    "pk": "2b33730b-a381-4a99-9463-b4faeb9bfde2",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "419898d9-287c-48fb-9fce-22dc237bec14",
-        "name": "DATUM",
-        "zone": "ecd9f9aa-ce91-4969-99a7-63e9dcbd8ca6",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "46ea8eee-f118-4706-a288-084bb64bcee0",
+        "name": "Surface B",
+        "zone": "2aedf0c1-ca2d-403a-9760-ed649271e3c3",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "4ad6a90c-f4ba-48e5-91ce-14d3bd3c6ba3",
+    "pk": "408ff192-649a-4f93-9a1a-0603641b4725",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "68ac563f-b627-4f16-b941-f3a136a0ed26",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "7b5938ee-dc1e-4e37-890a-1e5988e99099",
         "name": "Volume 1, page 2r",
-        "zone": "60978133-f6ad-4620-b8dc-f52053d30b97",
+        "zone": "ea52165e-7d7d-41af-b29f-b8774955626a",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "506f4447-6bdc-4d29-9bd8-f82976116c0e",
+    "pk": "525de37a-190f-4760-b831-4bf9bd4909f5",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "611f5a3e-1137-4984-b27c-a07d3c7ff728",
-        "name": "Text line",
-        "zone": "0ce0b1e6-e1a2-45f4-93f1-f9986fd4eb2e",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "729a81f4-e38e-4e79-b2dc-eafbd00b447e",
+        "name": "Act 1",
+        "zone": null,
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "550014fa-b5b4-46ee-b70d-7c00bb913ac7",
+    "pk": "5d4887e4-a9bd-4d75-aa82-0c63a40be1ee",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "68ac563f-b627-4f16-b941-f3a136a0ed26",
-        "name": "Volume 1, page 1v",
-        "zone": "1b7f99d7-4311-4b5a-a4e5-80e7d64f5597",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "dc3affbd-6a01-4aea-abce-c9f322698254",
+        "name": "Volume 1",
+        "zone": null,
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "69a25981-0e8e-4cf3-93a0-9a5c17030f4f",
+    "pk": "651fd593-e5ef-4f9a-b5cf-75630a5a0eb3",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "419898d9-287c-48fb-9fce-22dc237bec14",
-        "name": "DATUM",
-        "zone": "e93d0bc9-bdd7-442f-aeee-e2454c6cf833",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "46ea8eee-f118-4706-a288-084bb64bcee0",
+        "name": "Surface D",
+        "zone": "e41a5920-3078-4772-a83d-e05f05a9678f",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "69b51bc9-1d7d-4c9d-9289-9fb837892cad",
+    "pk": "6e829b5f-2f51-4c93-babb-418d5f01c8b0",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "419898d9-287c-48fb-9fce-22dc237bec14",
-        "name": "PARIS",
-        "zone": "e2fc38e5-f313-4b51-a364-3705a3875dfe",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "7b5938ee-dc1e-4e37-890a-1e5988e99099",
+        "name": "Volume 2, page 1r",
+        "zone": "81408598-4522-4df6-856f-293d75d3390b",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "71c62984-5fec-4f8c-b821-8cd8c1349a72",
+    "pk": "7393f32f-1bb4-4a00-a7e6-7a05659423ea",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "68ac563f-b627-4f16-b941-f3a136a0ed26",
-        "name": "Volume 2, page 1r",
-        "zone": "ac959187-0ff5-4c87-ae5b-ee47f1656b96",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "5f84f077-bd8f-4d7f-ab18-e8388fcf0325",
+        "name": "PARIS",
+        "zone": "65fc5f42-bbf9-4ff2-90f8-0ffb43a16b52",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "816b5708-411d-4763-b03b-66ef5a3531d6",
+    "pk": "9c860370-6242-4ef9-87ea-351caa3a22e4",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "bff5642d-b6a9-4856-bc8f-1c01cb58c0b0",
-        "name": "Surface C",
-        "zone": "1b7f99d7-4311-4b5a-a4e5-80e7d64f5597",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "5f84f077-bd8f-4d7f-ab18-e8388fcf0325",
+        "name": "PARIS",
+        "zone": "47677898-aafc-42b6-aec8-2767442838a7",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "84013d64-a85b-47c7-b734-722de1ae0d4b",
+    "pk": "a1c3c97c-2240-4c00-961e-12ca69b627a0",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "433202e9-f8c1-4f76-9b65-7fff323798b2",
-        "name": "Act 2",
-        "zone": null,
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "7b5938ee-dc1e-4e37-890a-1e5988e99099",
+        "name": "Volume 1, page 1v",
+        "zone": "2478f4f6-5c23-43dc-99c5-422b5338f3b0",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "9433969b-792e-44bf-93ad-db17c6bcd3de",
+    "pk": "a22c9f39-95df-45de-98b9-59a9f358611d",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "bff5642d-b6a9-4856-bc8f-1c01cb58c0b0",
-        "name": "Surface F",
-        "zone": "a26f7e91-a516-4598-a6d2-d43286fcf6b7",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "7b5938ee-dc1e-4e37-890a-1e5988e99099",
+        "name": "Volume 2, page 2r",
+        "zone": "4d348752-c9c3-4c40-9924-fb0b78bde96a",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "ad7283c3-6643-49e2-a966-2e5c55cf4638",
+    "pk": "a965eed2-b66c-41ec-b8fe-a9fab12eee9e",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "433202e9-f8c1-4f76-9b65-7fff323798b2",
-        "name": "Act 4",
-        "zone": null,
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "97ec5a9a-06fc-4d72-8a11-f107b76af6f2",
+        "name": "Text line",
+        "zone": "14c535d6-7b24-4366-a19c-4e56f3a7d073",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "afe50fbe-eb97-4366-8e18-1713aa711f4a",
+    "pk": "adfcdb63-1bec-4b44-a855-3dd765dda5d8",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "3536ef92-ad56-4b63-b243-d71afc4fdded",
-        "name": "Volume 1",
-        "zone": null,
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "5f84f077-bd8f-4d7f-ab18-e8388fcf0325",
+        "name": "DATUM",
+        "zone": "ca0b6bd5-75d4-4ec2-b559-5a5919354e29",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "bee8c02b-98f6-4185-9897-762b62f73b3b",
+    "pk": "af5f778a-0b86-4422-8594-91de359aa795",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "433202e9-f8c1-4f76-9b65-7fff323798b2",
-        "name": "Act 3",
-        "zone": null,
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "46ea8eee-f118-4706-a288-084bb64bcee0",
+        "name": "Surface A",
+        "zone": "8f507e13-1f0e-43f4-84ce-44f55fcf187f",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "c0007432-82e1-4420-8075-173af982ba6f",
+    "pk": "bb910784-dcb4-4b26-aab0-916313c3eb91",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "419898d9-287c-48fb-9fce-22dc237bec14",
-        "name": "PARIS",
-        "zone": "7430649a-eeb2-4e9b-9639-5a773b2f24bd",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "dc3affbd-6a01-4aea-abce-c9f322698254",
+        "name": "Volume 2",
+        "zone": null,
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "c143d67e-aed5-4404-aa76-f47605dbf919",
+    "pk": "bcfc8f66-d7a5-48bb-a17e-f08b209911c0",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "419898d9-287c-48fb-9fce-22dc237bec14",
-        "name": "DATUM",
-        "zone": "2bef6a9f-4bb6-4464-aa32-1bbcfd30e22f",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "5f84f077-bd8f-4d7f-ab18-e8388fcf0325",
+        "name": "PARIS",
+        "zone": "d885b67c-01fc-4254-9eea-81da4ec62102",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "c7295c75-b855-4b70-9475-a00e7ef9a572",
+    "pk": "bf4d6982-d8c0-4b81-8f49-3352d2ac90ee",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "68ac563f-b627-4f16-b941-f3a136a0ed26",
-        "name": "Volume 2, page 2r",
-        "zone": "5c419725-0a23-4bed-8b79-160187ea9ef0",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "7b5938ee-dc1e-4e37-890a-1e5988e99099",
+        "name": "Volume 1, page 1r",
+        "zone": "c8fc9430-cdd3-46ce-a045-957c8132b4d2",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "de16de7e-79a5-42a7-94de-6a61d04ee721",
+    "pk": "ce0dc249-37ee-4e2e-89a4-d1383b25ff8c",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "419898d9-287c-48fb-9fce-22dc237bec14",
-        "name": "PARIS",
-        "zone": "4d7d6a74-5061-4636-ae02-eae61177f089",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "729a81f4-e38e-4e79-b2dc-eafbd00b447e",
+        "name": "Act 2",
+        "zone": null,
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "de4cd51c-3f98-4b97-92c7-fd8b7c15feea",
+    "pk": "d489659c-9c67-4fb9-8758-cf70f6750e18",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "68ac563f-b627-4f16-b941-f3a136a0ed26",
-        "name": "Volume 2, page 1v",
-        "zone": "168d6610-a232-4f89-8ea7-9d26068e4845",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "5f84f077-bd8f-4d7f-ab18-e8388fcf0325",
+        "name": "ROY",
+        "zone": "ca56ae53-3a8b-4064-bef4-482773738b29",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "e6b3aed3-c443-4df2-98c2-f7da41eaceec",
+    "pk": "e4205894-9169-4fee-9823-e0bbc61e8724",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "68ac563f-b627-4f16-b941-f3a136a0ed26",
-        "name": "Volume 1, page 1r",
-        "zone": "008f25e7-0068-40cd-a083-3292102b6242",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "5f84f077-bd8f-4d7f-ab18-e8388fcf0325",
+        "name": "DATUM",
+        "zone": "6c7a21b2-5a54-4226-9b0b-a66eaea2caf8",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "ed7a03cb-199f-4b54-b659-9567703cd361",
+    "pk": "e9e92536-f98a-4dad-bb7e-0aa7e486b894",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "bff5642d-b6a9-4856-bc8f-1c01cb58c0b0",
-        "name": "Surface E",
-        "zone": "1eb1ca30-1799-4b77-b3e6-51effb20f969",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "7b5938ee-dc1e-4e37-890a-1e5988e99099",
+        "name": "Volume 2, page 1v",
+        "zone": "26195a0d-1dcb-44a4-b01f-6ac80fab95f6",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "ef787c30-b839-43f3-8a5e-cc87498cffd1",
+    "pk": "eb3bb68f-918b-4b90-90f2-27df023e4772",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "bff5642d-b6a9-4856-bc8f-1c01cb58c0b0",
-        "name": "Surface A",
-        "zone": "b6c3f8c5-5b3d-4c6c-8e2c-6a4383bc0349",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "5f84f077-bd8f-4d7f-ab18-e8388fcf0325",
+        "name": "ROY",
+        "zone": "29d50e92-b7ef-462b-875d-3bb74506898c",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "f7921f4f-be7b-4e41-9c27-37447d9f622c",
+    "pk": "edb4eec4-4860-446a-977e-acf83c031df9",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "419898d9-287c-48fb-9fce-22dc237bec14",
-        "name": "ROY",
-        "zone": "3df5119c-08a6-4efe-8a1d-de7143beb38b",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "46ea8eee-f118-4706-a288-084bb64bcee0",
+        "name": "Surface E",
+        "zone": "0a23bba3-71a6-4511-8e80-e5b153e7d914",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "facee923-af23-4d71-8882-b20d621a66fd",
+    "pk": "f2be38ee-c57c-4935-bf40-c15723f4e793",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "433202e9-f8c1-4f76-9b65-7fff323798b2",
-        "name": "Act 1",
-        "zone": null,
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "46ea8eee-f118-4706-a288-084bb64bcee0",
+        "name": "Surface F",
+        "zone": "a45cba6e-5304-4e60-a6c3-79c1627ded89",
         "source": null,
         "worker_version": null
     }
 },
 {
     "model": "documents.datasource",
-    "pk": "13dc1bf7-e4d4-4cd9-b537-ecdcad7bd3c2",
+    "pk": "210c9e45-2f4c-4b42-8596-4ddfada0e56c",
     "fields": {
-        "type": "recognizer",
+        "type": "classifier",
         "slug": "test",
-        "name": "Test Recognizer",
-        "revision": "4.2",
+        "name": "Test Classifier",
+        "revision": "5.1",
         "internal": false
     }
 },
 {
     "model": "documents.datasource",
-    "pk": "9ca9a82b-972d-44e2-8413-c8192e6f2bda",
+    "pk": "92b6a695-61b8-429b-b3be-ad7ab8e6ddc1",
     "fields": {
-        "type": "classifier",
+        "type": "recognizer",
         "slug": "test",
-        "name": "Test Classifier",
-        "revision": "5.1",
+        "name": "Test Recognizer",
+        "revision": "4.2",
         "internal": false
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "0415d930-ce5d-4cef-b088-f69258ba0bf5",
+    "pk": "009949b6-12c2-4562-9a9e-16d8235e0fae",
     "fields": {
-        "element": "69b51bc9-1d7d-4c9d-9289-9fb837892cad",
+        "element": "03d374b1-6560-438c-9fde-4e88051ab3e1",
         "type": "word",
-        "source": "13dc1bf7-e4d4-4cd9-b537-ecdcad7bd3c2",
+        "source": "92b6a695-61b8-429b-b3be-ad7ab8e6ddc1",
         "worker_version": null,
-        "text": "PARIS",
+        "text": "DATUM",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "0aa4f0ca-81b8-4918-9acd-14390b203e56",
+    "pk": "1dab3b99-b2a9-4838-b560-492ec24c4973",
     "fields": {
-        "element": "4721e07a-2d53-4066-85a5-1c3a99e0840a",
+        "element": "2b269b30-fda3-4630-9784-b1c3b9a0d77f",
         "type": "word",
-        "source": "13dc1bf7-e4d4-4cd9-b537-ecdcad7bd3c2",
+        "source": "92b6a695-61b8-429b-b3be-ad7ab8e6ddc1",
         "worker_version": null,
-        "text": "DATUM",
+        "text": "ROY",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "7a5a1f9b-d1e8-4504-8b77-db0d181b281f",
+    "pk": "1e452fbf-6e4a-4e1c-9316-8cc2be2f0de0",
     "fields": {
-        "element": "c143d67e-aed5-4404-aa76-f47605dbf919",
+        "element": "9c860370-6242-4ef9-87ea-351caa3a22e4",
         "type": "word",
-        "source": "13dc1bf7-e4d4-4cd9-b537-ecdcad7bd3c2",
+        "source": "92b6a695-61b8-429b-b3be-ad7ab8e6ddc1",
         "worker_version": null,
-        "text": "DATUM",
+        "text": "PARIS",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "7eb70406-eeb6-4a29-8d20-36a01e07490e",
+    "pk": "2ee46985-d7d3-46ee-93ec-85563c3d8dc9",
     "fields": {
-        "element": "69a25981-0e8e-4cf3-93a0-9a5c17030f4f",
+        "element": "adfcdb63-1bec-4b44-a855-3dd765dda5d8",
         "type": "word",
-        "source": "13dc1bf7-e4d4-4cd9-b537-ecdcad7bd3c2",
+        "source": "92b6a695-61b8-429b-b3be-ad7ab8e6ddc1",
         "worker_version": null,
         "text": "DATUM",
         "score": 1.0
@@ -892,47 +892,47 @@
 },
 {
     "model": "documents.transcription",
-    "pk": "82af4779-b66a-45a9-bc1d-bd42dfc22492",
+    "pk": "310a14c6-65e9-4f2c-baff-8a0ecce01f54",
     "fields": {
-        "element": "1477b9c2-dedf-4d44-b4bd-b1162cf8a998",
-        "type": "word",
-        "source": "13dc1bf7-e4d4-4cd9-b537-ecdcad7bd3c2",
+        "element": "bf4d6982-d8c0-4b81-8f49-3352d2ac90ee",
+        "type": "page",
+        "source": "92b6a695-61b8-429b-b3be-ad7ab8e6ddc1",
         "worker_version": null,
-        "text": "ROY",
+        "text": "Lorem ipsum dolor sit amet",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "89209b02-bddd-4b84-828e-9ca5c1572f9e",
+    "pk": "7e7901a0-a1bc-47a2-b2ff-6465fca06490",
     "fields": {
-        "element": "0e7121f8-efdd-4ef8-b5a7-ca5b4457e83c",
+        "element": "bcfc8f66-d7a5-48bb-a17e-f08b209911c0",
         "type": "word",
-        "source": "13dc1bf7-e4d4-4cd9-b537-ecdcad7bd3c2",
+        "source": "92b6a695-61b8-429b-b3be-ad7ab8e6ddc1",
         "worker_version": null,
-        "text": "ROY",
+        "text": "PARIS",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "af40fcc2-27cc-44ba-9f50-6d9b0e151642",
+    "pk": "99c6d35f-5270-4d8e-8811-13dd21aa2a2a",
     "fields": {
-        "element": "de16de7e-79a5-42a7-94de-6a61d04ee721",
+        "element": "eb3bb68f-918b-4b90-90f2-27df023e4772",
         "type": "word",
-        "source": "13dc1bf7-e4d4-4cd9-b537-ecdcad7bd3c2",
+        "source": "92b6a695-61b8-429b-b3be-ad7ab8e6ddc1",
         "worker_version": null,
-        "text": "PARIS",
+        "text": "ROY",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "b191a67c-dfbf-4bcd-9ad5-800cd513e60b",
+    "pk": "a572e06e-ba12-4609-a797-e64b2cf39def",
     "fields": {
-        "element": "f7921f4f-be7b-4e41-9c27-37447d9f622c",
+        "element": "d489659c-9c67-4fb9-8758-cf70f6750e18",
         "type": "word",
-        "source": "13dc1bf7-e4d4-4cd9-b537-ecdcad7bd3c2",
+        "source": "92b6a695-61b8-429b-b3be-ad7ab8e6ddc1",
         "worker_version": null,
         "text": "ROY",
         "score": 1.0
@@ -940,11 +940,11 @@
 },
 {
     "model": "documents.transcription",
-    "pk": "cdfd4d6b-ea3e-40d5-8c86-2d89a1319ce6",
+    "pk": "e47b2d65-bb81-4b32-a735-a7ffdafdf645",
     "fields": {
-        "element": "c0007432-82e1-4420-8075-173af982ba6f",
+        "element": "7393f32f-1bb4-4a00-a7e6-7a05659423ea",
         "type": "word",
-        "source": "13dc1bf7-e4d4-4cd9-b537-ecdcad7bd3c2",
+        "source": "92b6a695-61b8-429b-b3be-ad7ab8e6ddc1",
         "worker_version": null,
         "text": "PARIS",
         "score": 1.0
@@ -952,51 +952,51 @@
 },
 {
     "model": "documents.transcription",
-    "pk": "ea7d3b33-922f-4766-9f78-bd50815f81a5",
+    "pk": "f0037009-83f3-4e5a-9db9-8696ea7f1c63",
     "fields": {
-        "element": "e6b3aed3-c443-4df2-98c2-f7da41eaceec",
-        "type": "page",
-        "source": "13dc1bf7-e4d4-4cd9-b537-ecdcad7bd3c2",
+        "element": "e4205894-9169-4fee-9823-e0bbc61e8724",
+        "type": "word",
+        "source": "92b6a695-61b8-429b-b3be-ad7ab8e6ddc1",
         "worker_version": null,
-        "text": "Lorem ipsum dolor sit amet",
+        "text": "DATUM",
         "score": 1.0
     }
 },
 {
     "model": "documents.allowedmetadata",
-    "pk": "06a9affa-d856-4b86-af15-d9bc02d123ff",
+    "pk": "1d07c0f3-5263-47a9-bd92-029659d7f1e0",
     "fields": {
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "date",
-        "name": "date"
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "location",
+        "name": "location"
     }
 },
 {
     "model": "documents.allowedmetadata",
-    "pk": "32e4f87f-248f-4c2f-8a0e-e8635ceee11c",
+    "pk": "aac48c98-259a-427b-b155-766658d7beef",
     "fields": {
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "type": "location",
-        "name": "location"
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "type": "date",
+        "name": "date"
     }
 },
 {
     "model": "documents.allowedmetadata",
-    "pk": "3beaea8b-7c5a-4573-9e40-dc8b4fc07216",
+    "pk": "c999abbe-91e1-42ec-8b32-82ed871410c3",
     "fields": {
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
         "type": "text",
         "name": "folio"
     }
 },
 {
     "model": "documents.metadata",
-    "pk": "332b81d9-9b21-41f8-b5ea-5ec139a1fa68",
+    "pk": "07ac0f0c-ccfb-4ee4-96a4-7ca36e80cc44",
     "fields": {
-        "element": "facee923-af23-4d71-8882-b20d621a66fd",
+        "element": "ce0dc249-37ee-4e2e-89a4-d1383b25ff8c",
         "name": "number",
         "type": "text",
-        "value": "1",
+        "value": "2",
         "revision": null,
         "index": 0,
         "entity": null
@@ -1004,12 +1004,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "3b9d1aa1-1e89-4210-8bb4-a25e1609e243",
+    "pk": "2d9aee95-a9f9-4332-b2e4-27010d779513",
     "fields": {
-        "element": "550014fa-b5b4-46ee-b70d-7c00bb913ac7",
+        "element": "6e829b5f-2f51-4c93-babb-418d5f01c8b0",
         "name": "folio",
         "type": "text",
-        "value": "1v",
+        "value": "1r",
         "revision": null,
         "index": 0,
         "entity": null
@@ -1017,12 +1017,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "46f406b1-e240-4388-810e-9472133ba584",
+    "pk": "31ae24de-585d-42f5-95b4-2f4ff0aee9e6",
     "fields": {
-        "element": "19dfd0e1-1517-4674-8d28-0b0d402afce6",
-        "name": "number",
+        "element": "e9e92536-f98a-4dad-bb7e-0aa7e486b894",
+        "name": "folio",
         "type": "text",
-        "value": "5",
+        "value": "1v",
         "revision": null,
         "index": 0,
         "entity": null
@@ -1030,12 +1030,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "5dcf22cf-96a8-4b7a-8ce2-4694424c9ee9",
+    "pk": "59864bc6-7e0b-4927-bf80-3239ee89708f",
     "fields": {
-        "element": "bee8c02b-98f6-4185-9897-762b62f73b3b",
-        "name": "number",
+        "element": "a22c9f39-95df-45de-98b9-59a9f358611d",
+        "name": "folio",
         "type": "text",
-        "value": "3",
+        "value": "2r",
         "revision": null,
         "index": 0,
         "entity": null
@@ -1043,12 +1043,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "764be013-755e-4751-9d1a-27c8218007c0",
+    "pk": "7177773a-3970-4ede-b4d7-df4a7930b587",
     "fields": {
-        "element": "e6b3aed3-c443-4df2-98c2-f7da41eaceec",
+        "element": "a1c3c97c-2240-4c00-961e-12ca69b627a0",
         "name": "folio",
         "type": "text",
-        "value": "1r",
+        "value": "1v",
         "revision": null,
         "index": 0,
         "entity": null
@@ -1056,12 +1056,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "97928b42-8b2c-4d67-b16e-51ff1e605892",
+    "pk": "a124d423-eed2-47e7-b945-1e77ed2ec454",
     "fields": {
-        "element": "4ad6a90c-f4ba-48e5-91ce-14d3bd3c6ba3",
-        "name": "folio",
+        "element": "1b2a3adb-3740-49d3-95e7-ce14dfc7da93",
+        "name": "number",
         "type": "text",
-        "value": "2r",
+        "value": "4",
         "revision": null,
         "index": 0,
         "entity": null
@@ -1069,12 +1069,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "bb86d930-3d04-47f8-b2a0-82f3ed1334d6",
+    "pk": "baf0ed90-95c6-45c6-a74e-40d5d25b846b",
     "fields": {
-        "element": "c7295c75-b855-4b70-9475-a00e7ef9a572",
-        "name": "folio",
+        "element": "525de37a-190f-4760-b831-4bf9bd4909f5",
+        "name": "number",
         "type": "text",
-        "value": "2r",
+        "value": "1",
         "revision": null,
         "index": 0,
         "entity": null
@@ -1082,12 +1082,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "be59424b-84e4-41bf-9dd0-52eac75ce1ec",
+    "pk": "d217b793-f069-4d41-ba09-3914a9fb5cf5",
     "fields": {
-        "element": "ad7283c3-6643-49e2-a966-2e5c55cf4638",
+        "element": "1a9d2c4e-9bf8-4c14-896f-b498de08a082",
         "name": "number",
         "type": "text",
-        "value": "4",
+        "value": "3",
         "revision": null,
         "index": 0,
         "entity": null
@@ -1095,12 +1095,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "d49cf820-76a2-4cd2-b085-bc09eca9586d",
+    "pk": "df7055ea-2464-4761-b122-ef8b758cb62a",
     "fields": {
-        "element": "71c62984-5fec-4f8c-b821-8cd8c1349a72",
+        "element": "408ff192-649a-4f93-9a1a-0603641b4725",
         "name": "folio",
         "type": "text",
-        "value": "1r",
+        "value": "2r",
         "revision": null,
         "index": 0,
         "entity": null
@@ -1108,12 +1108,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "d8717e0b-6b62-4d82-92dc-0c1a4410dc8e",
+    "pk": "e661a537-f2ab-44a6-95aa-25ac5a7a60c9",
     "fields": {
-        "element": "84013d64-a85b-47c7-b734-722de1ae0d4b",
+        "element": "0f83e510-f4f6-4048-86a4-f314c7f88223",
         "name": "number",
         "type": "text",
-        "value": "2",
+        "value": "5",
         "revision": null,
         "index": 0,
         "entity": null
@@ -1121,12 +1121,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "de13bd65-beea-41f7-8774-938e64084a90",
+    "pk": "f595d9c5-474b-42bd-b95e-a260e6f4adf8",
     "fields": {
-        "element": "de4cd51c-3f98-4b97-92c7-fd8b7c15feea",
+        "element": "bf4d6982-d8c0-4b81-8f49-3352d2ac90ee",
         "name": "folio",
         "type": "text",
-        "value": "1v",
+        "value": "1r",
         "revision": null,
         "index": 0,
         "entity": null
@@ -1150,12 +1150,12 @@
 },
 {
     "model": "images.image",
-    "pk": "081d902d-2008-4b06-b2c4-7acf0c9b2980",
+    "pk": "48be6ecd-de85-4cc7-9567-b6bb89769f3c",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
         "server": 1,
-        "path": "img2",
+        "path": "img5",
         "width": 1000,
         "height": 1000,
         "hash": null,
@@ -1164,12 +1164,12 @@
 },
 {
     "model": "images.image",
-    "pk": "216c7280-1577-4be1-a645-52353fcf65ec",
+    "pk": "53eb4ee2-c43b-45cb-8cf7-dcdf5dd9fe9d",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
         "server": 1,
-        "path": "img5",
+        "path": "img2",
         "width": 1000,
         "height": 1000,
         "hash": null,
@@ -1178,7 +1178,7 @@
 },
 {
     "model": "images.image",
-    "pk": "7ec02e33-b678-42ad-bde7-78b94bf4c2bb",
+    "pk": "6538d5fb-5a86-4c34-a974-70c624bba5be",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
@@ -1192,12 +1192,12 @@
 },
 {
     "model": "images.image",
-    "pk": "89ea15dd-5a7d-43e4-9a03-f1c6442feece",
+    "pk": "bc237d40-b2bd-4e2f-b728-d6c799beeac6",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
         "server": 1,
-        "path": "img6",
+        "path": "img4",
         "width": 1000,
         "height": 1000,
         "hash": null,
@@ -1206,7 +1206,7 @@
 },
 {
     "model": "images.image",
-    "pk": "cba07163-4df3-4320-94fc-6d4291df610c",
+    "pk": "ce68e28e-8d2a-4e07-901d-791c6eb0dfca",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
@@ -1220,12 +1220,12 @@
 },
 {
     "model": "images.image",
-    "pk": "deac5fac-5c34-4f53-8afa-23f8a2ff313a",
+    "pk": "e1a2aa51-72c4-4668-a131-754da40f48d0",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
         "server": 1,
-        "path": "img4",
+        "path": "img6",
         "width": 1000,
         "height": 1000,
         "hash": null,
@@ -1234,211 +1234,212 @@
 },
 {
     "model": "images.zone",
-    "pk": "008f25e7-0068-40cd-a083-3292102b6242",
+    "pk": "0a23bba3-71a6-4511-8e80-e5b153e7d914",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "cba07163-4df3-4320-94fc-6d4291df610c",
-        "polygon": "LINEARRING (0 0, 0 1000, 1000 1000, 1000 0, 0 0)"
+        "image": "6538d5fb-5a86-4c34-a974-70c624bba5be",
+        "polygon": "LINEARRING (300 300, 300 600, 600 600, 600 300, 300 300)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "0ce0b1e6-e1a2-45f4-93f1-f9986fd4eb2e",
+    "pk": "14c535d6-7b24-4366-a19c-4e56f3a7d073",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "cba07163-4df3-4320-94fc-6d4291df610c",
+        "image": "ce68e28e-8d2a-4e07-901d-791c6eb0dfca",
         "polygon": "LINEARRING (400 400, 400 500, 500 500, 500 400, 400 400)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "168d6610-a232-4f89-8ea7-9d26068e4845",
+    "pk": "2478f4f6-5c23-43dc-99c5-422b5338f3b0",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "216c7280-1577-4be1-a645-52353fcf65ec",
+        "image": "53eb4ee2-c43b-45cb-8cf7-dcdf5dd9fe9d",
         "polygon": "LINEARRING (0 0, 0 1000, 1000 1000, 1000 0, 0 0)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "1b7f99d7-4311-4b5a-a4e5-80e7d64f5597",
+    "pk": "26195a0d-1dcb-44a4-b01f-6ac80fab95f6",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "081d902d-2008-4b06-b2c4-7acf0c9b2980",
+        "image": "48be6ecd-de85-4cc7-9567-b6bb89769f3c",
         "polygon": "LINEARRING (0 0, 0 1000, 1000 1000, 1000 0, 0 0)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "1eb1ca30-1799-4b77-b3e6-51effb20f969",
+    "pk": "29d50e92-b7ef-462b-875d-3bb74506898c",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "7ec02e33-b678-42ad-bde7-78b94bf4c2bb",
-        "polygon": "LINEARRING (300 300, 300 600, 600 600, 600 300, 300 300)"
+        "image": "53eb4ee2-c43b-45cb-8cf7-dcdf5dd9fe9d",
+        "polygon": "LINEARRING (400 400, 400 500, 500 500, 500 400, 400 400)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "2bef6a9f-4bb6-4464-aa32-1bbcfd30e22f",
+    "pk": "2aedf0c1-ca2d-403a-9760-ed649271e3c3",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "081d902d-2008-4b06-b2c4-7acf0c9b2980",
-        "polygon": "LINEARRING (700 700, 700 800, 800 800, 800 700, 700 700)"
+        "image": "ce68e28e-8d2a-4e07-901d-791c6eb0dfca",
+        "polygon": "LINEARRING (600 600, 600 1000, 1000 1000, 1000 600, 600 600)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "3df5119c-08a6-4efe-8a1d-de7143beb38b",
+    "pk": "47677898-aafc-42b6-aec8-2767442838a7",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "081d902d-2008-4b06-b2c4-7acf0c9b2980",
-        "polygon": "LINEARRING (400 400, 400 500, 500 500, 500 400, 400 400)"
+        "image": "6538d5fb-5a86-4c34-a974-70c624bba5be",
+        "polygon": "LINEARRING (100 100, 100 200, 200 200, 200 100, 100 100)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "41e685c0-9a8d-4802-8f72-d56bdb03c879",
+    "pk": "4d348752-c9c3-4c40-9924-fb0b78bde96a",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "7ec02e33-b678-42ad-bde7-78b94bf4c2bb",
-        "polygon": "LINEARRING (0 0, 0 300, 300 300, 300 0, 0 0)"
+        "image": "e1a2aa51-72c4-4668-a131-754da40f48d0",
+        "polygon": "LINEARRING (0 0, 0 1000, 1000 1000, 1000 0, 0 0)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "4d7d6a74-5061-4636-ae02-eae61177f089",
+    "pk": "65fc5f42-bbf9-4ff2-90f8-0ffb43a16b52",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "cba07163-4df3-4320-94fc-6d4291df610c",
+        "image": "53eb4ee2-c43b-45cb-8cf7-dcdf5dd9fe9d",
         "polygon": "LINEARRING (100 100, 100 200, 200 200, 200 100, 100 100)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "5c419725-0a23-4bed-8b79-160187ea9ef0",
+    "pk": "6c7a21b2-5a54-4226-9b0b-a66eaea2caf8",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "89ea15dd-5a7d-43e4-9a03-f1c6442feece",
-        "polygon": "LINEARRING (0 0, 0 1000, 1000 1000, 1000 0, 0 0)"
+        "image": "ce68e28e-8d2a-4e07-901d-791c6eb0dfca",
+        "polygon": "LINEARRING (700 700, 700 800, 800 800, 800 700, 700 700)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "60978133-f6ad-4620-b8dc-f52053d30b97",
+    "pk": "81408598-4522-4df6-856f-293d75d3390b",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "7ec02e33-b678-42ad-bde7-78b94bf4c2bb",
+        "image": "bc237d40-b2bd-4e2f-b728-d6c799beeac6",
         "polygon": "LINEARRING (0 0, 0 1000, 1000 1000, 1000 0, 0 0)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "7430649a-eeb2-4e9b-9639-5a773b2f24bd",
+    "pk": "8dc267fe-76ab-4e76-9b0a-3009b57b2ab2",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "7ec02e33-b678-42ad-bde7-78b94bf4c2bb",
-        "polygon": "LINEARRING (100 100, 100 200, 200 200, 200 100, 100 100)"
+        "image": "53eb4ee2-c43b-45cb-8cf7-dcdf5dd9fe9d",
+        "polygon": "LINEARRING (700 700, 700 800, 800 800, 800 700, 700 700)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "8ef76685-65b7-435b-b6eb-c80ca6d8710a",
+    "pk": "8f507e13-1f0e-43f4-84ce-44f55fcf187f",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "7ec02e33-b678-42ad-bde7-78b94bf4c2bb",
-        "polygon": "LINEARRING (400 400, 400 500, 500 500, 500 400, 400 400)"
+        "image": "ce68e28e-8d2a-4e07-901d-791c6eb0dfca",
+        "polygon": "LINEARRING (0 0, 0 600, 600 600, 600 0, 0 0)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "a26f7e91-a516-4598-a6d2-d43286fcf6b7",
+    "pk": "a45cba6e-5304-4e60-a6c3-79c1627ded89",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "7ec02e33-b678-42ad-bde7-78b94bf4c2bb",
+        "image": "6538d5fb-5a86-4c34-a974-70c624bba5be",
         "polygon": "LINEARRING (600 600, 600 1000, 1000 1000, 1000 600, 600 600)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "ac959187-0ff5-4c87-ae5b-ee47f1656b96",
+    "pk": "c8fc9430-cdd3-46ce-a045-957c8132b4d2",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "deac5fac-5c34-4f53-8afa-23f8a2ff313a",
+        "image": "ce68e28e-8d2a-4e07-901d-791c6eb0dfca",
         "polygon": "LINEARRING (0 0, 0 1000, 1000 1000, 1000 0, 0 0)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "b6c3f8c5-5b3d-4c6c-8e2c-6a4383bc0349",
+    "pk": "ca0b6bd5-75d4-4ec2-b559-5a5919354e29",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "cba07163-4df3-4320-94fc-6d4291df610c",
-        "polygon": "LINEARRING (0 0, 0 600, 600 600, 600 0, 0 0)"
+        "image": "6538d5fb-5a86-4c34-a974-70c624bba5be",
+        "polygon": "LINEARRING (700 700, 700 800, 800 800, 800 700, 700 700)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "dd1e7d88-a7bd-4444-8643-b99360267c42",
+    "pk": "ca56ae53-3a8b-4064-bef4-482773738b29",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "cba07163-4df3-4320-94fc-6d4291df610c",
-        "polygon": "LINEARRING (600 600, 600 1000, 1000 1000, 1000 600, 600 600)"
+        "image": "6538d5fb-5a86-4c34-a974-70c624bba5be",
+        "polygon": "LINEARRING (400 400, 400 500, 500 500, 500 400, 400 400)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "e2fc38e5-f313-4b51-a364-3705a3875dfe",
+    "pk": "d885b67c-01fc-4254-9eea-81da4ec62102",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "081d902d-2008-4b06-b2c4-7acf0c9b2980",
+        "image": "ce68e28e-8d2a-4e07-901d-791c6eb0dfca",
         "polygon": "LINEARRING (100 100, 100 200, 200 200, 200 100, 100 100)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "e93d0bc9-bdd7-442f-aeee-e2454c6cf833",
+    "pk": "e41a5920-3078-4772-a83d-e05f05a9678f",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "cba07163-4df3-4320-94fc-6d4291df610c",
-        "polygon": "LINEARRING (700 700, 700 800, 800 800, 800 700, 700 700)"
+        "image": "6538d5fb-5a86-4c34-a974-70c624bba5be",
+        "polygon": "LINEARRING (0 0, 0 300, 300 300, 300 0, 0 0)"
     }
 },
 {
     "model": "images.zone",
-    "pk": "ecd9f9aa-ce91-4969-99a7-63e9dcbd8ca6",
+    "pk": "ea52165e-7d7d-41af-b29f-b8774955626a",
     "fields": {
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
-        "image": "7ec02e33-b678-42ad-bde7-78b94bf4c2bb",
-        "polygon": "LINEARRING (700 700, 700 800, 800 800, 800 700, 700 700)"
+        "image": "6538d5fb-5a86-4c34-a974-70c624bba5be",
+        "polygon": "LINEARRING (0 0, 0 1000, 1000 1000, 1000 0, 0 0)"
     }
 },
 {
     "model": "users.user",
     "pk": 1,
     "fields": {
-        "password": "pbkdf2_sha256$216000$9CLrlNBjYsHu$l7PPc5KJivmcUJU2nNR4kH44tc7EeAE170B3PCSBCI4=",
+        "password": "pbkdf2_sha256$216000$SDRlvrKm5YOT$XxAljMHH19WWQzwUySlDiOTtKJe+TPhSITW6zo/I7xI=",
         "last_login": null,
         "email": "root@root.fr",
+        "display_name": "Admin",
         "transkribus_email": null,
         "is_active": true,
         "is_internal": false,
@@ -1450,9 +1451,10 @@
     "model": "users.user",
     "pk": 2,
     "fields": {
-        "password": "pbkdf2_sha256$216000$r3zA0HxJh8He$JHSYUpAezr7yJUsmmsZxX2S5F/qZy/iuHDoQWPkqTlQ=",
+        "password": "pbkdf2_sha256$216000$CYynh60McAI6$SSlHKy0tGvxBBd/zzG1hc1zNEqhaNtv5rrH2M0ATgpY=",
         "last_login": null,
         "email": "internal@internal.fr",
+        "display_name": "Internal user",
         "transkribus_email": null,
         "is_active": true,
         "is_internal": true,
@@ -1464,9 +1466,10 @@
     "model": "users.user",
     "pk": 3,
     "fields": {
-        "password": "pbkdf2_sha256$216000$HfrDffda4FCv$SEsBuKudVFpFNdyAYELIY+o/jRr8CwlfY9XaLkcX9UI=",
+        "password": "pbkdf2_sha256$216000$tGXE4KnOaN1S$O89hFVWrOj/YC22CvXIrTMaDBWYAfdOGpc1H1wkCSLQ=",
         "last_login": null,
         "email": "user@user.fr",
+        "display_name": "Test user",
         "transkribus_email": null,
         "is_active": true,
         "is_internal": false,
@@ -1475,27 +1478,92 @@
     }
 },
 {
-    "model": "users.oauthcredentials",
-    "pk": "5665e36b-ae6c-4830-84ab-c283e363c1c5",
+    "model": "users.user",
+    "pk": 4,
     "fields": {
-        "user": 3,
-        "provider_name": "gitlab",
-        "provider_url": "https://somewhere",
-        "status": "created",
-        "token": "oauth-token",
-        "refresh_token": null,
-        "expiry": null,
-        "account_name": null
+        "password": "",
+        "last_login": null,
+        "email": "user2@user.fr",
+        "display_name": "Test user write",
+        "transkribus_email": null,
+        "is_active": true,
+        "is_internal": false,
+        "is_admin": false,
+        "verified_email": false
     }
 },
 {
-    "model": "users.corpusright",
-    "pk": 1,
+    "model": "users.user",
+    "pk": 5,
     "fields": {
-        "user": 3,
-        "corpus": "0549780c-bce1-445e-8f07-7e32889fe71e",
-        "can_write": true,
-        "can_admin": true
+        "password": "",
+        "last_login": null,
+        "email": "user3@user.fr",
+        "display_name": "Test user read",
+        "transkribus_email": null,
+        "is_active": true,
+        "is_internal": false,
+        "is_admin": false,
+        "verified_email": false
+    }
+},
+{
+    "model": "users.group",
+    "pk": "3d43ed61-ef7e-4eaa-8e31-83bdf7083256",
+    "fields": {
+        "name": "User group",
+        "public": false
+    }
+},
+{
+    "model": "users.membership",
+    "pk": 1,
+    "fields": {
+        "user": 3,
+        "group": "3d43ed61-ef7e-4eaa-8e31-83bdf7083256",
+        "level": 100
+    }
+},
+{
+    "model": "users.membership",
+    "pk": 2,
+    "fields": {
+        "user": 4,
+        "group": "3d43ed61-ef7e-4eaa-8e31-83bdf7083256",
+        "level": 50
+    }
+},
+{
+    "model": "users.membership",
+    "pk": 3,
+    "fields": {
+        "user": 5,
+        "group": "3d43ed61-ef7e-4eaa-8e31-83bdf7083256",
+        "level": 10
+    }
+},
+{
+    "model": "users.oauthcredentials",
+    "pk": "9fb76b0e-6529-4c2c-acc4-02d616554102",
+    "fields": {
+        "user": 3,
+        "provider_name": "gitlab",
+        "provider_url": "https://somewhere",
+        "status": "created",
+        "token": "oauth-token",
+        "refresh_token": null,
+        "expiry": null,
+        "account_name": null
+    }
+},
+{
+    "model": "users.corpusright",
+    "pk": 1,
+    "fields": {
+        "user": 3,
+        "corpus": "dab98946-799e-415f-abcb-869cf1bda854",
+        "can_write": true,
+        "can_admin": true
     }
 },
 {
@@ -1970,1193 +2038,1229 @@
     "model": "auth.permission",
     "pk": 53,
     "fields": {
-        "name": "Can add image",
+        "name": "Can add gpu",
         "content_type": 14,
-        "codename": "add_image"
+        "codename": "add_gpu"
     }
 },
 {
     "model": "auth.permission",
     "pk": 54,
     "fields": {
-        "name": "Can change image",
+        "name": "Can change gpu",
         "content_type": 14,
-        "codename": "change_image"
+        "codename": "change_gpu"
     }
 },
 {
     "model": "auth.permission",
     "pk": 55,
     "fields": {
-        "name": "Can delete image",
+        "name": "Can delete gpu",
         "content_type": 14,
-        "codename": "delete_image"
+        "codename": "delete_gpu"
     }
 },
 {
     "model": "auth.permission",
     "pk": 56,
     "fields": {
-        "name": "Can view image",
+        "name": "Can view gpu",
         "content_type": 14,
-        "codename": "view_image"
+        "codename": "view_gpu"
     }
 },
 {
     "model": "auth.permission",
     "pk": 57,
     "fields": {
-        "name": "Can add image server",
+        "name": "Can add image",
         "content_type": 15,
-        "codename": "add_imageserver"
+        "codename": "add_image"
     }
 },
 {
     "model": "auth.permission",
     "pk": 58,
     "fields": {
-        "name": "Can change image server",
+        "name": "Can change image",
         "content_type": 15,
-        "codename": "change_imageserver"
+        "codename": "change_image"
     }
 },
 {
     "model": "auth.permission",
     "pk": 59,
     "fields": {
-        "name": "Can delete image server",
+        "name": "Can delete image",
         "content_type": 15,
-        "codename": "delete_imageserver"
+        "codename": "delete_image"
     }
 },
 {
     "model": "auth.permission",
     "pk": 60,
     "fields": {
-        "name": "Can view image server",
+        "name": "Can view image",
         "content_type": 15,
-        "codename": "view_imageserver"
+        "codename": "view_image"
     }
 },
 {
     "model": "auth.permission",
     "pk": 61,
     "fields": {
-        "name": "Can add zone",
+        "name": "Can add image server",
         "content_type": 16,
-        "codename": "add_zone"
+        "codename": "add_imageserver"
     }
 },
 {
     "model": "auth.permission",
     "pk": 62,
     "fields": {
-        "name": "Can change zone",
+        "name": "Can change image server",
         "content_type": 16,
-        "codename": "change_zone"
+        "codename": "change_imageserver"
     }
 },
 {
     "model": "auth.permission",
     "pk": 63,
     "fields": {
-        "name": "Can delete zone",
+        "name": "Can delete image server",
         "content_type": 16,
-        "codename": "delete_zone"
+        "codename": "delete_imageserver"
     }
 },
 {
     "model": "auth.permission",
     "pk": 64,
     "fields": {
-        "name": "Can view zone",
+        "name": "Can view image server",
         "content_type": 16,
-        "codename": "view_zone"
+        "codename": "view_imageserver"
     }
 },
 {
     "model": "auth.permission",
     "pk": 65,
     "fields": {
-        "name": "Can add allowed meta data",
+        "name": "Can add zone",
         "content_type": 17,
-        "codename": "add_allowedmetadata"
+        "codename": "add_zone"
     }
 },
 {
     "model": "auth.permission",
     "pk": 66,
     "fields": {
-        "name": "Can change allowed meta data",
+        "name": "Can change zone",
         "content_type": 17,
-        "codename": "change_allowedmetadata"
+        "codename": "change_zone"
     }
 },
 {
     "model": "auth.permission",
     "pk": 67,
     "fields": {
-        "name": "Can delete allowed meta data",
+        "name": "Can delete zone",
         "content_type": 17,
-        "codename": "delete_allowedmetadata"
+        "codename": "delete_zone"
     }
 },
 {
     "model": "auth.permission",
     "pk": 68,
     "fields": {
-        "name": "Can view allowed meta data",
+        "name": "Can view zone",
         "content_type": 17,
-        "codename": "view_allowedmetadata"
+        "codename": "view_zone"
     }
 },
 {
     "model": "auth.permission",
     "pk": 69,
     "fields": {
-        "name": "Can add classification",
+        "name": "Can add allowed meta data",
         "content_type": 18,
-        "codename": "add_classification"
+        "codename": "add_allowedmetadata"
     }
 },
 {
     "model": "auth.permission",
     "pk": 70,
     "fields": {
-        "name": "Can change classification",
+        "name": "Can change allowed meta data",
         "content_type": 18,
-        "codename": "change_classification"
+        "codename": "change_allowedmetadata"
     }
 },
 {
     "model": "auth.permission",
     "pk": 71,
     "fields": {
-        "name": "Can delete classification",
+        "name": "Can delete allowed meta data",
         "content_type": 18,
-        "codename": "delete_classification"
+        "codename": "delete_allowedmetadata"
     }
 },
 {
     "model": "auth.permission",
     "pk": 72,
     "fields": {
-        "name": "Can view classification",
+        "name": "Can view allowed meta data",
         "content_type": 18,
-        "codename": "view_classification"
+        "codename": "view_allowedmetadata"
     }
 },
 {
     "model": "auth.permission",
     "pk": 73,
     "fields": {
-        "name": "Can add corpus",
+        "name": "Can add classification",
         "content_type": 19,
-        "codename": "add_corpus"
+        "codename": "add_classification"
     }
 },
 {
     "model": "auth.permission",
     "pk": 74,
     "fields": {
-        "name": "Can change corpus",
+        "name": "Can change classification",
         "content_type": 19,
-        "codename": "change_corpus"
+        "codename": "change_classification"
     }
 },
 {
     "model": "auth.permission",
     "pk": 75,
     "fields": {
-        "name": "Can delete corpus",
+        "name": "Can delete classification",
         "content_type": 19,
-        "codename": "delete_corpus"
+        "codename": "delete_classification"
     }
 },
 {
     "model": "auth.permission",
     "pk": 76,
     "fields": {
-        "name": "Can view corpus",
+        "name": "Can view classification",
         "content_type": 19,
-        "codename": "view_corpus"
+        "codename": "view_classification"
     }
 },
 {
     "model": "auth.permission",
     "pk": 77,
     "fields": {
-        "name": "Can add data source",
+        "name": "Can add corpus",
         "content_type": 20,
-        "codename": "add_datasource"
+        "codename": "add_corpus"
     }
 },
 {
     "model": "auth.permission",
     "pk": 78,
     "fields": {
-        "name": "Can change data source",
+        "name": "Can change corpus",
         "content_type": 20,
-        "codename": "change_datasource"
+        "codename": "change_corpus"
     }
 },
 {
     "model": "auth.permission",
     "pk": 79,
     "fields": {
-        "name": "Can delete data source",
+        "name": "Can delete corpus",
         "content_type": 20,
-        "codename": "delete_datasource"
+        "codename": "delete_corpus"
     }
 },
 {
     "model": "auth.permission",
     "pk": 80,
     "fields": {
-        "name": "Can view data source",
+        "name": "Can view corpus",
         "content_type": 20,
-        "codename": "view_datasource"
+        "codename": "view_corpus"
     }
 },
 {
     "model": "auth.permission",
     "pk": 81,
     "fields": {
-        "name": "Can add element",
+        "name": "Can add data source",
         "content_type": 21,
-        "codename": "add_element"
+        "codename": "add_datasource"
     }
 },
 {
     "model": "auth.permission",
     "pk": 82,
     "fields": {
-        "name": "Can change element",
+        "name": "Can change data source",
         "content_type": 21,
-        "codename": "change_element"
+        "codename": "change_datasource"
     }
 },
 {
     "model": "auth.permission",
     "pk": 83,
     "fields": {
-        "name": "Can delete element",
+        "name": "Can delete data source",
         "content_type": 21,
-        "codename": "delete_element"
+        "codename": "delete_datasource"
     }
 },
 {
     "model": "auth.permission",
     "pk": 84,
     "fields": {
-        "name": "Can view element",
+        "name": "Can view data source",
         "content_type": 21,
-        "codename": "view_element"
+        "codename": "view_datasource"
     }
 },
 {
     "model": "auth.permission",
     "pk": 85,
     "fields": {
-        "name": "Can add element path",
+        "name": "Can add element",
         "content_type": 22,
-        "codename": "add_elementpath"
+        "codename": "add_element"
     }
 },
 {
     "model": "auth.permission",
     "pk": 86,
     "fields": {
-        "name": "Can change element path",
+        "name": "Can change element",
         "content_type": 22,
-        "codename": "change_elementpath"
+        "codename": "change_element"
     }
 },
 {
     "model": "auth.permission",
     "pk": 87,
     "fields": {
-        "name": "Can delete element path",
+        "name": "Can delete element",
         "content_type": 22,
-        "codename": "delete_elementpath"
+        "codename": "delete_element"
     }
 },
 {
     "model": "auth.permission",
     "pk": 88,
     "fields": {
-        "name": "Can view element path",
+        "name": "Can view element",
         "content_type": 22,
-        "codename": "view_elementpath"
+        "codename": "view_element"
     }
 },
 {
     "model": "auth.permission",
     "pk": 89,
     "fields": {
-        "name": "Can add element type",
+        "name": "Can add element path",
         "content_type": 23,
-        "codename": "add_elementtype"
+        "codename": "add_elementpath"
     }
 },
 {
     "model": "auth.permission",
     "pk": 90,
     "fields": {
-        "name": "Can change element type",
+        "name": "Can change element path",
         "content_type": 23,
-        "codename": "change_elementtype"
+        "codename": "change_elementpath"
     }
 },
 {
     "model": "auth.permission",
     "pk": 91,
     "fields": {
-        "name": "Can delete element type",
+        "name": "Can delete element path",
         "content_type": 23,
-        "codename": "delete_elementtype"
+        "codename": "delete_elementpath"
     }
 },
 {
     "model": "auth.permission",
     "pk": 92,
     "fields": {
-        "name": "Can view element type",
+        "name": "Can view element path",
         "content_type": 23,
-        "codename": "view_elementtype"
+        "codename": "view_elementpath"
     }
 },
 {
     "model": "auth.permission",
     "pk": 93,
     "fields": {
-        "name": "Can add entity",
+        "name": "Can add element type",
         "content_type": 24,
-        "codename": "add_entity"
+        "codename": "add_elementtype"
     }
 },
 {
     "model": "auth.permission",
     "pk": 94,
     "fields": {
-        "name": "Can change entity",
+        "name": "Can change element type",
         "content_type": 24,
-        "codename": "change_entity"
+        "codename": "change_elementtype"
     }
 },
 {
     "model": "auth.permission",
     "pk": 95,
     "fields": {
-        "name": "Can delete entity",
+        "name": "Can delete element type",
         "content_type": 24,
-        "codename": "delete_entity"
+        "codename": "delete_elementtype"
     }
 },
 {
     "model": "auth.permission",
     "pk": 96,
     "fields": {
-        "name": "Can view entity",
+        "name": "Can view element type",
         "content_type": 24,
-        "codename": "view_entity"
+        "codename": "view_elementtype"
     }
 },
 {
     "model": "auth.permission",
     "pk": 97,
     "fields": {
-        "name": "Can add ml class",
+        "name": "Can add entity",
         "content_type": 25,
-        "codename": "add_mlclass"
+        "codename": "add_entity"
     }
 },
 {
     "model": "auth.permission",
     "pk": 98,
     "fields": {
-        "name": "Can change ml class",
+        "name": "Can change entity",
         "content_type": 25,
-        "codename": "change_mlclass"
+        "codename": "change_entity"
     }
 },
 {
     "model": "auth.permission",
     "pk": 99,
     "fields": {
-        "name": "Can delete ml class",
+        "name": "Can delete entity",
         "content_type": 25,
-        "codename": "delete_mlclass"
+        "codename": "delete_entity"
     }
 },
 {
     "model": "auth.permission",
     "pk": 100,
     "fields": {
-        "name": "Can view ml class",
+        "name": "Can view entity",
         "content_type": 25,
-        "codename": "view_mlclass"
+        "codename": "view_entity"
     }
 },
 {
     "model": "auth.permission",
     "pk": 101,
     "fields": {
-        "name": "Can add transcription",
+        "name": "Can add ml class",
         "content_type": 26,
-        "codename": "add_transcription"
+        "codename": "add_mlclass"
     }
 },
 {
     "model": "auth.permission",
     "pk": 102,
     "fields": {
-        "name": "Can change transcription",
+        "name": "Can change ml class",
         "content_type": 26,
-        "codename": "change_transcription"
+        "codename": "change_mlclass"
     }
 },
 {
     "model": "auth.permission",
     "pk": 103,
     "fields": {
-        "name": "Can delete transcription",
+        "name": "Can delete ml class",
         "content_type": 26,
-        "codename": "delete_transcription"
+        "codename": "delete_mlclass"
     }
 },
 {
     "model": "auth.permission",
     "pk": 104,
     "fields": {
-        "name": "Can view transcription",
+        "name": "Can view ml class",
         "content_type": 26,
-        "codename": "view_transcription"
+        "codename": "view_mlclass"
     }
 },
 {
     "model": "auth.permission",
     "pk": 105,
     "fields": {
-        "name": "Can add transcription entity",
+        "name": "Can add transcription",
         "content_type": 27,
-        "codename": "add_transcriptionentity"
+        "codename": "add_transcription"
     }
 },
 {
     "model": "auth.permission",
     "pk": 106,
     "fields": {
-        "name": "Can change transcription entity",
+        "name": "Can change transcription",
         "content_type": 27,
-        "codename": "change_transcriptionentity"
+        "codename": "change_transcription"
     }
 },
 {
     "model": "auth.permission",
     "pk": 107,
     "fields": {
-        "name": "Can delete transcription entity",
+        "name": "Can delete transcription",
         "content_type": 27,
-        "codename": "delete_transcriptionentity"
+        "codename": "delete_transcription"
     }
 },
 {
     "model": "auth.permission",
     "pk": 108,
     "fields": {
-        "name": "Can view transcription entity",
+        "name": "Can view transcription",
         "content_type": 27,
-        "codename": "view_transcriptionentity"
+        "codename": "view_transcription"
     }
 },
 {
     "model": "auth.permission",
     "pk": 109,
     "fields": {
-        "name": "Can add meta data",
+        "name": "Can add transcription entity",
         "content_type": 28,
-        "codename": "add_metadata"
+        "codename": "add_transcriptionentity"
     }
 },
 {
     "model": "auth.permission",
     "pk": 110,
     "fields": {
-        "name": "Can change meta data",
+        "name": "Can change transcription entity",
         "content_type": 28,
-        "codename": "change_metadata"
+        "codename": "change_transcriptionentity"
     }
 },
 {
     "model": "auth.permission",
     "pk": 111,
     "fields": {
-        "name": "Can delete meta data",
+        "name": "Can delete transcription entity",
         "content_type": 28,
-        "codename": "delete_metadata"
+        "codename": "delete_transcriptionentity"
     }
 },
 {
     "model": "auth.permission",
     "pk": 112,
     "fields": {
-        "name": "Can view meta data",
+        "name": "Can view transcription entity",
         "content_type": 28,
-        "codename": "view_metadata"
+        "codename": "view_transcriptionentity"
     }
 },
 {
     "model": "auth.permission",
     "pk": 113,
     "fields": {
-        "name": "Can add entity role",
+        "name": "Can add meta data",
         "content_type": 29,
-        "codename": "add_entityrole"
+        "codename": "add_metadata"
     }
 },
 {
     "model": "auth.permission",
     "pk": 114,
     "fields": {
-        "name": "Can change entity role",
+        "name": "Can change meta data",
         "content_type": 29,
-        "codename": "change_entityrole"
+        "codename": "change_metadata"
     }
 },
 {
     "model": "auth.permission",
     "pk": 115,
     "fields": {
-        "name": "Can delete entity role",
+        "name": "Can delete meta data",
         "content_type": 29,
-        "codename": "delete_entityrole"
+        "codename": "delete_metadata"
     }
 },
 {
     "model": "auth.permission",
     "pk": 116,
     "fields": {
-        "name": "Can view entity role",
+        "name": "Can view meta data",
         "content_type": 29,
-        "codename": "view_entityrole"
+        "codename": "view_metadata"
     }
 },
 {
     "model": "auth.permission",
     "pk": 117,
     "fields": {
-        "name": "Can add entity link",
+        "name": "Can add entity role",
         "content_type": 30,
-        "codename": "add_entitylink"
+        "codename": "add_entityrole"
     }
 },
 {
     "model": "auth.permission",
     "pk": 118,
     "fields": {
-        "name": "Can change entity link",
+        "name": "Can change entity role",
         "content_type": 30,
-        "codename": "change_entitylink"
+        "codename": "change_entityrole"
     }
 },
 {
     "model": "auth.permission",
     "pk": 119,
     "fields": {
-        "name": "Can delete entity link",
+        "name": "Can delete entity role",
         "content_type": 30,
-        "codename": "delete_entitylink"
+        "codename": "delete_entityrole"
     }
 },
 {
     "model": "auth.permission",
     "pk": 120,
     "fields": {
-        "name": "Can view entity link",
+        "name": "Can view entity role",
         "content_type": 30,
-        "codename": "view_entitylink"
+        "codename": "view_entityrole"
     }
 },
 {
     "model": "auth.permission",
     "pk": 121,
     "fields": {
-        "name": "Can add selection",
+        "name": "Can add entity link",
         "content_type": 31,
-        "codename": "add_selection"
+        "codename": "add_entitylink"
     }
 },
 {
     "model": "auth.permission",
     "pk": 122,
     "fields": {
-        "name": "Can change selection",
+        "name": "Can change entity link",
         "content_type": 31,
-        "codename": "change_selection"
+        "codename": "change_entitylink"
     }
 },
 {
     "model": "auth.permission",
     "pk": 123,
     "fields": {
-        "name": "Can delete selection",
+        "name": "Can delete entity link",
         "content_type": 31,
-        "codename": "delete_selection"
+        "codename": "delete_entitylink"
     }
 },
 {
     "model": "auth.permission",
     "pk": 124,
     "fields": {
-        "name": "Can view selection",
+        "name": "Can view entity link",
         "content_type": 31,
-        "codename": "view_selection"
+        "codename": "view_entitylink"
     }
 },
 {
     "model": "auth.permission",
     "pk": 125,
     "fields": {
-        "name": "Can add user",
+        "name": "Can add selection",
         "content_type": 32,
-        "codename": "add_user"
+        "codename": "add_selection"
     }
 },
 {
     "model": "auth.permission",
     "pk": 126,
     "fields": {
-        "name": "Can change user",
+        "name": "Can change selection",
         "content_type": 32,
-        "codename": "change_user"
+        "codename": "change_selection"
     }
 },
 {
     "model": "auth.permission",
     "pk": 127,
     "fields": {
-        "name": "Can delete user",
+        "name": "Can delete selection",
         "content_type": 32,
-        "codename": "delete_user"
+        "codename": "delete_selection"
     }
 },
 {
     "model": "auth.permission",
     "pk": 128,
     "fields": {
-        "name": "Can view user",
+        "name": "Can view selection",
         "content_type": 32,
-        "codename": "view_user"
+        "codename": "view_selection"
     }
 },
 {
     "model": "auth.permission",
     "pk": 129,
     "fields": {
-        "name": "Can add o auth credentials",
+        "name": "Can add user",
         "content_type": 33,
-        "codename": "add_oauthcredentials"
+        "codename": "add_user"
     }
 },
 {
     "model": "auth.permission",
     "pk": 130,
     "fields": {
-        "name": "Can change o auth credentials",
+        "name": "Can change user",
         "content_type": 33,
-        "codename": "change_oauthcredentials"
+        "codename": "change_user"
     }
 },
 {
     "model": "auth.permission",
     "pk": 131,
     "fields": {
-        "name": "Can delete o auth credentials",
+        "name": "Can delete user",
         "content_type": 33,
-        "codename": "delete_oauthcredentials"
+        "codename": "delete_user"
     }
 },
 {
     "model": "auth.permission",
     "pk": 132,
     "fields": {
-        "name": "Can view o auth credentials",
+        "name": "Can view user",
         "content_type": 33,
-        "codename": "view_oauthcredentials"
+        "codename": "view_user"
     }
 },
 {
     "model": "auth.permission",
     "pk": 133,
     "fields": {
-        "name": "Can add corpus right",
+        "name": "Can add o auth credentials",
         "content_type": 34,
-        "codename": "add_corpusright"
+        "codename": "add_oauthcredentials"
     }
 },
 {
     "model": "auth.permission",
     "pk": 134,
     "fields": {
-        "name": "Can change corpus right",
+        "name": "Can change o auth credentials",
         "content_type": 34,
-        "codename": "change_corpusright"
+        "codename": "change_oauthcredentials"
     }
 },
 {
     "model": "auth.permission",
     "pk": 135,
     "fields": {
-        "name": "Can delete corpus right",
+        "name": "Can delete o auth credentials",
         "content_type": 34,
-        "codename": "delete_corpusright"
+        "codename": "delete_oauthcredentials"
     }
 },
 {
     "model": "auth.permission",
     "pk": 136,
     "fields": {
-        "name": "Can view corpus right",
+        "name": "Can view o auth credentials",
         "content_type": 34,
-        "codename": "view_corpusright"
+        "codename": "view_oauthcredentials"
     }
 },
 {
     "model": "auth.permission",
     "pk": 137,
     "fields": {
-        "name": "Can add user scope",
+        "name": "Can add corpus right",
         "content_type": 35,
-        "codename": "add_userscope"
+        "codename": "add_corpusright"
     }
 },
 {
     "model": "auth.permission",
     "pk": 138,
     "fields": {
-        "name": "Can change user scope",
+        "name": "Can change corpus right",
         "content_type": 35,
-        "codename": "change_userscope"
+        "codename": "change_corpusright"
     }
 },
 {
     "model": "auth.permission",
     "pk": 139,
     "fields": {
-        "name": "Can delete user scope",
+        "name": "Can delete corpus right",
         "content_type": 35,
-        "codename": "delete_userscope"
+        "codename": "delete_corpusright"
     }
 },
 {
     "model": "auth.permission",
     "pk": 140,
     "fields": {
-        "name": "Can view user scope",
+        "name": "Can view corpus right",
         "content_type": 35,
-        "codename": "view_userscope"
+        "codename": "view_corpusright"
     }
 },
 {
     "model": "auth.permission",
     "pk": 141,
     "fields": {
-        "name": "Can add group",
+        "name": "Can add user scope",
         "content_type": 36,
-        "codename": "add_group"
+        "codename": "add_userscope"
     }
 },
 {
     "model": "auth.permission",
     "pk": 142,
     "fields": {
-        "name": "Can change group",
+        "name": "Can change user scope",
         "content_type": 36,
-        "codename": "change_group"
+        "codename": "change_userscope"
     }
 },
 {
     "model": "auth.permission",
     "pk": 143,
     "fields": {
-        "name": "Can delete group",
+        "name": "Can delete user scope",
         "content_type": 36,
-        "codename": "delete_group"
+        "codename": "delete_userscope"
     }
 },
 {
     "model": "auth.permission",
     "pk": 144,
     "fields": {
-        "name": "Can view group",
+        "name": "Can view user scope",
         "content_type": 36,
-        "codename": "view_group"
+        "codename": "view_userscope"
     }
 },
 {
     "model": "auth.permission",
     "pk": 145,
     "fields": {
-        "name": "Can add membership",
+        "name": "Can add group",
         "content_type": 37,
-        "codename": "add_membership"
+        "codename": "add_group"
     }
 },
 {
     "model": "auth.permission",
     "pk": 146,
     "fields": {
-        "name": "Can change membership",
+        "name": "Can change group",
         "content_type": 37,
-        "codename": "change_membership"
+        "codename": "change_group"
     }
 },
 {
     "model": "auth.permission",
     "pk": 147,
     "fields": {
-        "name": "Can delete membership",
+        "name": "Can delete group",
         "content_type": 37,
-        "codename": "delete_membership"
+        "codename": "delete_group"
     }
 },
 {
     "model": "auth.permission",
     "pk": 148,
     "fields": {
-        "name": "Can view membership",
+        "name": "Can view group",
         "content_type": 37,
-        "codename": "view_membership"
+        "codename": "view_group"
     }
 },
 {
     "model": "auth.permission",
     "pk": 149,
     "fields": {
-        "name": "Can add data file",
+        "name": "Can add membership",
         "content_type": 38,
-        "codename": "add_datafile"
+        "codename": "add_membership"
     }
 },
 {
     "model": "auth.permission",
     "pk": 150,
     "fields": {
-        "name": "Can change data file",
+        "name": "Can change membership",
         "content_type": 38,
-        "codename": "change_datafile"
+        "codename": "change_membership"
     }
 },
 {
     "model": "auth.permission",
     "pk": 151,
     "fields": {
-        "name": "Can delete data file",
+        "name": "Can delete membership",
         "content_type": 38,
-        "codename": "delete_datafile"
+        "codename": "delete_membership"
     }
 },
 {
     "model": "auth.permission",
     "pk": 152,
     "fields": {
-        "name": "Can view data file",
+        "name": "Can view membership",
         "content_type": 38,
-        "codename": "view_datafile"
+        "codename": "view_membership"
     }
 },
 {
     "model": "auth.permission",
     "pk": 153,
     "fields": {
-        "name": "Can add data import",
+        "name": "Can add data file",
         "content_type": 39,
-        "codename": "add_dataimport"
+        "codename": "add_datafile"
     }
 },
 {
     "model": "auth.permission",
     "pk": 154,
     "fields": {
-        "name": "Can change data import",
+        "name": "Can change data file",
         "content_type": 39,
-        "codename": "change_dataimport"
+        "codename": "change_datafile"
     }
 },
 {
     "model": "auth.permission",
     "pk": 155,
     "fields": {
-        "name": "Can delete data import",
+        "name": "Can delete data file",
         "content_type": 39,
-        "codename": "delete_dataimport"
+        "codename": "delete_datafile"
     }
 },
 {
     "model": "auth.permission",
     "pk": 156,
     "fields": {
-        "name": "Can view data import",
+        "name": "Can view data file",
         "content_type": 39,
-        "codename": "view_dataimport"
+        "codename": "view_datafile"
     }
 },
 {
     "model": "auth.permission",
     "pk": 157,
     "fields": {
-        "name": "Can add repository",
+        "name": "Can add data import",
         "content_type": 40,
-        "codename": "add_repository"
+        "codename": "add_dataimport"
     }
 },
 {
     "model": "auth.permission",
     "pk": 158,
     "fields": {
-        "name": "Can change repository",
+        "name": "Can change data import",
         "content_type": 40,
-        "codename": "change_repository"
+        "codename": "change_dataimport"
     }
 },
 {
     "model": "auth.permission",
     "pk": 159,
     "fields": {
-        "name": "Can delete repository",
+        "name": "Can delete data import",
         "content_type": 40,
-        "codename": "delete_repository"
+        "codename": "delete_dataimport"
     }
 },
 {
     "model": "auth.permission",
     "pk": 160,
     "fields": {
-        "name": "Can view repository",
+        "name": "Can view data import",
         "content_type": 40,
-        "codename": "view_repository"
+        "codename": "view_dataimport"
     }
 },
 {
     "model": "auth.permission",
     "pk": 161,
     "fields": {
-        "name": "Can add revision",
+        "name": "Can add repository",
         "content_type": 41,
-        "codename": "add_revision"
+        "codename": "add_repository"
     }
 },
 {
     "model": "auth.permission",
     "pk": 162,
     "fields": {
-        "name": "Can change revision",
+        "name": "Can change repository",
         "content_type": 41,
-        "codename": "change_revision"
+        "codename": "change_repository"
     }
 },
 {
     "model": "auth.permission",
     "pk": 163,
     "fields": {
-        "name": "Can delete revision",
+        "name": "Can delete repository",
         "content_type": 41,
-        "codename": "delete_revision"
+        "codename": "delete_repository"
     }
 },
 {
     "model": "auth.permission",
     "pk": 164,
     "fields": {
-        "name": "Can view revision",
+        "name": "Can view repository",
         "content_type": 41,
-        "codename": "view_revision"
+        "codename": "view_repository"
     }
 },
 {
     "model": "auth.permission",
     "pk": 165,
     "fields": {
-        "name": "Can add worker",
+        "name": "Can add revision",
         "content_type": 42,
-        "codename": "add_worker"
+        "codename": "add_revision"
     }
 },
 {
     "model": "auth.permission",
     "pk": 166,
     "fields": {
-        "name": "Can change worker",
+        "name": "Can change revision",
         "content_type": 42,
-        "codename": "change_worker"
+        "codename": "change_revision"
     }
 },
 {
     "model": "auth.permission",
     "pk": 167,
     "fields": {
-        "name": "Can delete worker",
+        "name": "Can delete revision",
         "content_type": 42,
-        "codename": "delete_worker"
+        "codename": "delete_revision"
     }
 },
 {
     "model": "auth.permission",
     "pk": 168,
     "fields": {
-        "name": "Can view worker",
+        "name": "Can view revision",
         "content_type": 42,
-        "codename": "view_worker"
+        "codename": "view_revision"
     }
 },
 {
     "model": "auth.permission",
     "pk": 169,
     "fields": {
-        "name": "Can add worker version",
+        "name": "Can add worker",
         "content_type": 43,
-        "codename": "add_workerversion"
+        "codename": "add_worker"
     }
 },
 {
     "model": "auth.permission",
     "pk": 170,
     "fields": {
-        "name": "Can change worker version",
+        "name": "Can change worker",
         "content_type": 43,
-        "codename": "change_workerversion"
+        "codename": "change_worker"
     }
 },
 {
     "model": "auth.permission",
     "pk": 171,
     "fields": {
-        "name": "Can delete worker version",
+        "name": "Can delete worker",
         "content_type": 43,
-        "codename": "delete_workerversion"
+        "codename": "delete_worker"
     }
 },
 {
     "model": "auth.permission",
     "pk": 172,
     "fields": {
-        "name": "Can view worker version",
+        "name": "Can view worker",
         "content_type": 43,
-        "codename": "view_workerversion"
+        "codename": "view_worker"
     }
 },
 {
     "model": "auth.permission",
     "pk": 173,
     "fields": {
-        "name": "Can add git ref",
+        "name": "Can add worker version",
         "content_type": 44,
-        "codename": "add_gitref"
+        "codename": "add_workerversion"
     }
 },
 {
     "model": "auth.permission",
     "pk": 174,
     "fields": {
-        "name": "Can change git ref",
+        "name": "Can change worker version",
         "content_type": 44,
-        "codename": "change_gitref"
+        "codename": "change_workerversion"
     }
 },
 {
     "model": "auth.permission",
     "pk": 175,
     "fields": {
-        "name": "Can delete git ref",
+        "name": "Can delete worker version",
         "content_type": 44,
-        "codename": "delete_gitref"
+        "codename": "delete_workerversion"
     }
 },
 {
     "model": "auth.permission",
     "pk": 176,
     "fields": {
-        "name": "Can view git ref",
+        "name": "Can view worker version",
         "content_type": 44,
-        "codename": "view_gitref"
+        "codename": "view_workerversion"
     }
 },
 {
     "model": "auth.permission",
     "pk": 177,
     "fields": {
-        "name": "Can add worker run",
+        "name": "Can add git ref",
         "content_type": 45,
-        "codename": "add_workerrun"
+        "codename": "add_gitref"
     }
 },
 {
     "model": "auth.permission",
     "pk": 178,
     "fields": {
-        "name": "Can change worker run",
+        "name": "Can change git ref",
         "content_type": 45,
-        "codename": "change_workerrun"
+        "codename": "change_gitref"
     }
 },
 {
     "model": "auth.permission",
     "pk": 179,
     "fields": {
-        "name": "Can delete worker run",
+        "name": "Can delete git ref",
         "content_type": 45,
-        "codename": "delete_workerrun"
+        "codename": "delete_gitref"
     }
 },
 {
     "model": "auth.permission",
     "pk": 180,
     "fields": {
-        "name": "Can view worker run",
+        "name": "Can view git ref",
         "content_type": 45,
-        "codename": "view_workerrun"
+        "codename": "view_gitref"
     }
 },
 {
     "model": "auth.permission",
     "pk": 181,
     "fields": {
-        "name": "Can add data import element",
+        "name": "Can add worker run",
         "content_type": 46,
-        "codename": "add_dataimportelement"
+        "codename": "add_workerrun"
     }
 },
 {
     "model": "auth.permission",
     "pk": 182,
     "fields": {
-        "name": "Can change data import element",
+        "name": "Can change worker run",
         "content_type": 46,
-        "codename": "change_dataimportelement"
+        "codename": "change_workerrun"
     }
 },
 {
     "model": "auth.permission",
     "pk": 183,
     "fields": {
-        "name": "Can delete data import element",
+        "name": "Can delete worker run",
         "content_type": 46,
-        "codename": "delete_dataimportelement"
+        "codename": "delete_workerrun"
     }
 },
 {
     "model": "auth.permission",
     "pk": 184,
     "fields": {
-        "name": "Can view data import element",
+        "name": "Can view worker run",
         "content_type": 46,
+        "codename": "view_workerrun"
+    }
+},
+{
+    "model": "auth.permission",
+    "pk": 185,
+    "fields": {
+        "name": "Can add data import element",
+        "content_type": 47,
+        "codename": "add_dataimportelement"
+    }
+},
+{
+    "model": "auth.permission",
+    "pk": 186,
+    "fields": {
+        "name": "Can change data import element",
+        "content_type": 47,
+        "codename": "change_dataimportelement"
+    }
+},
+{
+    "model": "auth.permission",
+    "pk": 187,
+    "fields": {
+        "name": "Can delete data import element",
+        "content_type": 47,
+        "codename": "delete_dataimportelement"
+    }
+},
+{
+    "model": "auth.permission",
+    "pk": 188,
+    "fields": {
+        "name": "Can view data import element",
+        "content_type": 47,
         "codename": "view_dataimportelement"
     }
 },
 {
     "model": "ponos.workflow",
-    "pk": "c7d0fc3f-2189-494e-a124-a5179e09fe8d",
+    "pk": "17abc122-a22d-4788-b8ae-8a6f576e55ed",
     "fields": {
         "recipe": "tasks:\n docker_build:\n  image: reco",
         "created": "2020-02-02T01:23:45.678Z",
@@ -3165,7 +3269,7 @@
 },
 {
     "model": "ponos.task",
-    "pk": "4511527d-e7fb-45f1-be81-2727e81eb148",
+    "pk": "b579d90f-b7f1-49ff-b30d-06671078ea01",
     "fields": {
         "run": 0,
         "depth": 0,
@@ -3178,7 +3282,7 @@
         "has_docker_socket": false,
         "image_artifact": null,
         "agent": null,
-        "workflow": "c7d0fc3f-2189-494e-a124-a5179e09fe8d",
+        "workflow": "17abc122-a22d-4788-b8ae-8a6f576e55ed",
         "container": null,
         "created": "2020-02-02T01:23:45.678Z",
         "updated": "2020-02-02T01:23:45.678Z",
@@ -3187,9 +3291,9 @@
 },
 {
     "model": "ponos.artifact",
-    "pk": "462af040-499c-4b7b-85d1-25d2d1b349e8",
+    "pk": "b795d482-d08d-4599-ae82-db16ea4331e8",
     "fields": {
-        "task": "4511527d-e7fb-45f1-be81-2727e81eb148",
+        "task": "b579d90f-b7f1-49ff-b30d-06671078ea01",
         "path": "/path/to/docker_build",
         "size": 42000,
         "content_type": "application/octet-stream",
diff --git a/arkindex/documents/management/commands/build_fixtures.py b/arkindex/documents/management/commands/build_fixtures.py
index 8873d20619..f9481406de 100644
--- a/arkindex/documents/management/commands/build_fixtures.py
+++ b/arkindex/documents/management/commands/build_fixtures.py
@@ -9,7 +9,7 @@ from django.utils import timezone as DjangoTimeZone
 from arkindex.dataimport.models import RepositoryType, WorkerVersion, WorkerVersionState, Workflow
 from arkindex.documents.models import Corpus, DataSource, Element, MetaData
 from arkindex.images.models import Image, ImageServer, Zone
-from arkindex.users.models import CorpusRight, User
+from arkindex.users.models import CorpusRight, Group, User
 from arkindex_common.enums import MetaType, TranscriptionType
 from arkindex_common.ml_tool import MLToolType
 from ponos.models import State
@@ -61,18 +61,29 @@ class Command(BaseCommand):
         line_zone = makezone(img1, 400, 500)
 
         # Create an admin, an internal and a normal user
-        superuser = User.objects.create_superuser('root@root.fr', 'Pa$$w0rd')
+        superuser = User.objects.create_superuser('root@root.fr', 'Pa$$w0rd', display_name='Admin')
         superuser.verified_email = True
         superuser.save()
 
-        internal_user = User.objects.create_user('internal@internal.fr', 'Pa$$w0rd', internal=True)
+        internal_user = User.objects.create_user(
+            'internal@internal.fr',
+            'Pa$$w0rd',
+            display_name='Internal user',
+            internal=True,
+        )
         internal_user.verified_email = True
         internal_user.save()
 
-        user = User.objects.create_user('user@user.fr', 'Pa$$w0rd')
+        user = User.objects.create_user('user@user.fr', 'Pa$$w0rd', display_name='Test user')
         user.verified_email = True
         user.save()
 
+        # Create a group owned by the user with 2 other members
+        group = Group.objects.create(name="User group", public=False)
+        group.memberships.create(user=user, level=100)
+        group.users.create(email='user2@user.fr', display_name='Test user write', through_defaults={'level': 50})
+        group.users.create(email='user3@user.fr', display_name='Test user read', through_defaults={'level': 10})
+
         # Create 1 data source for transcriptions
         recognizer_source = DataSource.objects.create(
             type=MLToolType.Recognizer,
diff --git a/arkindex/project/api_v1.py b/arkindex/project/api_v1.py
index 1dd403b540..352d09dfbe 100644
--- a/arkindex/project/api_v1.py
+++ b/arkindex/project/api_v1.py
@@ -86,6 +86,7 @@ from arkindex.project.openapi import SchemaGenerator
 from arkindex.users.api import (
     CredentialsList,
     CredentialsRetrieve,
+    GroupMembershipsList,
     GroupsList,
     JobList,
     JobRetrieve,
@@ -248,6 +249,7 @@ api = [
 
     # Rights management
     path('groups/', GroupsList.as_view(), name='groups-list'),
+    path('group/<uuid:pk>/members/', GroupMembershipsList.as_view(), name='group-members'),
 
     # Asynchronous jobs
     path('jobs/', JobList.as_view(), name='jobs-list'),
diff --git a/arkindex/project/tests/__init__.py b/arkindex/project/tests/__init__.py
index b42d515b72..fc941f085b 100644
--- a/arkindex/project/tests/__init__.py
+++ b/arkindex/project/tests/__init__.py
@@ -80,6 +80,7 @@ class FixtureMixin(object):
     def setUpTestData(cls):
         cls.corpus = Corpus.objects.get(name='Unit Tests')
         cls.user = User.objects.get(email='user@user.fr')
+        cls.group = cls.user.groups.get(name='User group')
         cls.superuser = User.objects.get(email='root@root.fr')
         cls.imgsrv = ImageServer.objects.get(url='http://server')
 
diff --git a/arkindex/users/api.py b/arkindex/users/api.py
index 18268aaf8d..9e3710be3e 100644
--- a/arkindex/users/api.py
+++ b/arkindex/users/api.py
@@ -8,6 +8,7 @@ from django.contrib.auth.mixins import UserPassesTestMixin
 from django.contrib.auth.tokens import default_token_generator
 from django.core.mail import send_mail
 from django.db.models import Count, Q
+from django.shortcuts import get_object_or_404
 from django.template.loader import render_to_string
 from django.urls import reverse
 from django.utils.http import urlsafe_base64_encode
@@ -35,6 +36,7 @@ from arkindex.users.models import Group, OAuthStatus, Scope, User, UserScope
 from arkindex.users.providers import get_provider, oauth_providers
 from arkindex.users.serializers import (
     EmailLoginSerializer,
+    GroupMembershipsSerializer,
     GroupSerializer,
     JobSerializer,
     NewUserSerializer,
@@ -461,8 +463,8 @@ class GroupsList(ListCreateAPIView):
     def get_queryset(self):
         # List public groups and ones to which user belongs
         return Group.objects \
-            .filter(Q(public=True) | Q(users__in=[self.request.user])) \
             .annotate(members_count=Count('users')) \
+            .filter(Q(public=True) | Q(users__in=[self.request.user])) \
             .order_by('id')
 
 
@@ -501,3 +503,23 @@ class JobRetrieve(RetrieveDestroyAPIView):
         if instance.get_status(refresh=False) == JobStatus.STARTED:
             raise ValidationError(['Cannot delete a running job.'])
         instance.delete()
+
+
+class GroupMembershipsList(ListAPIView):
+    """
+    List members of a group to which user belongs with their privileges
+    """
+    serializer_class = GroupMembershipsSerializer
+    permission_classes = (IsVerified, )
+    openapi_overrides = {
+        'security': [],
+        'tags': ['users'],
+    }
+
+    def get_queryset(self):
+        group = get_object_or_404(Group.objects.filter(
+            # Filter groups to which user belongs
+            users__in=[self.request.user],
+            id=self.kwargs['pk']
+        ))
+        return group.memberships.order_by('user__display_name', 'id').prefetch_related('user')
diff --git a/arkindex/users/models.py b/arkindex/users/models.py
index 1f47cea71e..38dca63096 100644
--- a/arkindex/users/models.py
+++ b/arkindex/users/models.py
@@ -10,6 +10,24 @@ from arkindex.users.managers import UserManager
 from arkindex.users.providers import get_provider, oauth_providers
 
 
+class LevelRight(Enum):
+    Admin = 'admin', 100
+    Write = 'write', 50
+    Read = 'read', 10
+
+    def __new__(cls, value, level):
+        right = object.__new__(cls)
+        right._value_ = value
+        right.level = level
+        return right
+
+    @classmethod
+    def from_level(cls, level):
+        for right in cls.__iter__():
+            if right.level <= level:
+                return right
+
+
 class User(AbstractBaseUser):
     email = models.EmailField(
         verbose_name='email address',
diff --git a/arkindex/users/serializers.py b/arkindex/users/serializers.py
index 47c9ee99a2..2317e19f9b 100644
--- a/arkindex/users/serializers.py
+++ b/arkindex/users/serializers.py
@@ -9,7 +9,7 @@ from django.utils.http import urlsafe_base64_decode
 from rest_framework import serializers
 
 from arkindex.project.serializer_fields import EnumField
-from arkindex.users.models import Group, Membership, OAuthCredentials, OAuthStatus, User
+from arkindex.users.models import Group, LevelRight, Membership, OAuthCredentials, OAuthStatus, User
 from transkribus import TranskribusAPI
 
 logging.basicConfig(
@@ -258,3 +258,23 @@ class JobSerializer(serializers.Serializer):
         but the enum is just a plain object and not an Enum for Py2 compatibility.
         """
         return instance.get_status(refresh=False)
+
+
+class GroupMembershipsSerializer(serializers.ModelSerializer):
+    id = serializers.StringRelatedField(source='user.id')
+    display_name = serializers.StringRelatedField(source='user.display_name')
+    email = serializers.StringRelatedField(source='user.email')
+    level = serializers.SerializerMethodField()
+
+    class Meta:
+        model = Membership
+        fields = (
+            'id',
+            'display_name',
+            'email',
+            'level'
+        )
+
+    def get_level(self, obj):
+        right = LevelRight.from_level(obj.level)
+        return right and right.value
diff --git a/arkindex/users/tests/test_membership.py b/arkindex/users/tests/test_membership.py
index 93034b210c..95adf48159 100644
--- a/arkindex/users/tests/test_membership.py
+++ b/arkindex/users/tests/test_membership.py
@@ -64,6 +64,15 @@ class TestMembership(FixtureAPITestCase):
             [(self.user.id, 100)]
         )
 
+    def test_crate_group_duplicated_name(self):
+        """
+        Assert multiple groups can have a similar name
+        """
+        self.client.force_login(self.user)
+        with self.assertNumQueries(6):
+            response = self.client.post(reverse('api:groups-list'), {'name': self.group.name})
+        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
+
     def test_list_groups(self):
         """
         List groups which are public or for which the user is a member
@@ -72,14 +81,90 @@ class TestMembership(FixtureAPITestCase):
         with self.assertNumQueries(4):
             response = self.client.get(reverse('api:groups-list'))
         self.assertDictEqual(response.json(), {
-            'count': 1,
+            'count': 2,
+            'number': 1,
+            'next': None,
+            'previous': None,
+            'results': [
+                {
+                    'id': str(self.group.id),
+                    'members_count': 3,
+                    'name': 'User group',
+                    'public': False
+                }, {
+                    'id': str(self.admin_group.id),
+                    'members_count': 1,
+                    'name': 'Admin group',
+                    'public': True
+                }
+            ]
+        })
+
+    def test_list_members_requires_member_user(self):
+        """
+        Only users that belong to a group have the ability to list the members
+        Otherwise we return a 404 as usual
+        """
+        self.client.force_login(self.user)
+        with self.assertNumQueries(3):
+            response = self.client.get(reverse('api:group-members', kwargs={'pk': str(self.admin_group.id)}))
+        self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND)
+
+    def test_list_members_level_right(self):
+        """
+        List members of a group with their right corresponding to privileges level
+        Members are ordered by display name
+        """
+        self.client.force_login(self.user)
+        with self.assertNumQueries(6):
+            response = self.client.get(reverse('api:group-members', kwargs={'pk': str(self.group.id)}))
+        read_member, write_member, admin_member = self.group.memberships.order_by('level')
+        self.assertEqual(response.status_code, status.HTTP_200_OK)
+        self.assertEqual(response.json(), {
+            'count': 3,
+            'next': None,
             'number': 1,
+            'previous': None,
+            'results': [
+                {
+                    'display_name': 'Test user',
+                    'email': admin_member.user.email,
+                    'id': str(admin_member.user.id),
+                    'level': 'admin'
+                }, {
+                    'display_name': 'Test user read',
+                    'email': read_member.user.email,
+                    'id': str(read_member.user.id),
+                    'level': 'read'
+                }, {
+                    'display_name': 'Test user write',
+                    'email': write_member.user.email,
+                    'id': str(write_member.user.id),
+                    'level': 'write'
+                }
+            ]
+        })
+
+    def test_list_members_null_right(self):
+        """
+        Non defined right level should return None
+        """
+        self.client.force_login(self.user)
+        group = self.user.groups.create(name='Another group', through_defaults={'level': 1})
+        with self.assertNumQueries(6):
+            response = self.client.get(reverse('api:group-members', kwargs={'pk': str(group.id)}))
+        self.assertEqual(response.status_code, status.HTTP_200_OK)
+        self.assertEqual(response.json(), {
+            'count': 1,
             'next': None,
+            'number': 1,
             'previous': None,
-            'results': [{
-                'id': str(self.admin_group.id),
-                'members_count': 1,
-                'name': 'Admin group',
-                'public': True
-            }]
+            'results': [
+                {
+                    'display_name': self.user.display_name,
+                    'email': self.user.email,
+                    'id': str(self.user.id),
+                    'level': None
+                }
+            ]
         })
-- 
GitLab