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

As a PDS.nasa.gov user, I want to search for the DOI for a PDS4 data product from a public facing website (pds.nasa.gov) #14

Closed
3 tasks done
jordanpadams opened this issue Jun 22, 2021 · 10 comments
Assignees
Labels

Comments

@jordanpadams
Copy link
Member

Motivation

...so that I can track down the DOI for an applicable PDS4 data set

Additional Details

related to NASA-PDS/doi-ui#33 and NASA-PDS/doi-ui#25 but this is specifically intended for pds.nasa.gov and folks trying to track down a DOI to be cited in a paper versus the DOI UI search is intended entirely for internal PDS personnel for modifying/updating DOIs.

Acceptance Criteria

Given a registered PDS4 bundle LID that has an available DOI
When I perform a search with the bundle LID
Then I expect to retrieve the DOI from the interface

Engineering Details

  • strategize how to leverage pds-doi-ui and use same code as much as possible in new repo
  • pull out ability to write or update UI pages
  • strip out "search component" into own separate pds-doi-search
@jordanpadams jordanpadams changed the title As a PDS.nasa.gov user, I want to search for the DOI for a PDS4 data product. As a PDS.nasa.gov user, I want to search for the DOI for a PDS4 data product from a public facing website (pds.nasa.gov) Jun 22, 2021
@eddiesarevalo
Copy link
Member

I mentioned this in NASA-PDS/doi-ui#60 but I think we should use a custom tool chain to build embeddable scripts and NPM publishable files.
https://app.zenhub.com/files/296461390/f5e70fc2-b69b-41cc-aeb8-db8392d48945/download

@tloubrieu-jpl
Copy link
Member

@eddiesarevalo works on 3 tasks:

  • create a javascript library to be used in the public facing search web site
  • create a NPM package (different ticket)
  • the DOI Serice app should be updated to use the new NPM package (new ticket)

@jordanpadams
Copy link
Member Author

@eddiesarevalo new child tickets created: NASA-PDS/pds-doi-ui#79 #8 NASA-PDS/pds-doi-ui#81. I put NASA-PDS/pds-doi-ui#79 into this sprint.

@eddiesarevalo
Copy link
Member

@jordanpadams @tloubrieu-jpl
If possible I think we should separate out/re-organize some of these goals to better identify what is happening. I'm picturing three main goals with underlying tickets in each.

The first goal is to create a PDS component library. This library should have 2 build scripts. One that inputs react code and outputs embeddable scripts and one that outputs a react components library

The embeddable scripts can be added to a content delivery network (CDN) that can just be included in a website and have minimal setup. Or the files can be dropped into a project and linked in the project html.

The react components library can be published on npm so that they can be included in other react projects. (They can also just be copied or zipped)

The tickets for this first goal should probably be labeled as:

The second goal is to refactor the search component and have it be a component in our component library. (#60)
The tickets for this second goal should probably be:

  • Refactor search into component library.
  • Test search embeddable script and react component. A possible problem will be the router interfering with a website's existing URL parameters and keys.

The third goal is to create a new page for the current PDS that uses the library from the first goal to show the search. (#61) The tickets for this second goal should probably be:

  • create new PDS page
  • integrate embeddable search script to show search on PDS page.

There is one more ticket (#81), I'm not sure if we should do this one since the search in the DOI-UI search has more functionality then the basic one we are building here. Unless this one just means to include the npm package so that we can add more components to our DOI-UI app. Then this could be a forth goal.

@eddiesarevalo
Copy link
Member

Created a javascript embeddable widget version of the DOI search in pds-wds-react https://github.com/NASA-PDS/pds-wds-react/tree/embed-and-npm-builder.

Demo at: https://pds-gamma.jpl.nasa.gov/tools/doi/

@tloubrieu-jpl
Copy link
Member

Thanks @eddiesarevalo that look good.

but I don't think the search criteria works for me. See screenshot
image

I am not sure what happened.

@eddiesarevalo
Copy link
Member

@collinss-jpl It looks like @tloubrieu-jpl wants to search by a wildcards inside the identifier (maybe title too?)
Right now the call that happens in the image is https://pds-gamma.jpl.nasa.gov/api/doi/0.2/dois?identifier=*vims*
This returns a large list of results but not ones that have the text "vim" Is this the right API call?

@collinss-jpl
Copy link

collinss-jpl commented Sep 29, 2021

@eddiesarevalo Close, URL should be https://pds-gamma.jpl.nasa.gov/api/doi/0.2/dois?ids=*vims* (copy and paste this link to try out, the hyperlink seems to exclude the trailing *)

@eddiesarevalo
Copy link
Member

@collinss-jpl Thanks! That works. @tloubrieu-jpl Please try it again, https://pds-gamma.jpl.nasa.gov/tools/doi/#/search/vims

@jordanpadams jordanpadams transferred this issue from NASA-PDS/doi-ui Dec 2, 2021
@jordanpadams
Copy link
Member Author

this is done per https://pds.nasa.gov/tools/doi/#/search

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants