Работая сdatasets.xmlФайл
\[Эта страница будет представлять интерес только дляERDDAP™Администраторы.\]
После того, как вы последовали заERDDAP™ Инструкция по установкеВы должны редактироватьdatasets.xmlфайл в кот /content/erddap/ для описания наборов данных, которые выERDDAP™Установка будет служить.
Вы можете увидеть примерdatasets.xmlНа GitHub.
Введение
Некоторая сборка требуется
Настройка набора данных вERDDAP™Это не просто вопрос указания на каталог или URL набора данных. Вы должны написать часть XML дляdatasets.xmlкоторый описывает набор данных.
- Для сетчатых наборов данных, чтобы сделать набор данных соответствующимERDDAPСтруктура данных для сетчатых данных должна идентифицировать подмножество переменных набора данных, которые имеют одинаковые размеры. (Почему? Как?)
- Текущие метаданные набора данных импортируются автоматически. Но если вы хотите изменить эти метаданные или добавить другие метаданные, вы должны указать их вdatasets.xml. ИERDDAP™нуждается в других метаданных, в том числеглобальные атрибуты (такие какinfoUrlинститут,sourceUrl, резюме и название) ипеременные атрибуты (такие какlong\_nameи единицы) . Так же, как метаданные, которые в настоящее время находятся в наборе данных, добавляют описательную информацию к набору данных, метаданные, запрошенныеERDDAP™Добавляет описательную информацию в набор данных. Дополнительные метаданные являются хорошим дополнением к вашему набору данных и помогают.ERDDAP™Сделайте лучшую работу по представлению ваших данных пользователям, которые не знакомы с ними.
- ERDDAP™Вы должны делать особые вещи сдолгота, широта, высота (или глубина) и временные переменные.
Если вы купитесь на эти идеи и израсходуете усилия на создание XMLdatasets.xmlВы получаете все преимуществаERDDAP™В том числе:
- Полный текстовый поиск наборов данных
- Поиск наборов данных по категориям
- Форма доступа к данным ( datasetID .html) Таким образом, вы можете запросить подмножество данных в различных форматах файлов.
- Формы для запроса графиков и карт ( datasetID граф)
- Сервис Web Map (WMS) для сетчатых наборов данных
- RESTfulдоступ к вашим данным
Сделатьdatasets.xmlЭто требует значительных усилий для первых нескольких наборов данных. становится легче . После первого набора данных вы часто можете повторно использовать большую часть своей работы для следующего набора данных. К счастью,ERDDAP™поставляется с двумяИнструментыЧтобы помочь вам создать XML для каждого набора данныхdatasets.xml. Если вы застряли, посмотрите нашРаздел о дополнительной поддержке.
Поставщик данных форма
Когда к вам приходит поставщик данных, надеясь добавить некоторые данные в ваш компьютер.ERDDAPЭто может быть трудным и трудоемким для сбора всех метаданных. (Информация о наборе данных) Необходимо добавить набор данных вERDDAP. Многие источники данных (Например, файлы .csv, Файлы Excel, базы данных) не имеют внутренних метаданных, поэтомуERDDAP™имеет форму поставщика данных, которая собирает метаданные от поставщика данных и дает поставщику данных некоторые другие рекомендации, включая обширные рекомендации дляДанные в базах данных. Представленная информация преобразуется вdatasets.xmlформат, а затем по электронной почтеERDDAP™администратор (ты) и письменный (прилагаемый) то BigParent Директория /logs/dataProviderForm.log. Таким образом, форма полуавтоматизирует процесс получения набора данных вERDDAPно этоERDDAP™Администратор должен завершитьdatasets.xmlОбработка и получение файла данных (s) от поставщика или подключения к базе данных.
Подача фактических файлов данных из внешних источников представляет собой огромный риск безопасности.ERDDAP™Не имеет дело с этим. Вы должны найти решение, которое работает для вас и поставщика данных, например, электронная почта. (для небольших файлов) Вытащить из облака (Например, DropBox или Google Drive.) Сайт Sftp (с паролями) или кроссовки нет (USB большой палец или внешний жесткий диск) . Вы должны принимать только файлы от людей, которых вы знаете. Вам нужно будет сканировать файлы на наличие вирусов и принимать другие меры безопасности.
Нет никакой связи вERDDAP™в форму поставщика данных (Например, наERDDAP™домашняя страница) . Вместо этого, когда кто-то говорит вам, что они хотят, чтобы их данные служили вашим.ERDDAPВы можете отправить им электронное письмо, сказав что-то вроде: Да, мы можем получить ваши данные вERDDAP. Для начала, пожалуйста, заполните форму в https://yourUrl/erddap/dataProviderForm.html (илиhttp://еслиhttps://не включен) . После того, как вы закончите, я свяжусь с вами, чтобы проработать окончательные детали. Если вы хотите посмотреть форму (не заполняя его) Вы можете увидеть форму наERD?ERDDAP:Введение,Часть 1,Часть 2,Часть 3иЧасть 4. Эти ссылки наERD ERDDAP™Отправляйте информацию мне, а не вам, так что не отправляйте информацию с ними, если вы действительно не хотите добавлять данные вERD ERDDAP.
Если вы хотите удалить форму поставщика данных из вашейERDDAP™ставить
<dataProviderFormActive>false</dataProviderFormActive>
В файле setup.xml.
Толчком к этому послужилNOAA2014 годПубличный доступ к результатам исследований (ПАРР) директивакоторая требует, чтобы всеNOAAЭкологические данные, финансируемые за счет средств налогоплательщиков, предоставляются через службу данных. (Не только файлы) В течение 12 месяцев после создания. Повышен интерес к использованиюERDDAP™Чтобы сделать наборы данных доступными через службу ASAP. Нам нужен был более эффективный способ работы с большим количеством поставщиков данных.
Обратная связь / Предложения? Эта форма новая, поэтому, пожалуйста, пишитеerd dot data at noaa dot govЕсли у вас есть какие-либо отзывы или предложения по улучшению этого.
Инструменты
ERDDAP™Он поставляется с двумя программами командной строки, которые являются инструментами, которые помогут вам создать XML для каждого набора данных, который вы хотите.ERDDAP™служить. Как только вы создалиERDDAP™и запустить его (хотя бы один раз) Вы можете найти и использовать эти программы в кот /webapps/erddap/WEB-INF каталог. Есть скрипты оболочки Linux/Unix (с расширением .sh) и Windows скрипты (С расширением .bat) для каждой программы.\[В Linux эти инструменты запускаются одним и тем же пользователем. (Томкат?) Это будет Tomcat.\]Когда вы запустите каждую программу, она задаст вам вопросы. Для каждого вопроса введите ответ, затем нажмите Enter. Или нажмите ^C, чтобы выйти из программы в любое время.
Программа не будет работать?
- Если вы получили неизвестную программу (или аналогичный) Сообщение об ошибке, проблема в том, что операционная система не может найтиJava. Вы должны выяснить, гдеJavaОн находится на вашем компьютере, затем отредактируйте ссылку java в файле .bat или .sh, который вы пытаетесь использовать.
- Если вы получаете файл банка не найден или класс не найден сообщение об ошибке, тоJavaВы не можете найти один из классов, перечисленных в файле .bat или .sh. Решение состоит в том, чтобы выяснить, где находится файл .jar, и отредактировать ссылку на него в файле .bat или .sh.
- Если вы используете версиюJavaЭто слишком старая программа, программа не запускается, и вы увидите сообщение об ошибке.
Исключение в потоке "основной" java.lang.UnsupportedClassVersionError:
некоторый/класс/имя Неподдерживаемая версия major.minor некоторое число
Решение заключается в обновлении до последней версииJavaУбедитесь, что файл .sh или .bat для программы использует его.
Инструменты печатают различные диагностические сообщения:
- Слово «ERROR» используется, когда что-то пошло не так, что процедура не была завершена. Хотя это раздражает, чтобы получить ошибку, ошибка заставляет вас иметь дело с проблемой.
- Слово «предупреждение» используется, когда что-то пошло не так, но процедуру удалось завершить. Они довольно редкие.
- Все остальное — лишь информативное сообщение. Вы можете добавить \-verbose кГенерировать наборы данныхXmlилиDasDdsкомандная строка для получения дополнительных информативных сообщений, что иногда помогает решить проблемы.
Эти два инструмента очень полезны, но вы все равно должны внимательно прочитать все эти инструкции на этой странице и самостоятельно принимать важные решения.
Генерировать наборы данныхXml
- Генерировать наборы данныхXml Программа командной строки, которая может генерировать черновой проект набора данных XML практически для любого типа набора данных.
Мы настоятельно рекомендуем использовать GenerateDatasets Xml вместо того, чтобы создавать кускиdatasets.xmlОт руки, потому что:
- Генерировать наборы данных Xml работает в считанные секунды. Делать это вручную — это как минимум час работы, даже если вы знаете, что делаете.
- Генерировать наборы данных Xml работает лучше. Делать это вручную требует обширных знаний о том, какERDDAP™Работает. Маловероятно, что вы сделаете лучшую работу вручную. (Боб Саймонс всегда использует наборы данных Xml для первого черновика, и он написалERDDAP.)
- Генерировать наборы данных Xml всегда генерирует действительный кусокdatasets.xml. Любой кусокdatasets.xmlВы, вероятно, будете иметь по крайней мере несколько ошибок, которые предотвратятERDDAP™от загрузки набора данных. Часто людям требуется несколько часов, чтобы диагностировать эти проблемы. Не трать свое время. Пусть генерируют Наборы данных Xml делает тяжелую работу. Тогда вы можете усовершенствовать .xml вручную, если хотите.
Когда вы используете наборы данных Программа XML:
- В Windows, когда вы впервые запускаете GenerateDatasetsXml, вам нужно редактировать файл GenerateDatasetsXml.bat с текстовым редактором, чтобы изменить путь к java. Файл exe, чтобы Windows могла найтиJava.
- Генерировать наборы данных Xml сначала просит указать EDDType (Набор данных Erd Dap Тип) из набора данных. Видишь?Список типов наборов данных (в этом документе) Чтобы выяснить, какой тип подходит для набора данных, над которым вы работа ете. В дополнение к обычным EDDTypes, есть также несколькоСпециальные / псевдотипы наборов данных (Например, тот, который сканирует каталог THREDDS, чтобы создать кусокdatasets.xmlдля каждого из наборов данных в каталоге) .
- Генерировать наборы данных Затем Xml задает вам ряд вопросов, относящихся к EDDType. Вопросы собирают информацию, необходимую дляERDDAP™получить доступ к источнику данных. Чтобы понять, чтоERDDAP™запрашивает, см. документацию для EDDType, которую вы указали, нажав на тот же тип набора данныхСписок типов наборов данных.
Если вам нужно ввести строку со специальными символами (Например, символы белого пространства в начале или конце, не-ASCII символы) Войдите вСтруна в стиле JSON (с особыми персонажами, сбежавшими с персонажами) . Например, чтобы ввести только символ вкладки, введите «\t» (с окружающими двойными цитатами, которые говорят:ERDDAP™Это струна в стиле JSON.
- Часто одним из ваших ответов будет не то, что нужно GenerateDatasetsXml. Затем вы можете попробовать снова, с пересмотренными ответами на вопросы, до генерации наборов данных. Xml может найти и понять исходные данные.
- Если вы правильно отвечаете на вопросы (или достаточно правильно) Генерировать наборы данных Xml подключится к источнику данных и соберет основную информацию (Например, имена переменных и метаданные) . Для наборов данных, которые являются локальнымиNetCDF .ncи связанные файлы, генерировать наборы данных Xml часто печатает ncdump-подобную структуру файла после его первого чтения. Это может дать вам информацию, чтобы лучше ответить на вопросы в последующем цикле через GenerateDatasetsXml.
- Генерировать наборы данных Затем Xml сгенерирует черновой проект набора данных XML для этого набора данных.
- Диагностическая информация и черновой проект набора данных XML будут записаны на BigParent Директория /logs/GenerateDatasetsXml.log.
- Грубый проект набора данных XML будет написан на BigParent Директория /logs/GenerateDatasetsXml.out.
"0 файлов" сообщение об ошибке
Если вы испо льзуете GenerateDatasets Xml илиDasDdsЕсли вы пытаетесь загрузитьEDDGridИз... материалов или из... Файлы Dataset inERDDAP™, и вы получаете сообщение об ошибке «0 файлов», указывающее, чтоERDDAP™найдено 0 совпадающих файлов в каталоге (Когда вы думаете, что в этом каталоге есть соответствующие файлы) :
-
Убедитесь, что вы указали полное имя каталога. И если вы указали имя файла образца, убедитесь, что вы указали полное имя файла, включая полное имя каталога.
-
Убедитесь, что файлы действительно находятся в этом каталоге.
-
Проверьте написание названия каталога.
-
Проверьте файл NameRegex. Очень, очень легко делать ошибки с регексами. Для целей тестирования попробуйте regex .\*, который должен соответствовать всем именам файлов. (Посмотри.нормативная документацияиучебник по регексу.)
-
Убедитесь, что пользователь, который запускает программу (Пользователь=tomcat (?) Для Tomcat/ERDDAP) У вас есть разрешение «читать» эти файлы.
-
В некоторых операцио нных системах (Например, SELinux) В зависимости от системных настроек пользователь, который запустил программу, должен иметь разрешение «читать» для всей цепочки каталогов, ведущих в каталог, в котором есть файлы.
-
Если у вас есть проблемы, которые вы не можете решить,запросить поддержкукак можно больше информации. Аналогичным образом, если кажется, что соответствующий EDDType для данного набора данных не работает с этим набором данных, или если нет соответствующего EDDType, пожалуйста, подавайте заявку на регистрацию.Обсуждение GitHubс подробностями (и образец файла, если это необходимо) .
Вам нужно отредактировать выход из GenerateDatasets Xml, чтобы сделать его лучше.
-
Дисклеймер: Курицаdatasets.xmlСделано, чтобы генерировать наборы данных Xml не идеален. Вы должны прочитать и отредактировать XML, прежде чем использовать его в публичной форме.ERDDAP. Генерировать наборы данных Xml полагается на множество правил, которые не всегда верны. Вы обязаны поддерживать правильность XML, к которому вы присоединились.ERDDAP'S'datasets.xmlФайл.
(Интересный факт: я не кричу. По историческим юридическим причинам отказ от ответственности должен быть написан во всех колпаках.)
Выход GenerateDatasetsXml является черновым проектом. Вам почти всегда придется его редактировать. Мы приложили и продолжаем прилагать огромные усилия, чтобы сделать выход как можно более готовым, но есть пределы. Часто необходимая информация просто недоступна из исходных метаданных.
Основная проблема заключается в том, что мы запрашиваем компьютерную программу. (Генерировать наборы данныхXml) Если бы вы дали такую же задачу 100 людям, вы бы получили 100 различных результатов. Нет единого «правильного» ответа. Очевидно, программа ближе всего подходит к чтению мыслей Боба. (Не твой) Но даже в этом случае это не всепонимающая программа ИИ, просто куча эвристиков, с обранных вместе, чтобы выполнить задачу, похожую на ИИ. (Этот день всепонимающей программы ИИ может наступить, но он еще не наступил. Если это произойдет, у людей могут быть большие проблемы. Будьте осторожны с тем, что вы хотите.)
-
В информационных целях на выходе показаны глобальный источник Атрибуты и переменный источник Атрибуты в виде комментариев.ERDDAP™комбинирует атрибуты иaddAttributes (которые имеют приоритет) Чтобы сделать комбинированный Атрибуты, которые показываются пользователю. (И другие атрибуты автоматически добавляются к долготе, широте, высоте, глубине и временным переменным, когдаERDDAP™Фактически делает набор данных) .
-
Если вам не нравится исходный атрибут, перезапишите его, добавив дополнительный атрибут с тем же именем, но с другим значением. (или нет, если вы хотите удалить) .
-
Все этоaddAttributesЭто компьютерные предложения. Редактируйте их! Если вам не нравится дополнительный атрибут, измените его.
-
Если вы хотите добавить другиеaddAttributesДобавьте их.
-
Если вы хотите изменить аdestinationNameИзмени это. Но не меняйся.sourceNameС.
-
Вы можете измен ить порядокdataVariableили удалить любой из них.
- Затем вы можете использоватьDasDds (см. ниже) многократно тестировать XML для этого набора данных, чтобы убедиться, что полученный набор данных отображается так, как вы хотите.ERDDAP.
- Не стесняйтесь вносить небольшие изменения вdatasets.xmlЧасти, которые были созданы, например, обеспечивают лучшуюinfoUrl, резюме или название.
Не добавляйте стандартные имена
Если вы включаете \-doNotAddStandardNames в качестве параметра командной строки при генерации Наборы данных Xml, генерировать Наборы данных Xml не будет добавлятьstandard\_nameкaddAttributesдля любых переменных, кроме переменных широты, долготы, высоты, глубины или времени (которые очевидныstandard\_names) . Это может быть полезно, если вы используете выход из генерации. Наборы данных Xml непосредственно вERDDAP™Не редактируя выход, потому что генерировать Наборы данных Xml часто угадываетstandard\_nameнеправильно. (Обратите внимание, что мы всегда рекомендуем вам редактировать вывод перед его использованием.ERDDAP.) Использование этого параметра будет иметь другие незначительные связанные эффекты, потому чтоstandard\_nameчасто используется для других целей, например, для создания новогоlong\_name, а также для создания цветовых баров.
Сценарий
В качестве альтернативы интерактивному ответу на вопросы на клавиатуре и циклированию для создания дополнительных наборов данных вы можете предоставить аргументы командной строки для ответа на все вопросы для создания одного набора данных. Генерировать наборы данных Xml обрабатывает эти параметры, записывает вывод в файл вывода и выходит из программы.
Чтобы настроить это, сначала используйте программу в интерактивном режиме и запишите свои ответы. Вот частичный пример: Допустим, вы запускаете сценарий: ./GenerateDatasetsXml.sh Далее введите: EDDTableFromAsciiFiles Введите: /u00/data/ Затем введите: .*\.asc Далее введите: /u00/data/sampleFile.asc Далее введите: ISO-8859-1
Чтобы запустить это неинтерактивным способом, используйте эту командную строку: ./GenerateDatasetsXml.sh EDDTableFromAsciiFiles/u00/data/.\*\.asc/u00/data/sampleFile.asc ISO-8859-1 Таким образом, вы просто перечислите все ответы в командной строке. Это должно быть полезно для наборов данных, которые часто меняются таким образом, что требует повторного запуска наборов данных. Xml ( особенноEDDGridИз ThreddsCatalog) .
Подробности:
- Если параметр содержит пространство или какой-то специальный символ, то закодируйте параметр какСтруна в стиле JSONНапример, "мой параметр с пробелами и двумя\nлинии".
- Если вы хотите указать пустую строку в качестве параметра, используйте: ничего
- Если вы хотите указать значение параметра по умолчанию, используйте:
- Генерировать наборы данных Xml поддерживает -i наборы данных XmlName # имя параметр командной строки, который вставляет выход в указанныйdatasets.xmlфайл (Дефолт является кот /content/erddap/datasets.xml) . Генерировать наборы данных Xml ищет две строки в наборах данных XmlName:
<!-- Begin GenerateDatasetsXml #*tagName someDatetime* -->
и
<!-- End GenerateDatasetsXml #*tagName someDatetime* -->
и заменяет все между этими строками новым контентом и изменяет некоторое время.
- Переключатель i обрабатывается только (и изменения вdatasets.xmlпроизводится только) Если вы используете GenerateDatasets Xml с аргументами командной строки, которые определяют все ответы на все вопросы для одного цикла программы. (См. статью «Сценарий» выше.) (Мышление таково: этот параметр предназначен для использования со сценариями. Если вы используете программу в интерактивном режиме (ввод информации на клавиатуре) Вы, вероятно, сгенерируете некоторые неправильные фрагменты XML, прежде чем сгенерировать тот, который вы хотите.)
- Если строки «Начало» и «Конец» не найдены, то эти строки и новый контент вставляются прямо перед этим.</erddapDatasets.
- Существует также -I (капитал i) переключатель для целей тестирования, который работает так же, как -i, но создает файл, называемыйdatasets.xml Время даты и не вносит изменений вdatasets.xml.
- Не запускайте GenerateDatasets Xml с -i в двух процессах одновременно. Есть вероятность, что будет сохранен только один набор изменений. Могут быть серьезные проблемы (Например, поврежденные файлы) .
Если вы используете «GenerateDatasetsXml-verbose», он будет печатать больше диагностических сообщений, чем обычно.