-
Notifications
You must be signed in to change notification settings - Fork 24
Closed
Description
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-datecom atributopub-type='pub'oupublication-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
Copilot
Metadata
Metadata
Assignees
Labels
No labels