Limbajul ontologiei web

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Limbajul Ontologiei Web ( OWL ) este un limbaj de marcare pentru a reprezenta în mod explicit semnificația și semantica termenilor, cu vocabulare și relații între ei. Există diferite versiuni ale limbii, care diferă foarte mult între ele.

Scopul OWL este de a descrie bazele de cunoștințe , de a face inferențe despre acestea și de a le integra cu conținutul paginilor web . OWL intenționează să facă posibil acest lucru, de exemplu:

  • căutări pe web care depășesc problemele de omonimie și ambiguitate prezente în căutările textuale normale;
  • aplicații care fac deduceri de date.

Reprezentarea termenilor și a relațiilor lor se numește ontologie .

Împreună cu RDF , din care este o extensie, [1] OWL face parte din proiectul web semantic .

Semantică

Limbajul OWL constă dintr-o semantică formală construită de consorțiul W3C pe baza standardului XML numit RDF . Cele două versiuni majore ale acestei specificații semantice se numesc OWL [2] (numită și OWL1, 2004 ) și OWL2 [3] ( 2009 ). OWL2 este pe deplin compatibil cu OWL1 [4] .

Decidabilitate

Una dintre problemele majore ale ontologiilor este alegerea puterii expresive. Logica primului ordin este de fapt foarte puternică, dar nu este decisivă , adică nu este posibil să se construiască un algoritm care, având în vedere una sau mai multe axiome, spune în timp finit dacă o afirmație urmează sau nu urmează logic din aceste axiome. Evident, acest lucru este incomod din punct de vedere al utilizării practice, deoarece s-ar dori să existe o bază de cunoștințe care să răspundă într-un mod previzibil cererilor și nu oferă informații pe baza deducerilor făcute până în acel moment. Prin urmare, abordările problemei sunt:

  • selectați o logică mai puțin puternică decât logica primului ordin, care are mai puțină putere expresivă, dar care poate fi decisă;
  • renunță la decizie prin operarea într-un context de fiabilitate parțială a bazei de date.

Unele versiuni ale OWL, cele mai utilizate, se bazează pe prima abordare.

Logică

Pentru a alege un subset de logică de ordinul întâi care să fie decisiv, s-a folosit logica propozițională , crescându-i puterea prin adăugarea de logici reprezentate prin convenție cu abrevieri:

Scrisoare sau inițiale de logică Descriere
LA Includerea și echivalența între clase, definiția claselor atomice, clasa universului, intersecția dintre clase, definițiile claselor formate din elemente care iau parte la relații sau au o relație de un anumit tip numai cu elemente ale unei anumite clase, operator de congruență între indivizi și apartenența la o persoană într-o clasă
ALC adaugă la AL clasa goală, clasele de complement, uniunea de clase și clasele de elemente care se află într-o anumită relație cu elementele unei anumite clase
S. Acesta adaugă la ALC definiția tranzitivității unei relații
H. Includerea și echivalența între relații
R. disjuncția proprietăților, reflexivitate, asimetrie, nereflectivitate, relații compuse din alte relații, definirea non-relației dintre doi indivizi
O (unul din) crearea de clase printr-o listă a tuturor și numai a persoanelor conținute
Eu (invers) definiția proprietății inverse
F (Funcționalitate) definirea proprietăților funcționale
N (număr) restricția cardinalității: numărul de elemente care participă la o anumită relație mai mic decât, mai mare sau egal cu o valoare n
Q (calificat) ca N, dar relația poate fi calificată
D n (domeniu numeros) definirea domeniilor ( tipuri de date) către care poate duce o relație (de ex. „Mario are n ani”)

Versiuni

Există mai multe versiuni ale OWL, foarte diferite între ele.

OWL DL

Folosește SHOIN (D n ), este decisiv și are complexități bine cunoscute ale procedurilor de deducere.

OWL Lite

Folosește SHIF (D n ), este simplu de implementat, dar are o putere expresivă redusă

OWL Complet

Folosește logica de primă ordine, chiar extinzând-o cu alte predicate. Prin urmare, este foarte expresiv, dar indecidabil.

OWL 2

Recomandat de W3C din 2009, se bazează pe SROIQ (D n )

Sintaxă

Familia de limbi OWL acceptă o varietate de sintaxe. Este util să distingem sintaxa la nivel înalt care vizează specificațiile de sintaxa swap mai potrivită pentru uz general.

Nivel inalt

Acestea sunt apropiate de structura ontologică a limbilor din familia OWL.

Sintaxă OWL abstractă

