sexta-feira, 2 de novembro de 2018

SPARQL


SPARQL


Protocolo SPARQL é a abreviatura de protocolo simples do RDF Query Language, para definir uma linguagem de consulta padrão e um protocolo de acesso a dados, para uso com o modelo de dados do Resource Description Framework (RDF). Ele funciona para qualquer fonte de dados que possa ser mapeada para o RDF. A especificação está em desenvolvimento pelo grupo de trabalho de acesso a dados RDF (DAWG).


A linguagem de consulta RDF SPARQL Query, como um acrônimo recursivo, pode ser confuso. SPARQL representa o protocolo, mas também significa o termo completo: “Protocolo SPARQL e Linguagem de Consulta RDF”, que é autônomo em suas letras. O SPARQL ajuda a manipular gráficos no RDF por meio de um processo de correspondência de padrões. A funcionalidade SPARQL pode ser facilitada por HTTP ou SOAP em vários ambientes.

O SPARQL foi projetado pelo Grupo de Trabalho de Acesso a Dados RDF do World Wide Web Consortium (W3C) e está continuamente em desenvolvimento. O grupo de trabalho está tentando descobrir as melhores práticas para SPARQL, que podem incluir dados de consulta nativa no formato RDF. O SPARQL é geralmente apresentado como uma ferramenta para manipular dados imprevisíveis ou inconsistentes. Um prompt de comando GRAPH é usado para consultar dados em conjunto com informações de proveniência.

Definição do RDF Triple (assunto + predicado + objeto)


O RDF é um formato de dados de gráfico rotulado e direcionado para representar informações na Web. O RDF é frequentemente usado para representar, entre outras coisas, informações pessoais, redes sociais, metadados sobre artefatos digitais, bem como para fornecer um meio de integração sobre fontes de informação distintas. Esta especificação define a sintaxe e a semântica da linguagem de consulta SPARQL para o RDF.  O RDF foi projetado para atender aos casos de uso e aos requisitos identificados pelo grupo de trabalho de acesso a dados RDF.


Sintaxe para padrões triplos - Os padrões triplos são escritos como assunto, predicado e objeto; existem maneiras abreviadas de escrever algumas construções comuns de padrões triplos.

Conjunto de Dados RDF - O modelo de dados RDF expressa informações como gráficos que consistem em triplos com assunto, predicado e objeto.  Muitos armazenamentos de dados RDF armazenam vários gráficos RDF e registram informações sobre cada gráfico, permitindo que um aplicativo faça consultas que envolvam informações de mais de um gráfico.

Uma consulta SPARQL é executada em um conjunto de dados RDF que representa uma coleção de gráficos. Um conjunto de dados RDF inclui um gráfico, o gráfico padrão, que não tem nome, e zero ou mais gráficos nomeados, em que cada gráfico nomeado é identificado por um identificador do Internationalized Resource Identifiers (IRI).

Uma consulta SPARQL pode corresponder diferentes partes do padrão de consulta em relação a diferentes gráficos, conforme a consulta do conjunto de dados. Um conjunto de dados RDF pode conter gráficos nomeados zero; um Dataset RDF sempre contém um gráfico padrão. Uma consulta não precisa envolver a correspondência do gráfico padrão; a consulta pode envolver apenas gráficos nomeados correspondentes. O gráfico usado para corresponder a um padrão gráfico básico é o gráfico ativo. Nas seções anteriores, todas as consultas foram exibidas em um único gráfico, o gráfico padrão de um conjunto de dados RDF como o gráfico ativo. A palavra-chave GRAPH é usada para tornar o gráfico ativo um de todos os gráficos nomeados no conjunto de dados para parte da consulta.

Tradução inglês-português 
Fonte: (SPARQL) https://en.wikipedia.org/wiki/SPARQL
Fonte: (RDF) https://pt.wikipedia.org/wiki/Resource_Description_Framework
Fonte: (IRI) https://en.wikipedia.org/wiki/Internationalized_Resource_Identifier


Fonte: (SPARQL 1.1 Query Language) https://www.w3.org/TR/sparql11-query/
Fonte: (SPARQL Query Language for RDF) https://www.w3.org/TR/rdf-sparql-query/
Fonte: IBM.COM (IBM Knowledge Center) (Internationalized Resource Identifiers - IRI) https://www.ibm.com/support/knowledgecenter/en/SSGMCP_5.2.0/com.ibm.cics.ts.internet.doc/topics/dfhtl_atom_iri.html


---------------



Internationalized Resource Identifiers (IRIs)

Os Identificadores de Recursos Internacionalizados (IRIs) são uma forma de identificador de recursos para a Internet que permite o uso de caracteres e formatos adequados para idiomas nacionais diferentes do inglês. As IRIs podem ser usadas no lugar de URIs ou URLs em que os aplicativos envolvidos com a solicitação e a resposta os suportam.

As IRIs são descritas pelo RFC 3987, Identificadores de Recursos Internacionalizados (IRIs), que estão disponíveis em http://www.ietf.org/rfc/rfc3987.txt. O CICS suporta o uso de IRIs em recursos URIMAP para pedidos do cliente da Web de entrada para o CICS como um servidor HTTP e em documentos de alimentação Atom.

Host name (nome de anfitrião)

Para acomodar os requisitos dos servidores de nomes de domínio, os clientes da web convertem o nome do host em um IRI em um formato chamado Punycode. Punycode é descrito pelo RFC 3492, Punycode: A Bootstring codificação de Unicode para nomes de domínio internacionalizados em aplicativos (IDNA), que está disponível em http://www.ietf.org/rfc/rfc3492.txt. Esse algoritmo codifica o nome do host em uma string composta apenas de alfanuméricos, hífens e pontos.

Se você quiser usar um IRI como o link para um recurso da web ou Atom feed que é servido pelo CICS, na definição de recurso URIMAP que define a solicitação do Web client para o CICS, você deve especificar o nome do host em Punycode. O CICS não fornece uma ferramenta para realizar essa conversão, mas aplicativos gratuitos estão disponíveis na Internet para suportar a conversão de Unicode para Punycode. Se você usar um único asterisco no lugar do nome do host, para fazer com que o recurso URIMAP corresponda a qualquer nome de host, não será necessário usar o Punycode. Os clientes da Web não convertem o componente de caminho de um IRI em Punycode, mas eles escapam ou codificam em porcentagem os caracteres Unicode no caminho.

Path component (componente caminho)

Os clientes da Web não convertem o componente de caminho de um IRI em Punycode, mas eles escapam ou codificam em porcentagem os caracteres Unicode no caminho.

Se você estiver usando um IRI para um recurso da web que é servido pelo CICS, na definição de recurso URIMAP, você deve codificar por cento quaisquer caracteres Unicode no caminho que você especificar. Se você não tiver um aplicativo que possa converter caracteres Unicode em representações codificadas por percentual, aplicativos gratuitos estarão disponíveis na Internet para executar essa tarefa. Observe que os limites de comprimento da URL listados nas URLs para  URLs for CICS web support  se aplicam também às URLs de feeds Atom, o que significa que a parte do componente de caminho da URL especificada na definição de recurso URIMAP deve ter 255 caracteres ou menos. Um caractere neste contexto significa um único caractere ASCII, não o caractere Unicode original. Por exemplo, o caracter cirílico que tem a representação percentual codificada %D0%B4 conta como 6 caracteres do limite de 255 caracteres.

Quando o CICS instala a definição de recurso URIMAP, o CICS armazena o caminho no formato canônico recomendado para URIs e remove alguns caracteres, mas o caminho exibido quando você visualiza o recurso URIMAP permanece conforme foi digitado.

Quando você usa um IRI como um link para um documento de entrada ou de feed Atom, especifica o IRI no arquivo de configuração Atom, bem como na definição de recurso URIMAP. Você deve codificar por percentual qualquer caractere Unicode no IRI no arquivo de configuração Atom.

Quando o CICS emite um documento Atom contendo o IRI, o CICS converte os caracteres codificados em porcentagem em referências de caracteres XML, para que o XML seja válido. Para usar o link resultante em uma solicitação do Web client, você deve converter as referências de caracteres XML novamente em caracteres codificados por porcentagem.