Skip to content

New Article element types #92

@mpacer

Description

@mpacer

I've been moving us toward having functionality for different types of elements inside Articles inside their own classes rather than having such a monumental Article class.

This will help in a lot of ways but the biggest things have to do with bringing new people into the codebase. Specifically by localising the functionality, it'll be easier for people to trace down bugs, know where to introduce new functionality, test, write documentation for, &c..

So I figured that we should start compiling a list of element classes that should be created as we realise that they exist in the article itself:

  • License (complete w/ Properties #81)
  • Journal (complete w/Properties #81)
  • Dates
  • Doi
  • Urls
    • Url
  • Filename
  • Contributors (collection)
    • Contributor(base_class, raise NotImplementedErrors in init.py)
      • Author(Contributor)
      • Editor(Contributor)
  • Counts (maybe… not sure)

In the case of doi, url and filename the methods currently used to transform them could be contained within the classes, eliminating the need for the transformations scripts and tying the validation directly to the particular kinds of elements.

And there may be others but those are the ones that jump out at me at the moment.

@eseiver @sbassi

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions