pkiraly / qa-catalogue

QA catalogue – a metadata quality assessment tool for library catalogue records (MARC, PICA)
GNU General Public License v3.0
76 stars 18 forks source link

Remove last non-Avram keys from exported schema #405

Closed nichtich closed 3 months ago

pkiraly commented 5 months ago

@nichtich I am fine with removing unitLenght, but I would like to keep the repeatableContent flag at least when it is true. We can remove it when it is false (because that is the normal case). Could you imagine to put repeatableContent to Avram schema?

nichtich commented 5 months ago

I hesitate to add more cases and rules to core Avram, especially when there are alternatives. Adding repeatableContent would require to clearly define its semantics. How about an alternative to codes for repeatable elements:

{
  "positions":{
    "01-04":{
      "label":"Illustrations",
      "url":"https://www.loc.gov/marc/bibliographic/bd006.html",
      "flags": {  ← like codes but repeatable to fill length of 4 characters
        " ":{"label":"No illustrations"}, ← length of flag (here 1 for " ") must be proper divisor of 4
        "a":{"label":"Illustrations"},
        "b":{"label":"Maps"},
pkiraly commented 5 months ago

I am fine with this solution, so you can go further with it in this PR. I have however some concerns that potential future users of Avram will find it a bit confusing that same thing have different names.

nichtich commented 5 months ago

Avram specification 0.9.6 contains flags as part of data element definitions in positions with an example from MARC 21 Bibliographic field 008. There is a corresponding validation rule invalidFlag.

I'm extending the pull request to also solve #402.

pkiraly commented 5 months ago

I adjusted the UNIMARC schema reader to adapt the current changes (flags and codelist).

pkiraly commented 4 months ago

@nichtich What is the status of this PR? You wrote „I'm extending the pull request to also solve #402” but there were no more commits after this comment.

nichtich commented 3 months ago

Thanks for reminder. I directly committed to the main branch with an update.