ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAE
1
Phase
Programmatic Client Synapse
Programmatic Client sans Synapse
Backend SynapseBackend sans SynapseWeb Client SynapseWeb Client sans SynapseUse Case Rank
2
Data Ingress - metadata submission
3
Decouple metadata upload from data upload2x1
4
Upload metadata via standardized formats (csv, json) - R & Python2x1
5
Update metadata via standardized formats (csv, json) - R & Python2x1
6
Support metadata upload/update for hundreds of thousands of objects (i.e. update may take (reasonable) time, but result in a clean metadata state)2xx1
7
Allow metadata association with Synapse entitities not limited to files1x1
8
Validate metadata based on schemas associated with Synapse entitities; raise appropriate errors (e.g. schema/metadata attribute mismatch)1xx1
9
Hide unnecessary complexity (e.g. no need to know what's a FileView to update metadata in batch)2x1, 16
10
Support upload, update, validate above via Web UI based on the same I/O formats2x1, 8
11
Metadata submission "wizard": self-enforced validation (e.g. drop-downs/checkboxes)2x2
12
Metadata submission "wizard": fill-in mechanics automation (e.g. batch apply metadata values to a set of entities)2x2
13
Metadata submission "wizard": branching metadata filling logic based on schema dependencies (e.g. setting metadata value for attribute X of entity Y, requires setting attribute Z of entity Y as well)1x2
14
Metadata submission "wizard": metadata completion workflow with a schema-consistent metadata as an end-point (in Python, R and workflowized?) 3xx (?)2
15
Metadata submission state capture & save to Synapse/locally2xx3
16
Store history of metadata submission state captures saved in Synapse (to enable Redo/Undo similar to provenance)3xx3
17
Assign subset of metadata fields to a set of individuals to fill in so that metadata can be completed collaboratively4xx13
18
Enable comment boxes that can be associated with various attributes; provide initial indication of request type (e.g. question, data model change, help)4xx(?)15
19
Data management
20
Allow linking between entities in Synapse, based on entity schemas. E.g. define a Study related schema - that can be reused by schemas in various Synapse projects - and includes links between publications and datasets.3?x12
21
List all projects that use a given schema.5?x17
22
23
Metadata management
24
Enable distinct sharing & permission settings applied to subsets of metadata attributes4?x4
25
Versioned schemas associated with each Synapse entity 1x5, 7
26
Enable association of schema versions to downstream resources (e.g. data portals, workflows, dataset/files, projects, metadata contribution pipeline)1x5, 6
27
Enable listing of resources using schema version X associated with entity Y4?xxx5
28
Enable metadata managers to create new schema versions and associate them with entities 1xxx(?)5
29
Metadata submission progress dashboard, available both to metadata administrators and users (e.g. track estimated time to completion/percentage across varaious metadata attribute sets; indication of invalid metadata entries captured in latest metadata submission state (i.e. see 15))3?x(?)x9, 10
30
31
Data Access & Use
32
Develop a layer converting metadata following a schema associated with a given project/dataset/entity into structured data exposed to search engines (e.g. via hidden "site/dataset map").3xx(?)11
33
Ability to send updates related to a data release (and metadata schemas version changes) to an existing set of users consuming the dataset files already3x14
34
Gold Star given to everyone that submits fully annotated datasets4xx(?)
35
Store a query as a favorite, and receive notifications every time the collection of datasets returned has increased, so that analysis can be done if needed on the latest and greatest data. 4x20
36
37
Interoperability
38
Serialize Synapse schemas to JSON-LD and JSONSchema validation schemas, as applicable3
39
40
Data Governance
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100