Elixir:
Робота з XML

Як користуватися:

Elixir стандартно не включає розбір XML до своєї бібліотеки. SweetXML є популярним вибором. Ось як його використовувати:

# Додайте SweetXML до вашого списку залежностей у mix.exs
{:sweet_xml, "~> 0.6"}

# У вашому коді
import SweetXml

xml = """
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Не забудь мене цими вихідними!</body>
</note>
"""

# Розбір XML
note = xml |> xpath(~x"//note")
to = xml |> xpath(~x"//note/to" |> inner_text())
IO.puts to # Вивід: Tove

Поглиблений розгляд

XML, або мова розмітки з можливістю розширення, існує з кінця 90-х. Він марнотратний, але структурований — ідеальний для обміну складними даними. Незважаючи на те, що популярність JSON стрімко зросла через його простоту, XML залишається закріпленим у багатьох підприємницьких та фінансових системах через свою виразність та стандартизовані схеми.

Альтернативи включають:

  • JSON для більш легкого, менш марнотратного обміну даними.
  • Protobuf або Thrift для бінарної серіалізації даних, зокрема для внутрішніх систем.

Під капотом, бібліотеки XML для Elixir використовують бібліотеку :xmerl Erlang для розбору, яка надає надійну підтримку, але може бути менш інтуїтивною, ніж більш сучасні підходи. Оскільки Elixir розвивається, бібліотеки, керовані спільнотою, такі як SweetXML, огортають ці можливості більш еліксірною синтаксичною конструкцією, роблячи маніпуляції з XML доступнішими.

Дивіться також: