Top Banner
UNIVERZA V MARIBORU FAKULTETA ZA ORGANIZACIJSKE VEDE SEMINARSKA NALOGA PRI PREDMETU: PROJEKT IZGRADNJE INFORMACIJSKEGA SISTEMA IZMENJAVA PODATKOV MED SOCIALNIMI OMREŽJI Mentor: Dr. Vladislav Rajkovič Asistent: Mag. Uroš Rajkovič Avtorji: Petra Movh (41052158) Boštjan Lukša (41052107) Grega Lebar (41052089) Kraj in datum: Kranj, 21.4.2008
27
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Seminarska naloga PIIS

UNIVERZA V MARIBORU

FAKULTETA ZA ORGANIZACIJSKE VEDE

SEMINARSKA NALOGA PRI PREDMETU:

PROJEKT IZGRADNJE INFORMACIJSKEGA SISTEMA

IZMENJAVA PODATKOV MED SOCIALNIMI OMREŽJI

Mentor: Dr. Vladislav Rajkovič

Asistent: Mag. Uroš Rajkovič

Avtorji: Petra Movh (41052158)

Boštjan Lukša (41052107) Grega Lebar (41052089)

Kraj in datum: Kranj, 21.4.2008

Page 2: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

1

Kazalo

1. Uvod ...............................................................................................................................3

1.1. Obstoječe strani ................................................................................................................3

1.2. Povezave med uporabniki socialnih omrežij ......................................................................4

1.3. Končni problem .................................................................................................................5

1.4. Namen in cilj ......................................................................................................................5

2. Standardi ........................................................................................................................6

2.1. RDF – Resource Description Framework / Okvir za opis virov ...........................................6 2.1.1. Primer RDF zapisa v N3............................................................................................................... 6 2.1.2. Primer RDF zapisa v RDF/XML: ................................................................................................... 7

2.2. RSS.....................................................................................................................................7 2.2.1. Struktura RSS ............................................................................................................................. 7 2.2.2. Primer strukture RSS 2.0 dokumenta .......................................................................................... 9

2.3. ATOM .............................................................................................................................. 10 2.3.1. Glavne razlike med RSS ter ATOM ............................................................................................ 10 2.3.2. Primer Atom strukture ............................................................................................................. 12

2.4. FOAF / Friend of a Friend ................................................................................................. 12 2.4.1. Primer FOAF sintakse ............................................................................................................... 12 2.4.2. FOAF termini, združeni v široke kategorije ................................................................................ 13

2.5. Mikroformati ................................................................................................................... 15 2.5.1. XFN – Xhtml Friends Network ................................................................................................... 15 2.5.2. hCalendar ................................................................................................................................ 16 2.5.3. hCard ....................................................................................................................................... 17

2.6. SyncML / Synchronization Markup Language .................................................................. 18

3. Rešitev ..........................................................................................................................19

3.1. Grafični vmesnik .............................................................................................................. 22

4. Zaključki .......................................................................................................................24

5. Viri ................................................................................................................................26

Page 3: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

2

Povzetek S hitrim razvojem interneta, ki ga v zadnjih letih imenujemo tudi Web 2.0, se je spremenil naš način komuniciranja. Uporabo elektronske pošte in ostalih medijev sporočanja nadomeščajo socialna omrežja, preko katerih vzdržujemo kontakte in delimo naše zasebno življenje z družino, prijatelji, sošolci in ostalimi interesnimi skupinami. Hkrati s socialnimi omrežji je na spletu vedno več spletnih strani z uporabniško generiranimi vsebinami, kot so fotografije, videi, blogi in podobno. Sinonim za to so popularne spletne strani, kot npr. YouTube, Flickr, Blogger in podobne. Socialna omrežja tako postajajo glavne destinacije uporabnikov spleta, kjer lahko najdemo veliko število podatkov, od povsem javnih do zasebnih. Veliko število socialnih omrežij, ki med seboj večinoma niso povezana, vzrokuje veliki razdrobljenosti teh podatkov, predvsem pa le-ti niso prenosljivi. Zastavlja se vprašanje, kdo je v resnici lastnik posameznikov osebnih podatkov, kdo ima pravico z njimi upravljati, odločati o njihovi zasebnosti in jih prenašati. Tovrstnim potrebam po prenosljivosti podatkov sledijo različne neodvisne organizacije, ki definirajo nove standarde. S tem omogočajo ustvarjanje socialnega grafa, ki ni več omejen le na eno socialno omrežje, ampak skupaj z ostalimi tvori celoto posameznikove identitete. Ključne besede: socialna omrežja, prenosljivost podatkov, zasebnost, socialni graf, Web 2.0

Summary Fast evolution of the Internet, lately called Web 2.0, is changing the way we communicate. Email and other communication media are being replaced by social networks, which allow us to keep in touch and share our life with family, friends, colleagues and interest groups. At the same time, web is increasingly being used for publishing user generated content like photos, video, blogs etc. YouTube, Flickr, Blogger and others are synonyms for this development. Social networks are becoming the main destination, where users can find a lot of public and private information. Growing number of social networks, which are mostly not connected with each other, are causing our data to be fragmented and non-portable. The raising question is who owns our data, who has the right to manage it, decide about the privacy and portability. These needs are being addressed by independent organizations, which define new and open standards. This standards are the basics for creating the social graph, which isn't limited only to one social network anymore, but connects with others and merges all the users web profiles into one whole identity. Keywords: social networks, data portability, privacy, social graph, Web 2.0

Page 4: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

3

