Hopp til innhold

Semantisk web: Forskjell mellom sideversjoner

Fra Wikipedia, den frie encyklopedi
Slettet innhold Innhold lagt til
Rettet gramatikk: "det finnes ingen fast definisjon på semantiske web i dag."
Endret seksjon "Sammenlikning med HTML" til en seksjon om "semantisk oppmerking av HTML". Trenger underseksjoner om mikrodata, RDFa og JSON-LD.
Linje 31: Linje 31:
Eksempelet viser hvordan Lucy and Pete, med hver sin intelligent agent, klarer nærmest automatisk å hente informasjon fra flere kilder, sortere, presentere og dele til hverandre. Ovennevnte eksempel er i dagens web ikke mulig, for data er beskrevet og presentert for å være leselig for mennesker. Maskiner vil ikke klare å vite hva som er en person anser som viktig, eller hva som er hjem.
Eksempelet viser hvordan Lucy and Pete, med hver sin intelligent agent, klarer nærmest automatisk å hente informasjon fra flere kilder, sortere, presentere og dele til hverandre. Ovennevnte eksempel er i dagens web ikke mulig, for data er beskrevet og presentert for å være leselig for mennesker. Maskiner vil ikke klare å vite hva som er en person anser som viktig, eller hva som er hjem.


== Sammenlignet med HTML ==
== Semantisk oppmerking av HTML ==


I HTML-syntaksen kan man definere ''meta''-tagger. En av egenskapene til meta-taggene er ''keywords'', eller nøkkelord. Ved å spesifisere enkle nøkkelord vil søkemotorer som [[Google]], [[Bing]] og [[Yahoo]] lese av nøkkelordene for å se om noen passer til søkeordet som brukeren har lagt til. Hvis "søkeagenten" leser "Doktor,Hartman,klinikk,fysisk,terapi" fra nøkkelordene spesifisert, vil den ikke forstå at Doktor Hartman jobber i en klinikk for fysisk terapi. Hadde det derimot vært egne tagger spesifisert for å beskrive jobber, plasser og andre faktiske egenskaper ville datamaskiner mye lettere forstått meningen bak dataen.
HTML har ingen innebygget funksjonalitet for å definere betydningen av innholdet i dokumentet. Man kan til dels beskrive metadata om dokumentet og innholdet i dokumentet gjennom <meta> taggen; man kan benytte attributter for å fortelle nettlesere og søkemotorer visse ting om dokumentet, slik som tegnsett, forfatter, beskrivelse av dokument, nøkkelord, osv. Det er imidlertid begrenset hva dette tillater, i tillegg til at hverken beskrivelse av dokument eller nøkkelord faktisk gir innholdet noen betydning, annet enn å knytte det til noen tilfeldige nøkkelord og en tekst-strenge. For eksempel, hvis følgende nøkkelord er spesifisert, "Doktor,Hartman,klinikk,fysisk,terapi", vil ikke en maskin forstå at Doktor Hartman jobber i en klinikk for fysisk terapi. Den vil knytte ordene til dokumentet, men ikke ha noen formening om hva en doktor er, eller hvilken relasjon det er mellom nøkkelordene.


Denne typen betydning kan man oppnå ved bruk av semantisk oppmerking. Det finnes fire formater for å merke opp HTML-dokumenter; [[Mikroformat|Mikroformater]], [[RDFa]], [[Mikrodata]], og [[JSON-LD]]. De benytter seg av eksterne kontrollerte vokabularer, som definerer konsepter og begreper innenfor spesifike domener<ref>{{Kilde bok|tittel = Mastering Structured Data on the Semantic Web: From HTML5 Microdata to Linked Open Data|etternavn = Sikos|fornavn = Leslie F.|utgiver = Apress|år = 2015|isbn = 1484210492|utgivelsessted = |sider = |kapittel = 2}}</ref>. Det finnes mange ulike vokabularer og hele samlinger med vokabularer, som definerer mange forskjellige domener. [[Dublin Core]], [[FOAF]], [[Schema.org]] er noen eksempler på dette.
For å vise forskjellene mellom HTML og RDF ved bruk av [[RDFa]], vurder følgende eksempler som skal forklare at en artikkel er skrevet av [[Bob Dylan]] og skal forklare at han kjenner [[Neil Young]] og [[Joan Baez]]

=== Mikroformater ===
Mikroformater bruker eksisterende [[XHTML]]/[[HTML]]-koder for å legge til semantiske opplysninger som GPS-koordinater, visittkort, lyd- og videofiler og kalendernotater. Til sammenligning med andre semantiske oppmerkinger er mikroformater hovedsakelig beregnet for å være enkelt leselig for mennesker, slik at maskiner kommer i andre rekke.<ref>{{kilde www|url = http://microformats.org/about|tittel = "Om Mikroformater"|besøksdato = 2010-06-16}}</ref>

I formater mer typiske semantiske formater som RDF, OWL og [[XML]], er spesifikt designet for publisering av data. Sammen med (X)HTML skal disse enten være en supplement til [[World Wide Web]], eller en erstatter. Berners-Lee kaller dette nettverket [[Giant Global Graph]] (GGG), men spesifiserer i et dokument at en semantisk web ikke er tenkt på som en erstatter av World Wide Web, men heller en samarbeidspartner.<ref>{{kilde www|url = http://www.w3.org/DesignIssues/LinkedData.html|tittel = "Linked Data av Tim Berners-Lee"|besøksdato = 2010-06-16}}</ref>

=== Eksempel: HTML meta-tagger vs. semantisk oppmerking med RDFa ===
For å vise forskjellene mellom HTML og semantisk oppmerking ved bruk av [[RDFa]], vurder følgende eksempler som skal forklare at en artikkel er skrevet av [[Bob Dylan]] og skal forklare at han kjenner [[Neil Young]] og [[Joan Baez]]


<source lang="html4strict">
<source lang="html4strict">
Linje 60: Linje 68:


I det eksempelet kan en datamaskin lese at skribenten av dokumentet er Bob Dylan og at Neil Young og Joan Baez er to personer og har to forskjellige navn. I FOAF-vokabularet kan man også spesifisere mer bestemt fornavn, etternavn og lignende. I dette eksempelet har vi prøvd å holde det så enkelt som mulig.
I det eksempelet kan en datamaskin lese at skribenten av dokumentet er Bob Dylan og at Neil Young og Joan Baez er to personer og har to forskjellige navn. I FOAF-vokabularet kan man også spesifisere mer bestemt fornavn, etternavn og lignende. I dette eksempelet har vi prøvd å holde det så enkelt som mulig.

=== Mikroformater ===

En annen måte å tagge HTML-koder med semantiske oppmerkinger er gjennom [[mikroformat]]er. Microformater bruker eksisterende [[XHTML]]/[[HTML]]-koder for å legge til semantiske opplysninger som GPS-koordinater, visittkort, lyd- og videofiler og kalendernotater. Til sammenligning med andre semantiske oppmerkinger er mikroformater hovedsakelig beregnet for å være enkelt leselig for mennesker, slik at maskiner kommer i andre rekke.<ref>{{kilde www|url = http://microformats.org/about|tittel = "Om Mikroformater"|besøksdato = 2010-06-16}}</ref>

I formater mer typiske semantiske formater som RDF, OWL og [[XML]], er spesifikt designet for publisering av data. Sammen med (X)HTML skal disse enten være en supplement til [[World Wide Web]], eller en erstatter. Berners-Lee kaller dette nettverket [[Giant Global Graph]] (GGG), men spesifiserer i et dokument at en semantisk web ikke er tenkt på som en erstatter av World Wide Web, men heller en samarbeidspartner.<ref>{{kilde www|url = http://www.w3.org/DesignIssues/LinkedData.html|tittel = "Linked Data av Tim Berners-Lee"|besøksdato = 2010-06-16}}</ref>


== Komponenter ==
== Komponenter ==



Sideversjonen fra 30. nov. 2015 kl. 14:29

FOAF-vokabularet beskrevet i RDF/XML-format

Semantisk web (oversettelse fra engelske Semantic web) er et begrep skapt av World Wide Web Consortiums (W3C) direktør, Tim Berners-Lee,[1] for å beskrive teknologier og metoder for å få maskiner til å forstå meningen - eller semantikken - bak informasjonen som finnes på internett.

I følge den originale visjonen om en semantiske web vil muligheten for en maskin å forstå meningen bak innholdet tillate automatiske intelligente agenter å få tilgang til data på internett på en mer intelligent måte. Agentene vil være i stand til å utføre instruksjoner automatisk og finne relatert informasjon på vegne av brukeren.

Det finnes ingen fast definisjon på hva semantisk web er i dag. Begrepet blir for det meste brukt for å beskrive forskjellige metoder og teknologier som har blitt foreslått av W3C. Teknologiene det er snakk om inkluderer Resource Description Framework (RDF) – en familie av spesifikasjoner fra W3C, forskjellige dataformater (som RDF/XML, N3, Turtle og lignende), og notasjoner eller betegnelser som RDF Schema (RDFS) og Web Ontology Language (OWL).

Historie

Når Tim Berners-Lee la frem idéen om World Wide Web i Mars 1989 var tanken at brukere skulle få fri tilgang til informasjon gjennom et nett av noder som var lenket sammen. Han kalte denne idéen og prosjektet som kom fra det HyperText. I det opprinnelige forslaget var det interaksjon mellom brukere og informasjon som stod i sentrum.[2] Etter den beskrivelsen var aldri internett, eller World Wide Web, beregnet for å bli lest av maskiner, men av personer - brukere.

Det semantiske web var en visjon av Berners-Lee som ble først nevnt i boken Weaving the web av nevnte person.[3]

Jeg har en drøm for webben. En drøm hvor datamaskiner er i stand til å analysere all data på webben - innholdet, lenkene, relasjonene mellom folk og maskiner. En "semantisk web", som skal gjøre alt dette mulig har fortsatt ikke vist seg, men når det gjør, vil dag-til-dag mekanismer i handel, byråkrati og våre daglige liv håndtert av maskiner som snakker med maskiner. "Intelligente agenter" som folk har snakket om i årevis vil til slutt materialisere seg.

Eksempel på en semantisk web

I 2001 ga Tim Berners-Lee, sammen med James Hendler og Ora Lassila (en av skribentene bak RDF-spesifikasjonene) ut den første vitenskapelige artikkelen om den semantiske web i Scientific American. Artikkelen begynner ved å gi et illustrativt eksempel på hvordan skribentene ser for seg en semantisk web.

Underholdningssystemet skrek ut The Beatles "We Can Work It Out" da telefonen begynte å ringe. Når Pete tok telefonen skrudde telefonen ned volumet på alle lokale enheter som hadde volumkontroll. Søsteren hans, Lucy, var i den andre enden fra legekontoret: "Mor trenger å se en spesialist og deretter ha flere timer med fysisk terapi. Ukentlig eller lignende. Pete sa seg umiddelbart enig til å dele på å kjøre.

På legekontoret ga Lucy instruksjoner til sin Semantiske Web-agent gjennom en håndholdt nettleser. Agenten mottok hurtig informasjon om morens anbefalte behandling og bladde opp flere lister med plasser som kunne tilby tjenesten. I tillegg sjekket agenten dem opp i mot plasser som støtter morens forsikringsplan og er innenfor en rekkevidde av 20 mil radius fra hennes hjem, og en ratio fra utmerket til god fra en ratingtjeneste man stoler på. Deretter begynte den å se på avtaletider (angitt av tjenestene gjennom deres nettsider) sammenlignet med Pete og Lucys travle tidsplan. (Ord i fet skrift er nøkkelord som kan være knyttet opp mot en terminologi som er angitt, semantisk, i en agent gjennom en semantisk web).

Innen få minutter hadde agenten presentert den med en plan. Pete likte den ikke – University Hospital var helt på andre siden av byen i forhold til morens hus, og han ville vært nødt til å kjøre tilbake midt i rushtiden. Han satt agenten sin til å søke på nytt, bare med strengere grenser på sted og tid. Lucys agent som er innstilt på å ha fullstendig tillit i Petes agent vedrørende den aktuelle oppgaven deler sertifikater for tilgang og snarveier til data den allerede hadde sortert.

Nesten umiddelbart ble den nye tidsplanen presentert: en mye nærmere klinikk og tidligere legetime – men det var to advarsler. Først måtte Pete forandre på et par av sine mindre viktige avtaler. Han sjekket opp i hva dem var – ingen problem. Den andre var noe angående forsikringselskapet, de hadde ikke angitt tjenesten under fysisk terapi: "Tjenestetypen og forsikringsplanen har blitt sikkert verifisert med andre middler" – ga agenten beskjed om. "Detajljer?".

Lucy bekreftet tidsplanen samtidig som Pete mumlet: "Spar meg detaljene", og alt var satt.

Eksempelet viser hvordan Lucy and Pete, med hver sin intelligent agent, klarer nærmest automatisk å hente informasjon fra flere kilder, sortere, presentere og dele til hverandre. Ovennevnte eksempel er i dagens web ikke mulig, for data er beskrevet og presentert for å være leselig for mennesker. Maskiner vil ikke klare å vite hva som er en person anser som viktig, eller hva som er hjem.

Semantisk oppmerking av HTML

HTML har ingen innebygget funksjonalitet for å definere betydningen av innholdet i dokumentet. Man kan til dels beskrive metadata om dokumentet og innholdet i dokumentet gjennom <meta> taggen; man kan benytte attributter for å fortelle nettlesere og søkemotorer visse ting om dokumentet, slik som tegnsett, forfatter, beskrivelse av dokument, nøkkelord, osv. Det er imidlertid begrenset hva dette tillater, i tillegg til at hverken beskrivelse av dokument eller nøkkelord faktisk gir innholdet noen betydning, annet enn å knytte det til noen tilfeldige nøkkelord og en tekst-strenge. For eksempel, hvis følgende nøkkelord er spesifisert, "Doktor,Hartman,klinikk,fysisk,terapi", så vil ikke en maskin forstå at Doktor Hartman jobber i en klinikk for fysisk terapi. Den vil knytte ordene til dokumentet, men ikke ha noen formening om hva en doktor er, eller hvilken relasjon det er mellom nøkkelordene.

Denne typen betydning kan man oppnå ved bruk av semantisk oppmerking. Det finnes fire formater for å merke opp HTML-dokumenter; Mikroformater, RDFa, Mikrodata, og JSON-LD. De benytter seg av eksterne kontrollerte vokabularer, som definerer konsepter og begreper innenfor spesifike domener[4]. Det finnes mange ulike vokabularer og hele samlinger med vokabularer, som definerer mange forskjellige domener. Dublin Core, FOAF, Schema.org er noen eksempler på dette.

Mikroformater

Mikroformater bruker eksisterende XHTML/HTML-koder for å legge til semantiske opplysninger som GPS-koordinater, visittkort, lyd- og videofiler og kalendernotater. Til sammenligning med andre semantiske oppmerkinger er mikroformater hovedsakelig beregnet for å være enkelt leselig for mennesker, slik at maskiner kommer i andre rekke.[5]

I formater mer typiske semantiske formater som RDF, OWL og XML, er spesifikt designet for publisering av data. Sammen med (X)HTML skal disse enten være en supplement til World Wide Web, eller en erstatter. Berners-Lee kaller dette nettverket Giant Global Graph (GGG), men spesifiserer i et dokument at en semantisk web ikke er tenkt på som en erstatter av World Wide Web, men heller en samarbeidspartner.[6]

Eksempel: HTML meta-tagger vs. semantisk oppmerking med RDFa

For å vise forskjellene mellom HTML og semantisk oppmerking ved bruk av RDFa, vurder følgende eksempler som skal forklare at en artikkel er skrevet av Bob Dylan og skal forklare at han kjenner Neil Young og Joan Baez

 ...
 <meta name="keywords" content="bob dylan, joan baez, neil young, personlig hjemmeside, om meg"/>
 <meta name="description" content="Min personlige hjemmeside"/>
 <meta name="author" content="Bob Dylan"/>
 Denne artikkelen ble skrevet av Bob Dylan og handler om mine venner: Neil Young og Joan Baez. 
 ...

I det ovennevnte eksempelet kan en agent lese hvem som er skribenten, en beskrivelse av nettsiden og noen nøkkelord til å binde til nettsiden. I eksempelet nedenfor har vokabularene Dublin Core og FOAF blitt brukt for å forklare til agenter hva som er meningen bak innholdet innenfor hver tagg.

 <html xmlns:foaf="http://xmlns.org/foaf/0.1" xmlns:dc="http://purl.org/dc/elements/1.1/">
 ...
 Denne artikkelen ble skrevet av <span property="dc:author"><span property="foaf:Person">Bob Dylan</span>
</span>, og handler om mine venner: <span property="foaf:knows"><span property="foaf:Person"><span 
property="foaf:name">Neil Young</span> og <span property="foaf:name">Joan Baez</span>
 ...

I det eksempelet kan en datamaskin lese at skribenten av dokumentet er Bob Dylan og at Neil Young og Joan Baez er to personer og har to forskjellige navn. I FOAF-vokabularet kan man også spesifisere mer bestemt fornavn, etternavn og lignende. I dette eksempelet har vi prøvd å holde det så enkelt som mulig.

Komponenter

En semantisk web har mange komponenter, alle i forskjellige typer og formater, som kan gjøre en forståelse av en semantisk web til en utfordringer for de som blir introdusert til det.

  • XML angir en elementær syntakse for innholdsstruktur innenfor et dokument, men i seg selv angir ingen semantiske betegnelser til meningen av elementene i dokumentet.
  • XML Skjema er et språk for å bidra til å restriktere strukturen og innholdet i et XML-dokument.
  • RDF er et simpelt språk for å uttrykke datamodeller som referanser til objekter (kalt ressurser) og deres relasjoner. En RDF-basert modell kan bli presentert i flere formater, bl.a. XML.
  • RDF Skjema utvider RDF et vokabular for å beskrive klasser og egenskaper for RDF-baserte ressurser.
  • OWL gir i tillegg enda større vokabular for å beskrive egenskaper og klasser. Blant annet relasjonene mellom klasser, større muligheter for beskrivelse av egenskaper, symmetri og nummere klasser.
  • SPARQL er en protokoll og et språk beregnet på å gjøre operasjoner som å stille spørringer mot semantiske datakilder.

Formål

For å gjøre nettet mer brukbart, automatisert og tilkoblet gjennom sine ressurser har det blitt lagt opp til flere måter å omvende tjenester og ikke-semantiske ressurser til semantiske formater. Flere tjenere sitter allerede på store mengder data i flere formater. Av den grunn har det blitt produsert flere applikasjoner som konverterer andre dataformater til RDF-formater.

Dokumenter kan bli markert med semantiske tagger (pr. dags dato er det kun <meta>-taggene, beskrevet ovenfor, som er standardisert i HTML) for å beskrive de forskjellige egenskapene til dataen presentert i dokumentet. For eksempel kan man markere opp ting som hvem som har skapt dokumentet ved å ha en "skaper" eller "skribent"-tagg. Når maskiner leser denne vil de forstå at skaperen av dokumentet er personen, eller personene innenfor nevnte tagger. Det finnes et bredt utvalg av slike vokabular som kan definere egenskaper på en hel rekke ting. Alt kan bli definert gjennom bruken av URIer, slik at en semantisk web kan skille mellom (f.eks.) plasser, mennesker, dyr og mat.

Åpne ontologier gir skribenter av et dokument en indeks over hvilke klasser kan bli tilegnet forskjellige egenskaper for å være leselig for agenter. Sett at man har en skribent som skriver et dokument som omhandler en forfatter og boken forfatteren har skrevet. For at en semantisk web og dens agenter skal klare å forstå forskjellen på disse to skribentene eller forfatterene lages det individuelle ontologier. Èn kan for eksempel være skribentForDokument hvor den andre kan være forfatterAvBok. Når en agent leser de to klassene vil den forstå at en skribent og en forfatter (som regel kun ett ord i HTML, author) ikke er den samme.

Utfordringer

Det er mange lag med hindringer som man må beherske for å få til en fullstendig semantisk web. Internett har rundt 24 milliarder sider.[7] Terminologier som SNOMED CT inneholder over 370 000 navn på forskjellige klasser og nåværende teknologi har enda ikke vært i stand til å skille ut duplikater i semantiske betydninger.

Enkelte ord i språket er veldig vage og upresise. Ung og høy er et eksempelet på dette. Dette gjør at spørringer mot en semantisk datakilde gjør det veldig vanskelig å få korrekt informasjon siden konseptene "ung" og "høy" har variable betydninger hos folk. Som regel bli reguleringsprinsippet "fuzzy logic", eller uskarp logikk, anvendt for å avgjør hva det er brukeren faktisk spør om.

I motsatt retning har man også de veldig presise og nøyaktige spørringene som gjør at man ofte må anvende seg av probabilitetsregning for å finne ut de spesifikke resultatene man vil ha. Et eksempel på en situasjon som kan oppstå er ved å se på en pasient som har blitt presentert et sett av symptomer. Det kan finnes flere diagnoser på akkurat de symptomene, men en agent med en algoritme for probabilitet vil kunne regne ut hvilken diagnose er mest sannsynlig basert på symptomene angitt.

Inkonsistens er også et dilemma når det eksisterer flere vokabular fra forskjellige ontologier bli kombinert i ett dokument. Deduksjon feiler når inkonsistensen er tilstedeværende i et dokument med flere separate vokabular.

Et siste hinder er ren menneskelig bedrageri. Falsk informasjon satt inn i semantiske egenskaper. Kryptografi blir normalt sett utøvd for å forhindre bedrageri.

Mange av teknikkene nevnt her vil kreve en utvidelse av Web Ontology Language (OWL) for å bli løst.

Eksisterende prosjekter

Flere av prosjektene listet her er fortsatt under utvikling og de fleste er av tidlig alder. Listen er betenkt som en oversikt over eksisterende eksempler på bruk av en semantisk web så langt.

DBpedia

DBpedia har som mål å hente ut data fra Wikipedia og gjøre det tilgjengelig i et semantisk RDF-format. Resultatet blir publisert og blir lagt ut fritt tilgjengelig med GNU Free Documentation License. Dette tillater semantiske agenter til å sende spørringer til datasettet og lenke og bruke materialet tilgjengelig i egne datakilder.

FOAF

FOAF er et populært prosjekt som tillater folk å uttrykke semantiske begreper i forhold til personer og deres relasjoner mellom dem. FOAF står for Friend of a Friend. Med FOAF kan agenter se sammenhengen mellom personer, som f.eks. om de er kjent gjennom jobb, skole, organisasjoner eller privat. Man kan til og med spesifisere foreldre og barn. Siden hele sammenhengen av de forskjellige personene og alle deres relasjoner vil det være nærmest umulig for mennesker å se sammenhengen mellom alt. Dette er derimot noe en agent ville klart å sett sammenhengen i på kort tid.

FOAF er et eksempel på et semantisk prosjekt i sosiale sammenhenger.

Se også

Referanser

  1. ^ ««The Semantic Web», artikkel i Scientific American». Besøkt 14. juni 2010. 
  2. ^ «"WorldWideWeb: Proposal for a HyperText Project"». Besøkt 15. juni 2010. 
  3. ^ «"Weaving the web, kapittel 12"». Besøkt 15. juni 2010. 
  4. ^ Sikos, Leslie F. (2015). «2». Mastering Structured Data on the Semantic Web: From HTML5 Microdata to Linked Open Data. Apress. ISBN 1484210492. 
  5. ^ «"Om Mikroformater"». Besøkt 16. juni 2010. 
  6. ^ «"Linked Data av Tim Berners-Lee"». Besøkt 16. juni 2010. 
  7. ^ «"World Wide Web Size"». Besøkt 17. juni 2010. 

Eksterne lenker