Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reconsider new birth and death EDTF fields in CreatorBase on "develop" branch #5

Open
jmurty opened this issue May 25, 2017 · 1 comment

Comments

@jmurty
Copy link
Contributor

jmurty commented May 25, 2017

Recent changes on the "develop" branch added new birth_date_* and death_date_* fields to CreatorBase to capture EDTF dates.

These probably do not make sense where they are, since the organizations model is derived from CreatorBase as well as the person model, and it probably doesn't make sense to talk about organisation birth/death dates.

There were also already very similar looking life_info_* fields on the PersonCreator model for capturing this sort of info.

We need to figure out:

  • where birth/death EDTF date fields should be defined, just on a person or on all creators
  • what should these fields be named, if they will apply to both persons and organisations

Then, based on the above:

  • relocate or delete or merge the existing EDTF fields defined across CreatorBase and PersonCreator models
  • consolidate any other logic in code that applies to these fields, if there is any?
  • re-merge to the API branch and update the API serialisers etc to account for any changes.

Extra notes from @cogat:

  • @james sounds about right… but it’s not unusual to think of orgs having birth/death dates. I wonder if birth_date_display and birth_date_edtf should be on the PersonCreatormodel and the _sort and _date fields should be on the CreatorBase model, named the same for both Orgs and People?
  • That would mean that queries on the data would only involve the CreatorBase model. Having said that, I think the queries are only likely to come through search index or API (the latter querying undeveloped as yet). Search index isn’t likely to be a performance concern.
jmurty added a commit that referenced this issue Jun 6, 2017
* `CreatorBase` now has generic names for start
  and end date fields to serve as the "birth"
  and "death" dates for persons, and "creation"
  and "closure" dates for organisations
* Rename `WorkBase.date_*` fields representing
  creation date to match: `creation_date_*`
* Remove redundant birth/death `life_info_*`
  fields from `PersonCreator
* Rename other `life_info_*` fields on
  `PersonCreator` to remove `life_info_` prefix
  for simplicity (there aren't that many of them
  any more)

Fields renamed or consolidated:

* Creator/Person/Organisation: `birth_date_*`
  => `start_date_*`
* Creator/Person/Organisation: `death_date_*`
  => `end_date_*`
* Artwork/Game/Film/MovingImage `date_*` =>
  `creation_date_*`
* Person: `life_info_birth_date_*` =>
  `start_date_*` (from `CreatorBase`)
* Person: `life_info_deat_date_*` =>
  `end_date_*` (from `CreatorBase`)
* Person: `life_info_birth_place` =>
  `birth_place`
* Person: `life_info_birth_place_historic`
  => `birth_place_historic`
* Person: `life_info_death_place` =>
  `death_place`

API Notes:

The API renames the `start_date_` and
`end_date_` fields from `CreatorBase` to
more appropriate model-specific names:
`birth_date_` & `death_date_` for persons,
`creation_date_` & `closure_date_` for
organizations.
@jmurty jmurty self-assigned this Jun 6, 2017
@jmurty jmurty mentioned this issue Jun 6, 2017
@jmurty
Copy link
Contributor Author

jmurty commented Jun 7, 2017

If any further work is required on this, beyond the commits already made, it will proceed in the https://github.com/ic-labs/django-icekit project instead

@jmurty jmurty removed their assignment Oct 23, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant