Why do we need MgdSchema?
MgdSchema is the new way for defining Midgard's object types in XML being worked on by Piotras. So, why are we sponsoring this development? Here are some blue-sky points brainstormed in our hostel during the first evening of the Linköping gathering:
- List optimization gives ability to tune SQL queries with custom limiters for faster lists
- Extension of Midgard objects with arbitrary fields without current parameter-induced performance loss is possible
- Inheritable access control of both read and write permissions can be set for groups on per-object level
Bonus items:
- Maintainability of the C code is better without having to maintain separate function sets for each object type
- Scriptability of the new GObjects and Gnome-DB based core provides Midgard connectivity to programming languages like Python and Ruby
- Bringing GNOME technologies to the server links Midgard more closely with an active community
- Standard metadata is available for all MidgardObjects including creator, revisor and locking
- Database independence provided by Gnome-DB enables administrators to set up Midgard with any database they want
So far these are only ideas but hopefully today's meeting will give more form for them.