Wymiana danych - Data exchange

Wymiana danych to proces pobierania danych ustrukturyzowanych w schemacie źródłowym i przekształcania ich w schemat docelowy , tak aby dane docelowe były dokładną reprezentacją danych źródłowych. Wymiana danych umożliwia współdzielenie danych między różnymi programami komputerowymi.

Jest to podobne do powiązanej koncepcji integracji danych, z tym wyjątkiem, że dane są faktycznie restrukturyzowane (z możliwą utratą treści) w wymianie danych. Biorąc pod uwagę wszystkie ograniczenia, może nie być możliwości przekształcenia instancji . I odwrotnie, może istnieć wiele sposobów przekształcenia instancji (prawdopodobnie nieskończenie wiele), w takim przypadku należy zidentyfikować i uzasadnić „najlepszy” wybór rozwiązań.

Wymiana danych w jednej domenie

W niektórych domenach może istnieć kilkadziesiąt różnych schematów źródłowych i docelowych (zastrzeżone formaty danych). „Format wymiany” lub „format wymiany” jest często opracowywany dla pojedynczej domeny, a następnie niezbędne procedury (mapowania) są zapisywane w celu (pośrednio) przekształcenia / przetłumaczenia każdego schematu źródłowego na każdy schemat docelowy przy użyciu formatu wymiany jako krok pośredni. Wymaga to znacznie mniej pracy niż pisanie i debugowanie setek różnych procedur, które byłyby wymagane do bezpośredniego przetłumaczenia każdego schematu źródłowego bezpośrednio na każdy schemat docelowy.

Przykłady tych transformujących formatów wymiany obejmują:

Języki wymiany danych

Język / format wymiany (lub wymiany) danych jest językiem niezależnym od domeny i może być używany do danych z dowolnej dyscypliny. „Ewoluowały od zorientowania na znaczniki i wyświetlanie w celu dalszego wspierania kodowania metadanych, które opisują strukturalne atrybuty informacji”.

Praktyka pokazała, że ​​niektóre typy języków formalnych lepiej nadają się do tego zadania niż inne, ponieważ ich specyfikacja jest podyktowana procesem formalnym, a nie określonymi potrzebami implementacji oprogramowania. Na przykład XML jest językiem znaczników, który został zaprojektowany, aby umożliwić tworzenie dialektów (definicja podjęzyków specyficznych dla domeny). Jednak nie zawiera słowników specyficznych dla domeny ani typów faktów. Korzystna dla niezawodnej wymiany danych jest dostępność standardowych słowników-taksonomii i bibliotek narzędzi, takich jak parsery , walidatory schematów i narzędzia do transformacji.

Popularne języki używane do wymiany danych

Poniżej znajduje się częściowa lista popularnych języków ogólnych używanych do wymiany danych w wielu domenach.

Schematy Elastyczne Weryfikacja semantyczna Słownik Model informacyjny Synonimy i homonimy Dialing Standard sieciowy Transformacje Lekki Czytelny dla człowieka Zgodność
RDF tak tak tak tak tak tak tak tak tak tak Częściowy Podzbiór sieci semantycznej
XML tak tak Nie Nie Nie Nie tak tak tak Nie tak podzbiór SGML , HTML
Atom tak Nieznany Nieznany Nieznany Nie Nieznany tak tak tak Nie Nie Dialekt XML
JSON Nie Nieznany Nieznany Nieznany Nie Nieznany Nie tak Nie tak tak podzbiór YAML
YAML Nie Nieznany Nieznany Nieznany Nie Nieznany Nie Nie Nie tak tak nadzbiór JSON
REBOL tak tak Nie tak Nie tak tak Nie tak tak tak
Żelowy tak tak tak tak Nie tak tak ISO Nie tak Częściowy SQL, RDF / XML, OWL

Nomenklatura

  • Schematy - czy definicja języka jest dostępna w formie możliwej do interpretacji komputerowej
  • Elastyczny - czy język umożliwia rozszerzenie możliwości wyrażeń semantycznych bez modyfikowania schematu
  • Weryfikacja semantyczna - czy definicja języka umożliwia semantyczną weryfikację poprawności wyrażeń w języku
  • Słownik-taksonomia - czy język zawiera słownik i taksonomię (hierarchia podtyp-nadtyp) pojęć z dziedziczeniem
  • Synonimy i homonimy - czy język zawiera i wspiera stosowanie synonimów i homonimów w wyrażeniach
  • Dialektyka - czy definicja języka jest dostępna w wielu językach naturalnych lub dialektach
  • Standard sieciowy lub ISO - organizacja, która przyjęła język jako standard
  • Transformacje - czy język zawiera tłumaczenie na inne standardy
  • Lekki - czy oprócz pełnej wersji jest dostępna wersja lekka
  • Czytelne dla człowieka - czy wyrażenia w języku są czytelne dla człowieka (czytelne dla ludzi bez szkolenia)
  • Zgodność - jakie inne narzędzia są możliwe do użycia lub wymagane podczas używania języka

