НККСВ -
РNetCDF-Комп'ютерна специфікація файлів ASCII CSV, Версія 1.00
Боб Симони та Стів Ганкін "NCCSV" від Bob Simons і Steve Hankin ліцензовано під0 товар(ов) - 0.00 р.
Вступ
Цей документ визначає формат текстового файлу ASCII CSV, який може містити всю інформацію (метадані та дані) що можна знайти вNetCDF .ncфайл, який містить таблицю даних CSV-файлів. Розширення файлу для текстового файлу ASCII CSV, наступного за цією специфікацією, повинні бути .csv, щоб він міг легко прочитати і правильно в програми електронної таблиці, такі як Excel і Google Sheets. Боб Simons напишіть програмне забезпечення, щоб перетворити файл NCCSV в файлNetCDF-3 (і, можливо, такожNetCDF-4) .ncфайл і зворотний, без втрати інформації. Боб Симонс змінивERDDAP™для підтримки читання та написання цього типу файлу.
Формат NCCSV призначений для того, щоб описувати програмне забезпечення, такі як Excel і Google Sheets може імпортувати файл NCCSV як файл csv, з усіма інформацією в клітинах електронної таблиці, готових для редагування. Або, аркуш може бути створений з нуля після конвенцій NCCSV. Незалежно від джерела таблиці, якщо він потім експортується як файл .csv, він буде відповідати специфікації NCCSV і не буде втрачено інформації. Єдині відмінності між ф айлами NCCSV і аналоговими файлами електронної таблиці, які слідують цими конвенціями:
- Файли NCCSV мають значення на лінії, відокремленому комами. Спредети мають значення на лінії в суміжних клітинах.
- Рядки у файлах NCCSV часто оточують подвійними лапками. Стрінги в таблицях ніколи не оточують подвійними лапками.
- Внутрішні подвійні лапки (« » » » » » » » » » » » » » ») у файлах NCCSV з'являються як 2 подвійні лапки. Внутрішні подвійні котирування в таблицях з'являються як 1 подвійна цитата.
ДивитисяРозсилкарозділ нижче для отримання додаткової інформації.
Попередження
Як CSV файли в цілому, NCCSV файли є потоковими. Таким чином, якщо NCSV генерується на сервері даних, таких якERDDAP™, сервер може почати потокові дані до запиту, перш ніж всі дані були зібрані. Це корисна і бажана функція.NetCDFФайли, на відміну, не потокові.
ERDDAP™
Ця специфікація розроблена таким чином, що файли NCCSV та файли.ncФайли, які можуть бути створені з них, можуть бути використані за допомогою файлівERDDAP™сервер даних (черезEDDTableЗ альбомуNccsvFilesіEDDTableЗ альбомуNcFilesтипи даних) , але ця специфікація є зовнішньою дляERDDAPйERDDAP™має кілька необхідних глобальних атрибутів і багато рекомендованих глобальних і змінних атрибутів, в основному на основі атрибутів CF і ACDDD (див. /Доки/сервер-адміністрування/datasets#global-attributes).
Посилання
Дизайн формату НККСВ – баланс декількох вимог:
- Файли повинні містити всі дані та метадані, які будуть в таблиціNetCDFфайл, включаючи певні типи даних.
- Файли повинні бути використані для читання, а потім виписані з аркуша без втрати інформації.
- Файли повинні бути простими для людини для створення, редагування, читання та розуміння.
- Файли повинні бути однозначно приписані комп'ютерними програмами.
Якщо якась вимога в цьому документі здається непарним або пікіальним, то це, ймовірно, потрібно, щоб відповідати одному з цих вимог.
Інші характеристики
Ця специфікація відноситься до декількох інших специфікацій і бібліотек, які вона призначена для роботи з, але ця специфікація не є частиною будь-якого з інших специфікацій, а не потребує будь-яких змін до них, і не робить його конфліктом з ними. Якщо деталь, що відноситься до одного з цих норм, не зазначена тут, див. інформацію, пов'язана з однією з цих стандартів. До цього відносяться:
- Атрибутова конвенція для виявлення даних (АКДД) Стандарт метаданих: https://wiki.esipfed.org/Attribute\_Convention\_for\_Data\_Discovery\_1-3 й
- Клімат і прогноз (Панчохи) Стандарт метаданих: https://cfconventions.org/Data/cf-conventions/cf-conventions-1.8/cf-conventions.html й
- Про насNetCDFКерівництво користувача (НУГ) : https://docs.unidata.ucar.edu/netcdf-java/current/userguide/index.html й
- Про насNetCDFБібліотека програмного забезпечення, якNetCDF-Ява іNetCDFдо: https://www.unidata.ucar.edu/software/netcdf/ й Ці бібліотеки не можуть читати файли NCCSV, але вони можуть читати.ncФайли, створені з файлів NCCSV.
- Сонце: https://www.json.org/
Нотатки
У цій специфікації, кронштейни,\[ \], відмітити додаткові елементи.
Структура файлу
Повний файл NCCSV складається з двох розділів: розділ метаданих, після чого розділ даних.
Файли NCCSV повинні містити лише 7-бітові символи ASCII. Через це набір символів або кодування, що використовується для запису та читання файлу, може бути будь-який набір символів або кодування, який сумісний з 7-бітним набором символів ASCII, наприклад, ISO-8859-1.ERDDAP™Читає та пише NCCSV файли з кодом ISO-8859-1.
Файли NCCSV можуть використовуватися як новий (\n) (на Linux і Mac OS X комп'ютери) або перевезенняПовернення плюс нова лінія (\r\n) (на комп'ютерах Windows) як кінцеві маркери, але не обидва.
.nccsvМетадані
Після того, як розробник і зчитувач очікується, це також можливо і іноді корисно зробити варіант файлу NCCSV, який містить лише розділ метаданих (включаючи\*END \_METADATA\*Лінія) й Результатом передбачено повне опис атрибутів файлу, змінних імен та типів даних, які забезпечують однакове призначення, оскільки .das плюс .dds відповідей відOPeNDAPсервер.ERDDAP™повернемо цю варіацію, якщо ви запитуєте файл Тип=.nccsvМетадані відERDDAP™датасет.
Розділ метаданих
У файлі NCCSV кожен рядок розділу метаданих використовує формат
змінна Ім'яйатрибути Ім'яйзначення1\[,значення2\]\[,значення3\]\[,значення4\]\[...\]
Простір до або після того, як елементи не допускаються, тому що вони викликають проблеми при імпорті файлу в програми електронної пошти.
Конвенції
Перша лінія файлу NCCSV – перша лінія розділу метаданих та повинна мати\ГЛОБАЛ\Список атрибутів конвенцій, що використовуються в файлі, як String, що містить список CSV, наприклад: \*ГЛОБАЛ\*Конвенції,COARDS, CF-1.6, ACDD-1.3, NCCSV-1.0" Однією з конвенцій, зазначених, має бути НКРЗСВ-1.0, що відноситься до поточної версії цієї специфікації.
ЕНД_МЕТАДАТА
Кінець розділу метаданих файла NCCSV повинен бути позначений лише одним \END \_METADATA\
Рекомендовано, але не пот рібно, щоб всі атрибути заданої змінної з'являються на суміжних лініях метаданих. Якщо файл NCCSV перетворений вNetCDFфайл, порядок, що з'являються перші імена змінних імен у розділі метаданих, буде порядок змінних у розділі метаданихNetCDFфайл.
Додаткові порожні лінії допускаються в розділі метаданих після необхідного першого рядка з\ГЛОБАЛ\ КонвенціїІнформація (Переглянути нижче) і до необхідного останнього рядка з\*END \_METADATA\*й
Якщо створюється лист із файла NCCSV, розділ даних метаданих з’явиться із змінними іменами у стовпці A, імена атрибутів у стовпці B та значення у стовпці C.
Якщо у файлі CSV зберігається таблиця електронних таблиць, часто буде додатковою комою в кінці рядків у розділі метаданих. Програма, яка перетворює файли NCCSV в.ncФайли ігнорують додаткові коми.
змінна Ім'я
змінна Ім'я є випадковим іменем змінної в файлі даних. Всі змінні імена повинні починатися з 7-бітної літери ASCII або андерсону і бути складені з 7-бітних букв ASCII, андерсонів і 7-бітних цифр ASCII.
ГЛОБАЛ
Спеціальна зміннаНазва\ГЛОБАЛ\використовується для позначення глобальних метаданих.
атрибути Ім'я
атрибути Ім'я є випадковим іменем атрибута, пов'язаного з змінною або\ГЛОБАЛ\й Всі імена атрибутів повинні починатися з 7-бітної літери ASCII або андерсону та бути складені з 7-бітних букв ASCII, андерсонів та 7-бітних цифр ASCII.
САЛАР
Особливий атрибут Ім'я\*САЛАР\*може бути використана для створення змінної даних scalar і визначення його значення. Тип даних\*САЛАР\*визначає тип даних для змінної, тому не вказуйте\*ДАТА\_ТИП\*атрибут для змінних скалярів. Зауважте, що не повинні бути дані для змінної масштабу в розді лі даних NCCSV.
Наприклад, для створення скалярної змінної імені «ship» з значенням «Okeanos Explorer» та атрибутом cf\_role, використання: судно,\САЛАР\, "Okeanos Explorer" Транспорт, склад, логистика Транспорт, склад, логистика Коли змінна скалярних даних продається вERDDAP™, значення скаляра перетворюється в колонку в таблиці даних з однаковою вартістю на кожному ряду.
значення
значення є значення атрибуту метаданих і має бути масивом з одним або декількома або байтами, коротким, нахилом, довго, плавлення, подвійний, Рядок або char. Не підтримується інші типи даних. Атрибути без значення будуть ігноруватися. Якщо є більше одного суб-значення, суб-значення повинні бути всіх однакових типів даних і відокремлених комами, наприклад: sstйactual\_range,0.17ф, 23.58ф Якщо є декілька значень String, використовуйте один рядок з\n (Новини) символи, що розділяють підрядки.
Визначення типів даних атрибутів: