Menü

ISBN ISSN kontrol basamağı: kitap ve süreli yayın numaralarında ne değişir

Kitap ve süreli yayın numaralarında kontrol basamağının nasıl üretildiğini, iki kitap numarası sisteminin farkını, harf X ile gösterilen durumu ve ayırıcıların neden sorun çıkardığını anlatıyoruz.

Yayın tarihi

  • ISBN
  • ISSN
  • yayın numarası

ISBN ISSN kontrol basamağı, kitap ve süreli yayın numaralarının son karakterinin diğer karakterlerden hesaplanmasıdır. Bu yazıda bu hesabın ortak mantığını, kitap numaralarında kullanılan iki sistemin nerede ayrıldığını, son karakterin neden bazen bir harf olduğunu ve ayırıcıların doğrulamayı nasıl bozduğunu bulacaksınız.

Bu numaralarda son karakter nasıl hesaplanır?

Hem kitap hem süreli yayın numaraları son karakterlerinde bir kontrol değeri taşır. Hesabın mantığı tanıdıktır: numaranın kontrol dışındaki karakterleri sırayla artan veya azalan ağırlıklarla çarpılır, çarpımlar toplanır ve toplam bir modüle göre değerlendirilerek son karakter üretilir.

Bu iki numara türünü birbirine yaklaştıran şey, hesabın aynı aileden gelmesidir. Ağırlıkların sırayla değişmesi, tek karakter hatalarının yakalanmasını sağlar; ağırlıklar birbirinden farklı olduğu için komşu iki karakterin yeri değiştiğinde de toplam değişir. Bu, ailenin genel davranışıdır ve kontrol basamağı algoritmaları yazısında ayrıntılı olarak ele alınmıştır.

Bu iki numara türünü birbirinden ayıran şey ise kullandıkları ağırlık düzeni ve modüldür. Aynı iskelet, farklı parametrelerle çalıştığı için bir tür için yazılmış bir denetim diğerinin numaralarını doğru değerlendirmez.

İki kitap numarası sistemi arasındaki fark nedir?

Kitap numaraları tarih içinde iki ayrı sistemle üretilmiştir: daha kısa olan eski sistem ve daha uzun olan yeni sistem. İkisi de bugün dolaşımdadır; çünkü eski sistemle verilmiş numaralar geçerliliğini korur.

Karşılaştırma Kısa sistem Uzun sistem
Karakter sayısı Daha az Daha fazla
Ağırlık düzeni Sırayla değişen ağırlıklar Sırayla değişen ağırlıklar
Modül Birinci seçenek İkinci seçenek
Son karakter Rakam veya harf olabilir Ağırlıklı olarak rakam
Ön ek Yok Sabit bir ön ek grubu var

Tablodaki son iki satır, uygulamada en çok karışan noktalardır. Yeni sistemin başındaki sabit grup, numaranın bir parçası olarak hesaba girer; onu ayırıcı sanıp atmak hesabı bozar. Eski sistemin son karakteri ise rakamla sınırlı değildir.

İki sistemi aynı alanda kabul eden bir form, hangi sistemin beklendiğini ya da her iki sistemin de geçerli olduğunu kullanıcıya göstermelidir. Aksi hâlde geçerli bir eski numara, yeni sisteme göre denendiği için haksız yere reddedilir.

Son karakter neden bazen bir harf olur?

Çünkü hesabın sonucu her zaman tek bir rakama denk gelmez. Modül büyüdükçe kalanın alabileceği değer sayısı artar ve bu değerlerin tamamı tek bir rakamla gösterilemez. Böyle durumlarda standart, belirli bir kalan değerini bir harfle göstermeyi tanımlar.

Kısa kitap numarası sisteminde bu harf, alfabenin büyük harfleri arasından seçilen tek bir karakterdir. Anlamı “on” değeridir; yani hesabın sonucu iki haneli olduğunda tek karakterle gösterilmiş hâlidir.

Bunun iki pratik sonucu vardır. Birincisi, denetim yalnızca rakam kabul eden bir karakter kümesiyle çalışıyorsa bu numaraları reddeder. İkincisi, harfin büyük küçük harf yazımı normalize edilmelidir; aksi hâlde aynı numaranın iki yazımı iki farklı sonuç verir.

Numara aralıkları nasıl dağıtılır?

Numaranın içindeki gruplar farklı düzeylerdeki kuruluşlar tarafından dağıtılır. En geniş düzeyde, yayın dünyasının ortak kuruluşları ülke veya dil gruplarına aralıklar ayırır. Bir sonraki düzeyde, o gruptaki ulusal kuruluş yayıncılara kendi aralıklarını verir. En alt düzeyde ise yayıncı, kendi aralığı içinde her esere bir numara verir.

Bu katmanlı yapı, numaranın içindeki parçaların neden sabit uzunlukta olmadığını açıklar. Üst düzeyden alınan aralığın genişliği yayıncının üretim hacmine göre değişir; bu yüzden yayıncı parçasının uzunluğu da yayıncıdan yayıncıya farklıdır.

Uygulama tarafında bunun anlamı şudur: bir numarayı parçalara ayırmaya çalışan bir kod, parça sınırlarını sabit konumlara göre belirleyemez. Parçalama işi, ancak aralık verilerine bakılarak yapılabilir. Denetim için ise parçalama gerekli değildir; hesap, numaranın tamamı üzerinden yürütülür.

Numarası değişmiş bir eser için neden iki numara da geçerlidir?

