stringtranslate.com

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

Примечания:

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

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 разработан так, чтобы не нуждаться в каком-либо дополнительном метаязыке, будучи разработанным в метациклическом стиле. Метацикличность языка является причиной того, что, например, диалект Parse, используемый (не исключительно) для определений и преобразований диалектов REBOL, сам по себе также является диалектом REBOL. [17] REBOL был использован в качестве источника вдохновения для JSON. [18]

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

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

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

Ссылки

  1. ^ А. Доан, А. Халеви и З. Айвс. «Принципы интеграции данных», Morgan Kaufmann,s 2012 стр. 276
  2. ^ Аренас, М.; Барсело, П.; Либкин, Л.; Мурлак, Ф. (2014). Основы обмена данными. Cambridge University Press. С. 1–11. ISBN 9781107016163. Получено 25 мая 2018 г.
  3. ^ Клэнси, Дж. Дж. (2012). «Глава 1: Направления обмена инженерными данными для автоматизированного проектирования и производства». В Ван, PCC (ред.). Достижения в области CAD/CAM: практические исследования. Springer Science & Business Media. стр. 1–36. ISBN 9781461328193. Получено 25 мая 2018 г.
  4. ^ Калиш, CE; Майер, MF (ноябрь 1981 г.). "DIF: Формат обмена данными между прикладными программами". Журнал BYTE : 174.
  5. ^ "О ODF". OpenDoc Society . Получено 25 мая 2018 г.
  6. ^ Чжу, X. (2016). ГИС для экологических приложений: практический подход. Routledge. ISBN 9781134094509. Получено 25 мая 2018 г.
  7. ^ "Справочник KML". Google Inc. 21 января 2016 г. Получено 25 мая 2018 г.
  8. ^ Мартинс, Р. М. Ф.; Лоренсу, Н. К. К.; Хорта, Н. К. Г. (2012). Генерация аналоговых схем ИС с помощью LAYGEN II. Springer Science & Business Media. стр. 34. ISBN 9783642331466. Получено 25 мая 2018 г.
  9. ^ Heidarzadeh, A.; Sprintson, A. (2017-03-30). "Оптимальный обмен данными по широковещательным сетям с противниками". 2016 Information Theory and Applications Workshop (ITA) . ISBN 978-1-5090-2529-9– через IEEE.
  10. ^ "Что такое трансляция?". IONOS Digital Guide . 2023-03-20 . Получено 03.04.2024 .
  11. ^ "Unicast". IONOS Digital Guide . 2023-03-23 . Получено 2024-04-03 .
  12. ^ Биллингсли, ФК (1988). «Общий язык обмена данными». Архивы ISPRS . 27 (B3): 80–91 . Получено 25 мая 2018 г. Процедуры преобразования будут представлять собой язык и синтаксис, которые должны быть дисциплинарно и машинно-независимыми.
  13. ^ Нурсеитов, Н.; Полсон, М.; Рейнольдс, Р.; Изуриета, К. (2009). «Сравнение форматов обмена данными JSON и XML: исследование случая». Сценарий : 157–162.
  14. ^ ab Льюис, Дж.; Московиц, М. (2009). AdvancED CSS. APress. стр. 5–6. ISBN 9781430219323. Получено 25 мая 2018 г.
  15. ^ "human-readable". Oxford Dictionaries . Oxford University Press. Архивировано из оригинала 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 г.