1. Uvod V zadnjih letih smo priča izjemno hitremu razvoju spleta, ki mu radi dajemo oznako “Web 2.0”. Sinonim za Web 2.0 so socialna omrežja kot npr. MySpace in Facebook ter portali z uporabniško generiranimi vsebinami kot npr. YouTube. Socialna omrežja so postala nov kanal komunikacije, ki ni več enosmerna, tako kot v preteklosti, ampak ustvarja in širi dialoge. Preko socialnih omrežij ohranjamo stike z znanci in prijatelji, spoznavamo nove ljudi, se vključujemo v skupine s podobnimi interesi in gradimo svojo spletno prisotnost. Povsem običajno je, da imajo aktivni uporabniki spleta več spletnih profilov, ki so namenjeni pisanju spletnih dnevnikov (blogov), objavljanju fotografij, glasbe, videa, komuniciranju s sodelavci, prijatelji, družino... Z našo dejavnostjo na spletu nevede ustvarjamo t. i. socialni graf, ki povezuje vse naše spletne profile in ustvarja celoto ter nas na ta način povezuje z ostalimi. Pomen socialnega omrežja in socialnega grafa se večkrat zamenjuje, zato velja omeniti, da socialno omrežje posameznika predstavljajo ljudje, ki jih le-ta pozna, socialni graf pa širše predstavlja vse ljudi, s katerimi je posameznik povezan glede na svoje interese, lokacijo, delo ... Razvoj socialnih omrežij je v zadnjem letu prešel iz zgodnje v zrelejšo fazo, kar kaže predvsem pojav ožje usmerjenih socialnih omrežij, ki pokrivajo le eno nišo. Na področju glasbe je med najbolj poznanimi Last.fm, na področju poslovne komunikacije LinekdIn itd.

1.1. Obstoječe strani Dnevno nastane več kot 1000 novih socialnih omrežij, zato je nemogoče natančneje določiti njihovo število. Razvoj novih tehnologij in spletnih orodij sedaj posameznikom omogoča kreiranje lastnih socialnih omrežij, za kar ne potrebujejo skoraj nobene tehnične podlage. Primer takega spletnega orodja je Ning (www.ning.com). Priljubljenost socialnih omrežij je močno povezana z demografijo. Tako je moč opaziti, da v Severni Ameriki dominirata MySpace in Facebook, v Južni Ameriki Orkut, zahodna Evropa precej uporablja Bebo in Hi5 ... Spodnji sliki prikazujeta rast obiskanosti največjih socialnih omrežij in delež obiskovalcev v različnih delih sveta:

Slika: Rast obiskanosti socialnih omrežij, primerjava junij 2006 in 2007; vir comScore

Page 5: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

4

Slika: Demografija obiskovalcev največjih socialnih omrežij

Raziskava Uporaba spletnih socialnih omrežij v Sloveniji, ki sta jo v februarju in marcu 2008 izvedli podjetji Httpool in Valicon, je pokazala, da je 26 % slovenskih uporabnikov interneta vključenih v vsaj eno socialno omrežje. Med socialnimi omrežji je najbolj poznan MySpace (60 %), sledita Facebook (37 %) in Hi5 (27 %). Uporabniki v okviru spletnih omrežij najpogosteje pošiljajo sporočila in si dopisujejo, ohranjajo prijateljstva ter si urejajo svoj osebni profil.

1.2. Povezave med uporabniki socialnih omrežij Hiter razvoj socialnih omrežij je povzročil potrebo po standardih, s katerimi bi lahko definirali relacije med ljudmi. Žal ti standardi niso bili dovolj hitro definirani, zato je vsako socialno omrežje uporabilo svoj način, s katerim so reševali te probleme. Pomanjkanje standardov in njihove uporabe pa ni edini razlog za množico podatkov, do katerih je težko dostopati in jih izmenjevati med seboj. Socialnim omrežjem namreč relacije njihovih uporabnikov predstavljajo največjo vrednost, saj na njihovi podlagi prikazujejo ciljano vsebino in oglase, ki so zaenkrat edini enostaven način monetizacije. Na začetku je večina socialnih omrežij poznala le eno osnovno relacijo in sicer “je prijatelj”. Sčasoma se je izkazalo, da je ta oznaka preveč splošna, saj ne definira točne relacije preko katere bi lahko vedeli ali se dve osebi poznata v živo, preko spleta, sta sošolca, prijatelja, sorodnika, poslovna partnerja ... Te relacije vzporedno vplivajo tudi na osebne podatke, do katerih lahko dostopajo ostali uporabniki, kar avtomatsko ustvarja več nivojev zasebnosti. Logično je, da sorodnikom in prijateljem lažje zaupamo osebne podatke, kot pa naključnim posameznikom. Praksa socialnih omrežij je, da ljudem, ki jih dodamo med svoje prijatelje, omogočimo vpogled tako do naših podatkov, kot tudi do naše socialne mreže, torej ljudi, ki jih poznamo. Na ta način prihaja do stalnih dilem, kako ohraniti zasebnost svojih podatkov ali svoje socialne mreže, če isto omrežje uporabljajo tako sorodniki, prijatelji, kot tudi poslovni partnerji, s katerimi bi želeli deliti le del naše zasebnosti. Socialna omrežja zaenkrat še niso poenotila označevanja relacij vendar je opaziti trend povečane uporabe standardov XFN in FOAF, ki se najhitreje širijo v odprtokodnih rešitvah.

Page 6: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

5

1.3. Končni problem V času, ko je vedno več storitev mogoče opraviti preko spleta, je zasebnost postala bistven del človekove prisotnosti na spletu, saj ima zloraba le-te lahko hude posledice. Vedno več je primerov kraje identitete, predvsem v Ameriki, počasi pa se tovrstni primeri širijo tudi v Evropo. Jasno je, da potrebujemo nove rešitve, ki bodo sledile razvoju spleta in odgovorile zahtevam uporabnikov. Razvoj socialnih omrežij je pripeljal do vedno glasnejših zahtev po standardizaciji izmenjave podatkov med omrežji. Problem je predvsem praktične narave, saj moramo za vstop v socialno omrežje vsakič izvesti podobno zaporedje aktivnosti, kot je npr. registracija, izpolnjevanje profila, iskanje prijateljev in dodajanje le-teh. Brez izmenjave podatkov je vsako socialno omrežje samostojna celota, ki si lasti našo socialno mrežo in podatke. Po našem mnenju je to nesprejemljivo, saj so naši podatki, relacije, socialna mreža in graf naša last, torej bi nam moralo biti omogočeno z njo narediti karkoli, torej tudi prenašati, dopolnjevati in na splošno upravljati.

1.4. Namen in cilj Cilje bi lahko razdelili na splošne, tiste, ki so naravnani na razvijalce in tiste, ki so naravnani na končne uporabnike. V naši projektni nalogi se bomo usmerili predvsem na cilje, ki se dotikajo končnih uporabnikov, ostale pa bomo zanemarili. Ti cilji so:

