Skip to content

Validação de <history> exige received/accepted para tipos de documento isentos (ex.: adendo) #1343

Description

@Rossi-Luciano

Descrição do problema

A validação de <history> (packtools/sps/validation/history.py) está reportando erro CRITICAL pela ausência
de received/accepted (e possivelmente outros @date-type) para tipos de documento que o SPS isenta
explicitamente dessa obrigatoriedade, entre eles o adendo (addendum).

O SPS 1.10, na seção "<history>: Datas de Histórico", define:

"Atributos e valores obrigatórios (exceto para errata, retratação, adendo, manifestação de preocupação e
parecer
): 1. Em <date> @date-type="received" 2. Em <date> @date-type="accepted""

Ou seja, received/accepted só são obrigatórios fora dessa lista de exceções (errata/correction,
retratação/retraction e partial-retraction, adendo/addendum, manifestação de preocupação/
expression-of-concern, parecer/reviewer-report). Para os demais @date-type (corrected,
expression-of-concern, pub, preprint, resubmitted, retracted, rev-recd, rev-request,
reviewer-report-received), o SPS não define obrigatoriedade incondicional - corrected e
expression-of-concern, por exemplo, aplicam-se especificamente a documentos de errata/adendo e manifestação
de preocupação, respectivamente, e reviewer-report-received é exclusivo de documentos de parecer.

Passos para reproduzir o problema

  1. Validar um XML de adendo (@article-type="addendum") sem <date date-type="received"> nem
    <date date-type="accepted">.
  2. Observar que a validação reporta erro CRITICAL de ausência dessas datas, apesar do tipo de documento estar
    na lista de exceções do SPS.

Comportamento esperado

  • Não exigir received/accepted para: errata (correction), retratação (retraction, partial-retraction),
    adendo (addendum), manifestação de preocupação (expression-of-concern) e parecer (reviewer-report).
  • Não classificar como CRITICAL a ausência de @date-type que não têm obrigatoriedade incondicional no
    documento em questão (ex.: corrected, quando não há relação com errata/adendo).

Anexos

Trecho citado a partir do arquivo SPS 1.10_pt.pdf (versão 1.10, última atualização em 22/05/2025), seção
"<history>: Datas de Histórico".

Classificação (esforço / risco / relevância)

  • Esforço: Médio-Alto - a infraestrutura de exceção por @article-type já existe em history.py
    (required_date_types, article-types exemptos), então é possível que seja majoritariamente ajuste de
    configuração/dados, mas a superfície de tipos de documento e @date-type é ampla.
  • Risco: Médio - a suíte test_history.py é grande (1020 linhas), cobrindo muitos tipos de documento;
    mudanças na lista compartilhada de exceções podem afetar cenários não previstos nesta análise.
  • Relevância: Alta - falsos CRITICAL bloqueiam a publicação de tipos de documento inteiros (adendo, parecer
    etc.) que são estruturalmente isentos dessa exigência pelo SPS.

Referências

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions