<xs:element name="class">
<xs:complexType>
<xs:sequence>
+ <xs:element ref="oils_persist:source_definition" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="idl:fields"/>
<xs:element ref="idl:links" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="id"/>
<xs:attribute name="controller"/>
<xs:attribute ref="oils_obj:fieldmapper"/>
+ <xs:attribute ref="oils_persist:readonly"/>
<xs:attribute ref="oils_persist:tablename"/>
<xs:attribute ref="oils_persist:virtual"/>
<xs:attribute ref="reporter:core"/>
attributeFormDefault="unqualified"
>
+<xs:element name="source_definition" type="xs:string" />
+
<xs:attribute name="primary"/>
<xs:attribute name="primitive"/>
+<xs:attribute name="readonly" type="xs:boolean"/>
<xs:attribute name="sequence"/>
<xs:attribute name="tablename"/>
<xs:attribute name="virtual" type="xs:boolean"/>