RDF Schema
RDF Schema (do inglês, "Resource Description Framework Schema", às vezes abreviado para RDFS, RDF (S), RDF-S ou RDF / S ) é um conjunto de classes e propriedades RDF que formam uma extensão do vocabulário básico de RDF.[1] RDFS é usado para estruturar vocabulários RDF.
A primeira versão foi publicada pelo World Wide Web Consortium (W3C) em abril de 1998,[2][3] e a recomendação final do W3C[1] foi publicada em fevereiro de 2004. Vários componentes RDFS estão incluídos na linguagem mais expressiva OWL .
Construções principais
[editar | editar código-fonte]As principais construções RDFS são classes e propriedades. Depois, há outras construções, definidas como "propriedade de utilidade", que são instâncias particulares de rdf:Property.
Classes
[editar | editar código-fonte]- rdfs:Resource é a classe que contém tudo. Tudo o que é descrito em RDF é um recurso.
- rdfs:Classe indica que um recurso é uma classe que contém outros recursos.
Um exemplo típico de rdfs:Class is foaf:Person
, no vocabulário FOAF.[4] Uma instância de foaf:Person
é um recurso conectado à classe foaf:Person
por meio das propriedades rdf:type
, que indica o tipo (ou, na verdade, a classe) de um elemento específico. Por exemplo, a frase em linguagem natural "Mario é uma pessoa" é formalizada da seguinte forma:
ex:Mario rdf:type foaf:Person
A definição de rdfs:Class é recursiva: rdfs: Class é uma classe de classes, portanto, é uma instância de si mesma:
rdfs:Class rdf:type rdfs:Class
As outras classes descritas na especificação RDF (S) são:
- rdfs:Literal - valores literais, como strings ou números. Os literais podem ser simples ou digitados, ou seja, ter ou não um tipo associado.
- rdfs:Datatype - a classe do tipo de dados . rdfs: Datatype é uma instância e uma subclasse de rdfs: Class. Cada instância de rdfs: Datatype é uma subclasse de rdfs: Literal.
- rdf:XMLLiteral - a classe de literais XML. rdf: XMLLiteral é uma instância de rdfs: Datatype (e, portanto, uma subclasse de rdfs: Literal).
- rdf:Property - a classe da propriedade.
Propriedade
[editar | editar código-fonte]Propriedades são instâncias de rdf:Property e descrevem uma relação entre recursos de assunto e recursos de objeto. Uma propriedade, quando usada como tal, é chamada de "predicado".
- rdfs:domain define o domínio de outra propriedade, que é a classe do sujeito da qual essa propriedade é predicado.
- rdfs:range define o contradomínio de outra propriedade, que é a classe do objeto ao qual essa propriedade é predicada.
Por exemplo, as seguintes declarações são utilizadas para expressar a propriedade ex:empregado
tendo como sujeito um recurso do tipo foaf:Person
e como objeto um recurso do tipo foaf:Organization
O seguinte triplo exige que ex:Mario
seja necessariamente do tipo foaf:Person
e ex: AziendaX do tipo foaf:Organization
:
ex:Mario ex:empregado ex:AziendaX
- rdf:type é uma propriedade usada para afirmar que um recurso é uma instância de uma classe. Um qname comumente aceito para esta propriedade é "a".[5]
- rdfs:subClassOf é uma propriedade usada para afirmar que um recurso do tipo rdfs:Class é uma subclasse de outra classe; permite, portanto, declarar hierarquias entre classes.[6]
- rdfs:subPropertyOf é usado para afirmar que todos os recursos relacionados por uma propriedade específica também são relacionados por outra propriedade.
- rdfs:label é usado para fornecer uma versão do nome do recurso que pode ser lida por humanos.
- rdfs:comment é usado para fornecer uma descrição de um recurso legível por humanos.
Propriedade de utilidade
[editar | editar código-fonte]- rdfs:seeAlso indica um recurso que pode fornecer informações adicionais sobre o recurso do assunto.
- rdfs:isDefinedBy indica um recurso que define o recurso do objeto. Esta propriedade pode ser usada para indicar um vocabulário RDF no qual o recurso é descrito.
Exemplos de vocabulários RDF
[editar | editar código-fonte]Entre os vocabulários RDF mais conhecidos representados em RDFS encontramos: [6]
- FOAF : com fonte http://xmlns.com/foaf/spec/, é escrito em RDFS com sintaxe RDFa .
- Dublin Core : fonte RDFS disponível em sintaxe diferente.[7]
- Schema.org : com fonte https://schema.org/docs/schema_org_rdfa.html, é escrito em RDFS com sintaxe RDFa.
- SKOS
Ver também
[editar | editar código-fonte]Referências
- ↑ a b «RDF Schema 1.1». w3.org (em inglês). 25 de fevereiro de 2014. Consultado em 16 de abril de 2016
- ↑ (em inglês) RDFS first version
- ↑ «XML and Semantic Web W3C Standards Timeline» (PDF) (em inglês). 4 de fevereiro de 2012. Cópia arquivada (PDF) em 24 de abril de 2013
- ↑ (em inglês) FOAF Vocabulary Specification 0.99 by Dan Brickley, Libby Miller.
- ↑ DuCharme, Bob (2011). Learning SPARQL (em inglês). Sebastopol, California, United States: O'Reilly Media. ISBN 978-1-4493-0659-5
- ↑ a b (em inglês) W3C RDF Primer by Guus Schreiber and Yves Raimond
- ↑ (em inglês) DCMI term declarations represented in RDF schema language, Dublin Core Metadata Initiative