Что предлагает Ballerina для выполнения преобразований с помощью XML? Опции для Xpath, Xsd, Xslt? Я изучаю Балерину и не нашел хороших вариантов выполнения XML-запросов и преобразований.
1 ответ
Ballerina по-прежнему не поддерживает OOB для XSLT. Однако синтаксиса языка достаточно для написания собственного преобразователя. Он предоставляет синтаксис, аналогичный xpath, для доступа к элементам и атрибутам.
Например:
xml bookXML = xml `<book>
<name>Sherlock Holmes</name>
<author>
<fname title="Sir">Arthur</fname>
<mname>Conan</mname>
<lname>Doyle</lname>
</author>
<!--Price: $10-->
</book>`;
// Can access inner elements using field-access syntax, and attribute using '@' sign.
string title = bookXML.author.fname@["title"]
// OR
string title = bookXML["author"]["fname"]@["title"]
Есть еще одна группа собственных функций для выполнения других манипуляций с XML, таких как selectDescendants()
, slice()
и т. Д. Их можно найти в [1].
Точно так же вы можете написать свой собственный синтаксический анализатор XSD и валидатор, используя указанные выше языковые функции.
[1] https://ballerina.io/learn/by-example/xml -functions.html
Похожие вопросы
Новые вопросы
ballerina
Ballerina - это облачный язык программирования и среда для интеграции. Это облегчает написание микросервисов, которые интегрируют API.