Avoiding ORM and splitting into two apps seems to be like making water flow up hill. Going to just make this a generic flask-sqlalchemy thing for now. - backend test setup: generate temporary database, insert rows (?) backend/api: - first-rev schema - json_blob table (by sha1) - create work, release, etc - get by ID tooling: - query tool: by fc id, doi/issn/etc importers: - crossref - pubmed - dblp - "norwegian" journal list - scihub hash list - author list? webface: - creators and editors for: works releases files people containers #### Open Questions How to create multiple cross-referenced entities at the same time? Eg, work and release, with release referencing work. work_id isn't allocated/indicated until merge-time. As a work-around, could have a temporary work_rev_id column which gets overridden during merge. Mechanism for skipping edit group stage. Propose always having edit rows generated, containing appropriate metadata, but certain bots can skip creation of edit group.