1. Uporabnik bi moral imeti možnost prve prijave v socialno omrežje (npr. Facebook.com), z uporabo OpenID računa ali sorodne Single Sign-On rešitve, ter dobiti sporočilo podobno naslednjemu:

“Pozdravljeni, iz javno dostopnih podatkov na spletu smo ugotovili, da je v omrežju Facebook.com že 24 vaših prijateljev. Oglejte si jih v spodnjem seznamu, skupaj z razlago logike po kateri smo jih našli in vam jih predlagamo. Za dodajanje med prijatelje jih označite ali enostavno izberite dodajanje vseh.”

Smiselno nadaljevanje bi bilo, da sistem opozori uporabnika, ko se omrežju pridruži prijatelj, s katerim sta povezana že na kakem drugem omrežju in mu na enostaven način omogoči dodajanje ter sinhronizacijo njunih podatkov.

2. Uporabniška orodja (na primer dodatek za brskalnik), ki bi uporabnikom

omogočala upravljanje njihove socialne mreže (s pomočjo APIjev ali sorodnih rešitev), tako da bi socialna omrežja med seboj sinhronizirala nove ali spremenjene podatke in omogočala kakršnokoli drugo aktivnost, ki jo uporabnik želi izvesti. Pomemben dejavnik je seveda način, kako se to zgodi, kakšni so varnostni mehanizmi ipd.

3. Omogočiti prenosljivost socialnega grafa na enak način, kot je to mogoče početi z

dokumenti na osebnem računalniku.

Page 7: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

6

V okviru naše projektne naloge bi radi pokazali primer uporabe že obstoječih standardov skupaj z nastajajočimi ter pokazali del možne rešitve, ki bi pripomogla k bolj enostavni izmenjavi podatkov med socialnimi omrežji.

2. Standardi To poglavje je namenjeno pregledu obstoječih standardov, ter standardov v uvajanju, ki pa so prav tako (oz. še najbolj) relevantni za rešitev našega problema.

2.1. RDF – Resource Description Framework / Okvir za opis virov RDF je infrastruktura (družina specifikacij W3C), ki omogoča zapisovanje, izmenjavo in uporabo strukturiranih metapodatkov v omrežnem okolju e-virov s pomočjo več sintaktičnih formatov. RDF metapodatkovni model temelji na ideji opisa spletnih virov v obliki t.i. trojčkov – predmet-predikat-objekt – je metoda dekompozicije znanja v majhne kose z nekaj semantičnimi pravili oz. pomenom teh kosov. Besedo „metoda“ uporabljamo namesto „format“ namenoma, ker samo formatiranje zapisa ob upoštevanju pravil še vedno ohrani svojo smiselno obliko oz. Sporočilo. V nekaj pogledih lahko RDF primerjamo z XML. XML je načrtovan tako, da je preprost ter uporaben za kateri koli tip podatkov. Tudi XML je več kot le podatkovni format, je osnova za delo s hierarhičnimi, neodvisnimi dokumenti. Kar loči RDF od XML je, da je RDF zasnovan, da predstavlja informacije v distribuiranem svetu. To pomeni, da se predvsem ukvarja s pomenom podatkov in ne le s podatki samimi. Vse, kar je v RDF kjerkoli omenjeno, ima nek pomen, naj bo to abstraktni pojem ali dejstvo. Standardi, zgrajeni na RDF opisujejo logične sklepe med dejstvi in tem kako iskati za dejstvi v veliki bazi podatkov RDF znanja. V uporabi sta dva glavna načina oz. formata zapisa podatkov v RDF – s pomočjo XML (Extensive Markup Language) formata ter Notation 3 (oz. N3). Formata delujeta po enakem abstrakcijskem modelu, razlikujeta se le v eni stvari – berljivosti.

2.1.1. Primer RDF zapisa v N3 @prefix : <http://www.example.org/> .

:john a :Person .

:john :hasMother :susan .

:john :hasFather :richard .

:richard :hasBrother :luke .

Page 8: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

7

2.1.2. Primer RDF zapisa v RDF/XML: <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:ns="http://www.example.org/#">

<ns:Person rdf:about="http://www.example.org/#john">

<ns:hasMother rdf:resource="http://www.example.org/#susan" />

<ns:hasFather>

<rdf:Description rdf:about="http://www.example.org/#richard">

<ns:hasBrother rdf:resource="http://www.example.org/#luke" />

</rdf:Description>

</ns:hasFather>

</ns:Person>

</rdf:RDF>

2.2. RSS RSS je družina XML datotečnih oblik za spletno zlaganje (angl. web syndication) oz. objavljanje pogosto spreminjajoče se vsebine (vsebina blogov, novic, podcastov...) RSS dokument se podaja v obliki XML kot datoteka, ki jo imenujemo RSS-vir (angl. RSS feed), RSS-tok (angl. RSS stream), oziroma RSS-kanal (angl. RSS channel). Vsebino je možno brati z RSS-bralniki (RSS-reader, feed-reader) oz. agregatorji. Okrajšava RSS se uporablja za sledeče standarde:

4. Rich Site Summary (RSS 0.91; slo: Zgoščeni povzetek strani) 5. RDF Site Summary (RSS 0.90 in 1.0; slo: Povzetek strani po standardem okviru za

opis virov) 6. Really Simple Syndication (RSS 2.x; slo: Zares preprosto zlaganje)

RSS je dialekt XML-ja in kot tak se mora skladati z XML 1.0 specifikacijami

2.2.1. Struktura RSS Vsak RSS dokument mora vsebovati sledeče elemente:

title – Ime RSS-vira link – URL do HTML strani dotičnega vira description – Fraza ali stavek, ki opisuje vir.

Poleg zahtevanih elementov RSS viri lahko neobvezno vključujejo še sledeče elemente:

language – jezik vira (npr. en-us, si-sl). S tem lahko agregatorji združujejo vire po jezikovnih različicah.

copyright – obvestila o avtorskih pravicah vira. managingEditor – e-poštni naslov osebe, odgovorne za urejanje vira webMaster – e-poštni naslov osebe, odgovorne za tehnična vprašanja v zvezi z

virom pubDate – Datum objave vsebine posameznega vira (RFC 822). lastBuildDate – datum zadnje spremembe vsebine vira category – specificiranje ene ali več kategorij, katerim vir pripada

Page 9: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

8

generator – indikacija programske opreme za ustvarjanje vira docs – URL ki kaže na dokumentacijo formata, uporabljenega za generacijo

RSS datoteke. ttl – time-to-live oz. čas (v minutah), ki je dovoljen za caching podatkov vira. image – specificira sliko gif, jpeg ali png formata, ki je prikazana z virom rating – PICS ocenitev vira textInput – določa vnosno polje ki je lahko prikazano v viru skipDays – navodilo agregatorjem, katere dni naj preskočijo branje vira

(dovoljene vrednosti so Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday)

skipHours – navodilo agregatorjem, katere ure naj preskočijo branje vira (v formatu 0 – 23, GMT)

Element <item> določa posamezne spreminjajoče se alineje posameznega vira. Vključuje naslednje elemente:

title – naslov posameznega elementa link – URL posameznega elementa description – povzetek vsebine elementa author – e-poštni naslov avtorja elementa category – vključuje spisek ene ali več kategorij elementa comments – URL do strani s komentarji elementa enclosure – opisuje elementu pripeto datoteko guid – unikaten opis elementa pubDate – (datetime) označuje čas ter datum objave elementa (RFC 822) source – RSS kanal iz katerega izvira element

Page 10: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

9

2.2.2. Primer strukture RSS 2.0 dokumenta <?xml version="1.0"?>

<rss version="2.0">

<channel>

<title>Lift Off News</title>

<link>http://liftoff.msfc.nasa.gov/</link>

<description>Liftoff to Space Exploration.</description>

<language>en-us</language>

<pubDate>Tue, 10 Jun 2003 04:00:00 GMT</pubDate>

<lastBuildDate>Tue, 10 Jun 2003 09:41:01 GMT</lastBuildDate>

<docs>http://blogs.law.harvard.edu/tech/rss</docs>

<generator>Weblog Editor 2.0</generator>

<managingEditor>[email protected]</managingEditor>

<webMaster>[email protected]</webMaster>

<ttl>5</ttl>

<item>

<title>Star City</title>

<link>http://liftoff.msfc.nasa.gov/news/2003/news-starcity.asp</link>

<description>How do Americans get ready to work with Russians aboard

the

International Space Station? They take a crash course in culture,

language

and protocol at Russia's Star City.</description>

<pubDate>Tue, 03 Jun 2003 09:39:21 GMT</pubDate>

<guid>http://liftoff.msfc.nasa.gov/2003/06/03.html#item573</guid>

</item>

<item>

<title>Space Exploration</title>

<link>http://liftoff.msfc.nasa.gov/</link>

<description>Sky watchers in Europe, Asia, and parts of Alaska and

Canada

will experience a partial eclipse of the Sun on Saturday, May

31st.</description>

<pubDate>Fri, 30 May 2003 11:06:42 GMT</pubDate>

<guid>http://liftoff.msfc.nasa.gov/2003/05/30.html#item572</guid>

</item>

</channel>

</rss>

Page 11: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

10

2.3. ATOM ATOM format je bil razvit kot alternativa RSS-u, torej je kot RSS - datotečna oblika za spletno zlaganje (syndication). Glavni razlog za razvoj Atom-a je bilo nezadovoljstvo nad RSS, npr. za RSS obstaja več med seboj nekompatibilnih, vendar široko uporabljanih verzij. Namen Atom-a je poenostaviti razvoj aplikacij za spletno zlaganje.

2.3.1. Glavne razlike med RSS ter ATOM Zahtevana vsebina: RSS 2.0 zahteva naslov vira, povezavo ter opis, ne zahteva pa nobenih polj posameznega elementa. Atom 1.0 zahteva tako za vir (feed) kot za posamezne elemente, da vključujejo polje naslova (ki pa je lahko prazno), unikatni identifikator ter čas zadnje posodobitve (last-updated timestamp). Payload / tovor: RSS 2.0 lahko vključuje tako golo besedilo (plain text) kot izognjen (escaped) HTML, brez možnosti indikacije, za katerega točno gre. Izognjen HTML vedno povzroča težave implementatorjem agregatorjev. Za polje <title> model vsebine sploh ni določen; naslovi, ki vključujejo špičaste oklepaje ali znake & so velikokrat napačno interpretirani. RSS 2.0 podatkovni model ne dopušča prave pravilno formirane XML označitve, kar omejuje ponovno uporabljivost vsebine. Atom 1.0 zahteva specificiranje oz. označevanje vsebine z eno izmed naslednjih možnosti:

golo besedilo brez označitev (privzeto) izognjen HTML (pogosto v uporabi v RSS 2.0) pravilno formiran XHTML opis drug XML besednjak base64 kodirana binarna vsebina kazalec spletne vsebine, ki ni vključena v viru

Celotna ali delna vsebina: RSS 2.0 nima elementa za označevanje popolne ali delne vsebine, vsebuje le element <description>, ki lahko vsebuje polno informacijo določenega vira, ali pa tudi ne, medtem ko Atom za podajanje vsebinske informacije vsebuje dva elementa: <summary> ter <content>, s čemer je podan obseg informacije. Avtorstvo: RSS 2.0 omogoča navedbo e-poštnega naslova za <managingEditor> in <webMaster>, ter <author> za posamezno enoto vira. Atom 1.0 podpira elementa <author> ter <contributor> za posamezno enoto vira ter za vir sam, z možnostjo uporabe pod-elementov za e-pošto ter URI Samoprepoznava: RSS nima uradno registriranega oz. standardiziranega MIME tipa (application/rss+xml), kar velikokrat pomeni težave za uporabnike, medtem ko je MIME tip za Atom 1.0 standardiziran (application/atom+xml) Označevanje jezika: Za identifikacijo jezikovnih različic uporablja RSS element <language>, Atom pa vgrajen atribut XML-ja – xml:lang

Page 12: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

11

Kategorizacija: RSS kategorije sestojijo iz dveh delov: oznaka in domena. Atom 1.0 kategorije imajo tri – dodan je še neobvezen človeško-berljiv naslov Primerjava RSS ter Atom elementov: RSS 2.0 Atom 1.0 Komentar channel feed title title link link Atom definira zajetno družino

»rel« vrednosti description subtitle Language - Atom uporablja standarden

xml:lang atribut copyright rights webMaster - managingEditor author ali contributor pubDate published (za posamezno

enoto vira) Atom nima te vrednosti na nivoju vira

lastBuildDate (za vir) Updated RSS nima ekvivalenta na nivoju posamezne enote vira

category category generator generator docs - cloud - ttl - <ttl> je problematičen,

prednostno se uporablja HTTP 1.1 cache control

image logo - Icon Enak pomen kot favicon.ico Rating - textInput - skipHours - skipDays - item entry author author - contributor description summary in/ali content Odvisno od vsebine Comments - Enclosure - rel=''enclosure'' pri <link>

elementu Atom-a guid id Source - rel=''via'' pri <link> elementu

Atom-a

Page 13: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

12

2.3.2. Primer Atom strukture <?xml version="1.0" encoding="utf-8"?>

<feed xmlns="http://www.w3.org/2005/Atom">

<title>Example Feed</title>

<link href="http://example.org/"/>

<updated>2003-12-13T18:30:02Z</updated>

<author>

<name>John Doe</name>

</author>

<id>urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6</id>

<entry>

<title>Atom-Powered Robots Run Amok</title>

<link href="http://example.org/2003/12/13/atom03"/>

<id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a</id>

<updated>2003-12-13T18:30:02Z</updated>

<summary>Some text.</summary>

</entry>

</feed>

2.4. FOAF / Friend of a Friend FOAF je računalniško berljiva ontologija, ki opisuje osebe, njihove aktivnosti in relacije z drugimi osebami in objekti. Kdorkoli lahko uporabi FOAF za opis samega sebe. Omogoča skupinam ljudi, da opišejo socialne mreže brez potrebe centralizirane podatkovne baze. FOAF je razširitev RDF-a in je definiran s pomočjo OWL (Web Ontology Language).

2.4.1. Primer FOAF sintakse <rdf:RDF

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:foaf="http://xmlns.com/foaf/0.1/"

xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">

<foaf:Person rdf:about="#BL">

<foaf:name>Boštjan Lukša</foaf:name>

<foaf:mbox rdf:resource="mailto:[email protected]" />

<foaf:homepage rdf:resource="http://www.besede.net/" />

<foaf:nick>Bosti</foaf:nick>

<foaf:interest>

<rdf:Description rdf:about="http://www.3glifestore.com"

rdfs:label="LifeStore" />

</foaf:interest>

<foaf:knows>

<foaf:Person>

<foaf:name>Grega Lebar</foaf:name>

</foaf:Person>

</foaf:knows>

</foaf:Person>

</rdf:RDF>

Page 14: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

13

2.4.2. FOAF termini, združeni v široke kategorije

FOAF osnovni: o Agent o Person o name o nick o title o homepage o mbox o mbox_sha1sum o img o depiction (depicts) o surname o family_name o givenname o firstName

Osebne informacije o weblog o knows o interest o currentProject o pastProject o plan o based_near o workplaceHomepage o workInfoHomepage o schoolHomepage o topic_interest o publications o geekcode o myersBriggs o dnaChecksum

Spletni računi / IM o OnlineAccount o OnlineChatAccount o OnlineEcommerceAccount o OnlineGamingAccount o holdsAccount o accountServiceHomepage o accountName o icqChatID o msnChatID o aimChatID o jabberID o yahooChatID

Projekti in skupine o Project o Organization

Page 15: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

14

o Group o member o membershipClass o fundedBy o theme

Dokumenti in slike o Document o Image o PersonalProfileDocument o topic (page) o primaryTopic o tipjar o sha1 o made (maker) o thumbnail o logo

Page 16: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

15

2.5. Mikroformati Mikroformati so način dodajanja preprostih označitev k človeško-berljivim enotam podatkov, kot so dogodki, kontaktne podrobnosti in lokacije, na spletne strani, tako da se te informacije lahko izvlečejo s programsko opremo ter indeksirajo, da se po njih lahko išče, navzkrižno povezuje itd. So enote semantične označitve, ki uporabljajo le standardne XHTML in HTML označitve (POSH), nabor razrednih imen, ter »rel« povezave. Čeprav je vsebino spletnih strani tehnično mogoče avtomatsko procesirati že od samega začetka svetovnega spleta, pa tu obstajajo določene omejitve. Tradicionalne označitve, ki so v uporabi za prikaz vsebine na spletu ne opisujejo pomena informacije, ki jo vsebujejo. Mikroformati so namenjeni premostitvi te pomanjkljivosti z dodajanjem semantike in tako zaobidejo druge, bolj kompleksne metode avtomatskega procesiranja vsebine, kot npr. procesiranje naravnega jezika (natural language processing) ali procesiranje zaslonske slike (screen scraping). Trenutni mikroformati dovoljujejo kodiranje in izločanje dogodkov, kontaktnih informacij, socialnih razmerij in relacij itd. Podpora za mikroformate bo implementirana v brskalnikih naslednje generacije (Firefox 3, Internet Explorer 8…)

2.5.1. XFN – Xhtml Friends Network XFN »format« spada v družino mikroformatov. Je enostaven način za predstavitev medosebnih povezav ljudi s pomočjo spletnih povezav (hyperlinks). Izraža relacije med posamezniki s tem da definira skupek vrednosti, ki opisujejo medsebojna razmerja. V HTML in XHTML dokumentih so te vrednosti podane kot »rel« atribut pri povezavi (hyperlink). XFN omogoča avtorju, da pokaže, kateri izmed blogov, ki jih bere, pripadajo njegovim prijateljem, koga so spoznali v živo in druge medsebojne povezave. Z XFN vrednostmi, ki so lahko navedene v kakršnem koli vrstnem redu, lahko ljudje počlovečijo (humanizirajo) svoje blogrole in strani s povezavami, ki so postale stalnica blogov ter drugih osebnih spletnih strani. S podporo XFN mikroformata v prihodnjih brskalnikih, bo možno npr. tudi določiti različne CSS (oblikovne) stile za različne rel parametre.

2.5.1.1. Primer uporabe Boštjan je na svojem blogu objavil povezave do drugih blogov, ki jih prebira in določil relacije: <a href="http://sara-blog.example.org/" rel="sweetheart date met">Sara</a>

<a href="http://grega-blog.example.org/" rel="friend met">Grega</a>

<a href="http://martin-blog.example.org/" rel="co-worker friend

met">Martin</a>

<a href="http://www.fov.uni-mb.si/">Moj fax</a>

Page 17: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

16

Povezava do spletne strani fakultete, katero obiskuje Boštjan nima rel vrednosti, ker ne predstavlja osebe. Ostale rel vrednosti v seznamu povezav so ločene s presledkom (white-space), če jih za opis relacije potrebujemo več. Torej, ker Boštjan hodi s punco Saro (katero je, verjetno niti ne presenetljivo, srečal tudi v realnem življenju), je relacijo označil kot sweetheart date met. Če Sara Boštjanu ne bi pomenila toliko in bi se v resnici dobival tudi z drugimi, bi v povezavi verjetno izpustil relacijo sweetheart.

2.5.1.2. Možni XFN parametri

Kategorije razmerij XFN vrednosti rijateljstvo (največ en) friend acquaintance contact

fizično met

profesionalno co-worker colleague

geografsko (največ en) co-resident neighbor

družina (največ en) child parent sibling spouse kin

romantično muse crush date sweetheart

identiteta me

2.5.2. hCalendar hCalendar je preprost, odprt, distribuiran format za koledar in dogodke, osnovan na iCalendar standardu (RFC2445), primeren za vstavljanje v HTML ali XHTML, Atom, RS ali poljuben XML.

2.5.2.1. Spisek vrednosti hCalendar Vrhnji razred hCalendar-ja je poimenovan »vcalendar«. Vrhnji razred posameznega dogodka je poimenovan »vevent«. Zahtevani parametri:

dstrart (ISO 8601 datum) summary (povzetek)

Neobvezni parametri: location url dtend, duration rdate, rrule category, description uid geo (širina, dolžina)

Page 18: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

17

2.5.2.2. Primeri uporabe iCalendar format:

BEGIN:VCALENDAR

PRODID:-//XYZproduct//EN

VERSION:2.0

BEGIN:VEVENT

URL:http://www.web2con.com/

DTSTART:20071005

DTEND:20071020

SUMMARY:Web 2.0 Conference

LOCATION:Argent Hotel\, San Francisco\, CA

END:VEVENT

END:VCALENDAR

hCalendar format: <div class="vevent">

<a class="url" href="http://www.web2con.com/">http://www.web2con.com/</a>

<span class="summary">Web 2.0 Conference</span>:

<abbr class="dtstart" title="2007-10-05">October 5</abbr>-

<abbr class="dtend" title="2007-10-20">19</abbr>, at the <span

class="location">Argent Hotel, San Francisco, CA</span>

</div>

2.5.3. hCard hCard je preprost, odprt, distribuiran format za predstavitev oseb, podjetij, organizacij in krajev. Temelji na vrednostih standarda vCard (RFC2426) in vrednostih v semantičnem HTML/XHTML.

2.5.3.1. Spisek vrednosti hCard Vrhnji razred hCard-a poimenujemo »vcard«. Zahtevani parametri:

fn n (family-name, given-name, additional-name, honorific-prefix, honorific-suffix)

Neobvezni parametri:

nickname, sort-string url, email (type, value), tel2 (type, value) adr (post-office-box, extended-address, street-address, locality, region, postal-

code, country-name, type, value), label geo (širina, dolžina), tz photo, logo, sound, bday

Page 19: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

18

title, role, org (organization-name, organization-unit) category, note class, key, mailer, uid, rev

2.5.3.2. Primer uporabe vCard format: BEGIN:VCARD

VERSION:3.0

N:Lebar;Grega

FN:Grega Lebar

URL:http://lebar.com/

END:VCARD

hCard zapis: <div class="vcard">

<a class="url fn" href="http://lebar.com/">Grega Lebar</a>

</div>

2.6. SyncML / Synchronization Markup Language SyncML (oz. Open Mobile Alliance Data Synchronization and Device Management) je ime za platformsko neodvisen standard za sinhronizacijo informacij. Ostale (obstoječe) rešitve so v veliki meri zavisele od ponudnika/proizvajalca, aplikacije oz. operacijskega sistema. Namen SyncML je nasloviti ta problem nekompatibilnosti, ter ponuditi odprt standard kot nadomestilo. Več velikih podjetij, kot so Motorola, Nokia, Sony Ericsson, LG, IBM ter Siemens AG že podpirajo SyncML v svojih proizvodih. Vizija očeta SyncML, Phillipe Kahn-a je »Globalna sinhronizacija ter integracija žičnih in brezžičnih naprav«. SyncML se največkrat obravnava kot metoda za sinhroniziranje kontaktov in koledarja med ročnimi napravami ter računalnikom (prenosni telefon in PC). Nova različica standarda vključuje podporo za push-email in s tem nudi alternativo lastniškim rešitvam kot npr. BlackBerry.

Page 20: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

19

3. Rešitev V razmišljanju o problemu in zastavljenih ciljih smo prišli do nekaterih novih zaključkov, ki so nam odprli nov pogled na dan problem in nas prisilili k drugačnemu pristopu k rešitvi. Ugotovili smo namreč, da v razmišljanju o socialnem grafu in izmenljivosti podatkov ne smemo gledati le skozi prizmo obstoječih rešitev, ki jih uporabljajo socialna omrežja, ampak začeti na drugi strani, torej pri ugotavljanju, kaj v resnici je človekova socialna mreža. Tako se je izkazalo, da je trenutno najboljši približek socialni mreži človeka imenik kontaktov s katerim si izmenjuje sporočila. Ta imenik je lahko na primer del elektronske pošte ali imenik mobilnega telefona. Zaradi velikega obsega kontaktov, ki sestavljajo naš imenik elektronske pošte, predvsem po zaslugi množice nezaželenih sporočil in pa naše prakse, zaradi katere večinoma nismo vajeni redno urejati tega imenika, se je kot primernejša izbira izkazal imenik na našem mobilnem telefonu. V njem imamo večinoma shranjene kontakte, ki smo jih osebno spoznali, veliko večja verjetnost je tudi, da ga precej redno urejamo. Začetek rešitve je bil razvoj modula registracije, preko katere uporabnik vpiše svoje osebne podatke, ki jim je določil nivo zasebnosti. Nivoja sta dva in sicer javni ter privatni, kar pomeni, da so osebni podatki označeni z javnim nivojem vidni komurkoli, privatni podatki pa le ljudem, s katerimi jih izmenjamo na zahtevo. Na ta način smo rešili zasebnost podatkov in posamezniku dali možnost nadzora nad izmenjavo le-teh. Nadaljevanje rešitve je modul aplikacije, ki z uporabo standarda SyncML (OMA) bere kontakte iz imenika mobilnega telefona in jih shrani v imenik spletne aplikacije. Ta imenik je postal centralni imenik, ki skrbi za sinhronizacijo z ostalimi napravami in spletnimi omrežji. Predvidevamo, da uporabnik naše rešitve že uporablja ali je član najmanj enega socialnega omrežja, zato smo želeli ugotoviti, do katerih podatkov in na kakšen način lahko dostopamo. V ta namen smo si izbrali socialno omrežje Facebook, ki je med najbolj priljubljenimi ta hip, razvijalcem pa ponuja tudi platformo s pomočjo katere je mogoče razvijati Facebook aplikacije. Tako smo napisali pomožno Facebook aplikacijo, ki jo uporabnik naše rešitve doda v svoj Facebook račun.

