Как атрибуты анализируются в Boost.PropertyTree?
Скажем, у меня есть этот формат XML:
<Widget type="SomeWidget" name="foo">
<Event name="onmouseover">
dostuff();
</Event>
</Widget>
Как читать атрибуты с помощью Boost.PropertyTree?
Ответы
Ответ 1
Если ваша проблема заключается в получении атрибутов:
Атрибуты XML-элемента: хранится в подразделе. Там - один дочерний node за атрибут в атрибут node. Существование node не гарантируется или необходимо, когда нет атрибуты.
Из документа http://www.boost.org/doc/libs/1_44_0/doc/html/boost_propertytree/parsers.html#boost_propertytree.parsers.xml_parser
Так что просто получите их из тега xmlattr.
Ответ 2
Если xml имеет такое содержимое:
<mode fullscreen="true">mode xxx</mode>
Использовать boost:: property code:
get<string>("mode.<xmlattr>.fullscreen")
О да, это уродливо!