Informasjonsmiljø basert på prinsippene om Open Data

Informasjonsmiljø basert på prinsippene om Open Data

Den foreslåtte informasjonsmiljøet er en slags desentralisert sosialt nettverk. Men i motsetning til mange eksisterende løsninger har dette miljøet en rekke nyttige egenskaper i tillegg til desentralisering og er bygget på ganske enkle og standard tekniske løsninger (e-post, json, tekstfiler og litt blokkjedeteknologi). Dette gjør at enhver som har grunnleggende programmeringskunnskaper kan lage sine egne tjenester for dette miljøet.

Universell identifikator

I ethvert online miljø er identifikatorer for brukere og objekter en av nøkkelkomponentene i systemet.

I dette tilfellet fungerer e-post som brukeridentifikator, som allerede er blitt en alminnelig akseptert identifikator for autentisering på nettsteder og andre tjenester (jaber, openId).

Faktisk er brukeridentifikatoren i dette online miljøet et par login+domene, som for enkelhets skyld skrives ned i et format de fleste er vant til. For større desentralisering er det ønskelig for hver bruker å ha sitt eget domene. Dette ligner prinsippene for indieweb, hvor domene brukes som brukeridentifikator. I vårt tilfelle legger brukeren til sitt nikkenavn til sitt domene, noe som gjør det mulig å opprette flere kontoer på ett domene (for venner, for eksempel) og gjør adresseringssystemet mer fleksibelt.

Denne typen brukeridentifikator er ikke knyttet til noe spesifikt nettverk. Hvis brukeren plasserer sine data i TOR-nettverket, kan man bruke domener i .onion-sonen; hvis det er et nettverk med DNS-system på blokkjeden, kan man bruke domener i .bit-sonen. Dermed avhenger formatet for adressering av brukere og deres data ikke av nettverket de overføres via (overalt brukes koblingen login+domene). For dem som ønsker å bruke en bitcoin/ethereum-adresse som identifikator, kan systemet tilpasses for bruk av pseudo-e-postadresser som følger. xaca1b7c8126806f672f9dbee4951527bb0f2c4e4@ethereum.blockchain

Adressering av objekter

Dette online miljøet er faktisk et sett med objekter som er beskrevet i et strukturert, maskinlesbart format, refererer til andre objekter og kobles til en bestemt bruker (e-post) eller prosjekt/organisasjon (domene).

Som identifikatorar for objekt vert urn nytta i navnerommet urn:opendata. For eksempel har ein brukarprofil ein adresse av typen:

urn:opendata:profile:user@domain.com

Ein brukarkommentar har ein adresse av typen:

urn:opendata:comment:user@domain.com:08adbed93413782682fd25da77bd93c99dfd0548

der 08adbed93413782682fd25da77bd93c99dfd0548 er ein tilfeldig sha-1 hash som fungerer som id for objektet, medan user@domain.com er eieren av dette objektet.

Prinsippet for publisering av brukardata

Med sitt eige domene kan ein brukar enkelt publisere sine data og innhald. Og i motsetnad til indiekeba, er det ikkje nødvendig å lage ein nettside med html-sider der semantiske data er innebygd.

For eksempel vert grunnleggjande informasjon om ein brukar plassert i fila datarobots.txt, som ligg på adressen:

http://55334.ru/konstantin@55334.ru/datarobots.txt

Og har eit innhald av slikt format:

Object: user
Services-Enabled: 55334.ru,newethnos.ru
Ethnos: newethnos
Delegate-Tokens: http://55334.ru/konstantin@55334.ru/delegete.txt

Det vil seie at dette i praksis er eit sett med strenger med data av typen nøkkel->verdi, som er lett å parse for alle med grunnleggjande programmeringskunnskap. Og data kan redigerast ved behov gjennom ein enkel teksteditor.

