Il 20/12/2013 12:57, Amos Kong ha scritto:
> { 'type': 'DataObjectBase',
>   'data': { '*name': 'str', 'type': 'str' } }
> { 'union': 'DataObjectMemberType',
>   'discriminator': {},
>   'data': { 'reference': 'str',
>             'undefined': 'DataObject',
>             'extend': 'DataObject' } }

What is the purpose of "undefined"?  I don't see any occurrence of any
of "undefined" or "extend" in the sample.

> { 'type': 'DataObjectMember',
>   'data': { 'type': 'DataObjectMemberType', '*name': 'str',
>             '*optional': 'bool', '*recursive': 'bool' } }
> { 'type': 'DataObjectCommand',
>   'data': { '*data': [ 'DataObjectMember' ],
>             '*returns': 'DataObject',
>             '*gen': 'bool' } }
> { 'type': 'DataObjectEnumeration',
>   'data': { 'data': [ 'str' ] } }
> { 'type': 'DataObjectType',
>   'data': { 'data': [ 'DataObjectMember' ] } }
> { 'type': 'DataObjectUndefinedStruct',

Perhaps Unnamed or Anonymous?

>   'data': { 'data': [ 'DataObjectMember' ] } }
> { 'type': 'DataObjectUnion',
>   'data': { 'data': [ 'DataObjectMember' ], '*base': 'str',
>             '*discriminator': 'str' } }
> { 'union': 'DataObject',
>   'base': 'DataObjectBase',
>   'discriminator': 'type',
>   'data': {
>     'command': 'DataObjectCommand',
>     'enumeration': 'DataObjectEnumeration',
>     'type': 'DataObjectType',
>     'undefined-struct': 'DataObjectUndefinedStruct',
>     'reference-type': 'String',
>     'unionobj': 'DataObjectUnion' } }
> { 'command': 'query-qmp-schema', 'returns': ['DataObject'] }

I think forcing expansion of everything that isn't unnamed/anonymous
makes the schema much larger and unwieldy.  Otherwise looks great!

Paolo

Reply via email to