• E
    conf: set up for per-grammar overrides in schemas · 369cdfa8
    Eric Blake 提交于
    This patch is my first experience playing with nested grammars,
    as documented in http://relaxng.org/tutorial-20011203.html#IDA3PZR.
    I plan on doing more overrides in order to make the RelaxNG
    grammar mirror the C code refactoring into a common
    virStorageSource, but where different clients of that source do
    not support the same subset of functionality.  By starting with
    something fairly easy to validate, I can make sure my later
    patches will be possible.
    
    This patch adds a use of the no-op <ref
    name='sourceStartupPolicy'/> to the disksnapshot definition, so
    that the snapshot version of a type='file' <source> more closely
    resembles the version in domaincommon.  A future patch will merge
    the two files into using a common define, but this patch is
    sufficient for testing that adding <source
    startupPolicy='optional'/> in any of the
    tests/domainsnapshotxml2xmlin/*.xml files still gets rejected
    unless it occurs within the <domain> subelement, because the
    definition of startupPolicy is empty outside of domain.rng.
    
    * docs/schemas/storagecommon.rng (storageStartupPolicy)
    (storageSourceExtra): Create no-op defaults.
    * docs/schemas/domainsnapshot.rng (domain): Use nested grammar
    to avoid restricting <domain>.
    (storageSourceExtra): Create new override.
    (disksnapshot): Access overrides through common names.
    * docs/schemas/domaincommon.rng (disk): Access overrides through
    common names.
    * docs/schemas/domain.rng (storageStartupPolicy)
    (storageSourceExtra): Create new overrides.
    Signed-off-by: NEric Blake <eblake@redhat.com>
    Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
    369cdfa8
domain.rng 683 字节