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

Create ISO19115-2 reader in MDTranslator #4862

Open
11 of 27 tasks
rshewitt opened this issue Aug 23, 2024 · 2 comments
Open
11 of 27 tasks

Create ISO19115-2 reader in MDTranslator #4862

rshewitt opened this issue Aug 23, 2024 · 2 comments
Labels
H2.0/Harvest-Transform Transform Logic for Harvesting 2.0

Comments

@rshewitt
Copy link
Contributor

rshewitt commented Aug 23, 2024

User Story

In order to transform ISO19115-2 documents into DCATUS, datagov wants to create a ISO19115-2 reader in mdtranslator

Acceptance Criteria

[ACs should be clearly demoable/verifiable whenever possible. Try specifying them using BDD.]

  • GIVEN an ISO19115-2 document
    WHEN the document is ingested by mdtranslator
    THEN it will be transformed into DCATUS

Background

  • mdtranslator doc. use the ticket template in this document for each module.
  • ISO19115-3 reader dev info. the general idea is the same for this ticket.
  • this is really 2 tickets
    • creating the reader
    • transforming the document into DCATUS
  • much of the work on ISO19115-3 can be reused for this. The xml elements appear to be identical. The only difference so far seems to be the namespace used.

ISO19115-2 to DCATUS Progress


(source)

  • Title
  • Description
  • Keyword
  • Modified
  • Publisher
  • ContactPoint
  • AccessLevel
  • Identifier
  • Distribution *
  • Rights
  • Spatial *
  • Temporal
  • License *
  • Issued
  • Language *
  • DescribedBy
  • IsPartOf
  • Theme
  • References
  • LandingPage
  • SystemOfRecords
  • DescribedByType
  • AccrualPeriodicity *
  • PrimaryITInvestmentUII

* in progress...

program code and bureau code aren't required in the non-federal version of DCATUS. there's also no mapping from iso to this so we're skipping them.

  • ProgramCode
  • BureauCode
    [Any helpful contextual notes or links to artifacts/evidence, if needed]

Security Considerations (required)

[Any security concerns that might be implicated in the change. "None" is OK, just be explicit here!]

Sketch

[Notes or a checklist reflecting our understanding of the selected approach]

@rshewitt rshewitt added the H2.0/Harvest-Transform Transform Logic for Harvesting 2.0 label Aug 23, 2024
@jbrown-xentity
Copy link
Contributor

I did some quick analysis; I basically copied the iso19115-3 writer over the iso19115-2 writer and analyzed the git changes. You can see this here. Some high level notes:

  • The style has definitely changed between the 2, there are variable names that are kind of standardized across each version that are slightly changed as well as using different code conventions. We don't need to carry that over to the reader; those can be consistent in most cases.
  • There are a handful of classes that are not implemented, not sure if those were incomplete in -2, incomplete in -3, or an actual difference.
  • Many of the meaningful changes have to do with the namespace change (see here), which is not a large lift.
  • It's unknown at this high level analysis how much of a difference the actual modules are that are utilized for transforming into DCAT-US.

Happy to discuss any of the nuances with the @GSA/data-gov-dev-team at an office hours.

@rshewitt
Copy link
Contributor Author

rshewitt commented Aug 29, 2024

the intention is to work downward from title to PrimaryITInvestmentUII. check the box when the PR is merged. add ~4% to the progress bar (1/26). here's a child ticket

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
H2.0/Harvest-Transform Transform Logic for Harvesting 2.0
Projects
Status: 📟 Sprint Backlog [7]
Development

No branches or pull requests

2 participants