You should be able to build new MgdSchema? types that extend on existing ones. For instance:
<type name="mycoolarticle" extends="midgard_article">
<!-- In mycoolarticle, name is a MultiLang field -->
<property name="name" type="string" index="yes" multilang="yes">
- Option1: The properties we inherit from parent are stored in parent's table(s), the "added" or changed properties in our own table(s), then JOINed.
- Option2: Create new set of tables for mycoolarticle, put everything there, no connection between midgard_article and mycoolarticle except that we inherit some field defs.
Note: we need some way of converting objects between types sharing same superclass (change this article from mycoolarticle to mysupercoolarticle, which both extend midgard_article)