Page 21: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

20

Na ta način nam dovoli, da preberemo seznam njegovih prijateljev, jih dodamo v naš centralni imenik in redno sinhroniziramo spremembe kontaktnih podatkov. V tem koraku smo naleteli na prvi primer, ko izmenjava podatkov med omrežji ni mogoča, saj nam Facebook omogoča le branje imen in priimkov, brez njihovih kontaktnih podatkov, kot sta e-poštni naslov ali telefonska številka. Zaradi tega je precej težje primerjati Facebook kontakte s tistimi iz našega telefona in ugotoviti kateri se ujemajo. Kontaktni podatki pa niso edini podatki, ki bi jih radi izmenjevali med socialnimi omrežji. Tukaj je še uporabniško generirana vsebina, kot so fotografije, video posnetki in podobno. V ta namen smo si za predmet raziskovanja izbrali tri spletna omrežja in sicer YouTube (www.youtube.com) za video posnetke, Flickr (www.flickr.com) za fotografije in že prej uporabljeni Facebook kot bolj splošno orientirano socialno omrežje, ki pa omogoča tudi ustvarjanje albumov in hranjenje fotografij. Nobeno od zgoraj omenjenih socialnih omrežij ne omogoča enostavne izmenjave podatkov oziroma medijskih vsebin, temveč omogočajo le omejeno funkcionalnost preko t.i. API-jev (Application programming interface). Tako smo naši rešitvi dodali modul “povezave” v katerem smo združili že prej napisano Facebook aplikacijo, razširjeno s funkcionalnostjo za kreiranje albumov in nalaganje fotografij, Flickr aplikacijo, ki omogoča nalaganje fotografij v albume ter YouTube aplikacijo, ki omogoča nalaganje videa. Na ta način smo uporabnikom omogočili nalaganje medijskih vsebin na več destinacij hkrati (npr. Flickr in Facebook), obenem pa smo pripravili tudi osnovo s katero bi lahko sinhronizirali vsebino med omenjenimi omrežji. Z do sedaj razvito rešitvijo smo uspeli premagati kar nekaj težav, ki so se na začetku zdele težko rešljive, postavljalo pa se je vprašanje, če je to dovolj, da bi povprečen uporabnik razumel kaj mu rešitev sploh ponuja in kako se njegova aktivnost na socialnih omrežjih kaže navzven, njegovim prijateljem in kontaktom. Med raziskovanjem obstoječih praks smo naleteli na zanimivo funkcionalnost, ki se imenuje “presence”. Ta se je začela uporabljati v rešitvah za neposredno sporočanje s programi kot so Microsoft Messenger, Google Talk, AOL Chat in podobnimi, njen glavni namen pa je bilo uporabnikovo sporočanje trenutnega statusa. Ta je bil na primer “dosegljiv”, “nedosegljiv”, “zaseden” in podobno. Logika se nam je zdela zanimiva, saj jo je mogoče enostavno razširiti in na podoben način uporabiti pri kontaktih, ki so shranjeni v imeniku, tako da “presence”, kot dodatno polje imenika, kaže zadnjo spremembo v kateremkoli socialnem omrežju, kjer je uporabnik dejaven, hkrati pa služi tudi kot povezava na to spremembo, ki je lahko neka nova vsebina, dogodek itd. Da bi presence lahko uporabili v naši rešitvi, smo morali najti način, kako pridobiti aktualne informacije o spremembah in novostih iz različnih omrežij, za kar so se idealno izkazali RSS viri. Te smo za vsakega uporabnika združili v OPML datoteko in jo v rednih časovnih razmakih analizirali. Flickr in YouTube zaradi svoje nivojske strukture omogočata enostavno prepoznavanje RSS virov, Facebook pa to onemogoča, zato bi bilo povezave do RSS virov potrebno za vsakega uporabnika vnesti ročno.

Page 22: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

21

Pri razvoju rešitve sta nam bili v veliko pomoč dve odprtokodni aplikaciji in sicer Funambol SyncML strežnik, ki omogoča sinhronizacijo kontaktov z mobilnim telefonom in različnimi e-poštnimi klienti ter Magpie RSS, ki smo jo uporabili za agregiranje RSS virov.

Page 23: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

22

3.1. Grafični vmesnik

Slika: Centralni imenik, kjer se prikazujejo sinhronizirani podatki iz imenika mobilnega telefona in Facebooka

Slika: Primer “presenca”, ki se prikazuje pod uporabnikovim imenom, klik nanj pa je povezava na zadnjo akcijo uporabnika, v tem primeru nov objavljen video

Page 24: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

23

Slika: Modul povezave, kjer uporabnik lahko poveže svoj račun z ostalimi socialnimi omrežji, v našem primeru so to YouTube, Flickr in Facebook.

Slika: Primer uporabnikovega toka dogodkov, združenega iz različnih socialnih omrežij.

Page 25: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

24

4. Zaključki Če povzamemo našo celotno rešitev, bi jo lahko opisali kot sestavljanko iz treh funkcionalnih delov:

1. Odkrivanje in sinhroniziranje kontaktov na enem mestu. 2. Nalaganje in sinhronizacija vsebine na različna socialna omrežja. 3. Odkrivanje in prikaz aktualnega toka dogodkov, ki prikazujejo posameznikovo

dejavnost na socialnih omrežjih. Rešitev je od nas zahtevala prilagajanje specifikam posameznega socialnega omrežja, predvsem, ko je šlo za uporabo API-jev. To pomeni, da bi morali za vsako socialno omrežje, s katerim bi se želeli povezati, razviti ločen del rešitve, ki bi uporabljala njihov API, to pa je zelo nepraktično in zahteva nenehno posodabljanje ter prilagajanje nestandardiziranim rešitvam.

Skozi razvoj celotne rešitve smo se srečali z mnogimi izzivi, ki so terjali precej razmišljanja in različnih pristopov k reševanju problemov. Pri vsakem socialnem omrežju smo naleteli na omejitve, ki onemogočajo popolno izmenjavo podatkov. Zanimivo je, da so te omejitve le redko tehnične narave, večinoma gre za interno politiko socialnega omrežja, da določenih podatkov ne bodo dali na voljo ali omogočili njihovega prenosa, četudi bi to lastniki teh podatkov želeli. V času, ko smo razvijali rešitev se je pojavilo kar nekaj novih orodij, ki pomenijo korake v smeri odprtosti socialnih omrežij in poenostavljene izmenjave podatkov. Tukaj je predvsem potrebno omeniti Google Contacts API, ki omogoča enostavnejše sinhroniziranje Google kontaktov z ostalimi omrežji ter Google Social Graph API, ki je namenjen prikazu posameznikovega socialnega grafa, seveda v primeru, da so za relacije in povezave med različnimi profili uporabljeni ustrezni standardi (FOAF, XFN). Omeniti velja tudi gibanji Data portability (dataportability.org) in Open Social. Prva je v zadnjih mesecih močno pridobila na prepoznavnosti in poskuša formalizirati sodobne standarde za izmenjavo podatkov med socialnimi omrežji, druga pa si prizadeva ustvariti enotno platformo, ki bi uporabljala standardiziran način za dostop do različnih funkcionalnosti socialnega omrežja ter komunikacijo med različnimi omrežji. Na ta način bi bil tudi razvijalcem poenostavljen postopek razvoja aplikacij, saj jim ne bi bilo potrebno za vsako socialno omrežje izdelati svoje aplikacije, ampak bi izdelali le eno in jo uporabili povsod. Data portability že deluje kot neodvisna in neprofitna organizacija, Open Social pa je v procesu nastajanja. Velikega pomena je podpora velikih igralcev na spletu, kot so Google, Yahoo, Microsoft in podobni, saj je brez njih težko uveljaviti kakršenkoli standard. Ob načrtovanju naše rešitve smo predvidevali, da bomo lahko aktivneje vključili OpenID, kot sistem avtentikacije uporabnika (single sign-on), vendar se je izkazalo, da je tehnologija še v povojih in je ni mogoče uporabiti v taki meri kot smo sprva predvidevali. Pogrešali smo natančnejšo defincijo nivojev dostopa in zasebnosti. Kljub uporabi zadnjih priporočil in dobrih praks na področju standardov (Mikroformati ...), smo prišli do zaključka, da rešitev še ni zrela za uporabo v produkcijskem okolju.

Page 26: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

25

Glede na hitrost razvoja tehnologij in standardov je pričakovati, da bomo kmalu lahko uporabljali standardizirane rešitve za izmenjavo podatkov, predvsem pa bomo spet postali lastniki svoje socialne mreže ter osebnih podatkov in jih na enostaven način prenašali med različnimi omrežji. Vse to bo tudi osnova za novo obdobje v spletu, imenovano Web 3.0.

Page 27: Seminarska naloga PIIS

Izmenjava podatkov med socialnimi omrežji

26

5. Viri

Joshua Tauberer (2008). What is RDF and what is it good for? http://rdfabout.com/intro/ (dostop 3.4.2008)

Eric Miller (1998). An Introduction to the Resource Description Framework http://www.dlib.org/dlib/may98/miller/05miller.html (dostop 3.4.2008)

Resource Description Framework http://en.wikipedia.org/wiki/Resource_Description_Framework (dostop 18.4.2008)

RSS. http://en.wikipedia.org/wiki/RSS_(file_format) (dostop 18.4.2008) RSS 2.0 Specification (15.7.2003). http://cyber.law.harvard.edu/rss/rss.html

(dostop 2.3.2008) RSS 2.0 Specification. http://www.rssboard.org/rss-specification (dostop 4.3.2008) RSS and Atom. http://www.intertwingly.net/wiki/pie/Rss20AndAtom10Compared

(dostop 17.3.2008) Atom Syndication Format – Introduction

http://www.atomenabled.org/developers/syndication/ (dostop 17.3.2008) Atom (standard) http://en.wikipedia.org/wiki/Atom_%28standard%29 (dostop

17.3.2008) Dan Brickley in Libby Miller (2000-2007). FOAF Vocabulary Specification 0.91

http://xmlns.com/foaf/spec/ (dostop 20.3.2008) Microformat. http://en.wikipedia.org/wiki/Microformats (dostop 18.4.2008) Introduction to Microformats. http://microformats.org/wiki/introduction (dostop

18.4.2008) XFN - Xhtml Friends Network (3.2.2008). http://microformats.org/wiki/xfn (dostop

10.3.2008) Xhtml Friends Network (2003-2008). http://gmpg.org/xfn/ (dostop 10.3.2008) SyncML Specification; Version 1.0.1 (2007)

http://www.openmobilealliance.org/tech/affiliates/syncml/syncmlindex.html (dostop 18.3.2008)

SyncML (9.4.2008). http://en.wikipedia.org/wiki/SyncML (dostop 18.4.2008) DataPortability – connect. control. share. remix. http://www.dataportability.org/

(dostop 18.4.2008) Brad Fitzpatrick in David Recordon (17.8.2007). Thoughts on the Social Graph.

http://bradfitz.com/social-graph-problem/ (dostop 18.4.2008) Social Graph API (2008). http://code.google.com/apis/socialgraph/docs/ (dostop

18.4.2008) Scott Gilbertson (8.6.2007). Slap in the Facebook: It's Time for Social Networks to

Open Up. http://www.wired.com/software/webservices/news/2007/08/open_social_net (dostop 18.4.2008)

Allsopp, John. Microformats: Empowering Your Markup for Web 2.0. Friends of ED,

2007