Mapowanie danych przy użyciu funkcji matematycznych XSLT3
XSLT3 dodaje funkcje trygonometryczne oraz inne zaawansowane funkcje matematyczne, nowe funkcje formatowania, funkcje do zbierania zmiennych środowiskowych i wiele innych, rozszerzając standardy transformacji XML XSLT i XSLT2. Analitycy danych i inni specjaliści ds. danych mogą wykorzystywać funkcje XSLT3 do rozwiązywania problemów związanych z mapowaniem i integracją danych XML, które wymagają złożonych obliczeń matematycznych. Przyjrzyjmy się kilku przykładom wykorzystania MapForce do mapowania danych za pomocą funkcji matematycznych XSLT3, w tym funkcji trygonometrycznych i innych złożonych wyrażeń matematycznych.

MapForce oferuje wewnętrzne silniki przetwarzania, które można dostosować do różnych typów danych i zastosowań.

Po wybraniu silnika XSLT3, funkcje wyświetlone poniżej zostaną dodane do okna Biblioteki Funkcji i będą dostępne do mapowania danych

Na przykład, możemy stworzyć mapowanie danych, które generuje wartości funkcji sinus, cosinus i tangens dla wartości wejściowych przechowywanych w pliku XML. Oryginalna lista została dostarczona w formacie CSV, którą zaimportowaliśmy do programu XMLSpy, który jest najlepiej sprzedającym się programem do przetwarzania XML na świecie Edytor plików JSON i XML, w celu konwersji do formatu XML.
Rozpoczynamy mapowanie w programie MapForce, importując schematy XML dla plików wejściowych i wyjściowych, a następnie łącząc elementy główne. Na tym etapie ważne jest wybranie standardowego typu połączenia, opartego na definicji celu. Dzięki temu możemy dostosować każde kolejne połączenie.

Następnie łączymy elementy "Row", wciągamy funkcje trygonometryczne z biblioteki i łączymy element "xvalue" z źródła z każdą funkcją oraz elementem wyjściowym. Poniżej znajduje się kompletne odwzorowanie danych:

Kliknięcie przycisku "Wygeneruj" znajdującego się pod panelem mapowania przetwarza plik wejściowy, generuje wynik i otwiera okno podglądu.

W tym przykładzie wartości wejściowe zaczynają się od zera i zwiększają się do 15, przyrostem 0,1. Wynik zawiera odpowiednio wartości sinus, cosinus i tangens dla każdej z tych wartości. Możemy zapisać plik i otworzyć go w programie XMLSpy, aby skorzystać z widoku tabelarycznego XMLSpy, stworzyć wysoce spersonalizowany wykres i nawet wyeksportować ten wykres, aby umieścić go w raporcie lub prezentacji

Mapowanie danych za pomocą XSLT3 do tworzenia złożonych wyrażeń
Można łączyć funkcje XSLT3 z innymi funkcjami w bibliotece, aby tworzyć złożone wyrażenia. Załóżmy, że chcemy zastosować równanie kwadratowe, takie jak y = 4x² – 3, do listy wartości wejściowych. Możemy stworzyć mapowanie, które łączy funkcję potęgowania pow z XSLT3 z podstawowymi funkcjami biblioteki służącymi do mnożenia i dodawania.

Należy zwrócić uwagę, że kolejność funkcji w mapowaniu wyraźnie określa kolejność wykonywania operacji, która jest implikowana w wyrażeniu: najpierw potęgowanie, następnie mnożenie, a na końcu odejmowanie. Jeśli wyrażenie używa nawiasów, aby zmienić domyślną kolejność wykonywania operacji, zmienilibyśmy kolejność funkcji w mapowaniu, aby określić pożądaną kolejność.
Być może chcemy przetestować różne warianty wyrażenia, podając mu szereg wartości wejściowych i porównując wyniki. Możemy stworzyć funkcję użytkownika, która będzie opisywać to wyrażenie, a także możemy zmodyfikować strukturę pliku wyjściowego, aby rejestrować wykładnik, mnożnik i modyfikator użyte do wygenerowania każdego pliku wyjściowego.
Oto pożądana struktura każdego pliku wyjściowego generowanego przez różne warianty tego wyrażenia:

Funkcja użytkownika będzie przyjmować wartości zmiennej x z pliku XML, obliczać wyrażenie oraz przekazywać parametry funkcji, które zostaną zapisane w pliku wynikowym.

Oto pełne odwzorowanie wraz z przykładem użycia w funkcji użytkownika:

A oto wygenerowany plik wynikowy:

Funkcję użytkownika można łatwo wstawić do innych mapowań lub udostępnić wielu użytkownikom MapForce. Rozpoczynamy tworzenie funkcji użytkownika, wybierając funkcje, które definiują wyrażenie, a następnie klikamy menu "Funkcja":

Oto nasza ostateczna definicja funkcji użytkownika:

Jeśli projekt mapowania i integracji danych wymaga wykorzystania mapowania danych z wykorzystaniem XSLT3, w tym funkcji trygonometrycznych lub innych zaawansowanych funkcji XSLT3, zapoznaj się z MapForce, nagradzanym, graficznym narzędziem do mapowania danych, przeznaczonym do konwersji i integracji danych pomiędzy dowolnymi formatami. Pobierz Wersja próbowa MapForce w tym samouczki, pomoc i wiele innych przykładów!