First, data on registered schemas are not saved any more in the user preference file, but in a separate XML file. So I can store easily more data on schemas : the list of blank document provided by the schema, its name, its description etc.. So Etna doesn't need any more to load all schema at startup to get all this data. It load a schema only during the registration process (to verify the schema, get all data and store them in the xml file) and when it is needed during the loading of a document.

With this new xml file, I could then improve the "new" dialog. It shows now all blank document provided by a schema (or the default one "guessed" by the validator).

If the schema provides a label and a description for the schema or blank document, there are displayed :

It verifies also that all schema are available. Because you can register distant or local schemas, it is important for Etna to know if it can load the schema and then create a new document with this schema. For example, in the following screenshot, you can see that the last schema isn't available at the current time, and if you select it, you have an error message :

Of course, it verifies schemas in a background process and so you don't have to wait that all schema are verified to select an available blank document. You can see the progress status with some "throbber" icons :

Similar improvements are made on the schema manager dialog :

You can now unregister a schema (except schemas provided by an extension), and when you try to register an invalid schema, the error is now shown :

Other improvements are made and bugs are fixed in the Relax NG parser : it can now load the Docbook schema, Xhtml schemas and others. So, it is possible to edit some docbook document now !

All this improvements will be available in a new 0.3 version. It will be released in few days, when i will have fixed other few bugs and when i will have made change to build Etna on MacOsX.