Sintaxa la nivel înalt este utilizată pentru a specifica structura și semantica ontologiei OWL [5] .

Sintaxa OWL abstractă prezintă o ontologie ca o succesiune de adnotări , axiome și fapte . Adnotările conțin metadate orientate către mașină și orientate spre om. Informațiile despre clasele, proprietățile și indivizii care alcătuiesc ontologia sunt conținute numai în axiome și fapte. Fiecare clasă, proprietate și persoană este anonimă sau identificată printr-o referință URI. Faptele indică date despre o persoană sau o pereche de identificatori individuali (că obiectele identificate sunt distincte sau identice). Axiomele specifică caracteristicile claselor și proprietăților. Acest stil este similar cu limbajele de cadre și destul de diferit de sintaxele bine-cunoscute pentru DL și Resource Description Framework (RDF) [5] .

Sean Bechhofer și colab. ei susțin că, deși această sintaxă este dificil de analizat, este destul de concretă. Ei concluzionează că sintaxa abstractă a numelui poate fi înșelătoare.

Sintaxa funcțională OWL2

Această sintaxă urmează îndeaproape structura unei ontologii OWL2. Este folosit de OWL2 pentru a specifica semantica, mapări pentru schimbul de sintaxă și profiluri [6] .

Sintaxă de schimb

Sintaxa RDF

Mapările sintactice în RDF sunt specificate [5] [7] pentru limbile din familia OWL. Au fost concepute mai multe formate de serializare RDF. Fiecare conduce la o sintaxă pentru limbile familiei OWL prin această mapare. RDF / XML este normativ [5] [7] .

Sintaxa XML OWL2

OWL2 specifică o serializare XML care modelează îndeaproape structura unei ontologii OWL2 [8] .

Sintaxa Manchester

Sintaxa Manchester este o sintaxă compactă, care poate fi citită de om, cu un stil apropiat limbajelor de cadre. Sunt disponibile variante pentru OWL și OWL2. Nu toate ontologiile OWL și OWL2 pot fi exprimate în această sintaxă [9] .

Exemple

W3C OWL 2 Web Ontology Language oferă exemple de sintaxă [10] .

Ontologia ceaiului

Luați în considerare o ontologie a ceaiului bazată pe o clasă de ceai. În primul rând, este necesar un identificator de ontologie. Fiecare ontologie OWL trebuie identificată printr-un URI (de exemplu, http://www.example.org/tea.owl ). Acest exemplu oferă un sentiment de sintaxă.

Sintaxa funcțională OWL2
 Ontologie ( <http://example.org/tea.owl>
  Declarație ( Clasa ( : Ceai ) )
)
Sintaxa XML OWL2
<Ontologie ontologieIRI = "http://example.org/tea.owl" ... >
   <Prefix nume = "bufniță" IRI = "http://www.w3.org/2002/07/owl#" />
   <Declarație>
     <Clasa IRI = "Ceai" />
   </Declaration>
 </Ontology>
Sintaxa Manchester
 Ontologie : <http://example.org/tea.owl>
Clasa : Ceai
Sintaxa RDF / XML
<rdf: RDF ... >
    <owl: Ontology rdf: about = "" />
    <owl: Class rdf: about = "#Tea" />
</ rdf: RDF>
RDF / Broasca testoasa
 <http://example.org/tea.owl> rdf : tip bufniță : Ontologie .
 : Ceai rdf : tip bufniță : Clasa .

Terminologie

Limbile familiei OWL sunt capabile să creeze clase, proprietăți, să definească instanțe și operațiile sale.

Instanțe

Un exemplu este un obiect. Corespunde unei descrieri logice individuale .

Clase

O clasă este o colecție de obiecte. O clasă poate conține persoane, instanțe ale clasei. O clasă poate avea orice număr de instanțe. O instanță nu poate aparține niciunei, uneia sau mai multor clase.

O clasă poate fi o subclasă a alteia, moștenind caracteristici din superclasa sa mamă . Aceasta corespunde subsumării logice și includerii conceptului DL adnotat.

Toate clasele sunt subclase de bufniță: lucru (notat tip DL Top ), clasa rădăcină .

Clasa și membrii săi pot fi definiți în OWL atât prin extensie, cât și prin intenție. Unui individ i se poate atribui în mod explicit o clasă dintr- o declarație de clasă , de exemplu, putem adăuga o declarație Regina Elisabeta este o (o instanță de) om sau dintr-o expresie de clasă cu declarații de clasă, fiecare instanță a clasei umane având o valoare feminină la proprietatea sexului este un exemplu al clasei de femei .

Exemplu

Noi numim uman clasa tuturor oamenilor din lume este o subclasă de owl:Thing . Clasa tuturor femeilor (deci a femeilor ) din lume este o subclasă de oameni . Deci avem:

Se poate observa că unii indivizi aparțin unei clase

 ClassAssertion ( uman George_Washington )

și includerea clasei

 SubClassOf ( femeie umană ) 

Primul înseamnă „George Washington este un om” și al doilea „fiecare femeie este umană”.

Proprietate

O proprietate este o caracteristică a unei clase: o relație binară directă care specifică un atribut adevărat pentru instanțele acelei clase. Proprietățile acționează uneori ca valori ale datelor sau ca legături către alte instanțe. Proprietățile pot prezenta caracteristici logice, de exemplu, fiind tranzitive, simetrice, inverse și funcționale. Proprietățile pot avea, de asemenea, domenii și intervale.

Proprietățile tipului de date

Proprietățile tipului de date sunt relații între instanțele clasei și literele RDF sau tipurile de date ale schemei XML. De exemplu, modelName (de tip șir ) este proprietatea clasei Producător. Acestea sunt formulate utilizând caracterul bufniță: DatatypeProperty .

Proprietățile obiectelor

Proprietățile obiectului sunt relații între instanțele a două clase. De exemplu, OwnedBy poate fi o proprietate de tip obiect din clasa Vehicle și poate avea un interval care este clasa Person. Acestea sunt formulate folosind bufnița: ObjectProperty .

Operatori

Limbile din familia OWL susțin diverse operațiuni pe clase, cum ar fi uniunea, intersecția și complementul. De asemenea, permit enumerarea clasei, cardinalitatea, disjuncția și echivalența.

Metaclasă

Metaclasele sunt clase de clase. Sunt permise în OWL complet sau cu o caracteristică numită jocuri de cuvinte clasă / instanță.

Notă

  1. ^ (EN) OWL Web Ontology Language Reference , de la w3.org, World Wide Web Consortium , 10 februarie 2004. Accesat la 31 martie 2017 ( depus la 31 martie 2017).
  2. ^ (EN) OWL Web Ontology Language Reference , de pe www.w3.org. Adus la 15 august 2018 .
  3. ^ (RO) OWL 2 Web Ontology Language Document Overview (Ediția a doua) , pe www.w3.org. Adus la 15 august 2018 .
  4. ^ (RO) OWL 2 Web Ontology Language Document Overview (Ediția a doua) - Relație cu OWL1 pe www.w3.org. Adus la 15 august 2018 .
  5. ^ a b c d Peter F. Patel-Schneider, Ian Horrocks și Hayes Patrick J. , OWL Web Ontology Language Semantics and Abstract Syntax , la w3.org , World Wide Web Consortium, 10 februarie 2004. Accesat la 18 aprilie 2010 .
  6. ^ Sean Bechhofer , Peter F. Patel-Schneider și Daniele Turi , OWL Web Ontology Language Concrete Abstract Syntax , la owl.man.ac.uk , Universitatea din Manchester , 10 decembrie 2003. Accesat la 18 aprilie 2010 .
  7. ^ a b Peter F. Patel-Schneider și Boris Motik, OWL 2 Web Ontology Language Mapping to RDF Graphs , în OWL 2 Web Ontology Language , World Wide Web Consortium, 27 octombrie 2009. Accesat la 18 aprilie 2010 .
  8. ^ Boris Motik, Bijan Parsia și Peter F. Patel-Schneider, OWL 2 Web Ontology Language Serialization XML , în OWL 2 Web Ontology Language , World Wide Web Consortium, 27 octombrie 2009. Accesat la 18 aprilie 2010 .
  9. ^ Matthew Horridge și Peter F. Patel-Schneider, OWL 2 Web Ontology Language Manchester Syntax , în W3C OWL 2 Web Ontology Language , World Wide Web Consortium, 27 octombrie 2009. Accesat la 18 aprilie 2010 .
  10. ^ Pascal Hitzler , Markus Krötzsch , Bijan Parsia, Peter F. Patel-Schneider și Sebastian Rudolph , OWL 2 Web Ontology Language Primer , în OWL 2 Web Ontology Language , World Wide Web Consortium, 27 octombrie 2009. Accesat la 15 octombrie 2013 .

Elemente conexe

linkuri externe

Controlul autorității LCCN (EN) sh2018001881 · GND (DE) 4396527-1
Internet Portal internet : accesați intrările Wikipedia care se ocupă de internet