jsonecho

XML na Elm

Wklej dokument XML, aby wygenerować typy Elm pasujące do jego struktury.

Ładowanie narzędzia...

Jak korzystać z XML na Elm

  1. Wklej reprezentatywny przykład XML, najlepiej z wypełnionymi wszystkimi opcjonalnymi polami.
  2. Podaj nazwę typu głównego i zdecyduj, czy chcesz też kod pomocniczy, czy tylko typy.
  3. Skopiuj wygenerowany kod Elm do swojego projektu.

O narzędziu XML na Elm

Ręczne pisanie klas modeli dla dużych danych XML jest żmudne i łatwo wtedy o literówki. Wklej tutaj przykład, a generator rozpozna strukturę: jakie pola występują, które są obiektami lub tablicami i jaki typ ma każda wartość. Wynikiem są aliasy typów z odpowiednimi dekoderami i koderami JSON.

XML jest przekształcony w JSON w taki sam sposób, jak w naszym narzędziu XML do JSON: atrybuty otrzymują @_ Prefiks i zawartość tekstu obok atrybutów nazywa się #text. Typy Elm są generowane na podstawie tego wyniku. Elm nie ma refleksji w czasie działania, więc dekodery są generowane automatycznie. To najbardziej przydatna część wyniku.

Korzystanie z wygenerowanego kodu

Wykorzystanie Json.Decode.decodeString rootDecoder text i obsługiwać wynik, który mówi, co poszło nie tak, jeśli dane nie pasują.

Wartości opcjonalne używają typu Maybe, a dekoder akceptuje null i brakujące klucze.

Często zadawane pytania

Jakie zależności ma wygenerowany kod Elm?

Wynikiem są aliasy typów z odpowiednimi dekoderami i koderami JSON.

Jak przeanalizować XML z wynikiem?

Konwertuj XML na JSON najpierw (nasz narzędzie XML do JSON robi to w ten sam sposób), a następnie użyj Json.Decode.decodeString rootDecoder text i obsługiwać wynik, który mówi, co poszło nie tak, jeśli dane nie pasują.

Jak są obsługiwane pola opcjonalne i brakujące?

Wartości opcjonalne używają typu Maybe, a dekoder akceptuje null i brakujące klucze.

Czy generator analizuje więcej niż jeden rekord?

Generator zna tylko to, co znajduje się w Twoim przykładzie. Pole, którego nie ma w przykładzie, nie pojawi się w typach. Jeśli wartość w przykładzie to null, nie da się ustalić jej typu. Wklej przykład z jak największą liczbą wypełnionych pól albo tablicę z kilkoma różnymi rekordami.

Czy moje dane XML są wysyłane na serwer?

Nie. Przy pierwszym użyciu generator jest pobierany do przeglądarki, około 1 MB. Potem wszystko działa lokalnie.

Więcej w kategorii Dane na klasy

Wszystkie narzędzia →