Я пытаюсь разобрать этот документ в scala:
<?xml version="1.0"?>
<model>
<joint name="pelvis">
<joint name="lleg">
<joint name="lfoot"/>
</joint>
<joint name="rleg">
<joint name="rfoot"/>
</joint>
</joint>
</model>
Я хочу использовать его для создания каркаса для моего движка 2d-анимации. Каждый сустав должен быть превращен в соответствующий объект, и все дети должны быть добавлены к нему.
Таким образом, эта часть должна дать результат, подобный следующему:
j = new Joint("pelvis")
lleg = new Joint("lleg")
lfoot = new Joint("lfoot")
rleg = new Joint("rleg")
rfoot = new Joint("rfoot")
lleg.addJoint(lfoot)
rleg.addJoint(rfoot)
j.addJoint(lleg)
j.addJoint(rleg)
Однако у меня возникают проблемы с прохождением кода xml. Во-первых, я не уверен, что полностью понимаю синтаксис xml \\ "joint"
, который, похоже, создает NodeSeq, содержащий все теги.
Основные проблемы:
- Проблема понимания синтаксиса с xml в scala, т.е.
xml \\ "...", Elem.child?,
- Проблема при получении атрибута из родительского узла без получения атрибутов от всех дочерних элементов (
xml \\ "@attribute"
, создает конкатат всех атрибутов ..?)