Migrar exportação Crossref do schema 4.4.0 para 5.5.0 - #341
Migrar exportação Crossref do schema 4.4.0 para 5.5.0#341samuelveigarangel wants to merge 6 commits into
Conversation
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Remove reference_distribution_opts de journal_article, atributo que o schema 5.5.0 não aceita nesse elemento. Co-authored-by: Cursor <cursoragent@cursor.com>
Cada afiliação do autor passa a gerar um institution com nome e institution_place composto por city, state e country. Co-authored-by: Cursor <cursoragent@cursor.com>
…adas. A validação local passa a usar xmlschema (XSD 1.1) e cobre casos de institution_place, afiliações inválidas e posição antes do ORCID. Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
@samuelveigarangel não deveria ser necessário remover os arquivos relacionados a versão anterior, pois a ideia é ampliar as funcionalidades e não remover. Ou seja, se necessário for, a aplicação deveria seguir sendo capaz de gerar a versão 4.4
|
@samuelveigarangel isso só pode ser feito merge e release após garantir que doi_request esteja adequado |
|
@robertatakenaka Não entendi a parte de avaliar o doi_request. No doi_request, eu só consegui relacionar esse repositorio com doi_request atraves de um outro repositorio chamado articlemetaapi. |
|
@samuelveigarangel doi_request é o repo da aplicação (doi.scielo.br) que acessa o xml crossref e realiza o depósito. Você tem que verificar por exemplo se a aplicação valida o schema, ou seja, exige que seja 4.4.0. |
O que esse PR faz?
Migra o depósito Crossref de
4.4.0para5.5.0.version,xmlnseschemaLocationdodoi_batch.<affiliation>(texto livre, removido no schema 5.3+) por<affiliations><institution>…</institution></affiliations>.institution_namevem deinstitution;institution_placejuntacity,stateecountryquando existem.reference_distribution_optsdejournal_article(o 5.5.0 não aceita esse atributo nesse elemento).lxml(XSD 1.0) porxmlschema(XSD 1.1) e inclui o bundle 5.5.0.Melhorias opcionais da 5.5.0 (CRediT,
citation/@type,<version>) ficam fora deste PR.Onde a revisão poderia começar?
articlemeta/export_crossref.py:SetupDoiBatchPipe— cabeçalho 5.5.0XMLArticleContributorsPipe._create_institution— mapeamento das afiliaçõesOs testes estão em
tests/test_export_crossref.py:test_doi_batch_elementtest_article_contributors_elementtest_article_affiliations_skip_invalid_entries_and_precede_orcidtest_validating_against_schematest_related_articles_validating_against_schemaComo este poderia ser testado manualmente?
xmlschema.python -m unittest tests.test_export_crossreffmt=xmlcrossref) e conferir:doi_batch@version="5.5.0"<institution>por afiliação, cominstitution_placeno formatocidade, estado, país<affiliations>antes de<ORCID>XSDParse) ainda usa XSD 1.0 e pode acusar erro em<xsd:assert>derole/person_name; o depósito em produção aceita o arquivo.Algum cenário de contexto que queira dar?
O schema 5.5.0 é o recomendado para novos depósitos. A breaking change está nas afiliações: concatenar instituições com
'; 'em um único<affiliation>deixa de ser válido.Não há ROR/ISNI/Wikidata no modelo atual; afiliação sem
institutioné ignorada. O validador dos testes baixa o JATS dedata.crossref.org(os XSDs JATS/standard-modules não foram versionados neste PR).O parser oficial da Crossref reporta dois erros de
s4s-elt-invalid-content.1por causa dos<xsd:assert>do 5.5.0; isso é um falso positivo do validador XSD 1.0, já confirmado no fórum da Crossref.Screenshots
N/A
Quais são tickets relevantes?
Closes #334
Referências