Как создать xml-файл для честного знака

Обновлено: 03.07.2024

Все компании, как иностранные, так и отечественные, обязаны подавать регистрационные заявления, периодические отчеты и другие формы в электронном виде через систему EDGAR (Электронный сбор, анализ и поиск данных) Комиссии по ценным бумагам и биржам США. Любой может получить доступ к этой информации и скачать ее бесплатно или запросить ее с помощью различных общедоступных поисковых систем EDGAR.

Честный доступ

  • Текущая максимальная частота запросов: 10 запросов в секунду.

Чтобы обеспечить всем равный доступ к контенту SEC EDGAR, используйте эффективные сценарии. Скачивайте только то, что вам нужно, и модерируйте запросы, чтобы свести к минимуму нагрузку на сервер.

SEC оставляет за собой право ограничивать количество запросов, чтобы обеспечить справедливый доступ для всех пользователей. См. нашу Политику интернет-безопасности, чтобы узнать о нашем текущем лимите запросов на скорость.

SEC не разрешает ботнетам или автоматическим инструментам сканировать сайт. Любой запрос, который был идентифицирован как часть ботнета или автоматизированного инструмента вне приемлемой политики, будет управляться для обеспечения справедливого доступа для всех пользователей.

Укажите свой пользовательский агент в заголовках запросов:

Пример объявленных заголовков запроса бота:

Мы не предлагаем техническую поддержку для разработки или отладки скриптовых процессов.

Как далеко уходят данные EDGAR?

ЭДГАР начал свою деятельность в 1994/1995 году. Бумажные копии документов до 1994 года можно получить, подав запрос в соответствии с Законом о свободе информации. См. Как получить доступ или запросить записи, недоступные через веб-сайт SEC.

Часы работы и распространение

EDGAR принимает новые заявки на регистрацию, новые документы и изменения в данных о заявках каждый рабочий день с понедельника по пятницу с 6:00 до 22:00 по восточному времени. Индексы, включающие отчеты за текущий рабочий день, обновляются каждую ночь, начиная примерно с 22:00 по восточноевропейскому времени; процесс обычно завершается в течение нескольких часов. Некоторые подачи заявок, которые начинаются после 17:30. по восточному времени или в 22:00. для форм собственности 3, 4, 5 — будут распространены на следующий рабочий день и появятся в указателе следующего рабочего дня.

Некоторые документы по-прежнему подаются в бумажном виде и недоступны через EDGAR. Отсканированные PDF-файлы некоторых из этих документов доступны через Виртуальную частную справочную комнату (VPRR), более подробно описанную ниже.

Исправления и удаления после принятия

Иногда сотрудники Комиссии по ценным бумагам и биржам разрешают удаление или исправление документов по разным причинам по запросу подателя, включая, помимо прочего, документ, который был отправлен не тому подателю, документ был дубликатом ранее поданного документа, документ в его текущей форме был нечитаемым или документ содержал конфиденциальную информацию. Исправления, обработанные в течение данного рабочего дня, будут включены в индексы, созданные этим вечером. Однако удаления, обработанные в последующие рабочие дни, не будут отражаться ни в одном предыдущем ежедневном индексе, ленте или индексе старой загрузки. Полные и ежеквартальные индексные файлы перестраиваются еженедельно рано утром в субботу, чтобы в них включались любые исправления или обновления после принятия (PAC).

API данных

Отправки компаний и извлеченные данные XBRL доступны через API RESTful на data.sec.gov, предлагая данные в формате JSON.

Использование индексных файлов EDGAR

Указатели ко всем общедоступным документам доступны с 1994Q3 по настоящее время и расположены в следующих просматриваемых каталогах:

    — ежедневные индексные файлы за текущий год; — полные индексы предлагают «мост» между квартальными и дневными индексами, составляя отчеты с начала текущего квартала по предыдущий рабочий день. В конце квартала полный индекс преобразуется в статический квартальный индекс.

Каждый каталог и все дочерние подкаталоги содержат по три файла для автоматического сканирования этих каталогов. Обратите внимание, что они не видны при просмотре каталогов.

  • index.html (обычно веб-браузер получает их)
  • index.xml (форматированная XML-версия того же содержания)
  • index.json (структурированное представление того же контента в формате JSON)

Индексы EDGAR содержат следующую информацию для каждой заявки:

  • название компании
  • тип формы
  • ключ центрального индекса (CIK)
  • дата подачи
  • имя файла (включая путь к папке)

Доступно четыре типа индексов:

  • компания — отсортировано по названию компании
  • форма — отсортировано по типу формы
  • мастер — отсортировано по номеру CIK
  • XBRL — список документов, содержащих финансовые файлы в формате XBRL, отсортированный по номеру CIK; к ним относятся заявки на участие в программе добровольных подачи заявок.

Компании, формы и главные индексы содержат одну и ту же информацию, отсортированную по-разному.

  • EDGAR присваивает регистраторам уникальный числовой идентификатор, известный как ключ центрального индекса (CIK), когда они регистрируются для подачи документов в SEC. Номера CIK остаются уникальными для регистратора; они не перерабатываются.
    (13 МБ, текстовый файл). Обратите внимание, что этот список включает в себя фонды и отдельных лиц и исторически является кумулятивным для названий компаний. Таким образом, данный CIK может быть связан с несколькими именами в случае изменения названия компании или фонда, и список содержит некоторые организации, которые больше не подают документы в SEC.

Каталоги каналов и старых загрузок

    — архивные файлы tar и gzip (например, 20061207.nc.tar.gz) за каждый день подачи. — ежедневные объединенные архивные файлы всех общедоступных заявок с заголовком регистрации.

Каждый каталог фида и oldloads, а также все дочерние подкаталоги содержат три файла, помогающие в автоматическом сканировании этих каталогов:

  • index.html (обычно веб-браузер получает их)
  • index.xml (форматированная XML-версия того же содержания)
  • index.json (структурированное представление того же контента в формате JSON)

См. техническую спецификацию EDGAR Public Dissemination Service (PDS) для получения подробной информации о типах распространения и структуре заголовка SGML.

Пути и структура каталогов

Пути указателя ссылаются на необработанную текстовую версию полного содержания распространяемой документации, например:

Заявки после EDGAR 7.0 (после 26 мая 2000 г.) также доступны по альтернативному символическому пути, включающему каталог промежуточного инвентарного номера без тире. Все документы, представленные для данной подачи, будут находиться в этом каталоге:

Другой контент, который может представлять интерес при использовании корневого пути:

    — HTML-версия, включающая таблицу с гиперссылками представленных документов. —
    содержимое заголовка SGML. Обратите внимание на дополнительный каталог «инвентарный номер без тире» в пути.

Номер доступа: в приведенном выше примере 0001193125-15-118890 — это номер доступа, уникальный идентификатор, автоматически назначаемый EDGAR для принятой заявки. Первый набор цифр (0001193125) — это CIK лица, подающего заявку. Это может быть компания или сторонний агент. Некоторые регистрационные агенты, не требующие от регулирующих органов подавать документы о раскрытии информации в SEC, имеют CIK, но не доступны для поиска в общедоступной базе данных EDGAR. Следующие две цифры (15) обозначают год. Последняя серия чисел представляет собой последовательный подсчет поданных заявок из этого CIK. Счетчик обычно, но не всегда, обнуляется в начале каждого календарного года.

Просмотр каталога

Просмотр каталогов разрешен для каталогов CIK и инвентарных номеров. Например:

Обратите внимание, что каталог /Archives/edgar/data/ недоступен для просмотра.

Каждый каталог CIK и все дочерние подкаталоги содержат три файла, помогающие в автоматическом обходе этих каталогов. Они не видны при просмотре каталогов.

  • index.html (обычно веб-браузер получает их)
  • index.xml (форматированная XML-версия того же содержания)
  • index.json (структурированное представление того же контента в формате JSON)

Виртуальная частная справочная комната (VPRR)

Каждое имя каталога представляет собой 4-значный номер, соответствующий первым четырем цифрам номера фильма/DCN (контрольный номер документа).

Каждый каталог VPRR содержит три файла, которые не указаны в списке каталогов, но могут быть полезны для автоматизированных процессов:

  • index.html (список каталогов, которые вы видите в браузере)
  • index.xml
  • index.json

Ежемесячный каталог

Ежемесячный каталог содержит архивные файлы XBRL RSS за апрель 2005 г., когда была запущена Программа добровольного подачи файлов XBRL. Дополнительную информацию см. в RSS-каналах структурированного раскрытия информации.

ассоциации CIK, тикера и биржи

Мы периодически обновляем эти файлы, чтобы обеспечить функциональность поиска EDGAR, но не гарантируем точность или объем.

В этой статье описывается, как использовать XML-блокнот для создания XML-документа.

Исходная версия продукта: Блокнот Microsoft XML
Исходный номер базы знаний: 296560

Обзор

Microsoft XML Notepad — это приложение, позволяющее быстро и легко создавать и редактировать XML-документы. С помощью этого инструмента структура ваших XML-данных отображается графически в виде древовидной структуры. Интерфейс представляет собой две панели: одну для структуры и одну для значений. Вы можете добавлять элементы, атрибуты, комментарии и текст в XML-документ, создавая древовидную структуру на левой панели и вводя значения в соответствующие текстовые поля на правой панели.

Подробнее

Чтобы создать XML-документ правильного формата с помощью XML Notepad, выполните следующие действия:

Чтобы открыть блокнот XML, нажмите «Пуск», выберите «Программы», выберите «Блокнот XML», а затем нажмите «Блокнот Microsoft XML».Интерфейс показывает две панели. Панель «Структура» слева представляет начало древовидной структуры XML с уже созданными Root_Element и Child_Element. Пустые текстовые поля на панели значений принимают соответствующие значения.

Измените Root_Element на Catalog, а Child_Element на Book и добавьте атрибут и три дочерних элемента в дочерний элемент Book.

При вставке следующих значений не включайте апострофы. Блокнот XML вставит их за вас, как того требует ваш XML-документ.

Чтобы вставить атрибут книги, щелкните правой кнопкой мыши Книга, выберите пункт Вставить и щелкните Атрибут. Рядом со значком куба введите ID. Чтобы вставить значение для этого атрибута, выделите ID и введите Bk101 в соответствующее текстовое поле на панели значений.

Чтобы вставить дочерний элемент для книги, щелкните правой кнопкой мыши значок папки рядом с книгой, выберите «Вставить» и выберите «Дочерний элемент». Появится значок листа. Введите Автор рядом с этим значком, а затем введите Gambardella, Matthew в соответствующем текстовом поле на панели значений.

Добавьте еще два дочерних элемента: Название и Жанр. Введите Руководство разработчика XML и Компьютер в соответствующие текстовые поля на панели "Значения".

Чтобы добавить еще один дочерний элемент Book в корневой узел, щелкните правой кнопкой мыши существующий элемент Book и выберите Дублировать. Введите нужные значения.

Чтобы добавить текст к существующим элементам, выделите узел, для которого вы хотите добавить текстовый узел. В меню "Вставка" нажмите "Текст".

Чтобы добавить комментарии к существующим элементам, выделите узел, после которого или в который вы хотите вставить комментарий. В меню Вставка щелкните Комментарий. Если выделенный узел развернут, комментарий вставляется в выделенный узел.

Чтобы изменить тип узла, выделите узел, который вы хотите изменить. В меню "Инструменты" выберите "Заменить на" и выберите соответствующий тип.

Вы не можете изменить тип корневого узла или узлов с дочерними элементами.

Чтобы просмотреть исходный XML-файл документа, в меню «Вид» выберите «Источник». Пример вывода выглядит следующим образом:

Следующее сообщение в нижней части окна просмотра:

Текущее определение XML правильно сформировано.

Кроме того, обратите внимание, что объявление XML или инструкции по обработке должны быть добавлены с помощью внешнего редактора, например Блокнота.

Чтобы сохранить XML-документ, в меню "Файл" выберите "Сохранить". Чтобы выйти из XML Notepad, в меню "Файл" выберите "Выход".

Вы можете использовать классы в пространстве имен System.Security.Cryptography.Xml для подписи XML-документа или части XML-документа цифровой подписью. Цифровые подписи XML (XMLDSIG) позволяют убедиться, что данные не были изменены после подписания. Дополнительные сведения о стандарте XMLDSIG см. в рекомендациях Консорциума World Wide Web (W3C) Синтаксис и обработка подписи XML.

Код в этой статье относится к Windows.

Пример кода в этой процедуре демонстрирует, как поставить цифровую подпись на весь XML-документ и прикрепить подпись к документу в элементе < Signature >. В примере создается ключ подписи RSA, ключ добавляется в безопасный контейнер ключей, а затем используется ключ для цифровой подписи XML-документа. Затем ключ можно получить для проверки цифровой подписи XML или использовать для подписи другого XML-документа.

Информацию о том, как проверить цифровую подпись XML, созданную с помощью этой процедуры, см. в разделе Практическое руководство. Проверка цифровых подписей XML-документов.

Чтобы подписать XML-документ цифровой подписью

Создайте объект CspParameters и укажите имя контейнера ключей.

