MI-DPLA / combine

Combine /kämˌbīn/ - Metadata Aggregator Platform
MIT License
26 stars 11 forks source link

consider breaking out xml2kvp into standalone package #205

Open ghukill opened 6 years ago

ghukill commented 6 years ago

xml2kvp, "XML to Key/Value Pairs", is the shorthand for a new class in core.models that handles the flattening of XML to ES-ready documents, with a variety of passable arguments for that process. Additionally, handling things like field --> xpath expressions, and other transformations helpful in this space.

It was becoming clear that this is a critical piece of Combine -- allowing for the generic and dynamic mapping of XML to flat documents (with multivalued fields) -- and needed to be collected and refactored from the fractured state it was in.

Furthermore, it might have value outside of Combine as a python or comamnd line utility for flattening XML to fields.

Going to leave embedded for now in core.models, and integrate, but starting this issue to come back to.

A github repo has been started already for xml2kvp: https://github.com/WSULib/xml2kvp