Files
brasiliano/MANIFEST.md
T
rodado da105a1a46 feat: liga a derivada grande no visor e registra as derivadas de acesso
- medio/ 1.200 px e grande/ 2.000 px para os 13.059 itens (6,0 GB)
- 9 matrizes com JPEG corrompido viram tarefa; derivadas delas saem da
  imagem do DSpace
- MANIFEST com as contagens novas, reenviado ao bucket
2026-10-01 11:32:52 +02:00

12 KiB
Raw Blame History

MANIFEST — Brasiliana Fotográfica → S3

Versão final, 2026-09-30. Coleta concluída em 2026-09-13. Números conferidos contra o ledger de envio (pipeline/subidor.sqlite) e a listagem do bucket. Detalhe técnico em tasks/PLANO.md e README.md.

O que é

Cópia de preservação do acervo da Brasiliana Fotográfica (brasilianafotografica.bn.gov.br), um repositório DSpace mantido pela Biblioteca Nacional do Brasil reunindo fotografias de 15 instituições (14 brasileiras e uma alemã) (handles 20.500.12156.1/*). Depositada em s3://brasiliana como acervo arquivístico — procedência e checksums preservados por item, não uma cópia solta de imagens.

Inclui também os posts editoriais do blog WordPress do mesmo projeto (raiz do domínio, separado do repositório DSpace) — ensaios curatoriais que contextualizam itens do acervo, com autoria e data preservadas.

Por que foi coletado assim

A Biblioteca Nacional foi consultada: o material é público, mas a instituição não tem equipe técnica para fornecer um dump. A coleta por scraping foi o caminho combinado, com ritmo cortês e identificação do coletor mantidos ao longo de toda a coleta.

Como foi coletado

Metadados (13.060 itens): enumerados via browse?type=title por comunidade (o sitemap oficial está desatualizado desde 2019 e cobre só 41% do acervo), colhidos um a um do DSpace (?show=full), executado a partir de um navegador real — o site usa uma proteção anti-automação que bloqueia requisições de servidores e navegadores sem sessão real, mesmo pra bitstreams de imagem, não só páginas HTML.

Imagens: cada item pode ter mais de uma imagem original (achado desta coleta — 121 itens tinham de 2 a 8 bitstreams reais, não um). Pra cada item coletamos: a imagem de preservação (a de maior resolução), a(s) imagem(ns) adicional(is) quando existem, e a miniatura gerada pelo próprio DSpace. Uma cópia legada de menor resolução (objdigital.bn.br) também foi preservada quando disponível — é a mesma proveniência, resolução inferior, mantida por referência histórica, nunca como substituta da imagem de preservação.

Posts do blog: 636 posts únicos coletados (637 identificados, 1 com erro na origem; 8 categorias do WordPress, com sobreposição substancial entre elas), com título, autor, data, categorias e corpo do texto, mais a lista de handles do acervo que cada post referencia.

Estrutura no bucket

s3://brasiliana/
  MANIFEST.md                          este arquivo
  INDEX.md                             índice legível dos itens
  catalogo.jsonl                       metadados completos, 1 linha por item
  wordpress-posts.jsonl                posts do blog, 1 linha por post
  wordpress/                           um Markdown por post
  falhas-500-2026-09-13.txt            itens cuja preservação a origem não serve
  descricao/                           descrição arquivística NOBRADE (ver abaixo)
  itens/{handle-com-underscore}/
      metadata.json                    Dublin Core completo + URL de origem
                                        + data/hora UTC de captura
      manifest-sha256.txt              SHA-256 de cada arquivo do item
      preservacao/
          {nome-do-arquivo}.jpg        imagem de maior resolução
          extra_seqN.jpg               imagens adicionais (itens com
                                        múltiplos bitstreams — ver achado
                                        2.7 do PLANO.md)
      thumbnail/
          thumb_N.jpg                  miniatura gerada pelo DSpace
      legado/
          {nome-original}.jpg          cópia de objdigital.bn.br, quando
                                        existe (menor resolução, mesma
                                        proveniência)
  derivados/thumb256/
      {handle-com-underscore}.webp     miniatura DERIVADA por nós (não é
                                        material de origem — ver abaixo)
  derivados/medio/
      {handle-com-underscore}.webp     derivada de acesso, 1.200 px, DERIVADA,
                                        aberta no visor do mural
  derivados/grande/
      {handle-com-underscore}.webp     derivada de acesso ampliada, 2.000 px,
                                        carregada no zoom do visor

Sobre derivados/

Tudo sob itens/ é material de origem: veio da Biblioteca Nacional como está. derivados/ é o oposto — foi gerado por nós a partir do que está em itens/, e pode ser reconstruído do zero a qualquer momento. A separação é proposital: misturar derivado nosso com bitstream de origem apagaria a procedência que o resto deste manifesto garante.

derivados/thumb256/ tem 13.059 miniaturas (256px no maior lado, WebP q80, ~100 MB no total), uma por item, geradas com libvips a partir da imagem de preservação quando ela existe e, nos 69 itens sem ela, do thumbnail/ do próprio DSpace. A especificação de saída é a mesma nos dois casos, então o conjunto é uniforme.

Cobre 13.059 dos 13.060 handles do catálogo (99,99%). O único ausente é 7523, cujos bitstreams a origem serve com HTTP 500. derivados/medio/ e derivados/grande/ têm a mesma cobertura (13.059).

Tamanhos das derivadas (definidos em 2026-10-01)

Nos termos do CONARQ (Resolução 31/2010, Recomendações para digitalização de documentos arquivísticos permanentes), a imagem de preservação faz o papel de matriz digital, e o que está em derivados/ são derivadas: a de navegação (thumbnail) e as de acesso, que o CONARQ pede em formato aberto e "em variados tamanhos de acordo com a banda" — sem fixar pixels. Os pixels seguem a NARA (Technical Guidelines for Digitizing Archival Materials for Electronic Access, 2004, tabela de fotografias), que é a referência citada pela própria recomendação do CONARQ:

Pasta Lado maior CONARQ NARA 2004 (fotografias) Uso no mural
thumb256/ 256 px derivada de navegação thumbnail (≤ 200 px) fonte do atlas 3D (blocos de 128 px)
medio/ 1.200 px derivada de acesso Access – Recommended (800–1.200 px) imagem aberta no visor
grande/ 2.000 px derivada de acesso Larger Alternative (1.200–2.000 px) carregada só no zoom

Regras comuns: WebP (formato aberto; o CONARQ recomenda JPEG/PNG mas admite outros quando o acesso exige), espaço de cor sRGB (pedido pela NARA para acesso), metadados embutidos removidos, e nunca ampliar — a matriz menor que o alvo fica no próprio tamanho. Também chega ao nível 3–4 do Europeana Publishing Framework (≥ 0,95 megapixel). Gerado por pipeline/deriva-acesso.py a partir da matriz (ou, nos 68 itens sem ela, da imagem servida pelo DSpace). Em 9 itens (6574, 6969, 6975, 6994, 7153, 7161, 7169, 7173, 7203) a matriz é um JPEG com dados corrompidos (marcador RST quebrado; o arquivo está inteiro e o SHA-256 confere com o ledger), e as derivadas saíram da imagem do DSpace. No fim, 134 medio e 991 grande ficaram abaixo do alvo porque a matriz é menor.

Contagem de itens: o catalogo.jsonl final tem 13.060 handles distintos, todos itens reais. O falso-positivo 20.500.12156.1/1 (página raiz da comunidade) não está nele. A cifra de 13.058 de rascunhos anteriores está superada.

Note que itens/{handle}/thumbnail/ não é uma miniatura no sentido usual: os arquivos que o DSpace chama de thumbnail têm 721 a 3.709 px no maior lado (média ~1.087). São derivados de resolução média, não miniaturas de listagem.

Não-negociáveis (cumpridos)

  • SHA-256 de cada arquivo — em manifest-sha256.txt, por item
  • URL de origem + data/hora UTC de captura — em metadata.json (source_url, fetched_at)
  • dc.rights e instituição de origem preservados por item — metadata.json traz community (100% dos itens) e rights (quando a instituição de origem o preencheu — ver nota abaixo)

Contagens (fechadas em 2026-09-30)

Arquivos Itens Tamanho
Itens no catálogo — 13.060 45,9 MB (catalogo.jsonl)
Imagem de preservação 13.194 12.991 127,4 GB
↳ extras (itens com 2 a 8 imagens) 203 121 incluídos acima
Miniatura do DSpace (thumbnail/) 13.060 13.059 1,5 GB
Cópia legada (objdigital) 2.137 (1.899 JPG, 213 PDF, 25 outros) 2.137 9,6 GB
metadata.json + manifest-sha256.txt 26.118 13.059 65 MB
Derivado thumb256 13.059 13.059 101 MB
Derivado medio (1.200 px) 13.059 13.059 1,61 GB
Derivado grande (2.000 px) 13.059 13.059 4,37 GB
Posts do blog (wordpress/) 636 — 10 MB
Total no bucket (sem descricao/) 81.269 objetos 139,2 GB

Sem imagem de preservação: 69 itens, listados em errors.md e falhas-500-2026-09-13.txt. A origem responde HTTP 500 ao bitstream, e todos, menos o 7523, têm a miniatura do DSpace.

Descrição arquivística (NOBRADE)

descricao/ descreve esta coleção segundo a NOBRADE (CONARQ, 2006), em seis níveis: acervo › coleção › 15 seções (instituição de origem) › 115 séries (coleção ou fundo de origem) › 13.060 dossiês (itens do DSpace) › 13.262 itens documentais (cada imagem). Código de referência BR RJXYZ.BF.<seção>.<série>.<handle>.<imagem>, com a entidade RJXYZ provisória até o CONARQ atribuir um CODEARQ.

Arquivo Conteúdo
unidades.jsonl 26.454 unidades de descrição, elementos pelo número da norma
autoridades.jsonl, eac/ 457 registros de autoridade (ISAAR(CPF)), também em EAC-CPF
ead/brasiliana.xml a coleção inteira em EAD 3, validada contra o XSD oficial
atom.csv importação no AtoM (modelo ISAD)
pendencias.md validador dos obrigatórios: 0 pendências
revisao/, textos/ tabelas dos normalizadores e textos dos níveis 1–2
manifest-sha256.txt SHA-256 de cada arquivo de descricao/

A descrição é derivada, como derivados/: regenera-se com python3 -m nobrade a partir do catálogo e do ledger. Decisões e mapeamentos estão em CONARQ.md, no repositório.

Exceções conhecidas (não são bugs)

  • dc.rights ausente em 5.833 itens (44,7%) — característica real da fonte: várias instituições nunca preencheram esse campo no DSpace. A instituição de origem (community) está preservada em 100% dos casos; a decisão de redistribuição desses itens deve considerar a política de cada instituição individualmente (ver seção "Direitos" abaixo).
  • Handle 20.500.12156.1/1 — descoberto pelo crawler mas não é um item: é a página raiz da comunidade. Excluído do catálogo final.
  • Duplicatas com sufixo (N) removidas — 3.511 objetos nomeados arquivo (1).jpg ao lado de um arquivo.jpg byte a byte idêntico (artefato do navegador rebaixando por cima). Confirmados idênticos por ETag + tamanho antes de apagar; 0,39 GB recuperados. Sobraram 43 cujo nome tem o sufixo mas que são o único arquivo do item (ficam como estão) e 30 cujo gêmeo tem tamanho diferente — esses precisam de conferência individual e não foram tocados.
  • Handle 20.500.12156.1/7523 ("Vista Aérea de Cabo Frio", Museu Aeroespacial) — sem imagem. O servidor da Biblioteca Nacional retorna HTTP 500 ao tentar servir os bitstreams desse item especificamente; não é um problema do nosso lado. Metadados preservados normalmente.
  • Handles 20.500.12156.1/6656 e 20.500.12156.1/7939: a primeira tentativa baixou o bitstream de LICENÇA do DSpace (777 bytes de texto com extensão .jpg), que a validação de magic bytes barrou. Na rodada de 2026-09-13 os dois foram recuperados, e a imagem de preservação real está no bucket.

Direitos

Majoritariamente domínio público por antiguidade, mas as 15 instituições de origem (14 brasileiras + 1 alemã) têm políticas distintas. dc.rights e a instituição de origem são preservados por item: a decisão de redistribuir é item a item, não do acervo em bloco. Arquivar para si é uma coisa; republicar é outra.