Melhores práticas: Dados Na Web – #4 Forneça metadados com informações estruturais

Metadados - Medialab Prado

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. Se você ainda não leu as primeiras melhores práticas, elas estão aqui: BP1, BP2, BP3.

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 software 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 humans podem ler facilmente geralmente pfornecem 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 4a 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. :-)

fonte

Tags: Best Practices, Web Semântica, W3C