stringtranslate.com

Обмен данными

Обмен данными — это процесс получения данных, структурированных в соответствии с исходной схемой , и преобразования их в целевую схему, чтобы целевые данные были точным представлением исходных данных. [1] Обмен данными позволяет обмениваться данными между различными компьютерными программами.

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

Однодоменный обмен данными

В некоторых доменах может существовать несколько десятков различных исходных и целевых схем (собственных форматов данных). «Обмен» или «формат обмена» часто разрабатывается для одного домена, а затем записываются необходимые процедуры (отображения) для (косвенного) преобразования/перевода каждой исходной схемы в каждую целевую схему с использованием формата обмена как промежуточный шаг. [2] Это требует гораздо меньше работы, чем написание и отладка сотен различных процедур, которые потребуются для прямой трансляции каждой исходной схемы непосредственно в каждую целевую схему.

Примеры таких преобразующих форматов обмена включают в себя:

Методы обмена данными

Существует два типа обмена данными: широковещательный обмен данными и одноранговый (одноадресный) обмен данными. [9]

В широковещательной сети данные передаются одновременно всем участникам. Как и в случае с конференц-звонком, все участники одновременно получают одну и ту же информацию от говорящего. [10]

В одноранговой (одноадресной) модели обмена данными данные отправляются только целевому получателю, определенному конкретным адресом. Так же, как телефонный звонок или электронное письмо, информация передается только между двумя участниками сети. [11]

Языки обмена данными

Язык/формат обмена данными (или обмена) — это язык, который не зависит от предметной области и может использоваться для данных из любой дисциплины. [12] Они «превратились из разметки и ориентированных на отображение в дополнительную поддержку кодирования метаданных, описывающих структурные атрибуты информации». [13]

Практика показала, что некоторые типы формальных языков лучше подходят для этой задачи, чем другие, поскольку их спецификация обусловлена ​​формальным процессом, а не конкретными потребностями реализации программного обеспечения. Например, XML — это язык разметки , который был разработан для создания диалектов (определения подъязыков, специфичных для предметной области). [14] Однако он не содержит предметно-ориентированных словарей или типов фактов. Полезным для надежного обмена данными является наличие стандартных словарей-таксономий и библиотек инструментов, таких как парсеры , валидаторы схем и инструменты преобразования. [ нужна цитата ]

Популярные языки, используемые для обмена данными

Ниже приводится неполный список популярных универсальных языков, используемых для обмена данными в нескольких доменах.


Номенклатура

Примечания:

  1. ^ RDF — язык с гибкой схемой.
  2. ^ Схема XML содержит очень ограниченную грамматику и словарный запас.
  3. ^ Доступно как расширение.
  4. ^ В формате по умолчанию, а не в компактном синтаксисе.
  5. ^ Синтаксис довольно прост (язык был разработан так, чтобы его мог читать человек); диалекты могут потребовать знания предметной области .
  6. ^ Стандартизированные типы фактов обозначаются стандартизированными английскими фразами, интерпретация и использование которых требует некоторой подготовки.
  7. ^ Диалект синтаксического анализа используется для указания, проверки и преобразования диалектов.
  8. ^ Английская версия включает словарь-таксономию геллишского английского языка, который также включает стандартизированные типы фактов (= виды отношений).

XML для обмена данными

Популярность XML для обмена данными во Всемирной паутине имеет несколько причин. Прежде всего, он тесно связан с ранее существовавшими стандартами Standard Generalized Markup Language (SGML) и Hypertext Markup Language (HTML), и поэтому синтаксический анализатор, написанный для поддержки этих двух языков, может быть легко расширен для поддержки XML. Например, XHTML был определен как формат, который является формальным XML, но правильно понимается большинством (если не всеми) анализаторами HTML. [14]

YAML для обмена данными

YAML — это язык, который был разработан так, чтобы его можно было читать человеком (и, следовательно, его можно было легко редактировать в любом стандартном текстовом редакторе). Его понятие часто похоже на синтаксис reStructuredText или Wiki, которые также стараются быть читабельными как для людей, так и для компьютеров. YAML 1.2 также включает сокращение, совместимое с JSON, и поэтому любой документ JSON также является действительным YAML; Однако это не имеет обратного значения. [16]

REBOL для обмена данными

REBOL — это язык, который был разработан так, чтобы его можно было читать и легко редактировать с помощью любого стандартного текстового редактора. Для этого он использует простой синтаксис свободной формы с минимальным количеством знаков препинания и богатым набором типов данных. Типы данных REBOL, такие как URL-адреса, электронные письма, значения даты и времени, кортежи, строки, теги и т. д., соответствуют общим стандартам. REBOL спроектирован таким образом, чтобы не нуждаться в каком-либо дополнительном метаязыке, и был разработан метациклическим способом. Метацикличность языка является причиной того, что, например, диалект парсе, используемый (не исключительно) для определений и преобразований диалектов REBOL, сам по себе также является диалектом REBOL. [17] REBOL использовался в качестве источника вдохновения для JSON. [18]

