Data

13 jul, 2016

Melhores práticas para dados na web – Parte 04: Forneça metadados com informações estruturais

Publicidade

E chegou a vez da quarta melhor prática que vai ser recomendada no documento de Melhores Práticas para Dados na Web, que ainda é sobre metadados.

BP4: Forneça metadados com com informações estruturais

Forneça metadados que descrevam o esquema e a estrutura interna dos datasets que você vai distribuir.

O fornecimento de informações sobre a estrutura interna de uma distribuição é essencial para outros que desejem explorar ou consultar o conjunto de dados. Fornecer metadados com informações estruturais também ajuda as pessoas a compreender o significado dos dados.

Resultado esperado:

Humanos serão capazes de interpretar o esquema de um conjunto de dados, bem como os softwares agents serão capazes de processar automaticamente estas informações.

Possível implementação:

Mas o que são metadados sobre a estrutura?

Metadados com informações estruturais que humanos podem ler facilmente geralmente fornecem propriedades ou nomes das colunas do esquema do dataset. Já dados com informações sobre a estrutura que são legíveis por máquina podem ser fornecidos em documentos separados, ou embedados dentro do próprio documento. A documentação do Tabular Metadata, do JSON-LD, do XML-SCHEMA ou do Datacube apresenta explicações completas e alternativas para uso na descrição da estrutura dos seus datasets.

Exemplos de uso desses metadados:

Legíveis por máquina:

John usou o modelo para dados tabulares e metadados na Web para a publicação do CSV (dataset) sobre paradas de ônibus (stops-2015-05-05.csv). Veja como foram escritos os metadados para as estruturas dos dados no exemplo abaixo:

{
	"@context": ["http://www.w3.org/ns/csvw", {
		"@language": "en"
	}],
	"url": "http://data.mycity.example.com/transport/dataset/bus/stops-2015-05-05.csv",
	"dc:title": "CSV distribution of stops-2015-05-05 dataset",
	"dcat:keyword": ["bus", "stop", "mobility"],
	"dc:publisher": {
		"schema:name": "Transport Agency of MyCity",
		"schema:url": {
			"@id": "http://example.org"
		}
	},
	"dc:license": {
		"@id": "http://opendefinition.org/licenses/cc-by/"
	},
	"dc:modified": {
		"@value": "2015-05-05",
		"@type": "xsd:date"
	},
	"tableSchema": {
		"columns": [{
			"name": "stop_id",
			"titles": "Identifier",
			"dc:description": "An identifier for the bus stop.",
			"datatype": "string",
			"required": true
		}, {
			"name": "stop_name",
			"titles": "Name",
			"dc:description": "The name of the bus stop.",
			"datatype": "string"
		}, {
			"name": "stop_desc",
			"titles": "Description",
			"dc:description": "A description for the bus stop.",
			"datatype": "string"
		}, {
			"name": "stop_lat",
			"titles": ["Latitude"],
			"dc:description": "The latitude of the bus stop.",
			"datatype": "number"
		}, {
			"name": "stop_long",
			"titles": "Longitude",
			"dc:description": "The longitude of the bus stop.",
			"datatype": "number"
		}, {
			"name": "zone_id",
			"titles": "ZONE",
			"dc:description": "An identifier for the zone where the bus stop is located.",
			"datatype": "string"
		}, {
			"name": "stop_url",
			"titles": "URL",
			"dc:description": "URL that identifies the bus stop.",
			"datatype": "string"
		}],
		"primaryKey": "stop_id"
	}
}

Para um exemplo desse mesmo tipo de metadados com dados legíveis por humanos, veja esta página.

Para ter certeza de que está fazendo uso da 4ª melhor prática, verifique sempre se os metadados do dataset estão em formato que humanos consigam interpretar. Confira se os metadados incluem informações sobre a estrutura dos seus datasets em formatos que sejam legíveis por máquina e sem erros de sintaxe, de preferência.

Mais uma vez, precisamos do seu feedback!

Se quiser comentar ou melhorar esse artigo, pode também sugerir mudanças direto no Github, eu ficarei muito feliz em receber pull requests.

Lembrando que esse artigo reproduz parte de uma especificação do W3C traduzida e que por causa disso, está sob a mesma licença para documentos do W3C. O importante é: a reprodução é livre, desde que citada a fonte.