ISO/IEC 17025: History and introduction of concepts
EAN-13-viivakoodi on 13-merkkinen standardoitu viivakoodi, joka on laajennus alun perin Yhdysvalloissa kehitetystä 12-numeroisesta Universal Product Code -koodista (UPC).[1] EAN-13-viivakoodit määrittelee standardointijärjestö GS1.
Viivakoodin nimi oli aluksi European Article Number (eurooppalainen tavaranumero). Myöhemmin sen nimeksi vahvistettiin International Article Number (kansainvälinen tavaranumero), mutta lyhenne EAN säilyi.
EAN-13 -viivakoodeja käytetään maailmanlaajuisesti vähittäiskaupassa yleisesti myytyjen tuotteiden tunnuksina. Viivakoodeilla merkityt numerosarjat ovat tuotekohtaisia tunnistenumeroita, joita Japanissa sanotaan myös japanilaisiksi tavaranumeroiksi (JAN). Kaikki numerot, jotka koodataan UPC- tai EAN- viivakoodeilla, tunnetaan nimellä GTIN (Global Trade Item Number, maailmanlaajuinen kauppatavaranumero, ja ne voidaan koodata myös muilla GS1-viivakoodeilla.
EAN-13-viivakoodin ohella on käytössä myös EAN-8-viivakoodi. Sitä käytetään lähinnä joillekin pienemmille tuotteille kuten makeisille.
EAN-13-koodiin lisätään joskus ylimääräinen kaksinumeroinen EAN-2- tai viisinumeroinen EAN-5-koodi, jolloin saadaan yhteensä 14- tai 17-merkkinen koodi. Näitä käytetään lähinnä aikakauslehdelle niiden eri numeroiden erottamiseksi toistaan, kirjoille sekä kaupassa punnittaville elintarvike- ym. tuotteille niiden painon ilmaisemiseen.
GTIN-13-numerot
Numerosarjan osat
Viivakoodilla koodattu GTIN-13 -numerosarja muodostuu neljästä osasta:
- GS1-etuliite, kaksi tai kolme ensimmäistä numeroa, osoittaa yleensä sen kansallisen GS1:n jäsenjärjestön, johon tavaran valmistaja on rekisteröitynyt; ei kuitenkaan välttämättä samassa maassa, jossa tavara todellisuudessa on valmistettu.[2] Kun kirjan ISBN-numero muunnetaan EAN-13 -numerosarjaksi, GS1-etuliite on 978 tai 979. Etuliite 979 vastaa myös ISMN-numeroita, kun taas ISSN-numerot muunnetaan 977-alkuisiksi EAN-13-koodeiksi.
- Yhtiönumero käsittää kolmesta kahdeksaan numeroa riippuen siitä, kuinka monta tunnistetta yhtiö tarvitsee tuotteidensa yksilöimiseen. ISBN- ja ISSN-numeroiden yhteydessä tämä osa yksilöi julkaisun kielen tai maan, jossa teos on julkaistu, sekä edelleen julkaisijan; monilla mailla on kuitenkin useampia ISSN- ja ISBN-numeroiden maatunnuksia.
- Tuotetunnus käsittää kahdesta kolmeen numeroa ja erottaa saman valmistajan eri tuotteet toisistaan, tai ISBN- ja ISSN-koodien tapauksessa eri julkaisut.
- Yksinumeroinen tarkistusmerkki koodin lopussa. Numero lasketaan kertomalla numerosarjan muut numerot vuorotellen 3:lla tai 1:llä, laskemalla näin saadut tulot yhteen, ottamalla saadusta luvusta jakojäännös kymmenellä jaettaessa ja vähentämällä tämä jakojäännös kymmenestä.[3]
Numerosarjaa kokonaisuudessaan käytetään hakuavaimena, jonka avulla tuotteen tiedot haetaan tietokannasta. Numeroa ei normaalisti koskaan jaeta osiinsa vähittäiskauppojen tietojärjestelmissä.
GS1-etuliitteet
GTIN-koodin kaksi tai kolme ensimmäistä numeroa osoittavat sen GS1:n jäsenjärjestön, johon valmistaja on liittynyt. Harvoin esiintyvät nollalla alkavat EAN-13-koodit tarkoittavat 12-numeroisia UPC-koodeja, joiden alkuun on lisätty nolla, ja ne koodataan viivakoodeiksi samalla tavalla.
Maakoodit 200-299 ovat oma lukunsa: useimmat GS1:n jäsenjärjestöt ovat varanneet nämä vähittäiskauppaketjujen tai muiden yritysten sisäiseen käyttöön. Jotkut vähittäiskaupat käyttävät näitä omiin tuotteisiinsa, toiset taas ainakin osaa näistä kaupassa pakatuille tuotteille. Viivakoodi voi sisältää tuotteen tunnisteen lisäksi sen hinnan, määrän tai painon kaupan määrittämällä tavalla. Kauppaketjut, jotka aikaisemmin ovat käyttäneet UPC-viivakoodeja, ovat yhä yleisemmin ryhtyneet käyttämään GS1-etuliitteitä 04 tuotteille ja 02 kaupassa pakatuille tuotteille.
Tarkistusmerkin laskenta
Tarkistusmerkki on laskettava numerosarjan muiden numeroiden avulla, ennen kuin viivakoodi voidaan muodostaa. Tarkistusmerkki lasketaan kertomalla numerosarjan kukin numero painokertoimilla ja laskemalla näin saadut luvut yhteen. Tarkistusmerkiksi asetetaan luku, joka näin saatuun summaan on lisättävä, jotta saataisiin kymmenellä jaollinen luku.[3]
Painokertoimet
EAN-koodin kunkin numeron painokerroin on joko 3 tai 1, jotka vuorottelevat siten, että viimeisen tarkistusmerkkiä edeltävän numeron painokerroin on 3.[3] Samaa algoritmia käytetään muillekin GTIN-numeroille ja merikuljetuskonttien sarjanumeroille (SSCC). EAN-13-koodissa paino on 3 parillisissa ja 1 parittomissa positioissa; EAN-8-koodissa asian laita on päinvastoin.[4] Kaikki GTIN - ja SSCC-koodit saavat painoarvonsa seuraavan taulukon mukaisesti oikeasta laidasta lukien:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 |
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 |
Laskuesimerkkejä
Esimerkki: EAN-8-koodille, joka ilman tarkistusmerkkiä on 7351353, saadaan seuraavat painokertoimet:
Position | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
Weight | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 |
Code | 7 | 3 | 5 | 1 | 3 | 5 | 3 | ||||||||||
Sums | 21 | 3 | 15 | 1 | 9 | 5 | 9 |
Tämän viivakoodin summa on siis 21+3+15+1+9+5+9 = 63. Tähän on lisättävä 7, jotta saataisiin 10:llä jaollinen luku (70). Näin ollen tarkistusmerkiksi tulee 7. Numerosarja kokonaisuudessaan on siis 73513537
Numerosarjan muuntaminen viivakoodiksi
Kun EAN-13-numerosarja muunnetaan viivakoodiksi, numerot jaetaan ensin kolmeen ryhmään. Ensimmäisen niistä muodostaa ensimmäinen numero yksinään, toisen kuusi seuraavaa ja kolmannen kuusi viimeistä numeroa. Ensimmäisessä kuuden numeron ryhmässä numerot koodataan viivakoodin osiksi kahdella eri tavalla, joista toisella (L-koodit) on parillinen ja toisella (G-koodit) pariton pariteettibitti. Ensimmäinen numero ei sellaisenaan näy viivakoodissa, vaan se ilmaistaan sillä, kumpaa näistä koodaustavoista on käytetty millekin seuraavista kuudesta numerosta, alla olevan taulukon mukaisesti. Kuusi viimeistä numeroa koodataan aina samalla tavalla (R-koodit), jota käytetään myös UPC-viivakoodeissa.
Jos ensimmäinen numero on nolla, kaikki ensimmäisen kuuden numeron ryhmän numerot koodataan samoin kuin UPC-koodissa; sen vuoksi UPC-viivakoodi on samalla EAN-viivakoodi, jonka ensimmäinen numero on nolla.
Ensimmäinen numero | Ensimmäinen kuuden numeron ryhmä | Toinen kuuden numeron ryhmä |
---|---|---|
0 | LLLLLL | RRRRRR |
1 | LLGLGG | RRRRRR |
2 | LLGGLG | RRRRRR |
3 | LLGGGL | RRRRRR |
4 | LGLLGG | RRRRRR |
5 | LGGLLG | RRRRRR |
6 | LGGGLL | RRRRRR |
7 | LGLGLG | RRRRRR |
8 | LGLGGL | RRRRRR |
9 | LGGLGL | RRRRRR |
Numero | L-koodi | G-koodi | R-koodi |
---|---|---|---|
0 | 0001101 | 0100111 | 1110010 |
1 | 0011001 | 0110011 | 1100110 |
2 | 0010011 | 0011011 | 1101100 |
3 | 0111101 | 0100001 | 1000010 |
4 | 0100011 | 0011101 | 1011100 |
5 | 0110001 | 0111001 | 1001110 |
6 | 0101111 | 0000101 | 1010000 |
7 | 0111011 | 0010001 | 1000100 |
8 | 0110111 | 0001001 | 1001000 |
9 | 0001011 | 0010111 | 1110100 |
Näissä taulukoissa nollat vastaavat viivakoodin valkoisia ja ykköset mustia raitoja. Jokaista R-koodia vastaa saman numero L-koodi siten, että jokainen koodin nolla vaihdetaan ykköseksi (valkoinen viiva mustaksi) ja päinvastoin. G-koodit taas ovat samoja kuin R-koodit takaperin.
Viivakoodin alussa, keskellä ja lopussa on lisäksi kaksi muita pidempää, yhden yksikön levyistä mustaa kohdistusviivaa, jotka eivät vastaa mitään numeroa. Niiden perusteella viivakoodinlukija tunnistaa yksikön koon ja käytetyn järjestelmän.[3]
Kirjojen tunnisteet
Julkaistuja kirjoja varten otettiin 1980-luvulla käyttöön EAN-"maakoodi" 978 ja myöhemmin myös "maakoodi" 979. Näitä käytetään kirjojen EAN-koodeissa riippumatta siitä, missä maassa ne on julkaistu. Täten kirjojen EAN-koodien loppuosana voidaan käyttää ISBN-numeroa tarvitsematta numeroida niitä erikseen EAN-kooditusta varten. Samanlaisia järjestelyjä on otettu käyttöön myös aikakauslehtien ISSN-koodeille ja nuottijulkaisujen ISMN-koodeille.
Lähteet
- ↑ Alumni Hall of Fame Members University of Maryland Alumni Association. The University of Maryland. Arkistoitu 23.6.2007. ”Valmistuttuaan Marylandissa vuonna 1951 George Laurer toimi IBM:llä nuorempana insinöörinä ja eteni vähitellen vanhemmaksi insinööriksi. Vuonna 1969 hän palasi insinöörityön tekniselle puolelle ja nimitettiin myöhemmin monumentaaliseen työhön koodien ja symbolien laatimiseksi tuotteiden tunnistukseen Uniform Grocery Product Code Council'ia varten. Hänen ratkaisunsa, Universal Product Code, muutti perusteellisesti vähittäiskaupan. Myöhemmin hän on laajentanut koodia lisäämällä siihen 13:nnen numeron.” Viitattu 3.11.2011.
- ↑ Prefix List GS1..
- ↑ a b c d Tarkistusmerkkien laskentamenetelmiä - tuotekoodi Teppo Vuori. Viitattu 17.11.2011.
- ↑ Check Digit Calculator, GS1.
Aiheesta muualla
- Ladattava Open Source -viivakoodigeneraattori EAN-13:lle (C++, VB, Excel Macros, etc.)
- Barcode Perl -ohjelmia CPAN:ssa
- Esimerkki EAN8/13-toteutuksesta
- EAN MediaWiki extension (Arkistoitu – Internet Archive), MediaWiki-laajennus, joka havainnollistaa EAN-13/EAN-8/UPC-A/Code39/Codabar -viivakoodeja, kun annetaan vain wiki-tekstissä olevat numerot tai symbolit.
- EAN database
- upcdatabase, toinen online -viivakooditietokanta (Arkistoitu – Internet Archive)
- Online tarkistustyökalu ja graafinen EAN-8- ja EAN-13-viivakoodigeneraattori (Arkistoitu – Internet Archive)
- Ohjelma, joka muuntaa annetun numerosarjan viivakoodiksi