ISO 2709 — міжнародний стандарт (ISO), який визначає формат для обміну бібліографічними записами. Стандартом опікується технічний комітет з інформації та документації (ТК 46).
Хоча зазвичай використовується як контейнер даних у MARC-форматі, проте ISO 2709 не є прив'язаний до особливостей формату даних.
Як правило, формат ISO 2709 використовується для передачі, зберігання та представлення інформації.
Історія
Формат для обміну бібліографічною інформацією, розроблений у 1960 році під керівництвом Генріетти Аврам з Бібліотеки Конгресу для кодування інформації про друковані бібліотечні картки. Спершу був створений як стандарт ANSI Z39.2, один з перших стандартів у галузі інформаційних технологій, також званий як формат обміну інформацією (англ. Information Interchange Format). Останнім виданням цього стандарту є Z39.2-1994 (ISSN:1041-5653). Стандарт ISO замінює стандарт Z39.2. ISO 2709 був створений у 1981 році, з поправками, внесеними у 1996 році, а остання правка була зроблена у 2008 році (ISO2709:2008)[1].
Структура формату
Кожен запис формату ISO-2709 повинен містити:
- Маркер запису, що складається з 24-ох байт.
- Довідник.
- Поля даних змінної довжини, відокремлені один від одного роздільником поля.
- Роздільник запису.
Схематично, структура має бути така:
МАРКЕР
|
ДОВІДНИК
|
РП
|
ПОЛЕ
|
РП
|
ПОЛЕ
|
РП
|
…
|
ПОЛЕ
|
РП
|
РЗ
|
Маркер запису
Зміщення (байт)
|
Поле
|
Довжина (байт)
|
Примітки
|
0 |
Довжина запису |
5 |
П'ять десяткових цифр, вирівняних вправо, із заповненням нулями в разі необхідності, що являють собою розмір запису у байтах, разом з маркером, довідником та полями змінної довжини. Це поле, як правило, розраховуються автоматично, коли запис готовий для обміну.
|
5 |
Статус запису |
1 |
Єдиний символ, що позначає статус обробки запису. Напр. — n, c, d, p, o в UNIMARC.
|
6 |
Коди застосування |
4 |
Не визначені у стандартному форматі ISO 2709, але залежать від індивідуальної реалізації стандарту. Наприклад у UNIMARC: 6-й байт — тип запису (a, b, c, d, e, f, g, i, j, k, l, m, r,), 7-й — бібліографічний рівень (a, m, s, c), 8-й — код ієрархічного рівня (пробіл,0,1,2), 9-й — не визначено (пробіл).
|
10 |
Довжина індикатора |
1 |
Одна десяткова цифра, яка вказує довжину індикатора (кількість символів для індикатора поля). В UNIMARC-у вона є сталою величиною і завжди дорівнює 2.
|
11 |
Довжина ідентифікатора |
1 |
Одна десяткова цифра — довжина ідентифікатора підполя (Напр. $a чи ^b). В UNIMARC-у завжди 2.
|
12 |
Адреса початку даних |
5 |
П'ять десяткових цифр, вирівняних вправо початковими нулями, які вказують на початковий байт першого поля даних відносно початку запису. Оскільки перший байт запису має адресу 0, число, введене як адреса початку даних, дорівнюватиме загальній кількості байт у маркері та довіднику, включаючи роздільник поля наприкінці довідника. У довіднику початкова позиція даних для кожного поля вказується не від початку запису, а відносно початкового байту найпершого поля даних, тобто поля 001. Таким чином, адреса початку даних є основою, за допомогою якої розраховується позиція кожного поля. Зазвичай, це число обчислюється автоматично по закінченні повної генерації запису.
|
17 |
Рівень кодування |
1 |
В ISO 2709 не визначено. В UNIMARC — односимвольний код, яким позначається ступінь повноти машиночитного запису та відомості про перегляд документу в процесі створення запису. Приймає значення — пробіл,1,2,3.
|
18 |
Форма каталогізаційного опису |
1 |
В ISO 2709 не визначено. В UNIMARC — односимвольний код застосованої у документі форми каталогізаційного опису. Вказує, чи відповідають описові поля 200, 225 вимогам ISBD. Приймає значення — пробіл, i, n.
|
19 |
Не визначено |
1 |
Містить пробіл.
|
20 |
Кількість цифр для довжини поля даних |
1 |
Одна десяткова цифра, яка вказує кількість символів для довжини поля. В UNIMARC вона є сталою величиною, яка завжди дорівнює 4. Тобто, максимальне значення довжини поля становить 9999 байт.
|
21 |
Кількість цифр для адреси поля |
1 |
Одна десяткова цифра, вказує кількість символів для довжини початкової позиції поля з даними. В UNIMARC завжди дорівнює 5. Дозволяється максимальне значення довжини запису приблизно 100000 байт.
|
22 |
Довжина частини, що визначається при застосуванні |
1 |
Одна десяткова цифра, яка вказує кількість байт у частині, що визначається при застосуванні кожної статті довідника. В UNIMARC стаття довідника не містить такої складової частини, значення її довжини завжди дорівнює 0.
|
23 |
Резерв |
1 |
Містить пробіл.
|
Довідник
За маркером запису слідує довідник. Кожна стаття довідника складається з трьох частин:
- Мітки (перша частина кожної статті довідника — мітка поля). Зазвичай 3 байти.
- Числа, що вказує довжину поля даних. Це число займає кількість байт, відповідне 20-му байту маркера. (Друга частина статті довідника визначає число символів в полі, на яке указує мітка, приведена в першій частині статті. У це число включаються всі символи — індикатори, ідентифікатори підполів, текстові або кодовані дані і роздільник полів). Переважно 4 байти.
- Числа, що вказує початкову позицію даних. Це число займає кількість байт, відповідне 21-му байту маркера. (Третя частина статті довідника містить позицію першого символу поля щодо позиції першого символу тієї частини запису, який містить змінні поля). Довжина часто 5 байт.
Інші символи в статті довідника не допускаються.
Перший символ першого змінного поля має символьну позицію 0. Положення символьної позиції 0 всередині цілого запису задається 12-16 позиціями символів маркера запису. Довідник закінчується роздільником поля.
Поля даних
Поля даних змінної довжини слідують за довідником та містять дані. Мітки не містяться в полях даних, а наводяться лише у довіднику. Поля даних складаються з двох індикаторів та наступною за ними будь-якою кількістю підполів. Кожне підполе починається з ідентифікатора підполя, яке складається з роздільника підполя та коду підполя, що ідентифікує підполе. За ідентифікаторами підполя містяться кодовані чи текстові дані довільної довжини, вказаної у описі поля (у довіднику).
Схематично, дані у структурі поля розподіляються так:
ІНДИКАТОРИ
|
ПІДПОЛЕ_1
|
ПІДПОЛЕ_2
|
…
|
ПІДПОЛЕ_N
|
РП
|
Роздільник запису
Останнім символом даних в записі є символ кінця запису, наступний за символом кінця поля.
Примітки
Посилання
|