MLMI2-CSSI/foundry

Foundry Search

Closed this issue · 6 comments

As a dataset user I want to be able to search for datasets so I can start using them

Description

This will be a cleaned up Foundry class. It will take the same constructors as the current Foundry class.

This will be a method on a Foundry instance.
Returns a list of FoundryDataset instances with just basic metadata populated.

Assumptions

  1. Start with just the string-based search
  2. Convert DOIs into explicit DOI search
  3. Omitting search_term will search for all datasets
  4. Name the method search
  5. It will take an optional limit keyword arg.
  6. FoundryDataset is created as part of this story

Acceptance criteria

f = Foundry()
datasets = f.search("DOI123.456")

assert len(datasets) == 1
assert datasets[0].title == "foobar"

think on how others can hop in to take pieces of this

remove FoundryCache and notebook example updates from this issue -- both in #400

Include tests and documentation -- maybe @ericblau can help if he's looking for things to wrap up this sprint?

feel free to ask for help to complete this in time

Decision 10/25 (https://miro.com/app/board/uXjVPrIdUhE=/?moveToWidget=3458764567966712164&cot=14):

  • this PR will return search results as a list of FoundryDatasets
  • we will create another story () to return search results as a nicely formatted Pandas dataframe (for table display purposes and ease of use) with the option to get the results as a list of FoundryDatasets

merged