Resumo

Esta página fornece acesso aos arquivos SHACL (Shapes Constraint Language) utilizados para validar a conformidade de catálogos e conjuntos de dados com o perfil DCAT-BR versão 1.0. Estes arquivos definem as restrições de cardinalidade, tipos de dados e uso de vocabulários controlados.

Para auxiliar na verificação se um catálogo atende ou não às restrições expressas neste Perfil de Aplicação, as restrições nesta especificação são expressas usando SHACL. Cada restrição que pôde ser convertida em uma expressão SHACL foi incluída, permitindo construir uma verificação de validação para a troca de dados entre sistemas.

Status deste documento

Este documento lista as definições SHACL oficiais para a versão 1.0 do perfil DCAT-BR.

Introdução

Cabe aos implementadores da troca de dados definir a validação que esperam. Cada troca de dados ocorre dentro de um contexto, e esse contexto está além das expressões SHACL aqui apresentadas.

Por exemplo, pode-se saber que os dados trocados não contêm os detalhes das organizações, pois todas são identificadas exclusivamente por um URI deferenciável. Nesse caso, as regras relativas à verificação da existência obrigatória de um nome para cada organização provavelmente não são relevantes. Uma execução estrita das expressões SHACL do DCAT-BR gerará erros, embora os dados estejam disponíveis por meio de um canal diferente.

Para obter a experiência de usuário adequada em um processo de validação, é preciso considerar o que é efetivamente transferido entre os sistemas e utilizar as restrições que estão dentro do escopo da troca de dados. Para auxiliar nesse processo, as expressões SHACL são agrupadas em arquivos distintos, seguindo as configurações típicas de validação.

Arquivos de Validação SHACL

Os arquivos abaixo podem ser baixados individualmente ou referenciados em ferramentas de validação SHACL.

Arquivo Descrição Link Direto
shapes.ttl Restrições relativas à existência, domínio, intervalo literal e cardinalidades obrigatórias. Turtle
range.ttl Restrições relativas ao intervalo de objetos (classes) para todas as propriedades no DCAT-BR. Turtle
shapes_recommended.ttl Restrições para propriedades recomendadas (geram avisos/warnings em vez de erros). Turtle
mdr-vocabularies.shape.ttl Restrições que validam se os valores usados em propriedades específicas pertencem aos vocabulários controlados do DCAT-BR. Turtle
imports.ttl Fornece as importações que são o resultado de reutilizá-las no perfil DCAT-BR (ontologias externas). Turtle
mdr_imports.ttl Importa as listas de códigos e vocabulários controlados (SKOS) necessários para validação completa. Turtle

Classes Validadas

Os arquivos SHACL validam as seguintes classes do DCAT-BR:

Propriedades Obrigatórias vs Recomendadas

Obrigatórias (Violation)

As propriedades obrigatórias geram erros (Violation) quando ausentes ou inválidas:

Recomendadas (Warning)

As propriedades recomendadas geram avisos (Warning) quando ausentes:

Vocabulários Controlados

O DCAT-BR define vocabulários controlados para as seguintes propriedades:

Como utilizar

Os arquivos SHACL estão configurados para uso com validadores padrão, como o SHACL Playground, PySHACL ou TopBraid SHACL Validator.

Para validar um catálogo usando pyshacl (Python), você pode executar:

pyshacl -s shapes.ttl -r range.ttl -i imports.ttl seu_catalogo.ttl
    

Usando shaclvalidate (Java):

shaclvalidate.sh -datafile seu_catalogo.ttl -shapesfile shapes.ttl