Создайте асимметричный ключ с помощью класса RSACryptoServiceProvider. Ключ автоматически сохраняется в контейнере ключей при передаче объекта CspParameters конструктору класса RSACryptoServiceProvider. Этот ключ будет использоваться для подписи XML-документа.

Создайте объект XmlDocument, загрузив файл XML с диска. Объект XmlDocument содержит XML-элемент для шифрования.

Создайте новый объект SignedXml и передайте ему объект XmlDocument.

Добавьте подписывающий ключ RSA в объект SignedXml.

Создайте объект Reference, описывающий, что подписывать. Чтобы подписать весь документ, задайте для свойства Uri значение "" .

Добавьте объект XmlDsigEnvelopedSignatureTransform к объекту Reference. Преобразование позволяет верификатору представлять XML-данные тем же способом, что и подписывающая сторона. XML-данные могут быть представлены по-разному, поэтому этот шаг крайне важен для проверки.

Добавьте объект Reference к объекту SignedXml.

Вычислите подпись, вызвав метод ComputeSignature.

Получить XML-представление подписи (элемент < Signature >) и сохранить его в новый объект XmlElement.

Добавить элемент в объект XmlDocument.

Сохраните документ.

Пример

В этом примере предполагается, что файл с именем test.xml находится в том же каталоге, что и скомпилированная программа. Вы можете поместить следующий XML-код в файл с именем test.xml и использовать его в этом примере.

Компиляция кода

Никогда не храните и не передавайте закрытый ключ пары асимметричных ключей в виде открытого текста. Дополнительные сведения о симметричных и асимметричных криптографических ключах см. в разделе Генерация ключей для шифрования и дешифрования.

Никогда не встраивайте закрытый ключ непосредственно в исходный код. Встроенные ключи можно легко прочитать из сборки с помощью Ildasm.exe (дизассемблер IL) или открыв сборку в текстовом редакторе, таком как Блокнот.

6 ответов 6

Тот факт, что это XML, в принципе не имеет значения. Вы можете очень просто сохранить любой текст в файл с помощью File.WriteAllText :

Обратите внимание, что вы также можете указать кодировку (по умолчанию UTF-8). Так, например, если вы хотите записать файл в простом ASCII:

Что, сэр, если я захочу прочитать сохраненный xml обратно в свою программу в виде строки? Должен ли я использовать XmlTextReader?

@yonan2236: Тогда просто используйте File.ReadAllText . Как говорит Джон Скит, на самом деле вы не делаете ничего, связанного с XML; вы хотите выполнять базовый файловый ввод-вывод только для текстовых данных?

@yonan2236: Дело не в том, что вопрос неправильный как таковой, а в том, что он смешивает две концепции: сохранение текстового файла и содержание текстового файла в формате XML.

Я также рекомендую добавить XML-объявление в строку и убедиться, что кодировка в объявлении совпадает с кодировкой в ​​методе WriteAllText. Судя по частоте вопросов о кодировании XML в stackoverflow, это, скорее всего, избавит вас от лишних хлопот в будущем.

@stt106: Это просто означает, что ваша строка содержит текст encoding="utf-16" . Это не будет изменено какой-либо кодировкой, указанной в File.WriteAllText — это просто часть строки. Файл по-прежнему будет закодирован в UTF-8, а это означает, что декларация XML фактически лжет.

Если вам не нужно выполнять какую-либо обработку строки (например, с помощью библиотеки XML), вы можете просто сделать следующее:

Вы можете сделать это:

Это также можно сделать после создания XML-документа, но это будет медленнее:

Если вы хотите сохранить строку как есть, не проверяя ее правильность или правильность, то, как было сказано выше, используйте System.IO.File.WriteAllText("C:\myfilename.xml" , XML);

Как уже отмечалось, по умолчанию файл сохраняется в формате UTF-8, но вы можете указать кодировку, как упоминал Джон Скит.

Я бы рекомендовал добавить в строку объявление XML, например,

и убедитесь, что кодировка в объявлении совпадает с кодировкой в ​​методе WriteAllText. Судя по частоте вопросов о кодировании XML в stackoverflow, это, скорее всего, избавит вас от лишних хлопот в будущем.

Если вы хотите убедиться, что XML правильно сформирован и/или действителен, вам нужно будет сначала использовать анализатор XML, например XDocument doc = XDocument.Parse(str); Этот метод также переопределяется, если вы хотите сохранить пробелы: XDocument.Parse(str, LoadOptions.PreserveWhitespace)

Администратору Hadoop необходимо настроить свойства файла *-site.xml и перезапустить затронутые службы, прежде чем администратор Informatica импортирует информацию о кластере в домен.

