A Verificação DSPL é um utilitário que valida um conjunto de dados DSPL em relação a vários critérios, incluindo a adesão ao esquema oficial DSPL, a consistência de referências internas e a estrutura de arquivos CSV. O utilitário pode detectar muitos problemas que causam erros de importação DSPL, ajudando você a detectar e corrigir esses problemas rapidamente antes de iniciar o processo de entrada.
Observe que o utilitário ainda (não) verifica o conjunto de dados DSPL para todos os problemas possíveis. No entanto, os problemas mais comuns são detectados. Por isso, se o conjunto de dados tiver sido validado pela ferramenta, haverá uma alta probabilidade de que ele possa ser importado e visualizado no Explorador de dados públicos. Consulte a seção Detalhes da verificação abaixo para mais informações.
Executando a verificação DSPL
Noções básicas
Observação: essas instruções presumem que você já tenha seguido as instruções de instalação fornecidas na página Ferramentas da DSPL.
Para executar a verificação DSPL, acesse o terminal / prompt no seu sistema e digite:
python dsplcheck.py [path to dataset XML or zip file]
em que o termo entre colchetes é substituído pelo caminho relativo para um arquivo XML do conjunto de dados ou um pacote DSPL compactado.
Se o conjunto de dados for válido, a ferramenta imprimirá a mensagem "validação bem-sucedida". Caso contrário, ele emitirá uma ou mais mensagens de erro descrevendo por que a validação falhou. Se o último ocorrer, corrija o conjunto de dados conforme indicado e execute a ferramenta novamente.
Nível de verificação
Por padrão, a verificação DSPL examina todo o conjunto de dados, incluindo os CSVs referenciados no arquivo XML DSPL principal. Esse processo funciona bem em conjuntos de dados pequenos e médios, mas pode sobrecarregar ou ficar sem memória em conjuntos de dados muito grandes (ou seja, entre centenas de megabytes ou maiores).
Para resolver esses casos, a ferramenta tem uma opção de nível de verificação
que permite definir o escopo da verificação e melhorar
o desempenho, conforme necessário. Para usar, insira --checking_level=[...]
antes do caminho do conjunto de dados, em que o termo entre colchetes é substituído por um dos seguintes valores:
schema_only
: valide o arquivo XML do conjunto de dados em relação ao esquema DSPL oficial e, em seguida, pare.schema_and_model
: faz a validação básica e do esquema, mas ignora o conteúdo CSV após a linha de cabeçalho.full
: faz a validação do esquema, do modelo e dos dados (padrão).
Verificando detalhes
A verificação DSPL executa a seguinte sequência de validações:
- Validação de esquema XML:verifica se o arquivo de metadados do conjunto de dados é um XML válido e está em conformidade com o esquema DSPL oficial.
- existência de CSV: verifica se todos os arquivos CSV referenciados do seu conjunto de dados existem e podem ser carregados.
-
Verificações de conceito: várias verificações de cada conceito no
conjunto de dados, incluindo:
- O conjunto de dados tem pelo menos um conceito*
- Todas as referências de tópico são válidas
- A referência da tabela existe se o conceito for usado como uma dimensão não temporal*
- A referência da tabela será válida se estiver presente
- A tabela referenciada tem uma coluna correspondente ao ID do conceito
-
Verificações de Slices: várias verificações de cada fatia do
conjunto de dados, incluindo:
- O conjunto de dados tem pelo menos uma fatia*
- Pelo menos uma fração faz referência a uma dimensão que não é de tempo*
- O Slice tem pelo menos uma métrica e uma dimensão
- Exatamente uma dimensão faz referência a
time
conceito canônico* - Cada fatia tem uma combinação exclusiva de dimensões
- Todas as referências a conceitos locais são válidas
- Há uma referência de tabela
- A referência da tabela é válida.
- A tabela referenciada tem uma coluna para cada dimensão e métrica na fração
- Os tipos de coluna na tabela referenciada correspondem aos tipos de conceitos usados na fração
-
Verificações de tabela: várias verificações de cada tabela no
conjunto de dados, incluindo:
- O conjunto de dados tem pelo menos uma tabela*
- O arquivo CSV tem o mesmo número de colunas da tabela
- As strings de cabeçalho CSV correspondem aos IDs das colunas
- Todas as colunas de data têm o atributo
format
. - Os formatos de data se alinham (cercamente) com os conceitos de hora associados. Por exemplo, o formato para uma coluna
time:year
inclui pelo menos um caracterey
*
-
Verificações de dados CSV:várias verificações dos arquivos de dados CSV
referenciadas pelo arquivo XML do conjunto de dados, incluindo:
- Cada linha CSV tem o mesmo número de colunas do cabeçalho
- O CSV de definição de conceito não tem mais de uma linha para cada ID de conceito
- O Slice CSV não tem mais de uma linha para cada combinação de dimensões.
- Os valores de dimensão referenciados no CSV da fatia são válidos
- O Slice CSV é classificado corretamente
- Os valores CSV de números inteiros e flutuantes estão formatados corretamente.
Os critérios marcados com um * são necessários para visualização no Buscador de dados públicos, mas tecnicamente não são exigidos pelo formato DSPL.
Por outro lado, a ferramenta ainda não analisa:
- Importações de conjuntos de dados
- Referências de atributos e propriedades
- Extensões de conceito