Meir komplekse data (profil, kommentar, innlegg osv.) som har si eiga urn, vert leverte som eit JSON-objekt via eit standard API (http://opendatahub.org/api_1.0?lang=ru), som kan ligge både på brukarens domene og på ein tredjeparts nettside som brukaren har delegert lagring, publisering og redigering av sine data til (i raden Services-Enabled i fila datarobots.txt). Det er meir om slike tredjeparts tenester skrive nedanfor.

Enkel ontologi og JSON

Ontologien for kommunikasjonsmiljøet er relativt enkel, samanlikna med ontologiane i bransje-baserte kunnskapsdatabasar. Fordi det eksisterer eit relativt lite sett med standardobjekt (innlegg, kommentar, liker, profil, vurdering) med eit relativt lite sett med eigenskapar.

Difor er det tilstrekkeleg å bruke JSON for å beskrive objekta i eit slikt miljø i staden for eit meir komplekst XML-format (det er viktig å huske på behovet for låg inngangsterskel og skalerbarheit).

For å få eit objekt med ei kjend urn, må ein kontakte brukarens domene eller tredjeparts tenester som brukaren har delegert forvaltninga av dataene sine.

I denne nettomgivelsen har hver domene som har en nettjeneste også sin egen datarobots.txt plassert på en adresse som eksempel.com/datarobots.txt med lignende innhold:

Objekt: tjeneste
Api: http://newethnos.ru/api
Api-Version: http://opendatahub.org/api_1.0

Fra dette kan vi få vite at vi kan hente data om objektet på en adresse som:

http://newethnos.ru/api?urn=urn:opendata:profile:konstantin@55334.ru

JSON-objektet har en slik struktur:

{
    "urn": "urn:opendata:profile:expample@55334.ru",
    "status": 1,
    "message": "Ok",
    "timestamp": 1596429631,
    "service": "example.com",
    "data": {
        "name": "John",
        "surname": "Gald",
        "gender": "male",
        "city": "Moscow",
        "img": "http://domain.com/image.jpg",
        "birthtime": 332467200,
        "community_friends": {
            "example1@domain.com": "1",
            "example2@domain.com": "0.5",
            "example3@domain.com": "0.7"
        },
        "interests_tags": "cars,cats,cinema",
        "mental_cards": {
            "no_alcohol@main": 8,
            "data_accumulation@main": 8,
            "open_data@main": 8
        }
    }
}

Tjenestearkitektur

Tredjepartstjenester er nødvendige for å forenkle prosessen med å publisere og søke etter data av sluttbrukere.

Over omtales en av de typene tjenestene som hjelper brukeren med å publisere sine data på nett. Det kan eksistere mange lignende tjenester, hver med et brukervennlig grensesnitt for redigering av en type data (forum, blogg, spørsmål-svar osv.). Hvis brukeren ikke stoler på tredjepartstjenester, kan han installere et skript for databehandling på sitt domene eller utvikle det selv.

I tillegg til tjenester som lar brukerne publisere/redigere data — finnes det en rekke andre tjenester i nettverdenen som utfører relativt komplekse oppgaver som det er vanskelig å realisere på sluttbrukerens noder.

En av disse tjenestene er dataknapper ( opendatahub.org/ru — et eksempel), som fungerer som en slags webarkiv som samler alle offentlige maskinlesbare data fra brukere og gir tilgang til dem via API.

Tilstedeværelsen av tjenester i et slikt åpent, desentralisert nettmiljø reduserer terskelen for brukere i betydelig grad, ettersom det ikke er nødvendig å installere og konfigurere egen node. Samtidig beholder brukeren kontroll over sine egne data (han kan når som helst bytte tjeneste som publiseringen av dataene er delegert til eller opprette sin egen node).

Dersom brukeren ikke er interessert i å eie sine egne data i det hele tatt, og han ikke har sitt eget domene eller noen som kjenner til domenet, vil dataene hans som standard bli administrert av opendatahub.org.

Hvem betaler for alt dette?

Kanskje det største problemet med nær sagt alle slike desentraliserte prosjekter er umuligheten av å monetisere på et nivå som er tilstrekkelig for stabil utvikling og støtte.

For å dekke kostnadene til utvikling og markedsføring brukes donate + tokens i dette online-miljøet.

Alle donasjoner som brukerne gir til interne prosjekter/tjenester er offentlig tilgjengelige, maskinlesbare og knyttet til e-post. Dette gjør det mulig å ta dem med i betraktning, for eksempel ved beregning av sosial rangering innen nettverket, og publisere dem på brukernes sider. Når donasjoner slutter å være anonyme, betyr det i praksis at brukerne ikke gir, men heller 'samler' midler for å støtte det felles informasjonsmiljøet. Akkurat som folk bidrar til reparasjon av fellesområder med en tilsvarende holdning til de som har valgt å ikke bidra.

I tillegg til donasjoner brukes det tokens utstedt i et begrenset antall (400.000), som tildeles alle som donerer til hovedfondet (ethnogenesis).

Ekstra funksjoner for tokens

Hver token fungerer som en “nøkkel” for tilgang til dette online-miljøet. Det vil si at man bare kan bruke tjenestene og være en del av online-miljøet dersom man har minst 1 token knyttet til e-post.

Tokens fungerer som en effektiv spamfilter på grunn av sin begrensning. Jo flere brukere det er i systemet, desto vanskeligere blir det å få tak i en token, og desto mer kostbart blir det å lage botter.

Mennesker, deres data og sosiale forbindelser er viktigere enn teknologiene.

Det beskrevne online-miljøet er teknisk sett et relativt primitivt løsning. Men det som er mer viktig i det, er ikke så mye teknologiene, men menneskene og de sosiale forbindelsene og dataene (innholdet) som skapes innen miljøet.

Den sosiale fellesskap som dannes, der deltakerne har sine universelle identifikatorer (e-post og eget domene) samt strukturerte data (med URN-adresser, ontologi og JSON-objekter), kan ved fremkomsten av en bedre teknisk løsning overføre alle disse dataene til et annet online miljø, samtidig som de etablerte koblingene (vurderinger, rangeringer) og innholdet bevares.

I dette innlegget beskrives et av elementene i et nettverks selvorganisert fellesskap, som i tillegg til et desentralisert online miljø inkluderer flere offline retninger som øker nytten av det online miljøet og fungerer som 'oppdragsgivere', som i stor grad bestemmer dens funksjonalitet. Men dette er allerede temaer for andre artikler som ikke har direkte forhold til IT og teknologi.

Kilde: habr.com

Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere | ProHoster