Defined in file gui_objects.asn
C++ class: CPluginValueConstraint

PluginValueConstraint ::= CHOICE {
    --- simple constraints for built-in types
    lower VisibleString,
    upper VisibleString,
    range PluginValueRangeConstraint,
    set   SET OF VisibleString,

    --- bioseq constraints
    seq-repr          SET OF INTEGER, --- segmented, raw, virtual, etc
    seq-mol           SET OF INTEGER, --- nucleic acid, protein, etc
    seq-mol-same-type NULL,
    seq-length-lower  INTEGER,
    seq-length-upper  INTEGER,
    seq-length-range  PluginValueRangeConstraint,
    seq-length-same   NULL,

    --- seq-entry constraints
    entry-type INTEGER,          --- genprod set, nucprot set, etc

    --- seq-annot constraints
    annot-type INTEGER,          --- feature table, alignments, graphs

    --- seq-feat constraints
    feat-type        SET OF INTEGER, --- gene, rna, user, pub, etc.
    feat-subtype     SET OF INTEGER, --- any recognized subtype
    feat-has-product NULL,           --- only features with the product flag set

    --- ProjectItem constraints
    project-item-type VisibleString  --- the type of item available in a project item
                                     --- this should be available either from CTypeInfo
                                     --- or from type_info<>.