(Ez a fordítás a W3C Magyar Irodájának megbízásából,
az
Informatikai és Hírközlési Minisztérium
támogatásával készült)
Kérjük, kövesse figyelemmel a dokumentum eredeti angol nyelvû változatára vonatkozó hibajegyzéket, mert ez normatív korrekciókat is tartalmazhat.
A dokumentumról további fordítások is rendelkezésre állnak.
Copyright © 2004 W3C® (MIT, ERCIM, Keio), Minden jog fenntartva. Alkalmazandók a W3C felelõsségi, védjegyoltalmi, dokumentumhasználati és szoftverlicenc elõírásai.
Az RDF (Resource Description Framework) egy keretrendszer a weben történõ információábrázolás céljára.
Ez a dokumentum egy absztrakt szintaxist definiál, amelyre az RDF épül, és amely arra szolgál, hogy az RDF konkrét szintaxisát annak formális szemantikájához kapcsolja. A dokumentum ismerteti továbbá a keretrendszer tervezési céljait, alapfogalmait, adattípus rendszerét, karakterszabványait, valamint URI hivatkozásainak kezelését.
Ezt a dokumentumot a W3C Tagjai és más érdekelt résztvevõk ellenõrizték, és az Igazgató W3C Ajánlásként hitelesítette. Az Ajánlás elkészítésével a W3C célja és szerepe az, hogy ráirányítsa a figyelmet a specifikációra, és elõsegítse annak széles körû alkalmazását. Ez megnöveli a Web használhatóságát, és javítja a weben történõ együttmûködést.
Ez a dokumentum egyike annak a hat dokumentumnak (Bevezetés, Fogalmak, Szintaxis, Szemantika, Szókészlet és Tesztsorozat), amelyek együttesen felváltják az eredeti Resource Description Framework specifikációkat: az RDF Model and Syntax (1999 Recommendation) és az RDF Schema (2000 Candidate Recommendation) címû dokumentumokat. A jelen dokumentumot az RDF Core Working Group (RDF Mag Munkacsoport) dolgozta ki a W3C Szemantikus Web Munkaprogramja keretében, és 2004. február 10. dátummal publikálta. (Lásd a Munkaprogram-nyilatkozatot és a Munkacsoport alapszabályát).
Az Elõzetes Ajánlástervezet Munkaanyag óta a jelen Ajánlás megszületéséig a dokumentumon végrehajtott módosításokat a változtatási napló részletezi.
A Munkacsoport szívesen fogadja az olvasóközönség észrevételeit a www-rdf-comments@w3.org (archive) címén; az idevágó technológiák általános vitáját pedig a www-rdf-interest@w3.org (archive) címén folytatja.
Rendelkezésre áll egy konszignáció az ismert alkalmazásokról.
A W3C listát vezet továbbá azokról a felfedett szabadalmi igényekrõl is, amelyek ehhez a munkához kapcsolódnak.
Ez a szekció a dokumentumnak a publikáláskor érvényes státusát rögzíti. Más dokumentumok hatálytalaníthatják ezt a dokumentumot. A legújabb W3C publikációk listája, valamint e technikai riport utolsó kiadása megtalálható a W3C technikai riportok indexében, a http://www.w3.org/TR/ alatt.
Az RDF (Resource Description Framework) egy keretrendszer a weben történõ információábrázolás céljára.
Ez a dokumentum egy absztrakt szintaxist definiál, amelyre az RDF épül, és amely arra szolgál, hogy az RDF konkrét szintaxisát annak formális szemantikájához kapcsolja. Ez az absztrakt szintaxis teljesen különbözik az XML fa-struktúrán alapuló, un. "infohalmazától" [XML-INFOSET]. A dokumentum tárgyalja továbbá a tervezési célokat, az alapvetõ RDF fogalmakat, az adattipizálást, a karakterszabványosítást és az URI hivatkozások kezelését.
Az RDF normatív dokumentációja az alábbi területek dokumentumaiból tevõdik össze:
E dokumentum megfelelõ fejezeteinek címében jelezzük, ha a bennük szereplõ információk normatív hatályúak. Az ilyen fejezetekben lévõ kiemelt Megjegyzések azonban itt is csak informatív jellegû információkat közölnek.
A keretrendszert úgy tervezték meg, hogy a szókészletek egymásra rétegezhetõek legyenek. Az RDF és az RDF Séma [RDF-SZÓKÉSZLET] a szókészletek elsõ rétegét alkotják. Más szókészletek (mint pl. az [OWL] szókészlet, vagy azok az alkalmazások, amelyeket az [RDF-BEVEZETÉS]) is megemlít, még fejlesztés alatt állnak.
A 2. fejezet a rendszer alapvetõ indokait és tervezési céljait ismerteti. Ezt követi az alapfogalmak bemutatása a 3. fejezetben, míg a 4. fejezet az RDF céljaira tartalékolt URI hivatkozásokat tárgyalja.
Az 5. fejezet az adattípusokat, ezen belül az 5.1 szekció a literális kifejezések XML tartalmát ismerteti. Az RDF absztrakt szintaxisának definíciója pedig a 6. fejezetben található.
A 7. fejezet az RDF-ben használt URI hivatkozások erõforrásrész-azonosítójának (fragment identifier) szerepével ismerteti meg az olvasót.
Az RDF-nek olyan absztrakt szintaxissal kell rendelkeznie, mely egy egyszerû, gráf alapú adatmodellt, valamint egy olyan formális szemantikát tükröz, amelyben a következmény (entailment) fogalma igen szigorúan definiált, hogy ennek alapján az RDF adatokból jól megalapozott információkat lehessen levezetni.
Az RDF fejlesztését (egyebek között) az alábbi várható alkalmazások motiválták:
Az RDF-et úgy tervezték meg, hogy alkalmas legyen a flexibilis, minimálisan korlátozó adatábrázolásra. Ennek használhatónak kell lennie tehát olyan elszigetelt alkalmazásokban is, ahol az egyedileg tervezett formátumok közvetlenebbek, és könnyebben érthetõk, de ahol az RDF (az egyetemességénél fogva) megnöveli az információk értékét azáltal, hogy lehetõvé teszi az adatok többcélú, megosztott felhasználását az Interneten futó különféle alkalmazások számára.
Az RDF konstrukciójának megtervezésekor az alábbi célokat tartottuk szem elõtt:
Az RDF adatmodellje egyszerû, azt az alkalmazások könnyen feldolgozhatják és manipulálhatják. Az adatmodell független bármilyen specifikus szerializációs szintaxistól.
Megjegyzés: az "adatmodell" kifejezésben a "modell" szónak itt más az értelme, mint a "modell-elmélet" kifejezésben. (Az [RDF-SZEMANTIKA] dokumentum további információkat tartalmaz a modell-elméletrõl, ahogyan azt a matematika és a logika szakirodalmában használják).
Az RDF formális szemantikája megbízható alapot teremt egy RDF kifejezés jelentésébõl történõ következtetésekhez. Ezt azzal éri el, hogy egy nagyon szigorú következmény fogalmat támogat, amelynek alapján megbízható következtetési szabályok definiálhatók az RDF adatokból következõ konklúziók levonására.
A szókészlet korlátlanul bõvíthetõ, minthogy ez URI hivatkozásokra (URI references vagy URIrefs) épül, amelyek (opcionálisan) un. erõforrásrész-azonosítót (fragment Identifier-t) is tartalmazhatnak. Az RDF-ben URI hivatkozásokat használunk minden dolognak a megnevezésére.
A hivatkozások mellett, a másik típusú érték, ami az RDF adatokban megjelenik, az a literál.
Az RDF-ben van egy ajánlott XML szerializációs szintaxis: az [RDF-SZINTAXIS], mellyel alkalmazások közötti információcsere céljára kódolhatjuk az adatmodellt.
Az RDF olyan adatértékeket használ, amelyeket az XML Séma adattípusainak megfelelõen ábrázolunk [lásd: XML-SCHEMA2], elõsegítve ezzel az adatcserét az RDF alkalmazások és más XML alkalmazások között.
Az RDF, hogy teljes Internet szélességben megkönnyítse ezt a mûveletet, egy "nyitott világ" jellegû keretet biztosít, amelyben bárki, bármelyik erõforrásról állításokat fogalmazhat meg.
Az RDF-ben általában nem feltételezzük, hogy bármelyik forrásról komplett információ áll rendelkezésre. Az RDF azt is megengedi, hogy képtelen, vagy inkonzisztens állításokat is megfogalmazzunk. Ezért nem árt, ha az RDF-et használó alkalmazások fejlesztõi tudatában vannak ennek, és úgy tervezik meg az alkalmazásaikat, hogy azok tolerálni tudják a nem komplett, és nem ellentmondás-mentes információforrásokat is.
Az RDF az alábbi fogalmakat használja:
Az RDF-ben bármilyen kifejezés alapstruktúrája olyan tripletek (egyszerû kijelentõ mondatok) gyûjteményébõl áll, amelyek mindegyike egy alanyt (subject), egy állítmányt (predicate) és egy tárgyat (object) tartalmaz. Az ilyen tripletek halmazát RDF gráfnak nevezzük (ezt formálisabban a 6. fejezet definiálja). Ez a gráf egy csomópont-és-irányított-él típusú diagrammal ábrázolható, amelyben minden tripletet egy csomópont-él-csomópont kapcsolat reprezentál (innen a "gráf" elnevezés).
Minden triplet egy kijelentést ábrázol, amely a két csomóponttal jelölt dolog közötti viszonyt írja le. Mint fentebb említettük, minden triplet az alább definiált három részbõl áll:
Az él iránya szignifikáns, és ennek mindig a tárgyra kell mutatnia.
Az RDF gráf csomópontjai a gráf alanyai és tárgyai.
Egy RDF triplet azt jelenti ki, hogy az alany és a tárgy által megjelölt dolgok között az állítmány által megfogalmazott viszony áll fenn. Egy RDF gráf állítástartalmát a gráfot alkotó tripletek állításainak összessége adja, vagyis egy RDF gráf jelentése nem más, mint a benne lévõ összes triplet által megfogalmazott kijelentés konjunkciója (logikai ÉS kapcsolata). Az RDF gráfok jelentésének formális definícióját az [RDF-SZEMANTIKA] fogalmazza meg.
Egy csomópont lehet egy URI egy opcionális erõforrásrész-azonosítóval (URI hivatkozás vagy URIref), lehet egy literál, vagy lehet egy üres csomópont (ez utóbbinak nincs külön azonosítási formája). A tulajdonságok (a gráf-élek) szintén lehetnek URI hivatkozások. (Az URI hivatkozási formákat a 4. fejezet [URI] szakasza mutatja be, megjegyezve, hogy relatív URI-ket nem használunk az RDF gráfban. Lásd a 6.4 szekciónál is.)
Egy URI hivatkozás, vagy egy literal, amelyet csomópontként használunk, annak a dolognak az azonosítója, amit a csomópont reprezentál. Egy olyan URI hivatkozás, amelyet állítmányként (tulajdonságként) használunk, annak a két dolognak a viszonyát azonosítja, amelyet összekapcsol. Egy állítmányként használt URI hivatkozás nemcsak élként, hanem csomópontként is elõfordulhat ugyanabban a gráfban [minthogy a tulajdonságokról, magukról, is tehetünk állításokat – a ford.].
Az üres csomópont egy olyan csomópont, mely nem URI hivatkozás, és nem is literál. Az RDF absztrakt szintaxisában az üres csomópont csak egy speciális segédcsomópont, amelyet egy vagy több RDF kifejezés használ, de amelynek nincs valódi neve.
Egyes lineáris RDF gráf ábrázolásoknál használnak egy névkonvenciót az olyan azonosítatlan erõforrások megnevezésére, amelyekre egynél több RDF kifejezés hivatkozik: ez az ürescsomópont-azonosító egy helyi név, mely megkülönböztethetõ minden URI-tõl és minden literáltól. Amikor gráfokat egyesítünk, azok üres csomópontjai továbbra is megkülönböztethetõk kell hogy maradjanak, ha az ilyen csomópontok jelentését meg kell õrizni; ehhez szükség lehet az azonosítójuk újra-allokálására. Jegyezzük meg azonban, hogy az ürescsomópont-azonosítók nem részei az RDF absztrakt szintaxisának, vagyis az ilyen csomópontokat tartalmazó tripletek ábrázolása teljes mértékben az alkalmazott konkrét szintaxistól függ.
Az RDF-ben adattípusokat használunk olyan értékek ábrázolására, mint egész számok, lebegõpontos számok és dátumok.
Egy adattípus egy lexikális térbõl, egy értéktértbõl, valamint egy lexikálisról értékre történõ leképezésbõl áll (lásd az 5. fejezetben).
Például: az xsd:boolean XML Séma adattípusnak a lexikálisról értékre történõ leképezése az alábbi (itt látható, hogy az értéktér értékeinek, amelyeket a T és az F (Igaz és Hamis) reprezentál, kétféle lexikális reprezentációja is van):
Értéktér | {T, F} |
---|---|
Lexikális tér | {"0", "1", "true", "false"} |
Leképezés lexikálisról, értékre | {<"true", T>, <"1", T>, <"0", F>, <"false", F>} |
Az RDF csupán egyetlen adattípust definiál elõre: az rdf:XMLLiteral-t, amelyet az XML RDF-be történõ beágyazása céljából használnak (lásd az 5.1 szekciót).
Az RDF-ben nincsenek olyan beépített fogalmak, mint pl. számok, dátumok, vagy más szokásos értékek. Ehelyett az RDF a rajta kívül definiált adattípusokra hagyatkozik, amelyeket URI hivatkozásokkal azonosít. Várható, hogy az XML Séma elõre definiált adattípusait [XML-SCHEMA2] széles körben használják majd RDF célokra is.
Maga az RDF nem rendelkezik ugyan új adattípusok definiálására alkalmas mechanizmussal, azonban az XML Séma [XML-SCHEMA2] biztosít egy megfelelõ bõvítési lehetõséget olyan új adattípusok definiálására, amelyeket az RDF-ben is használni lehet.
A literálokat olyan értékek azonosítására használjuk, mint pl. számok vagy dátumok. Az azonosítás az értékek lexikális ábrázolása útján történik. Bármit, amit literállal ábrázolhatunk, akár URI hivatkozással is ábrázolhatnánk, de gyakran célszerûbb és intuitívebb egy literál használata.
Egy literál lehet egy RDF állítás tárgya, de nem lehet az alanya, és nem lehet az állítmánya.
A literálok lehetnek típus nélküliek vagy tipizáltak :
lang
) kombinált karakterlánc. Ez
nyílt szövegként használható a megadott természetes nyelven. Amint azt az
RDF formális szemantikája [RDF-SZEMANTIKA] ajánlja, ezeknek a típus
nélküli literáloknak öndefiniálóknak kell lenniük.A 3.3 szekció példáját folytatva: azok a tipizált literálok, amelyeket az xsd:boolean XML Séma adattípus segítségével definiálhatunk, a következõképpen néznek ki:
Tipizált literál | Lexikálisról értékre történõ leképezés | Érték |
---|---|---|
<xsd:boolean, "true"> | <"true", T> | T |
<xsd:boolean, "1"> | <"1", T> | T |
<xsd:boolean, "false"> | <"false", F> | F |
<xsd:boolean, "0"> | <"0", F> | F |
Olyan szövegekben, amelyek jelöléseket (markup) tartalmazhatnak, rdf:XMLLiteral osztályú tipizált literálokat
használunk. Ha nyelvet kell rendelnünk a literálhoz, akkor azt explicit
jelölésként adjuk meg, tipikusan az xml:lang
attribútum
segítségével. Ezen az úton [XHTML] is beépíthetõ az
RDF-be, de ilyenkor néha egy további span
vagy div
elemre is szükség lehet, amelyben a lang
vagy
xml:lang
attribútumot el tudjuk helyezni.
Mind a tipizált, mind a típus nélküli literálok szövegének ajánlott karakterkódja a Unicode Normal Form C [NFC]. Ezt a döntést a [CHARMOD] motiválta, különösen annak 4. fejezete (Early Uniform Normalization).
Egy egyszerû tény valamilyen viszonyt fejez ki két dolog között. Egy ilyen tényt egy RDF triplettel fejezhetünk ki, amelyben az állítmány nevezi meg a viszonyt, az alany és a tárgy pedig a két dolgot, amelyre az állítmány vonatkozik. Egy ilyen tény ismerõs ábrázolása pl. egy relációs adatbázis két oszlopból álló táblázatának egyik sora, ahol a két oszlop egy RDF triplet alanyának és tárgyának, a táblázat neve a pedig a triplet állítmányának felel meg. További, hasonló tényábrázolási forma a bináris reláció vagy a kétváltozós predikátumfüggvény az elsõrendû logikában.
A relációs adatbázisok megengedik, hogy a táblázatuknak tetszõleges számú oszlopa legyen. A táblázat egy sora ebben az esetben olyan információt reprezentál, mely az elsõrendû logikában egy n-áris relációnak, vagy többváltozós predikátumfüggvénynek felel meg. Egy ilyen sort, vagy predikátumfüggvényt természetesen dekomponálni szükséges ahhoz, hogy RDF tripletekkel ábrázolhassuk. Ennek legegyszerûbb módja az, hogy bevezetünk egy új, üres csomópontot, mely a sornak felel meg, és egy-egy tripletet adunk meg a sor minden cellája számára. Ily módon minden triplet alanya megfelel az üres csomópontnak, az állítmánya a megfelelõ oszlop nevének, a tárgya pedig a cellában lévõ értéknek. Az üres csomópontnak lehetne egy rdf:type tulajdonsága is, mely a táblázat nevének felelne meg.
Példaképpen vizsgáljuk meg az [RDF-BEVEZETÉS] 6. ábráját:
Az így ábrázolt információ megfelelne mondjuk egy "ALKALMAZOTTAK CÍMEI" táblázat egyik sorának, ahol az elsõdleges kulcs az "ALKALMAZOTTAZONOSÍTÓ" (az ábrán: staffid), a további oszlopok pedig a VÁROS, az UTCA, az ÁLLAM és az IRÁNYÍTÓSZÁM (az ábrán: city, street, state és postalCode).
Láthatjuk tehát, hogy egy összetettebb tényt tudtunk ábrázolni az RDF-ben azáltal, hogy konjunkcióba (logikai ÉS kapcsolatba) hoztuk az egyszerû bináris viszonyokat. Megjegyzendõ azonban, hogy az RDF nem teszi lehetõvé a diszjunkció (VAGY kapcsolat) és a negáció (NEM) kifejezését.
Bõvíthetõ, URI alapú szókészleténél fogva az RDF lehetõvé teszi, hogy segítségével tényeket fogalmazzunk meg tetszõleges alanyokról; vagyis, hogy névvel azonosított tulajdonságot jelentsünk ki meghatározott, és szintén névvel azonosított dolgokról. Minthogy konstruálhatunk URI alapú azonosítót bármilyen megnevezhetõ dolog számára, ezért az RDF-ben minden elképzelhetõ dologról megfogalmazhatunk tényállításokat.
A jelentésrõl és a következtetésrõl alkotott elképzeléseket az RDF-ben a következmény formális koncepciója támasztja alá, amelyet az [RDF-SZEMANTIKA] kimerítõen ismertet. Ennek lényege röviden: egy A RDF kifejezésnek akkor, és csak akkor következménye egy B RDF kifejezés, ha a világ dolgainak minden lehetséges elrendezése, mely igazzá teszi A-t, egyben igazzá teszi B-t is. Ezen az alapon, ha A igaz volta belátható vagy bizonyítható, akkor ebbõl B igazsága következik.
Az RDF URI hivatkozásokat használ az erõforrások és tulajdonságok azonosítására. Egyes URI hivatkozásoknak speciális jelentést tulajdonít az RDF. Például az alábbi karakterlánccal kezdõdõ URI hivatkozásokat az RDF specifikáció definiálja:
Ha ezt az URI elõtét-karakterláncot az RDF/XML szerializációban használjuk, az mindig olyan XML névtér-neveknek [XML-NS] felel meg, amelyek az RDF szókészlet kifejezéseihez asszociálódnak.
Megjegyzés: Ez a névtér-név ugyanaz, mint amelyet a korábbi RDF ajánlásban [RDF-MS] használtak.
Az rdf: névtérben lévõ szókészlet kifejezéseit
az RDF szintaxis-specifikáció [RDF-SZNTAXIS] 5.1
szekciója sorolja fel. Az RDF specifikációk e kifejezések közül néhányat
specifikus RDF fogalmak megnevezésére definiáltak, míg mások szintaktikai
célokat szolgálnak (pl. az rdf:ID
az RDF/XML szintaxis
része).
Az RDF-ben használt adattípus-absztrakció kompatibilis az XML Séma 2. részének [XML-SCHEMA2] adattípusainál használt absztrakcióval.
Egy adattípus egy lexikális térbõl, egy értéktérbõl, és egy lexikálisról értékre történõ leképezésbõl áll.
Egy adattípus lexikális tere Unicode [UNICODE] karakterláncok halmaza.
Egy adattípus lexikálisról értékre történõ leképezése olyan párok halmaza, amelyek elsõ eleme az adattípus lexikális teréhez, a második pedig az értékteréhez tartozik:
Egy adattípus azonosítható egy vagy több URI hivatkozással.
Az RDF jól mûködik bármilyen adattípus-definícióval, amely megfelel ennek az absztrakciónak, akkor is, ha azt nem az XML Séma szerint definiálták.
Az XML Séma néhány beépített adattípusa viszont nem alkalmas az RDF-ben (adatként) történõ használatra. Például a QName (minõsített név) adattípus elvárja, hogy a névtérdeklaráció szkópban legyen (azaz a QName adattípust használó kontextus látókörén belül legyen) a leképezés során, ezért a használata nem ajánlott az RDF-ben. Az [RDF-SZEMANTIKA] az XML Séma specifikus beépített adattípusainak részletesebb kifejtését tartalmazza.
Megjegyzés: Amikor egy adattípust az XML Séma segítségével deklarálunk:
union
adattípus, olyan lexikális leképezéssel,
amelyik a union
-t alkotó adattípusok egyikéhez
asszociálódik.whiteSpace
adattípus módosító elem értékének megfelelõen. Az RDF
adattipizálásánál használt, lexikálisról értékre történõ leképezés csak
ez után történik meg, s így a whiteSpace
adattípus módosító
elem már nincs hatással az RDF adattipizálására.Az RDF lehetõvé teszi XML tartalom beépítését egy megfelelõ literális érték formájában. Ezt a lehetõséget tipikusan az RDF/XML szintaxis [RDF-SZNTAXIS] rdf:parseType="Literal" konstrukciójának a használata teremti meg.
Az efféle tartalmat úgy jelöljük az RDF gráfban, hogy egy olyan tipizált literált használunk, amelynek az adattípusa egy speciális, beépített adattípus, az rdf:XMLLiteral, amely a következõképpen van definiálva:
Megjegyzés: Ennek az adattípusnak nem minden értéke felel meg az [XML 1.1] szabványnak. Ha egy ilyen megfelelés kívánatos, akkor csak azok az értékek használhatók, amelyek teljesen normalizáltak az XML 1.1 szabályai szerint.
Megjegyzés: Itt az XML értékek halmaza úgy képzelhetõ el, mint az [XML-INFOSET] halmaz, vagy az [XPATH] csomópont-halmaz, amelyet egy megfelelõ egyenlõségi függvénnyel megfeleltetünk a lexikális formának.
Megjegyzés: Az RDF alkalmazások
használhatnak további egyenértékûségi relációkat is, pl. olyanokat, amelyek
egy xsd:string
adattípust egy rdf:XMLLiteral
adattípusnak feleltetnek meg,
amelynek eredménye az adott karakterlánccal azonos egyetlen szövegcsomópont
lesz.
Ez a fejezet az RDF absztrakt szintaxisát definiálja, mely lényegében tripletek egy halmaza, amelyet RDF gráfnak nevezünk.
Ez a fejezet, egyebek mellett, az RDF gráfok közötti egyenértékûséget is definiálja. Az egyenértékûség definíciója az RDF tesztsorozat [RDF-TESZTEK] specifikációjának támogatásához szükséges.
Implementációs megjegyzés: Ez az absztrakt szintaxis egy olyan szintaxis, amelyen keresztül a formális szemantikát definiáljuk. Az implementációk ábrázolhatják a gráfokat bármilyen más, ezzel egyenértékû formában is. Például: egy RDF gráfban az rdf:XMLLiteral típusú literálok ábrázolhatók nem kanonikus formátumban is, mely esetben a kanonikussá alakítás két ilyen literál összehasonlítása során történik meg. Ez az összehasonlítás végrehajtható akár a szintaktikai struktúrák között, akár az adott tématerületen belüli elnevezéseik között. Azok az implementációk, amelyek semmi efféle összehasonlítást nem igényelnek, ezen az alapon jól optimalizálhatók.
Egy RDF triplet három komponensbõl áll:
Az RDF tripletet konvencionálisan alany, állítmány, tárgy sorrendben írjuk.
Az állítmányt a triplet tulajdonságának is nevezzük.
Az RDF gráf tripletek egy halmaza.
Egy RDF gráf csomópontjainak halmazát a gráf tripletjeinek alanyai és tárgyai alkotják.
Két RDF gráf, G és G', akkor egyenértékû, ha egy olyan, M bijektív leképezés áll fenn a két gráf csomópontjainak halmazai között, ahol:
Ebben a definícióban az M bijektív leképezés megmutatja, hogy hogyan lehet a G-ben lévõ minden egyes üres csomópontot helyettesíteni egy új üres csomóponttal, hogy G'-t kapjuk eredményül.
Az RDF gráfban egy URI hivatkozás (amelyet RDF URI hivatkozásnak nevezünk), egy olyan [UNICODE] karakterlánc, amely:
a kódolás:
Az ilyen tiltott és átugrott karakterek közé tartoznak az US-ASCII karakterkészlethez nem tartozó, tiltott karakterek mellett azok a kihagyandó karakterek is, amelyeket az [URI] dokumentum 2.4 szekciója felsorol, kivéve a (#) és (%) karaktereket, valamint a szögletes zárójel karaktereket, amelyeket újraengedélyezett az [RFC-2732].
A nem engedélyezett oktetteket az URI karakter átugró mechanizmusával kell kódolni, ami úgy történik, hogy ezeket %HH formára konvertáljuk, ahol HH az oktett értékének megfelelõ kétjegyû hexadecimális szám.
Két RDF URI hivatkozás akkor, és csak akkor egyenlõ, ha Unicode karakterláncként, karakterrõl karakterre összehasonlítva egyenlõeknek bizonyulnak.
Megjegyzés: Az RDF URI hivatkozásai kompatibilisek az anyURI adattípussal, ahogyan azt az XML schema adattípus [XML-SCHEMA2] definiálja, de a helyi hivatkozások helyett az abszolút URI hivatkozásokra korlátozva.
Megjegyzés: Az RDF URI hivatkozások kompatibilisek a Nemzetköziesített forrásazonosítóval (Internationalized Resource Identifier, vagy IRI) amelyet az XML névterek specifikációja, az [XML Namespaces 1.1] definiál.
Megjegyzés: Ez a szekció egy majdani RFC-t anticipál a Nemzetköziesített forrásazonosítóról. Az RDF implementációk figyelmeztetõ üzeneteket írhatnak ki az olyan RDF URI hivatkozások használata esetén, amelyek nem felelnek meg az IRI tervezetnek [IRI draft], vagy e tervezet késõbbi utódjainak.
Megjegyzés: Az abszolút URI hivatkozásokra történõ korlátozás megtalálható az RDF absztrakt szintaxisában. Amikor már létezik egy jól definiált bázis-URI, akkor az olyan konkrét szintaxisok, mint az RDF/XML, engedélyezhetik a relatív URI-k használatát az abszolút URI hivatkozások rövidítéseiként.
Megjegyzés: Mivel fennáll az összetévesztés kockázata két olyan RDF URI, esetén, amelyik konkrét forrásra történõ hivatkozás (dereferencing) esetén egyenértékûnek bizonyulna, a %-jellel átugratott karakterkódok használata erõsen ellenjavallt. (Lásd ehhez az URI-k egyenértékûségének problémakörét (URI equivalence issue), amelyet a Mûszaki Architektúra Csoport (Technical Architecture Group [TAG]) kezel.
Egy RDF gráfban egy literál egy vagy két nevesített komponenst tartalmaz.
Minden literálnak van egy lexikális formája, mely egy [UNICODE] karakterlánc, Normal Form C [NFC] kódolással.
A típus nélküli literáloknak van egy lexikális formájuk és egy opcionális nyelv tegjük, ahogyan azt az [RFC-3066] ajánlja, és amelyet kisbetûkre normalizálunk.
A tipizált literáloknak van egy lexikális formájuk, és egy adattípus URI-jük, mely egy RDF URI hivatkozás.
Megjegyzés: Használhatók az olyan literálok is, amelyek lexikális formája egy összetett karakterrel [pl. C-Cedilla] kezdõdik (ahogyan azt a [CHARMOD] szabályozza), ezek azonban együttmûködési problémákhoz vezethetnek, különösen az [XML 1.1] szabványt követõ XML alkalmazásokkal történõ adatcsere esetén.
Megjegyzés: Amikor a nyelv-teget használjuk, ügyelnünk kell arra, hogy ne tévesszük össze a "nyelv" fogalmát a "helyi konvenciók" (locale) fogalmával. A nyelv-teg kizárólag a természetes nyelvû szövegre vonatkozik. Megjelenítési kérdésekkel csak a végfelhasználói alkalmazásokban szükséges foglalkozni.
Megjegyzés: A nyelv-tegek kisbetû/nagybetû normalizációja azonban már része az absztrakt szintaxis leírásának, és ezáltal az RDF alkalmazások absztrakt viselkedésének is. Lényeges tehát, hogy bármely két nyelv-teg összehasonlítása se legyen érzékeny az eredeti input kisbetû/nagybetû különbségeire.
Két literál akkor, és csak akkor egyenlõ, ha velük kapcsolatban az alábbi állítások hiánytalanul igazak:
Megjegyzés: Az RDF literálok különböznek, és megkülönböztethetõk az URI hivatkozásoktól; például: a http://example.org mint (típus és nyelv teg nélküli) RDF Literal nem egyenlõ a http://example.org-gal mint RDF URI hivatkozással.
Az adattípus URI-k adattípusokra hivatkoznak. Az XML Séma beépített adattípusaira olyan URI-kkel hivatkozunk, mint pl: http://www.w3.org/2001/XMLSchema#int. Az rdf:XMLLiteral adattípus URI-je szintén használható adattípusként. Használhatók még egyéb, implementációtól függõ mechanizmusok is, amelyekben szintén URI-k hivatkoznak adattípusokra.
A tipizált literál értékét úgy kapjuk meg, hogy a literál lexikális formájára alkalmazzuk az adattípusának URI-jéhez asszociált, lexikálisról értékre történõ leképezést.
Ha a lexikális forma nincs benne annak az adattípusnak a lexikális terében, amelyre a literál adattípus URI-je hivatkozik, akkor nem kapcsolható érték a tipizált literálhoz. Noha ez egy hiba, ilyen esetben mégsem beszélünk szintaktikailag rosszul formált dokumentumról.
Megjegyzés: Alkalmazási környezetben a tipizált literálok értékének összehasonlítása (lásd a 6.5.2 szekciónál) általában célravezetõbb, mint a szintaktikai formájuk összehasonlítása (lásd a 6.5.1 szekciónál). Ugyanígy, az RDF gráfok összehasonlításánál, azok szemantikai következményeinek összehasonlítása (lásd [RDF-SZEMANTIKA]) többnyire célravezetõbb, mint a szintaktikai egyenlõségük kimutatása (lásd a 6.3 szekciónál).
Egy RDF gráfban az üres csomópontokat egy végtelen halmazból nyerjük. Az üres csomópontoknak ez a halmaza, továbbá az összes RDF URI hivatkozás halmaza, valamint az összes literál halmaza páronként diszjunkt halmazokat alkotnak.
Egyéb tekintetben az üres csomópontoknak ez a halmaza tetszõleges.
Az RDF nem hivatkozik az üres csomópontok semmilyen belsõ struktúrájára. Két üres csomópontról mindig eldönthetõ, hogy azonosak-e, vagy sem.
Az RDF olyan RDF URI hivatkozást használ, mely egy erõforrás kontextusfüggetlen azonosítójaként magában foglalhat egy erõforrásrész-azonosítót. Ugyanakkor az RFC 2396 [URI] kimondja, hogy egy okumentumrész-azonosító jelentése a dokumentum MIME tartalomtípusától függ, vagyis kontextusfüggõ.
Ezek az ellentmondónak tûnõ nézetek kibékíthetõk, ha meggondoljuk, hogy egy RDF gráfban szereplõ URI hivatkozást az application/rdf+xml MIME típus szerint kezelünk [RDF-MIME-TYPE]. Ha tehát adott egy RDF URI hivatkozás, mely egy abszolút URI-bõl és egy erõforrásrész-azonosítóból áll, akkor az erõforrásrész-azonosító ugyanazt a dolgot azonosítja, mint amit az az abszolút URI komponens, mely egy application/rdf+xml ábrázolású erõforrásra mutat. Így tehát:
Ez lehetõvé teszi, hogy oly módon használjuk az URI hivatkozásokat, és ezek jelentéseit, hogy az megfeleljen az RDF modell-elméletének és alkalmazásának, de megfeleljen a Web hagyományos viselkedésének is. Jegyezzük meg tehát, hogy az RDF (mint nyelv) szempontjából nem követelmény az, hogy egy RDF alkalmazás konkrétan el is tudja érni a gráfjában szereplõ URI hivatkozásokkal azonosított erõforrások bármilyen reprezentációját.
Ez a dokumentum Pat Hayes, Sergey Melnik és Patrick Stickler jelentõs hozzájárulásával készült. Az õ irányításukkal fejlesztették ki azt a keretet, amelyet az olyan adattípusokról szóló RDF specifikációcsalád ír le, mint az egész számok és a dátumok.
A szerkesztõk köszönetet mondanak az értékes hozzájárulásukért az alábbi munkatársaknak: Frank Manola, Pat Hayes, Dan Brickley, Jos de Roo, Dave Beckett, Patrick Stickler, Peter F. Patel-Schneider, Jerome Euzenat, Massimo Marchiori, Tim Berners-Lee, Dave Reynolds és Dan Connolly.
Jeremy Carroll ezúton szeretné köszönetét kifejezni Oreste Signore úrnak, aki vendéglátója volt a W3C Olasz Irodájánál, valamint az Allessandro Fedo Információtudományi és Információtechnológiai Intézetnél (Istituto di Scienza e Tecnologie dell'Informazione "Alessandro Faedo"), mely az olasz nemzeti kutatási tanács (Consiglio Nazionale delle Ricerche) része, és ahol Jeremy vendégkutatóként dolgozik.
Ez a dokumentum az RDF Mag Munkacsoport bölcs és kitartó együttgondolkodásának eredménye. E csoport tagjai: Art Barstow (W3C), Dave Beckett (ILRT), Dan Brickley (ILRT), Dan Connolly (W3C), Jeremy Carroll (Hewlett Packard), Ron Daniel (Interwoven Inc), Bill dehOra (InterX), Jos De Roo (AGFA), Jan Grant (ILRT), Graham Klyne (Nine by Nine), Frank Manola (MITRE Corporation), Brian McBride (Hewlett Packard), Eric Miller (W3C), Stephen Petschulat (IBM), Patrick Stickler (Nokia), Aaron Swartz (HWG), Mike Dean (BBN Technologies / Verizon), R. V. Guha (Alpiri Inc), Pat Hayes (IHMC), Sergey Melnik (Stanford University) és Martyn Horner (Profium Ltd).
Ez a specifikáció épít továbbá egy korábbi RDF modell és szintaxis dokumentumra, amelyet Ora Lassilla és Ralph Swick szerkesztettek, valamint egy RDF séma dokumentumra is, amelynek a szerkesztõi Dan Brickley és R. V. Guha voltak. Azok az RDF és RDF Séma Munkacsoport-tagok, akik rész vettek ezeknek a korábbi dokumentumoknak a kidolgozásában, a következõk: Nick Arnett (Verity), Tim Berners-Lee (W3C), Tim Bray (Textuality), Dan Brickley (ILRT / University of Bristol), Walter Chang (Adobe), Sailesh Chutani (Oracle), Dan Connolly (W3C), Ron Daniel (DATAFUSION), Charles Frankston (Microsoft), Patrick Gannon (CommerceNet), R. V. Guha (Epinions, previously of Netscape Communications), Tom Hill (Apple Computer), Arthur van Hoff (Marimba), Renato Iannella (DSTC), Sandeep Jain (Oracle), Kevin Jones, (InterMind), Emiko Kezuka (Digital Vision Laboratories), Joe Lapp (webMethods Inc.), Ora Lassila (Nokia Research Center), Andrew Layman (Microsoft), Ralph LeVan (OCLC), John McCarthy (Lawrence Berkeley National Laboratory), Chris McConnell (Microsoft), Murray Maloney (Grif), Michael Mealling (Network Solutions), Norbert Mikula (DataChannel), Eric Miller (OCLC), Jim Miller (W3C, emeritus), Frank Olken (Lawrence Berkeley National Laboratory), Jean Paoli (Microsoft), Sri Raghavan (Digital/Compaq), Lisa Rein (webMethods Inc.), Paul Resnick (University of Michigan), Bill Roberts (KnowledgeCite), i Tsuyoshi Sakata (Digital Vision Laboratories), Bob Schloss (IBM), Leon Shklar (Pencom Web Works), David Singer (IBM), Wei (William) Song (SISU), Neel Sundaresan (IBM), Ralph Swick (W3C), Naohiko Uramoto (IBM), Charles Wicksteed (Reuters Ltd.), Misha Wolf (Reuters Ltd.) és Lauren Wood (SoftQuad).
application/rdf+xml
is archived at
http://www.w3.org/2001/sw/RDFCore/mediatype-registration .Nem voltak lényeges változtatások.
Az alábbi szerkesztõi változtatásokat hajtották végre az anyagon: