У меня не описаны в Schema.xsd значения enum'ов, т.е., например, Drawer определен так:
Код:
<xs:element name="Drawer">
<xs:complexType>
<xs:attribute type="xs:string" name="direction"/>
<xs:attribute type="xs:string" name="ownerWindow"/>
<xs:attribute type="xs:int" name="offsetX" use="required"/>
<xs:attribute type="xs:int" name="offsetY" use="required"/>
<xs:attribute type="xs:boolean" name="directionFixed" use="required"/>
</xs:complexType>
</xs:element>
Получение значения enum'а в nwindow реализовано так же, как и чтение атрибута типа string, но значение enum'а при этом еще и отображается к соотв. константе типа int.
xmlbeans неплохо угадывает типы с опцией -simple-content-types smart, но некоторые типы надо заменить (например, int на short).