Гелиш для обмена данными

Геллишский английский — это формализованное подмножество естественного английского языка, которое включает в себя простую грамматику и большой расширяемый словарь-таксономию английского языка , определяющую общую и предметную терминологию (термины для понятий), тогда как понятия организованы в иерархию подтипов-супертипов ( таксономия), которая поддерживает наследование знаний и требований. Словарь-Таксономия также включает стандартизированные типы фактов (также называемые типами отношений). Термины и типы отношений вместе могут использоваться для создания и интерпретации выражений фактов, знаний, требований и другой информации. Gellish можно использовать в сочетании с SQL , RDF/XML , OWL и другими метаязыками. Стандарт Геллиша представляет собой комбинацию ISO 10303-221 (AP221) и ISO 15926. [19]

Смотрите также

Рекомендации

  1. ^ А. Доан, А. Халеви и З. Айвс. «Принципы интеграции данных», Морган Кауфманн, 2012, стр. 276.
  2. ^ Аренас, М.; Барсело, П.; Либкин Л.; Мурлак, Ф. (2014). Основы обмена данными. Издательство Кембриджского университета. стр. 1–11. ISBN 9781107016163. Проверено 25 мая 2018 г.
  3. ^ Клэнси, Джей-Джей (2012). «Глава 1: Направления обмена инженерными данными для автоматизированного проектирования и производства». Ин Ван, PCC (ред.). Достижения в области CAD/CAM: тематические исследования. Springer Science & Business Media. стр. 1–36. ISBN 9781461328193. Проверено 25 мая 2018 г.
  4. ^ Калиш, CE; Майер, М.Ф. (ноябрь 1981 г.). «DIF: формат обмена данными между прикладными программами». Журнал БАЙТ : 174.
  5. ^ «О ОДФ». Общество OpenDoc . Проверено 25 мая 2018 г.
  6. ^ Чжу, X. (2016). ГИС для экологических приложений: практический подход. Рутледж. ISBN 9781134094509. Проверено 25 мая 2018 г.
  7. ^ "Справочник KML" . Google Inc., 21 января 2016 г. Проверено 25 мая 2018 г.
  8. ^ Мартинс, RMF; Лоренсу, NCC; Орта, NCG (2012). Создание макетов аналоговых микросхем с помощью LAYGEN II. Springer Science & Business Media. п. 34. ISBN 9783642331466. Проверено 25 мая 2018 г.
  9. ^ Гейдарзаде, А.; Спринтсон, А. (30 марта 2017 г.). «Оптимальный обмен данными по широковещательным сетям с противниками». 2016 Семинар по теории информации и приложениям (ITA) . ISBN 978-1-5090-2529-9– через IEEE.
  10. ^ «Что такое трансляция?». Цифровой гид IONOS . 20 марта 2023 г. Проверено 3 апреля 2024 г.
  11. ^ "Юникаст". Цифровой гид IONOS . 2023-03-23 . Проверено 3 апреля 2024 г.
  12. ^ Биллингсли, ФК (1988). «Общий язык обмена данными». Архивы ИСПРС . 27 (Б3): 80–91 . Проверено 25 мая 2018 г. Процедуры преобразования будут составлять язык и синтаксис, которые должны быть независимыми от дисциплины и машины.
  13. ^ Нурсеитов, Н.; Полсон, М.; Рейнольдс, Р.; Изуриета, К. (2009). «Сравнение форматов обмена данными JSON и XML: практический пример». Сценарий : 157–162.
  14. ^ Аб Льюис, Дж.; Московиц, М. (2009). Продвинутый CSS. Пресс. стр. 5–6. ISBN 9781430219323. Проверено 25 мая 2018 г.
  15. ^ «Человекочитаемый». Оксфордские словари . Издательство Оксфордского университета. Архивировано из оригинала 30 мая 2018 года . Проверено 29 мая 2018 г.
  16. ^ Бендерский, Э. (22 ноября 2008 г.). «JSON — это YAML, но YAML — это не JSON». Сайт Эли Бендерского . Проверено 29 мая 2018 г.
  17. ^ Сассенрат, К. (2000). «Язык сценариев REBOL». Журнал доктора Добба . 25 (314): 64–8 . Проверено 29 мая 2018 г.
  18. Сассенрат, К. (13 декабря 2012 г.). «О JSON и REBOL». REBOL.com . Проверено 29 мая 2018 г.
  19. ^ ван Ренссен, А.; Вермаас, ЧП; Цварт, С.Д. (2007). «Таксономия функций в геллийском английском языке». Материалы Международной конференции по инженерному проектированию 2007 : DS42_P_230 . Проверено 29 мая 2018 г.