Classes that implement this interface are responsible for holding the schema
object, loading it and disposing. Schema objects do not know where they are
coming from. Compositors are responsible to provide input streams for loading
and output streams for saving (if schema is editable).
Returns the schema object. If schema has not been loaded, or has been
previously disposed, this method will load it before returning. If
abbreviated, the light-weight schema will not contain descriptions for
elements or the content of documentation sections.
a loaded schema object