JHS 159 ISO OID-yksilöintitunnuksen soveltaminen julkishallinnossa Versio: Julkaistu: pp.kk.2010 Voimassaoloaika: pp.kk.20xx SISÄLLYS 1 JOHDANTO 3 2 SOVELTAMISALA 3 3 TERMIT JA MÄÄRITELMÄT 3 4 YKSILÖINTITUNNUKSISTA JA YKSILÖINTIJÄRJESTELMISTÄ 4 4.1 Kohteiden yksilöinnistä 4 4.2 Nimiavaruuksista 5 4.3 Koodistoista 5 4.4 Yksilöintitunnuksiin liittyvistä vaatimuksista 5 4.5 Yksilöintijärjestelmistä 5 4.6 Yksilöintitunnuksen muodostamisvastuu 7 5 OID YKSILÖINTIJÄRJESTELMÄ JA SUOSITUS SEN KÄYTÖSTÄ 8 5.1 Suosituksen periaatteista 8 5.2 OID-yksilöintitunnuksen rakenne 8 5.3 Kohteen yksilöintitunnuksen (lehden) liittäminen OID-puuhun 9 5.4 Koodistojen yksilöinti ja koodiarvojen esittäminen 10 5.5 Y-tunnusten perusteella muodostetun Suomen OID-alipuun rakenne 10 6 OID-YKSILÖINTITUNNUKSEN HALLINNOINNIN NÄKÖKOHTIA 12 6.1 Vastuutaho ja vastuun jakaminen 12 6.2 Yksilöintitunnusten elinkaaren hallinta 12 6.3 Tunnusgeneraattorit 13 6.4 Tukirekisterit 13 6.5 Esimerkkejä OID-yksilöintitunnuksen käytöstä 14 1/15
7 OPASTAVAT TIEDOT 14 7.1 Liitteet 15 2/15
1 Johdanto Organisaatioiden välisen tietojenvaihdon ja yhteiskäyttöisten rekistereiden ja arkistojen käytön yleistyessä on entistäkin tärkeämmäksi noussut tarve organisaatioiden antamille, mutta myös organisaatioiden ulkopuolella yksikäsitteisille yksilöintitunnuksille. Yleisesti käytettyjä yksilöintijärjestelmiä ovat mm. ISO OID 1, URI (Universal Resource Identifier) 2 tai sen kaltaiset URN (Universal Resource Name) 3 tai URL (Universal Resource Locator) 4 sekä UUID (Universally Unique Identifier) 5. Tässä JHS-suosituksessa käsitellään ISO OID -standardin mukaisen yksilöintijärjestelmän käyttöä julkishallinnossa. Muita yksilöintijärjestelmiä on esitelty suosituksen liitteessä 2. 2 Soveltamisala ISO OID-yksilöintitunnuksen käyttö on perusteltua tapauksissa, joissa jo olemassa oleviin yksilöintikäytäntöihin tarvitaan nykyistä laajempi yksilöitävyys (esimerkiksi järjestelmän sisäinen yksilöintitunnus pitää saada yksikäsitteiseksi kansallisella tai kansainvälisellä tasolla organisaatiorajat ylittävä tiedonvaihto tai organisaation eri järjestelmien välinen tiedonvaihto). Tähän kategoriaan kuuluu myös käytössä olevien yksilöintijärjestelmien tuominen OID-rakenteeseen (esim. Y-tunnus). Joillakin toimialoilla voi olla sitova päätös tietyn yksilöintijärjestelmän käyttämisestä. Esimerkiksi terveydenhuollossa on kansallisesti sovittu ISO OID-yksilöintijärjestelmän käytöstä mm. potilasasiakirjojen yksilöintiin. Suomen OID-yksilöintitunnusten alipuun juurta ja sen yksilöimää nimiavaruutta hallinnoi Suomen Standardisoimisliitto SFS ry. SFS:n hallinnoiman Suomen OID-alipuun rakenne ja hallinnointi on määritelty standardissa SFS 5971 ISO OID-yksilöintitunnukset 6. Tämä JHS-suositus antaa tarkentavia ohjeita ISO OID-yksilöintitunnusten hallinnoinnista ja käytöstä SFS:n hallinnoimassa Suomen OID-alipuussa (1.2.246.x) ja erityisesti sen yrityksille ja yhteisöille Y-tunnuksen perusteella varatussa alipuussa (1.2.246.10.x). Suositukset ovat yleispäteviä kaikille toimialoille. Tätä suositusta tarkentavia toimialakohtaisia suosituksia ja ohjeita tulisi laatia, mikäli toimialan yksilöintitoiminnan ohjaus sitä vaatii esimerkiksi yhdenmukaisen toimintatavan saavuttamiseksi. Toimialakohtaisten suositusten ja ohjeiden tulee olla yhteensopivia standardin SFS 5971 ja tämän JHSsuosituksen kanssa. 3 Termit ja määritelmät ISO OID kohteen yksilöintitunnus (ISO OID object identifier) Kansainvälisesti vain yhteen kohteeseen liitettävä numeroiden ja pisteiden muodostama merkkijono, joka yksilöi kyseisen kohteen yksiselitteisesti ISO/IEC 8824-1:2002-standardin mukaisessa yksilöintijärjestelmässä. Kohde (object) Yksilöitävissä eli nimettävissä ja rekisteröitävissä oleva fyysinen tai abstrakti kokonaisuus tai kokonaisuuden osa. Lähderekisteri Lähderekisteri on kohteeseen liittyvä alkuperäinen tietolähde, jossa ylläpidetään kohteeseen liittyviä tietoja 1 OID (Object Identifier) http://en.wikipedia.org/wiki/object_identifier 2 URI (Universal Resource Identifier) http://en.wikipedia.org/wiki/uri 3 URN (Universal Resource Name) http://en.wikipedia.org/wiki/uniform_resource_name 4 URL (Universal Resource Locator) http://en.wikipedia.org/wiki/url 5 UUID (Universally Unique Identifier) http://en.wikipedia.org/wiki/uuid 6 SFS 5971 ISO OID yksilöintitunnukset http://www.sfs.fi 3/15
ja josta tietoa usein kopioidaan toisiin tietovarantoihin. Esimerkiksi henkilötunnusten lähde on Väestötietojärjestelmä. Nimiavaruus (Namespace) Nimiavaruus on loogisesti yhteenkuuluvien yksikäsitteisten tunnusten muodostama abstrakti joukko tai kokoelma. Notaatio (notation) Käytetty merkintätapa. Solmu (node) Tietorakenteen kohta, jossa siihen liittyy alemman tason rakenteita (Atk-sanakirja 2004). Toimipaikka Toimipaikalla tarkoitetaan tässä suosituksessa maantieteellisesti paikallista toimialayksikköä, joka on yhden yhteisön tai yrityksen tai yritystyyppisen yksikön omistama, yhdessä paikassa sijaitseva ja pääasiassa yhdenlaisia tavaroita tai palveluksia tuottava tuotanto- tai palveluja tuottava yksikkö. Useimmat yritykset ja yhteisöt ovat yksitoimipaikkaisia, mutta suurimmilla yhteisöillä tai yrityksillä voi olla satoja toimipaikkoja eri puolilla maata. Lisäksi nämä voivat toimia eri aloilla. Tunnus (identifier) Kohteelle annettava yksilöivä ominaisuus. Tunnusgeneraattori Manuaalinen tai automatisoitu järjestelmä, joka muodostaa tunnuksia yksikäsitteisyyden takaavalla menetelmällä (algoritmilla). Vastuutaho Nimiavaruudesta ja/tai sen tunnusgeneraattorista vastaava taho, joka huolehtii muodostettavien yksilöintitunnusten vaatimustenmukaisuudesta ja ylläpidosta. Y-tunnus Viranomaisten yritykselle ja yhteisölle antama tunnus, joka korvaa ennen käytössä olleen kaupparekisterinumeron, säätiörekisterinumeron ja LY-tunnuksen. Y-tunnuksessa eli yritys- ja yhteisötunnuksessa on seitsemän numeroa, väliviiva ja tarkistusmerkki eli se on muotoa 1234567-8. Y- tunnus yksilöi yrityksen, mutta tunnuksesta sinänsä ei voi päätellä, onko yritystä rekisteröity, vaan tieto pitää aina erikseen tarkistaa. (Valtioneuvoston asetus yritys- ja yhteisötietojärjestelmästä 29.3.2001/288 3 :ssä.). 4 Yksilöintitunnuksista ja yksilöintijärjestelmistä 4.1 Kohteiden yksilöinnistä Tietojenkäsittely, manuaalinen tai automatisoitu, tarkastelee erilaisia kohteita, näiden ominaisuuksia (attribuutteja) ja kohteiden välisiä suhteita. Kohteella tarkoitetaan esimerkiksi pysyviä kohteita (entiteettejä), joista esimerkkejä ovat henkilöt, yritykset, organisaatiot ja niiden osat, toimipaikat, tuotteet, laitteet jne. Kohteet voivat olla myös toiminnassa esiintyviä tapahtumia ja niiden tuloksia kuvaavia tietoja. Tällaisia tapahtumia kuvaavia tietoja ovat esimerkiksi tilaus, toimitus, lasku, asiakaskäynti, asiakirja jne. Kohteita kuvaavien ominaisuustietojen tallentamista ja hakemista varten on olennaista voida yksilöidä näitä kohteita yksikäsitteisesti. Yksilöintiin käytetään yksilöintitunnusta (identifier). Yksilöintitunnus erottaa kohteen kaikista muista samanlaisista kohteista. Yksilöintitunnuksen avulla on mahdollista tallettaa kohteeseen liittyviä ominaisuustietoja ja noutaa niitä myöhemmin esille. Yksilöintitunnuksen voidaan sanoa olevan kohteen sellainen ominaisuus, jota ei ole millään muulla samanlaisella kohteella. 4/15
4.2 Nimiavaruuksista JUHTA - Julkisen hallinnon tietohallinnon neuvottelukunta Samanlaisten kohteiden yksikäsitteisten yksilöintitunnusten muodostamaa joukkoa, joista vastaa yksi taho, kutsutaan nimiavaruudeksi. Kohteen yksilöintitunnukseen on tarpeen liittää myös nimiavaruuden yksilöintitunnus yksikäsitteisyyden takaamiseksi silloin, kun useamman tahon vastuulla on samanlaisten kohteiden yksilöinti. Esimerkiksi autojen rekisteritunnusten vastuutaho on Suomessa Ajoneuvohallintokeskus (AKE), joka vastaa suomalaisten ajoneuvojen rekisteritunnusten nimiavaruudesta. Suomen ulkopuolella on tarpeen varustaa ajoneuvo maatunnuksella, joka yksilöi sen nimiavaruuden, johon ajoneuvon rekisteritunnus kuuluu. Nimiavaruuteen kuuluvien kohteiden lisäksi myös itse nimiavaruudet ovat yksilöitäviä kohteita ja niidenkin yksilöintiin tarvitaan yksilöintitunnuksia. 4.3 Koodistoista Kohteita kuvaavat ominaisuustiedot, jotka voivat saada vain rajatun arvojoukon, voidaan koota luokitteluksi. Esimerkiksi henkilöt voidaan luokitella miehiin ja naisiin. Luokittelutieto on kohteen sellainen ominaisuus, joka voi olla usealla muullakin kohteella. Tietojenkäsittelyn helpottamiseksi on tapana käyttää koodistoja ilmaisemaan luokittelun mukaisia arvoja. Luetteloa koodiarvoista ja niitä vastaavista selitteistä on tapana kutsua koodistoksi. Selitteiden löytämistä ja ylläpitämistä varten myös koodistot on tarpeen yksilöidä yksikäsitteisesti. Koodistot siis ovat myös yksilöitäviä kohteita ja niidenkin yksilöintiin tarvitaan yksilöintitunnuksia. 4.4 Yksilöintitunnuksiin liittyvistä vaatimuksista Yksilöintitunnusten on täytettävä tiettyjä vaatimuksia, jotta ne voisivat palvella tehtäväänsä moitteettomasti. Tällaisia vaatimuksia ovat mm. Yksikäsitteisyys. Yksilöintitunnuksen tulee varmasti olla valitussa nimiavaruudessa, laajimmillaan maailmanlaajuisesti, yksikäsitteinen, ts. kahdella eri kohteella ei voi olla samaa yksilöintitunnuksen arvoa. Pysyvyys. Kohteelle annetun yksilöintitunnuksen tulee säilyä muuttumattomana kohteen koko elinkaaren ajan, vaikka kohteen muut ominaisuustiedot muuttuisivatkin. Ainutkertaisuus. Kerran annettua yksilöintitunnuksen arvoa ei anneta uudestaan toiselle kohteelle sillä alunperin yksilöidyn kohteen elinkaaren päättymisen jälkeenkään. Merkityksettömyys. Nimiavaruuden tunnusgeneraattorin kohteelle antamaan yksilöintitunnukseen ei liity mitään merkitystä, eikä annetusta yksilöintitunnuksesta pyritä päättelemään mitään merkitystä. Kaikki kohteeseen liittyvät muut ominaisuudet ilmaistaan muiden ominaisuustietojen avulla. Riittävyys. Valitun yksilöintitunnusten muodostamisjärjestelmän tulee tuottaa riittävä määrä yksikäsitteisiä tunnuksia. Yleensä tulisi varautua nimiavaruuteen, joka mahdollistaa yksilöintitunnusten kansallisen käytön. 4.5 Yksilöintijärjestelmistä Yksilöintitunnuksiin kohdistuvien vaatimusten täyttämiseksi käytetään erilaisia yksilöintijärjestelmiä, joiden tarkoituksena on ohjeistaa ja tukea yksilöintitunnusten muodostamista ja hallinnointia. Yksilöintijärjestelmiin liittyviä käsitteitä esittää oheinen kuva 1. 5/15
Kuva 1 Nimiavaruus Käsitteitä ovat mm. seuraavat: Nimiavaruus on loogisesti yhteenkuuluvien yksikäsitteisten tunnusten muodostama abstrakti joukko tai kokoelma. Yksilöintitunnuksia käytetään yksilöimään nimiavaruuteen liitettyjä kohteita. Yksilöintitunnukset muodostetaan yksikäsitteisyyden takaavalla menetelmällä (algoritmilla), tunnus- tai numerogeneraattorilla. Käyttöä, muutosten toteuttamista ja hallinnointia varten yksilöintitunnukset viedään tukirekisteriin. Sinne viedään myös yksilöidyn kohteen muita ominaisuustietoja. Nimiavaruuksien yksilöintiin käytettävät OID-tunnukset viedään OID-rekisteriin. Sinne kirjataan myös nimiavaruuksien vastuutahot. Esimerkkinä yksilöintijärjestelmästä on Suomen väestörekisterijärjestelmä. Yksilöitävät kohteet ovat Suomen kansalaiset ja Suomessa pysyvästi asuvat ulkomaalaiset henkilöt. Kohteen yksilöivä tunnus on henkilötunnus. Nimiavaruus muodostuu kaikista henkilötunnuksista. Henkilötunnusten muodostusalgoritmi perustuu syntymäpäivään ja päivän sisällä juoksevaan numeroon sekä tarkistusmerkkiin. Väestörekisterikeskus hallinnoi nimiavaruutta ja tunnusgeneraattoria, joka jakaa kyseiseen nimiavaruuteen kuuluvat tunnukset. Yksilöidyn kohteen eli Suomen kansalaisen muita attribuutteja ovat mm. nimi, syntymäpaikka, kotikunta, osoite jne. Tietojen hallinnointia varten attribuutteja ylläpidetään Väestötietojärjestelmässä (VTJ)7. VTJ on henkilötunnusten kansallinen lähderekisteri, jonka määrittämiä yksilöintitietoja käytetään monissa muissa rekistereissä, esimerkiksi sosiaali- ja terveydenhuollon järjestelmissä. Suomalaisen henkilötunnuksen osalta on todettava, että se ei täytä edellä esitettyä yksilöintitunnuksen merkityksettömyyden vaatimusta, koska henkilötunnuksesta on mahdollista päätellä henkilön syntymäaika ja sukupuoli. Henkilötunnusta on Suomessa pitkään käytetty henkilön todentamiseen, minkä vuoksi henkilötunnusta ei voida pitää julkisena yksilöintitietona. Henkilötunnuksen käytöstä on säädetty mm. henkilötietolaissa ja väestötietolaissa. Toinen esimerkki yksilöintijärjestelmästä on Suomen yritys- ja yhteisörekisteri. Nimiavaruus muodostuu yritys- ja yhteisötunnuksista eli Y-tunnuksista, joilla yksilöitävät kohteet ovat suomalaiset yritykset ja 7 Väestötietojärjestelmä http://www.vaestorekisterikeskus.fi/vrk/home.nsf/www/vtj 6/15
yhteisöt. Y-tunnus on julkinen yksilöintitieto. Y-tunnukset rekisteröidään Patentti- ja rekisterihallituksen sekä verohallinnon yhteiseen yritys- ja yhteisötietojärjestelmään (YTJ)8, jossa ylläpidetään yrityksiin ja yhteisöihin liittyviä attribuuttitietoja. YTJ on Y-tunnusten kansallinen lähderekisteri, jonka määrittämiä yksilöintitietoja käytetään monissa muissa rekistereissä. Kuva 2 Nimiavaruuksien yksilöinti Y-tunnuksen nimiavaruuden kohteiden joukko käsittää suomalaiset yritykset. Laajemman nimiavaruuden tarve tulee esimerkiksi kansainvälisen kaupan yhteydessä. Mm. arvonlisäverovelvollisuuden toteamista varten on EU:n alueella käytössä arvonlisäverotunniste (ALV-numero). Suomalaisesta Y-tunnuksesta saadaan kansainvälisessä nimiavaruudessa toimiva ALV-numero lisäämällä alkuun kaksikirjaiminen maatunnus FI (lisäksi Y-tunnuksessa oleva väliviiva jätetään pois). Näin nimiavaruuden sisältämien kohteiden joukkoa voidaan laajentaa lisäämällä kohteen yksilöintitunnukseen nimiavaruuden yksilöintitunnus. Toisaalta voidaan sanoa, että esimerkin EU -nimiavaruuden kohteet ovat maakohtaisia nimiavaruuksia, jotka yksilöidään maatunnuksella. 4.6 Yksilöintitunnuksen muodostamisvastuu Yksilöintitunnusten muodostamisvastuulla on periaatteessa kolme erilaista mallia. Keskitetty vastuu on kyseessä, kun halutussa nimiavaruudessa on vain yksi vastuutaho ja tämän tunnusgeneraattori tuottaa kaikki nimiavaruuden yksilöintitunnukset. Esimerkkejä ovat mm. suomalaisten yritysten ja yhteisöjen Y-tunnus ja suomalaisten kansalaisten henkilötunnus tai suomalaisten kuntien kuntakoodi. Hajakeskitetty vastuu on kyseessä, kun yksilöintitunnusten muodostaminen on jaettu usealle vastuutaholle. Kullakin on oma nimiavaruutensa, jonka tunnusgeneraattorin algoritmi varmistaa yksikäsitteisyyden kyseisessä nimiavaruudessa. Siihen liitetään ylemmältä tasolta annettava nimiavaruuden yksilöivä tunnus. Näin voidaan jatkaa, kunnes ollaan hierarkiapuun juuressa globaalilla tasolla. Hajakeskitettyjä yksilöintijärjestelmiä ovat mm. IP-osoitteet ja OID-järjestelmä. Hajautettu vastuu on kyseessä, kun vastuutahoja on useita ja jokaisella on oma 8 Yritys- ja yhteisötietojärjestelmä http://www.ytj.fi/ 7/15
tunnusgeneraattorinsa. Yksi menetelmä globaalin yksikäsitteisyyden varmistamiseksi on käyttää sellaista tunnusgeneraattorin algoritmia, joka tuottaa globaalisti yksikäsitteisiä tunnuksia. Esimerkkejä tällaisesta generaattorista ovat UUID- (Universally Unique Identifier) ja GUID (Globally Unique Identifier)-tunnukset. Näitä käytetään esimerkiksi ohjelmistokomponenttien yksilöintiin tietojärjestelmissä. Toinen menetelmä yksikäsitteisyyden varmistamiseen on tunnusten muodostaminen jollain tunnusgeneraattorilla ja selvittäminen globaalista rekisterijärjestelmästä, onko tunnus jo varattu vai vielä vapaa. Tällaisesta esimerkkinä on sähköpostiosoitteen tai www-domain -nimen rekisteröinti DNS-nimipalvelun avulla. 5 OID yksilöintijärjestelmä ja suositus sen käytöstä ISO OID -standardin mukaisten yksilöintitunnusten muodostamisen ja rekisteröinnin vastuu perustuu vastuun hierarkkiseen jakamiseen. Muodostamisvastuu jaetaan hierarkkisesti alenevasti, jolloin kukin solmu tarkoittaa muodostamisvastuun omaavaa tahoa. Yksilöintitunnuksia voidaan ajatella maailmanlaajuisena alaspäin laajenevana puurakenteena, jolla on globaalisti yksi juuri. Ylimpien tasojen hallinnoinnin vastuutahot on kuvattu standardissa ISO/IEC 9834-1:2005. Kansainvälisten tahojen alapuolella ovat kansallisten vastuutahojen hallinnoimat alipuut. Suomen OID-alipuun juurta hallinnoi Suomen Standardisoimisliitto SFS ry. Se myöntää ja rekisteröi Suomen juuren alla olevien vastuutahojen yksilöintitunnukset. Nämä vastuutahot puolestaan hallinnoivat oman alipuunsa yksilöintitunnuksia ja voivat jakaa hallinnointivastuuta edelleen. Rekisteröinnissä vastuutaho antaa yksilöitävälle kohteelle nimen (yksilöivän tunnuksen) ja asettaa sen sitä tarvitsevien tahojen saataville. 5.1 Suosituksen periaatteista Suosituksen lähtökohtia ovat mm. Suomen Y-tunnusalipuussa tulee noudattaa tämän suosituksen ohjeita. Suositus antaa ohjeet organisaatiokohtaisen OID-alipuun hallintaan. OID-yksilöintijärjestelmän käyttö tuottaa yksilöintitunnuksia, jotka täyttävät edellä kuvatut vaatimukset yksikäsitteisyydestä, pysyvyydestä, ainutkertaisuudesta, merkityksettömyydestä ja riittävyydestä. Suosituksen toteuttaminen on kustannustehokasta: Yksilöintitunnukset ovat yksinkertaisia muodostaa, niiden hallinta on kevyttä ja ne vaativat vähän ylläpitoa. Tunnusten rakenteessa ja tunnusgeneraattorin algoritmissa käytetään vain sellaisia sääntöjä, jotka ovat välttämättömiä yksikäsitteisyyden aikaansaamiseksi (eli minimoidaan sääntöjen tulkinnassa tarvittava työ ja sekaannusten vaara). Pyritään muutoskestävyyteen minimoimalla tarve muuttaa tunnusten rakennesääntöjä tai tunnusgeneraattorin algoritmia tai lähtöarvoja, vaikka yksilöitävän kohteen ympäristö, kuten esimerkiksi organisaatiorakenteet, muuttuvat. Yksilöinnissä käytettävän tunnushierarkian ei tule heijastaa suoraan organisaation rakennetta, koska organisaatiorakenne on altis muutoksille. Suositus on mahdollisimman riippumaton toimialasta, jolla sitä sovelletaan. 5.2 OID-yksilöintitunnuksen rakenne Puun solmut ja lehdet varustetaan yksilöivillä kokonaislukutunnuksilla. Puun lehdet edustavat yksilöitäviä kohteita. Kohteen yksilöintitunnus muodostuu luettelemalla puun solmuille annetut kokonaislukutunnukset pisteillä erotettuina puun juuresta kohdetta edustavaan lehteen asti. Puun tietyn solmun voidaan ajatella edustavan tiettyä nimiavaruutta, jonka kohteet muodostuvat solmun alla olevien oksien päissä olevista solmuista tai lehdistä. Kunkin solmun edustamaa nimiavaruutta hallinnoi vastuutaho, joka voi vapaasti valita nimiavaruuden kohteiden yksilöintitunnusten muodostusalgoritmin. Kullakin nimiavaruudella on 8/15
täsmälleen yksi vastuutaho. Toisaalta yksi vastuutaho voi hallinnoida useampiakin nimiavaruuksia. Yksikäsitteinen, halutun kohteen yksilöivä ISO OID-yksilöintitunnus muodostuu puusta, jonka rakenne on seuraava: Yksilöintitunnuksen muodostava Puu = Juuri.Solmu.Solmu.,,,.Solmu.Lehti Juuri yksilöi puun alla olevan nimiavaruuden. Globaalisti yksikäsitteiset OID-yksilöintitunnukset lähtevät kansainvälisesti sovitusta yhteisestä juuresta. Solmu yksilöi nimiavaruuden, joka sisältää siihen liittyvien kohteiden yksilöintitunnukset. Lehti yksilöi nimiavaruuteen kuuluvan kohteen. Kohteita voivat olla: Pysyvät kohteet, kuten henkilöt, yritykset tai yhteisöt, organisaatiot tai niiden osat, toimipaikat, tuotteet, laitteet, esineet jne. Tapahtumiin liittyvät tiedot, kuten tilaukset, toimitukset, laskut, palvelutapahtumat, asiat, asiakirjat jne. Koodistot, jotka sisältävät luokituksia, sanastoja jne. Muut yksilöintiä tarvitsevat kohteet. Lehden yksilöimä kohde voi myös edustaa nimiavaruutta. Lehdestä voidaan muodostaa solmu lisäämällä sen perään piste, jonka jälkeen tulevat tässä uudessa nimiavaruudessa olevat yksilöitävät kohteet. Lähtökohtana on, että OID-tunnukset rekisteröidään OID-rekisteriin., johon viedään myös OID-tunnuksiin liittyviä attribuutteja. Esimerkki OID-rekisteristä löytyy osoitteesta http://www.oid-info.com/. Tunnus muodostuu positiivisista kokonaisluvuista (eivät sisällä etunollaa) tai nollasta, jotka erotetaan toisistaan pisteellä (esim. OID-yksilöintitunnus 1.2.246 on Suomen juuri). Tietojärjestelmissä OIDyksilöintitunnuksille juuresta lehteen tulee varata vähintään 64 merkkiä. Tietojärjestelmissä käsiteltävän OID-tunnuksen esitysmuodon oikeellisuus yleensä tarkistetaan. 5.3 Kohteen yksilöintitunnuksen (lehden) liittäminen OID-puuhun Tietyissä tilanteissa OID-tunnuksella halutaan yksilöidä nimiavaruus, ja erikseen esittää nimiavaruuteen kuuluvan kohteen yksilöintitunnus. Esimerkiksi nimiavaruuden OID-tunnus voisi olla organisaation asiakirjadiaarin tunnus ja kohteen tunnus voisi olla asiakirjalle annettava tunnus. Paikallisessa käytössä asiakirjan tunnus riittää yksikäsitteiseen yksilöintiin, mutta kun asiakirja viedään esim. poikkiorganisatorisessa käytössä olevaan arkistoon, on asiakirjan tunnuksen yhteydessä ilmaistava kyseisen nimiavaruuden tunnus yksikäsitteisyyden takaamiseksi. Tarve nimiavaruuden ja siihen sisältyvän kohteen yksilöintitunnusten pitämiseen erillisinä voi tulla esimerkiksi siitä, että nimiavaruudessa käytettävät tunnukset eivät ole numeerisia. Kohteen tunnusta ei voi silloin liittää OID-puun loppuun lehdeksi, koska se ei täyttäisi OID-puun muotosääntöjä. Toisissa tilanteissa käytössä olevan tunnusjärjestelmän yksilöintitunnuksista halutaan muodostaa OID-puun solmuja. Yksi näistä tilanteista on Y-tunnusten sijoittaminen OID-puun solmuksi, jotta sen alle voidaan sijoittaa Y-tunnuksen haltijan vastuulla olevia nimiavaruuksia. Y-tunnus sisältää väliviivan ja voi alkaa nollalla, joten sitä ei sellaisenaan voi liittää OID-puun solmuksi. Y-tunnuksesta voidaan muokata OIDpuuhun kelpaava tunnus poistamalla siitä väliviiva ja mahdollinen etunolla vaarantamatta kuitenkaan sen yksikäsitteisyyttä. Vastaavasti henkilötunnuksesta on mahdollista muodostaa tarkoitukseen sopivalla algoritmilla kokonaan numeerinen esitysmuoto, joka olisi mahdollista sijoittaa OID-puuhun solmuksi. 9/15
5.4 Koodistojen yksilöinti ja koodiarvojen esittäminen Tietojärjestelmissä on tapana käyttää koodistoja luokittelemaan ja kuvaamaan erilaisia asioita. Koodattua tietoa käytettäessä organisaatioiden välisessä tietojenvaihdossa on tarpeen myös yksilöidä käytetty koodisto, josta koodiarvo on peräisin. 5.5 Y-tunnusten perusteella muodostetun Suomen OID-alipuun rakenne Suomen juuren OID-tunnus on 1.2.246. SFS antaa yksilöintitunnukset tähän nimiavaruuteen kuuluville kohteille. SFS:n hallinnoiman Suomen OID-alipuun rakenne ja hallinnointi on määritelty standardissa SFS 5971 ISO OID yksilöintitunnukset 9. Suomen juuren (246) alle tulevat SFS:ltä varatut nimiavaruudet kuten esimerkiksi yritys- ja yhteisötunnus (Y-tunnus) (10), jonka vastuutaho on PRH, sekä henkilötunnus (21) sekä sähköinen asiointitunnus (22), joiden vastuutaho on VRK. Y-tunnuksen perusteella muodostetun OID-alipuun vastuutaho on ko. y-tunnuksen haltija, eli yritys tai yhteisö. Kuva 3 Yritys- ja yhteisökohtainen OID-alipuu, johon suositusta sovelletaan Y-tunnuksen perusteella muodostettujen OID-alipuiden yksilöintitunnusten hallinnassa tulee noudattaa seuraavia sääntöjä: Y-tunnuksen perusteella muodostetun OID-alipuun nimiavaruudet 1.2.246.10.Y.0 ja siitä eteenpäin ovat vastuutahon (yrityksen, yhteisön) vapaasti käytettävissä. Näiden hallinnoinnissa suositellaan noudatettavaksi tämän suosituksen yleisiä periaatteita. 9 SFS 5971 ISO OID yksilöintitunnukset http://www.sfs.fi 10/15
Organisaatio voi siis käyttää OID-yksilöintiin omassa Y-tunnusalipuussaan mielivaltaisesti kaikkia nimiavaruuksia, ja muodostaa tarvittavia hierarkioita, eli syvempiä OID-alipuurakenteita. Toimialakohtaisesti voidaan käyttää tarkempia ohjeita, joita soveltavan organisaation tulee huolehtia niiden yhteensovittamisesta muuhun toimintaansa. Kuva 4 Y-tunnusalipuun nimiavaruudet (Y-tunnukset on muutettu OID-yhteensopiviksi) Vastuutaho voi esimerkiksi varata nimiavaruudet 1.2.246.10.Y.1 alkaen juoksevasti tunnusgeneraattoreille riippumatta yksilöitävien kohteiden tyypistä. Tunnusgeneraattorit saisivat kukin oman nimiavaruuden, esim. 1.2.246.10.Y.1 (tunnusgeneraattori 1) 1.2.246.10.Y.2 (tunnusgeneraattori 2) 1.2.246.10.Y.3 (tunnusgeneraattori 3) jne. Tunnusgeneraattorien 1-3 yksilöimät kohteet (lehdet) saisivat yksilöintitunnukset seuraavasti: 1.2.246.10.Y.1.1, 1.2.246.10.Y.1.2, 1.2.246.10.Y.1.3, jne. 1.2.246.10.Y.2.1, 1.2.246.10.Y.2.2, 1.2.246.10.Y.2.3, jne. 1.2.246.10.Y.3.1, 1.2.246.10.Y.3.2, 1.2.246.10.Y.3.3, jne. Varaamalla oma alipuu jokaiselle tunnusgeneraattorille voidaan varmistaa tunnusten riittävyys ja yksilöintitunnusavaruuden tehokas käyttö. 11/15
6 OID-yksilöintitunnuksen hallinnoinnin näkökohtia 6.1 Vastuutaho ja vastuun jakaminen OID-yksilöintitunnusten alipuun hallinnoinnin vastuutaho vastaa koko nimiavaruudestaan (so. siitä alipuusta, joka alkaa ylemmän vastuutahon antamasta solmusta) ja siihen kuuluvien kohteiden tunnusten yksikäsitteisyydestä. Hallinnointivastuuta ei ole välttämätöntä jakaa edelleen, mikäli vastuutahon yksilöintitarpeet kohdistuvat lukumäärältään vähäisiin nimiavaruuksiin, joissa on matala sisäinen hierarkia, eli nimiavaruudet sisältävät pääasiassa yksilöitäviä kohteita (lehtiä). Vastuutaho voi tarvittaessa jakaa hallinnointivastuuta omasta alipuustaan edelleen toiselle vastuutaholle. Vastuun jakamisen perusteena on yksilöintivastuun vieminen mahdollisimman lähelle yksilöitäviä kohteita (puun lehtiä) yksikäsitteisyyden varmistamiseksi ja tehokkaan operatiivisen toimintatavan mahdollistamiseksi. OID-yksilöintitunnusten nimiavaruus on ainutkertainen rajallinen resurssi, jonka riittävyys eri yksilöintitarpeisiin on varmistettava tarkoituksenmukaisella, mutta riittävällä hierarkialla. Vastuun jakaminen on useimmiten tarkoituksenmukaisinta toteuttaa manuaalisesti, mutta sen tukena tulee olla dokumentaatio tai tietojärjestelmä, josta alipuun rakenne ja vastuujako on saatavissa ajantasaisena ja yksikäsitteisenä tietona. Vastuutahon ollessa yritys, yhteisö tai muu organisaatio on sen usein tarkoituksenmukaista muodostaa omaan alipuuhunsa uusia nimiavaruuksia hallinnointivastuun jakamista varten. Nimiavaruuksien muodostamisessa tulee noudattaa kappaleessa 5.2 esitettyä periaatetta. Esimerkiksi kunta voi hallinnoida nimiavaruuttaan antamalla kullekin toimialalleen yksilöivän tunnuksen eli oman alipuun, esimerkiksi keskushallinto = 1, sivistystoimi = 2, sosiaali- ja terveystoimi = 3, tekninen ja ympäristötoimi = 4. Kuntien organisaatiot ja toimialat vaihtelevat suuresti, joten ei ole tarkoituksenmukaista pyrkiä käyttämään samoja toimialojen tunnuksia kaikissa kunnissa. Vastuutahon tulee olla tietoinen hallitsemansa alipuun vastuujaosta ja varmistaa, ettei yksilöintitunnusten hallinnoinnissa pääse syntymään yksilöinnin periaatteiden vastaisia toteutuksia tai nimiavaruuksien päällekkäisyyksiä esimerkiksi eri toimialojen mahdollisesti noudattamien erilaisten yksilöintikäytäntöjen tähden. Organisaatioiden tulee noudattaa alipuun hallinnassa ja jakamisessa edellä mainittuja periaatteita tarkentavia toimialakohtaisia suosituksia tai ohjeita, mikäli sellaisia on saatavissa. 6.2 Yksilöintitunnusten elinkaaren hallinta OID-yksilöintitunnusten elinkaaren hallintaa on määritelty standardissa SFS 5971 ISO OID yksilöintitunnukset. Erityisesti OID -yksilöintitunnuksilla nimettyjen rakenteiden muuttuessa kutakin alipuuta hallinnoivan tahon tehtävänä on varmistaa OID -yksilöintitunnusten yksikäsitteisyyden säilyminen. Rakenteiden muuttuessa punnitaan yksilöintijärjestelmän toteutuksen kustannustehokkuus. Yksilöintitunnusten hallintamallin muutoskestävyys säästää kustannuksia muutostilanteissa. Ideaalitilanteessa ei ole tarvetta muuttaa yksilöintitunnusten rakennesääntöjä, tunnusgeneraattorin algoritmia tai lähtöarvoja, kun yksilöitävän kohteen ympäristö muuttuu. Tähän voidaan päästä, kun yksilöitävien kohteiden OID- yksilöintitunnukset pidetään erillään yksilöitävien kohteiden keskinäisestä hierarkiasta ja kohteiden muista ominaisuuksista. Kaikki muutoksille alttiit yksilöitäviin kohteisiin liittyvät tiedot tulisi esittää attribuutteina, eikä yksilöintitunnuksen rakenteessa. Esimerkiksi organisaation yksiköiden suhdetta toisiinsa kuvataan sitä kuvaavalla ominaisuustiedolla, ei yksilöintitunnuksella. Kohteen attribuuttina voi olla tieto kohteen omistavasta organisaatiosta. Omistajan muuttuessa vastuutaho päivittää kohteen attribuuttitietoa, mutta yksilöintitieto voidaan säilyttää ennallaan. Jos vastuutahon Y-tunnus muuttuu, on suosituksena käyttää vastuutahon uuden Y-tunnuksen mukaan muodostettua OID-alipuuta kohteiden yksilöinnissä muutoshetkestä alkaen. Periaatteena on, että jo yksilöityjen kohteiden tunnuksia ei tule muuttaa. Yksilöintitunnuksia ei tule muuttaa kohteen ulkoisten ominaisuuksien muuttuessa eikä edes numeroavaruuden hallinnointivastuun vaihtuessa. Yksilöityihin kohteisiin saattaa olla yksilöintitunnukseen perustuvia (yksisuuntaisia) viittauksia useissa eri 12/15
tietojärjestelmissä, jolloin yksilöintitunnuksen muuttaminen toiseksi aiheuttaisi todennäköisesti hallitsemattomia tai työläästi hallittavia muutoksia useaan tietojärjestelmään. Jos kohde vaihtuu olemukseltaan kokonaan toiseksi, tunnuksen muuttaminen voi olla aiheellista. Vastuutaho päättää muutoksesta harkinnan perusteella. Vastuutaho voi antaa muutoksen yhteydessä mahdollisesti uudistetun yksilöintitunnusten hallinnointimallin mukaisia uuteen nimiavaruuteen annettavia yksilöintitunnuksia tietystä ajanhetkestä alkaen uusia kohteita yksilöitäessä. OID-yksilöintitunnuksen perusteella voi olla mahdollista päätellä paikallisesti eli yksilöinnin paikalliset hallinnointisäännöt tuntemalla yksilöintihetken vastuutaho, mutta tämä tieto ei välttämättä ole ajan tasalla tarkasteluhetkellä. Suosituksena on, että yksilöintitunnuksista ei pyritä päättelemään kohteen ominaisuuksia, vaan siihen tarkoitukseen käytetään jäljempänä kappaleessa 6.4 mainittuja tukirekistereitä. 6.3 Tunnusgeneraattorit Kutakin nimiavaruutta varten tarvitaan tunnusgeneraattori, joka tuottaa yksikäsitteisiä tunnuksia. Tunnusten muodostamiseen on tarkoituksenmukaista käyttää yksinkertaista ja selkeätä algoritmia. Tunnusgeneraattorit suositellaan toteutettavaksi mahdollisimman automaattisen toiminnan mahdollistavina ohjelmistoina tai tietojärjestelminä, koska usein jo yksilöitävien kohteiden lukumäärä ja yksilöintitapahtumille asetetut vasteajat sulkevat pois manuaalisen hallinnan mahdollisuuden. Tunnusten muodostamisessa suositeltavia näkökohtia ovat mm: Riittävyys: Tunnusgeneraattorin muodostamien tunnusten arvojoukko on riittävän suuri, ts. tunnukset eivät lopu kesken. Tunnusgeneraattorien käyttämien numeroavaruuksien riittävyys on suositeltavaa varmistaa riittävällä hierarkialla eli luomalla kullekin yksilöitävien kohteiden joukolle oma nimiavaruus. Kansallisten solmuluokkien alle tulee jokaiselle tunnusgeneraattorille varata oma nimiavaruus. Joissakin tapauksissa on nimiavaruuksia hallinnoitu saman yksilöintitunnuksen alla antamalla eri osa-alueille tietyt numerosarjat, esimerkiksi sadan välein. Tämä saattaa toimia, mutta ei ole suositeltavaa, koska a) numerosarja voi teoriassa loppua kesken ja b) kyseistä numeroavaruutta ja sen vastuutahoa ja muita attribuutteja on vaikea viedä numeroavaruuksien hallinnoinnissa käytettäviin rekistereihin, koska sovitut arvot sisältävällä numeroavaruudella itsellään ei ole yksilöivää tunnusta. Yksikäsitteisyys, pysyvyys ja ainutkertaisuus: Tunnusgeneraattorin antamat arvot ovat yksikäsitteisiä, ts. samaa tunnusta ei anneta uudestaan millekään toiselle kohteelle. Tästä on tärkeätä huolehtia myös erilaisten häiriötilanteiden ja niistä toipumisen yhteydessä. Ääriesimerkki on tunnuksia jakavan tietojärjestelmän pettäminen ja toiminnan siirtyminen käyttämään varajärjestelmää. Yksilöintitunnuksen rakenteen ja hallintamallin muutoskestävyys kohteen ympäristössä tapahtuville muutoksille tukee yksilöinnin kustannustehokasta toteutusta. Merkityksettömyys: Tunnusgeneraattorin antamiin arvoihin ei liity mitään semantiikkaa, eikä niistä pyritä päättelemään mitään ohjelmallisesti tai niitä katsomalla. Kaikki yksilöityihin kohteisiin liittyvät attribuutit, eli kohdetta luokittelevat tai kuvailevat tiedot, talletetaan tukirekistereihin, joista niitä voidaan käyttää esimerkiksi haettaessa tietyt ominaisuudet täyttävää yksilöityä kohdetta. Yhdenmukaisuus: Tunnusgeneraattorin algoritmien tulee noudattaa edellä mainittuja periaatteita tarkentavia toimialakohtaisia suosituksia tai ohjeita, mikäli sellaisia on saatavissa. 6.4 Tukirekisterit Yksilöintitunnusten muodostamista, hallinnointia ja käyttöä varten tarvitaan tukirekistereitä. Jokaista nimiavaruutta kohti tulee olla tukirekisteri, josta selviävät nimiavaruuteen liittyvät attribuutit sekä nimiavaruuteen kuuluvien kohteiden attribuutteja. Nimiavaruuteen liittyviä attribuutteja ovat mm. Alipuun OID-tunnus (globaaliin juureen saakka) esim. 1.2.246.10.1234567.1. Vastuutaho (organisaatio, yhteyshenkilöt, yhteystiedot). 13/15
Viittaus ylemmän tason vastuutahoon (Y-tunnuksen 1234567 haltija), joka on antanut hallinnoimastaan alipuusta 1.2.246.10.1234567 yhden haaran (.1) vastuutaholle hallittavaksi. Tukirekisterin on hyvä sisältää myös tiedot oman puun (ulkoistus) tai alipuun vastuun jakamisesta toisille tahoille. Tukirekisterissä tulisi tätä varten olla viittaus tai viittaukset alemman tason vastuutahoihin, joille alipuun hallinnoija on jakanut omasta alipuustaan nimettyjen alipuiden hallinnointivastuun, esim. 1.2.246.10.1234567.1.1 ja 1.2.246.10.1234567.1.2. Kuvaus tunnusgeneraattorista. Kuvaus yksilöitävistä kohteista, esim. niiden luokitus. Yksi tukirekisteri voi sisältää useamman kuin yhden nimiavaruuden tiedot. Esimerkiksi yritys voi pitää yllä tukirekisteriä, josta käyvät ilmi kaikkien ko. yrityksen Y-tunnusalipuun nimiavaruuksien tiedot. Ideaalitilanteessa tukirekisterit olisivat hierarkkisesti ketjutettavissa olevia sähköisiä verkkopalveluita, jolloin nimiavaruuksien hallinnointivastuuta olisi mahdollista seurata lehdistä solmujen kautta juureen saakka. Nimiavaruuksien seuraaminen toiseen suuntaan, juuresta solmujen kautta lehtiin, olisi myös mahdollista toteuttaa, mutta näkymän syvyyttä rajoittavat todennäköisesti organisaatioiden väliset hallinnointialueiden rajat ja niihin kytketyt pääsyoikeudet. Esimerkiksi kunnalla tulee olla OID-yksilöintitunnusten hallinnan tukirekisteri, josta selviää kunnan nimiavaruuteen kuuluvat toimialat ja näiden yksilöintitunnukset. Kullakin toimialalla puolestaan voi olla oma rekisterinsä omista toimipaikoistaan. 6.5 Esimerkkejä OID-yksilöintitunnuksen käytöstä Esimerkkejä erityyppisten kohteiden kuten asiakirjojen, järjestelmien ja toimipaikkojen yksilöinnistä on annettu suosituksen liitteessä 1. 7 Opastavat tiedot Tätä suositusta ylläpitää Julkisen hallinnon tietohallinnon neuvottelukunta JUHTA, puh (09) 16001, sähköposti: jhs-sihteeri@jhs-suositukset.fi JHS-järjestelmän verkkosivut: http://www.jhs-suositukset.fi/ Suomen Standardisoimisliitto SFS ry PL 116, 00241 HELSINKI puh. (09) 149 9331 sähköposti: sfs@sfs.fi http://www.sfs.fi/ OID-yksilöintitunnusten osalta lisätietoja: http://www.sfs.fi/palvelut/tunnukset/ OID-yksilöintijärjestelmä Wikipediassa: http://fi.wikipedia.org/wiki/oid Tietoja kansainvälisestä OID-hakemistosta: http://www.oid-info.com/ 14/15
7.1 Liitteet Liite 1: Esimerkkejä OID-yksilöintitunnuksen käytöstä Liite 2: Esimerkkejä yksilöintijärjestelmistä Liite 3: Muutokset edelliseen JHS 159 suosituksen versioon 15/15