RDF-skema

RDF-skema eller RDFS (akronym for Resource Description Framework ) er et udvideligt vidensrepræsentationssprog . Det tilhører familien af semantiske websprog udgivet af W3C . RDFS giver grundlæggende elementer til definitionen af ontologier eller ordforråd, der er beregnet til at strukturere RDF- ressourcer , hvor sidstnævnte kan lagres i relationsdatabaser kaldet triplestores og håndteres ved hjælp af forespørgsler i SPARQL- sprog .

Den første version af RDFS blev udgivet i Marts 1999offentliggøres som en anbefaling af W3C den10. februar 2004. Hovedkomponenterne i RDFS er integreret i et mere ekspressivt ontologisprog, OWL .

Hovedtræk ved RDFS

Klasser og underklasser

Et simpelt eksempel på rdfs: Class is foaf: Person in the FOAF vocabulary . En forekomst af foaf: Personklasse er en ressource, der er knyttet til klassen ved hjælp af et rdf: type-prædikat. Følgende formelle udtryk i RDFS oversætter sætningen til et naturligt sprog: 'John er en person'.

ex: Jean rdf: type foaf: Person

Definitionen af ​​rdfs: Klassen er rekursiv. rdfs: Klassen er klassen for alle klasser.

For eksempel, 'Enhver er agent':

foaf: Person rdfs: subClassOf foaf: Agent

Ejendomme

RDFS tydeliggør begrebet ejendom defineret af RDF ved at tillade at give en type eller en klasse til motivet og til objektet til tredobler. For at gøre dette, RO tilføjer begreberne "domæne", som svarer til definitionen domæne af en funktion på engelsk, og "området", sin ende sæt  :

(P rdfs: domæne C angiver, at ressourcerne, der vedrører emnet for en triplet, hvis predikat er P, er forekomster af klasse C)

(P rdfs: område C indikerer, at ressourcerne, der vedrører objektet for en triplet, hvis predikat er P, er forekomster af klasse C)

For eksempel kunne vi udtrykke, at ejendommen "arbejder i" forbinder et emne, som er en person, med et objekt, der er en organisation.

ex: arbejde i rdfs: domæne foaf: Person

ex: arbejde i rdfs: række foaf: Organisation


Fra de tidligere erklæringer indebærer følgende erklæring nødvendigvis, at ex: John er en instans af foaf: Person, og ex: Societe_X en instans af foaf: Organisation

ex: Jean ex: arbejder i ex: Societe_X

Klassehierarkier understøtter arv af "domæne" og "rækkevidde" egenskaber.

RDFS-involveringssystem

RDFS leverer grundlæggende byggesten til strukturering af RDF-ressourcer. Den således opnåede graf betragtes som en velformet graf, hvis implikationssystemet (beskrevet i RDFS, OWL osv.) Respekteres.

For eksempel kan vi beskrive sætningerne 'Dog1 er et dyr', 'cat1 er en kat', 'zoologiske haver husdyr' og 'Zoo1 huser kat2':

ex:dog1 rdf:type ex:animal ex:cat1 rdf:type ex:cat zoo:host rdfs:range ex:animal ex:zoo1 zoo:host ex:cat2

Men denne graf er ikke godt dannet, fordi systemet ikke kan gætte, at en kat er et dyr. Vi skal derfor tilføje 'Katte er dyr':

ex:cat rdfs:subClassOf ex:animal

Her er det korrekte eksempel:

Klar RDF-grafen
  • En hund er et dyr
  • Cat1 er en kat
  • Katte er dyr
  • Zoologiske haver huser kun dyr
  • Zoo1 er vært for cat2
Grundlæggende entailment-ordning
I RDF / skildpadde
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix ex: <http://example.org/> . @prefix zoo: <http://example.org/zoo/> . ex:dog1 rdf:type ex:animal. ex:cat1 rdf:type ex:cat. ex:cat rdfs:subClassOf ex:animal. zoo:host rdfs:range ex:animal. ex:zoo1 zoo:host ex:cat2.

Hvis din triplestore (eller RDF-database) implementerer RDF og RDFS- involveringssystemet , er følgende SPARQL- forespørgsel (nøgleordet a svarer til rdf: skriv SPARQL):

PREFIX ex: <http://example.org/> SELECT ?animal WHERE { ?animal a ex:animal . }

Vil give følgende resultat med cat2, fordi typen ex: kat arver fra typen ex: dyr  :

dyr
<http://eksempel.org/dog1>
<http://eksempel.org/cat1>
<http://eksempel.org/cat2>

Noter og referencer

  1. Første version af RDFS-specifikationerne på det officielle W3C-sted, marts 1999.
  2. Version 1.0 af RDFS-specifikationen på det officielle W3C-sted, februar 2004.

Se også

Relaterede artikler

eksterne links