Skip to content

Criar função para completar pub-date com valores padrão #1038

@robertatakenaka

Description

@robertatakenaka

Descrição da nova funcionalidade

Como operador da migração, eu quero uma função que complete automaticamente elementos pub-date incompletos com dia e mês padrão para que todos os artigos tenham datas de publicação completas e válidas.

Critérios de aceitação

  • A função deve receber um xmltree e parâmetros opcionais default_day (padrão=15) e default_month (padrão=6)
  • Deve processar apenas elementos pub-date com atributo pub-type='pub' ou publication-format='electronic'
  • Deve adicionar elemento <day> com valor default_day quando ausente
  • Deve adicionar elemento <month> com valor default_month quando ausente
  • Deve validar que default_day está entre 1-31 e default_month entre 1-12, lançando ValueError se inválido
  • Deve manter a ordem correta dos elementos: year, month, day
  • Deve retornar lista de dicionários com campos: xpath, element_added, value
  • Não deve modificar elementos day/month já existentes
  • A função deve estar localizada em /packtools/sps/utils/xml_fixer.py
  • Deve ter docstring completa com exemplos de uso
  • Deve ter testes para: pub-date completo, só com year, com year e month, diferentes pub-types, valores inválidos

Anexos

Exemplo de XML antes:

<pub-date pub-type="pub">
  <year>2024</year>
</pub-date>

Exemplo de XML após:

<pub-date pub-type="pub">
  <year>2024</year>
  <month>6</month>
  <day>15</day>
</pub-date>

Assinatura da função:

def complete_pub_date(xmltree, default_day=15, default_month=6):
    """Completa pub-date com day e month quando ausentes."""

Referências

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions