Следующий фрагмент кода работает и печатает <bar xmlns="x">bar</bar>
, как и ожидалось:
import ballerina/io;
public function main() {
final xml x1 = xml `<foo xmlns="x">
<bar>bar</bar>
</foo>`;
xmlns "x" as x;
io:println(x1[x:bar]);
}
Однако, если не задействованы пространства имен XML, как в приведенном ниже фрагменте кода, я получаю неожиданную ошибку компиляции: undefined symbol 'bar'
.
import ballerina/io;
public function main() {
final xml x1 = xml `<foo>
<bar>bar</bar>
</foo>`;
// compilation error: undefined symbol 'bar'
io:println(x1[bar]);
}
Как получить доступ к элементу XML, когда нет пространств имен? Например, xmlns "" as x;
тоже ошибка компиляции.
Я использую Ballerina 1.1.0.