Çünkü aralık düzeni zaman içinde yeniden düzenlenebilir. Bir yayıncının aralığı bölünebilir, birleştirilebilir veya yeni bir gruba taşınabilir. Böyle bir düzenlemeden sonra aynı esere yeni bir numara verilebilir; ama eski numara üzerinden yapılmış kayıtlar geçerliliğini korur.

Bu durumda iki numara da kendi döneminin kuralına göre tutarlıdır. Birini “doğru”, diğerini “yanlış” saymak yanlış olur; ikisi de o eserin numarasıdır. Aynı şey süreli yayınlarda da görülür: yayın adı değiştiğinde, birleştiğinde veya bölündüğünde numaralandırma yeniden yapılabilir.

Pratik sonuç, veri modeliyle ilgilidir. Bir eserin tek bir numarası olduğunu varsaymak, geçiş dönemlerindeki kayıtları kaybettirir. Numara alanının bir liste olarak tutulması ve her numaranın hangi döneme ait olduğunun kaydedilmesi, bu tür kayıtları korur.

Denetim tarafında ise yapılacak şey basittir: iki numara da ayrı ayrı doğrulanır. Sonuçlar birbirine karşı yarıştırılmaz.

Geliştiriciler için: girdiyi sadeleştirmek ve ayırıcılar

Bu numaraların yazımında ayırıcıların yeri sabit değildir. Aynı numara bir kaynakta iki grupta, başka bir kaynakta üç grupta gösterilir; süreli yayın numaralarında ayırıcı yerine boşluk da kullanılır. İki yayıncı aynı numarayı farklı biçimde yazabilir.

Bu yüzden denetimden önce mutlaka sadeleştirme yapılmalıdır: tireler, boşluklar ve benzeri ayırıcılar atılmalı, harflerde büyük küçük ayrımı kaldırılmalıdır. Sadeleştirme yapılmazsa aynı numara, yazımına göre farklı uzunlukta görünür ve uzunluk denetimi haksız yere başarısız olur.

İkinci nokta, saklanan biçim ile denetlenen biçimin ayrılmasıdır. Okunabilirlik için ayırıcılı biçimde saklamak yararlı olabilir; ama denetim her zaman sadeleştirilmiş dizi üzerinde yapılmalıdır. Aksi hâlde ekranda görünen değer ile denetlenen değer farklı olur ve hata ayıklama zorlaşır.

Üçüncü nokta, harf içeren numaralarda karakter kümesinin doğru tanımlanmasıdır. Yalnızca rakam kabul eden bir doğrulayıcı, son karakteri harf olan eski numaraları reddeder. Karakter kümesi, her iki kitap numarası sistemini de kapsamalıdır.

Dördüncü nokta, hata mesajlarının ayrıştırılmasıdır. Beklenen karakter sayısına uymayan bir girdi ile son karakteri tutmayan bir girdi, kullanıcı için farklı düzeltmeler gerektirir. İkisini aynı mesajla bildirmek, kullanıcıyı yanlış yere yöneltir.

Beşinci nokta, geçiş dönemi kayıtlarıdır. Bir eserin birden çok numarası olabileceği kabul edilirse, denetim sonucu da numara başına ayrı tutulmalıdır; tek bir “doğru numara” alanı bu durumu taşıyamaz.

Altıncı nokta, numaranın türünün açıkça taşınmasıdır. Bir girdinin hangi numara türüne ait olduğu bilinmiyorsa, denetim iki sistemi sırayla denemek zorunda kalır ve sonuç belirsizleşir. Girdiyle birlikte beklenen tür de taşınırsa, denetim tek bir yolu izler ve hata mesajı net olur.

Yedinci nokta, arama ve eşleştirmedir. Bu numaralar kayıtlarda ayırıcılı yazıldığı için, ayırıcıları temizlenmiş bir arama alanı tutmak tekrar eden kayıtları bulmayı kolaylaştırır. Aksi hâlde aynı eser, iki farklı yazım yüzünden iki ayrı kayıt gibi görünür.

Sekizinci nokta, dışa aktarılan verinin biçimidir. Bu numaralar tablo dosyalarına aktarıldığında, uzun rakam dizileri bazı araçlar tarafından sayıya çevrilir ve baştaki sıfırlar kaybolur. Numaranın metin olarak saklanması, bu sessiz bozulmayı önler. Aksi hâlde doğrulama, kaynağında doğru olan bir numarayı yanlış bulur.

Sonraki adımlar

İlk adım, bu numaraları kabul eden her yerde sadeleştirmenin aynı kurallarla yapıldığından emin olmak ve karakter kümesini her iki kitap numarası sistemini kapsayacak şekilde genişletmektir. İkinci adım, bir eserin birden çok numarası olabileceğini veri modeline yansıtmaktır. Elinizdeki bir dizinin hesap açısından tutarlı olup olmadığını numara doğrulama aracı ile deneyebilirsiniz; benzer bir kontrolün başka bir numara ailesindeki karşılığı için EAN UPC kontrol basamağı yazısı, hesabın ortak iskeleti için kontrol basamağı algoritmaları yazısı tamamlayıcıdır.

Buradaki kitap ve süreli yayın numaraları yalnızca hesabın mantığını göstermek için kurgulanmış sentetik dizilerdir; gerçek bir kitaba, dergiye veya yayıncıya ait değildir ve biçimsel tutarlılık yayının var olduğunu göstermez.

Okumaya devam edin

TC Kimlik Doğrulayıcı hakkında makaleler