Uwagi:

  1. ^ RDF jest językiem dostosowanym do schematu.
  2. ^ Schemat XML zawiera bardzo ograniczoną gramatykę i słownictwo.
  3. ^ Dostępne jako rozszerzenie.
  4. ^ W domyślnym formacie, a nie w kompaktowej składni.
  5. ^ Składnia jest dość prosta (język został zaprojektowany tak, aby był czytelny dla człowieka); dialekty mogą wymagać znajomości domeny .
  6. ^ Znormalizowane typy faktów są oznaczone znormalizowanymi angielskimi zwrotami, których interpretacja i stosowanie wymaga pewnego przeszkolenia.
  7. ^ Parse dialekt służy do określania, walidacji i przekształcić dialektów.
  8. ^ Wersja angielska zawiera taksonomię słownika języka angielskiego gellish, która zawiera również standardowe typy faktów (= rodzaje relacji).

XML do wymiany danych

Popularność XML do wymiany danych w sieci WWW ma kilka powodów. Przede wszystkim jest ściśle powiązany z istniejącymi wcześniej standardami Standard Generalized Markup Language (SGML) i Hypertext Markup Language (HTML) i jako taki parser napisany w celu obsługi tych dwóch języków można łatwo rozszerzyć tak, aby obsługiwał również XML. Na przykład XHTML został zdefiniowany jako format, który jest formalnym XML, ale rozumiany poprawnie przez większość (jeśli nie wszystkie) parserów HTML.

YAML do wymiany danych

YAML to język, który został zaprojektowany tak, aby był czytelny dla człowieka (i jako taki, aby można go było łatwo edytować za pomocą dowolnego standardowego edytora tekstu). Jego pojęcie często jest podobne do reStructuredText lub składni Wiki, które również starają się być czytelne zarówno dla ludzi, jak i komputerów. YAML 1.2 zawiera również skrótowe pojęcie, które jest kompatybilne z JSON, i jako taki każdy dokument JSON jest również prawidłowym YAML; to jednak nie działa na odwrót.

REBOL do wymiany danych

REBOL to język, który został zaprojektowany tak, aby był czytelny dla człowieka i łatwy do edycji za pomocą dowolnego standardowego edytora tekstu. Aby to osiągnąć, używa prostej składni o dowolnej formie z minimalną interpunkcją i bogatym zestawem typów danych. Typy danych REBOL, takie jak adresy URL, e-maile, wartości daty i czasu, krotki, ciągi znaków, tagi itp., Są zgodne z powszechnymi standardami. REBOL został zaprojektowany tak, aby nie wymagał żadnego dodatkowego metajęzyka, został zaprojektowany w sposób metakręgowy. Metacircularity języka jest powodem, dla którego np. Dialekt Parse używany (nie tylko) do definicji i przekształceń dialektów REBOL jest również dialektem REBOL-a. REBOL posłużył jako źródło inspiracji dla JSON.

Żelowy do wymiany danych

Gellish English to sformalizowany podzbiór naturalnego języka angielskiego, który obejmuje prostą gramatykę i duży rozszerzalny słownik-taksonomię języka angielskiego, który definiuje ogólną i dziedzinową terminologię (terminy na pojęcia), podczas gdy pojęcia są uporządkowane w hierarchii podtyp-nadtyp (a taksonomia), która wspiera dziedziczenie wiedzy i wymagań. Słownik-taksonomia zawiera również standardowe typy faktów (zwane również typami relacji). Terminy i typy relacji razem mogą być używane do tworzenia i interpretowania wyrażeń faktów, wiedzy, wymagań i innych informacji. Gellish może być używany w połączeniu z SQL , RDF / XML , OWL i różnymi innymi metajęzykami. Standard Gellish to połączenie ISO 10303-221 (AP221) i ISO 15926.

Zobacz też

Bibliografia