attribute CORBA::ValueDefSeq abstract_base_values;
    attribute CORBA::ValueDef base_value;
    attribute CORBA::InitializerSeq initializers;
    attribute boolean is_abstract;
    attribute boolean is_custom;
    attribute boolean is_truncatable;
    attribute CORBA::InterfaceDefSeq supported_interfaces;
    CORBA::AttributeDef create_attribute
    (
        in CORBA::RepositoryId id,
        in CORBA::Identifier name,
        in CORBA::VersionSpec version,
        in CORBA::IDLType type,
        in CORBA::AttributeMode mode
    );
    CORBA::OperationDef create_operation
    (
        in CORBA::RepositoryId id,
        in CORBA::Identifier name,
        in CORBA::VersionSpec version,
        in CORBA::IDLType result,
        in CORBA::OperationMode mode,
        in CORBA::ParDescriptionSeq params,
        in CORBA::ExceptionDefSeq exceptions,
        in CORBA::ContextIdSeq contexts
    );
    CORBA::ValueMemberDef create_value_member
    (
        in CORBA::RepositoryId id,
        in CORBA::Identifier name,
        in CORBA::VersionSpec version,
        in CORBA::IDLType type,
        in CORBA::Visibility access
    );
    CORBA::ValueDef::FullValueDescription describe_value
    (
    );
    boolean is_a
    (
        in CORBA::RepositoryId id
    );
    struct FullValueDescription
    {
        CORBA::Identifier name;
        CORBA::RepositoryId id;
        boolean is_abstract;
        boolean is_custom;
        CORBA::RepositoryId defined_in;
        CORBA::VersionSpec version;
        CORBA::OpDescriptionSeq operations;
        CORBA::AttrDescriptionSeq attributes;
        CORBA::ValueMemberSeq members;
        CORBA::InitializerSeq initializers;
        CORBA::RepositoryIdSeq supported_interfaces;
        CORBA::RepositoryIdSeq abstract_base_values;
        boolean is_truncatable;
        CORBA::RepositoryId base_value;
        CORBA::TypeCode type;
    };