Отключает вытеснение планировщика ресурсов. Механизм Blaze не поддерживает вытеснение. Если для кластера включено вытеснение YARN, вам необходимо отключить его для очереди, выделенной для ядра Blaze.

Идентификатор механизма выполнения для подключения к файловой системе Amazon S3. Требуется для ядра Blaze и для ядра Spark, если политика интеграции данных, если политика S3 не разрешает доступ к EMR.

Если служба интеграции данных развернута на экземпляре EC2, а роли и политики IAM разрешают доступ к S3 и другим ресурсам, это свойство не требуется. Если служба интеграции данных развернута локально, вы можете настроить значение этого свойства в конфигурации кластера в службе интеграции данных после импорта конфигурации кластера. Настройка значения AccessKeyID в конфигурации кластера более безопасна, чем его настройка в файле core-site.xml в кластере.

Ключ доступа для модулей Blaze и Spark для подключения к файловой системе Amazon S3. Требуется для ядра Blaze и для ядра Spark, если политика интеграции данных, если политика S3 не разрешает доступ к EMR.

Если служба интеграции данных развернута на экземпляре EC2, а роли и политики IAM разрешают доступ к S3 и другим ресурсам, это свойство не требуется. Если служба интеграции данных развернута локально, вы можете настроить значение этого свойства в конфигурации кластера в службе интеграции данных после импорта конфигурации кластера. Настройка значения AccessKeyID в конфигурации кластера более безопасна, чем его настройка в файле core-site.xml в кластере.

Алгоритм шифрования на стороне сервера для S3. Требуется для шифрования SSE и SSE-KMS. Установите используемый алгоритм шифрования.

Определяет группы, которые может олицетворять учетная запись прокси-пользователя. В безопасном кластере <прокси-пользователь> — это имя участника-службы, соответствующее файлу keytab кластера. В незащищенном кластере — это системный пользователь, запускающий демон Informatica.

Настройте для группировки имен пользователей олицетворения, разделенных запятыми. Если предпочтительна меньшая безопасность, используйте подстановочный знак "*", чтобы разрешить олицетворение из любой группы.

После внесения изменений в свойства proxyuser перезапустите службу учетных данных и другие службы кластера, использующие значения конфигурации основного сайта.

Определяет хост-компьютеры, которые может олицетворять учетная запись пользователя. В безопасном кластере <прокси-пользователь> — это имя участника-службы, соответствующее файлу keytab кластера. В незащищенном кластере — это системный пользователь, запускающий демон Informatica.

Укажите одно имя хоста или IP-адрес или укажите список, разделенный запятыми. Если предпочтительна меньшая безопасность, используйте подстановочный знак " * ", чтобы разрешить олицетворение с любого хоста.

После внесения изменений в свойства proxyuser перезапустите службу учетных данных и другие службы кластера, использующие значения конфигурации основного сайта.

Список хостов, разделенных запятыми, которые вы хотите разрешить пользователю Hive олицетворять в незащищенном кластере.

ложно, добавьте через запятую список имен хостов или IP-адресов серверов Informatica, на которых запущена служба интеграции данных. Если предпочтительна меньшая безопасность, используйте подстановочный знак " * ", чтобы разрешить олицетворение с любого хоста.

После внесения изменений в это свойство перезапустите службы кластера, использующие значения конфигурации основного сайта.

Список групп, разделенных запятыми, которые вы хотите разрешить пользователю YARN олицетворять в незащищенном кластере.

Настройте для группировки имен пользователей олицетворения, разделенных запятыми. Если предпочтительна меньшая безопасность, используйте подстановочный знак "*", чтобы разрешить олицетворение из любой группы.

После внесения изменений в свойства proxyuser перезапустите службу учетных данных и другие службы кластера, использующие значения конфигурации основного сайта.

Список хостов, разделенных запятыми, которые вы хотите разрешить пользователю YARN олицетворять в незащищенном кластере.

Укажите одно имя хоста или IP-адрес или укажите список, разделенный запятыми. Если предпочтительна меньшая безопасность, используйте подстановочный знак " * ", чтобы разрешить олицетворение с любого хоста.

После внесения изменений в свойства proxyuser перезапустите службу учетных данных и другие службы кластера, использующие значения конфигурации основного сайта.

Преобразует основные имена из области Active Directory и MIT в локальные имена в пределах кластера Hadoop. В зависимости от используемого кластера Hadoop можно установить несколько правил.

Читайте также: