// org.dmd.dms.util.GenUtility.formatSV(GenUtility.java:877)
  public void setBinding(Object value) throws DmcValueException {
    DmcTypeWsdlBindingREFSV attr = (DmcTypeWsdlBindingREFSV) get(DmwsdlDMSAG.__binding);
    if (attr == null) attr = new DmcTypeWsdlBindingREFSV(DmwsdlDMSAG.__binding);
    else attr.removeBackReferences();

    attr.set(value);
    set(DmwsdlDMSAG.__binding, attr);
  }
  // org.dmd.dms.util.GenUtility.formatSV(GenUtility.java:655)
  public WsdlBindingREF getBinding() {
    DmcTypeWsdlBindingREFSV attr = (DmcTypeWsdlBindingREFSV) get(DmwsdlDMSAG.__binding);
    if (attr == null) return (null);

    if (DmcOmni.instance().lazyResolution()) {
      if (attr.doLazyResolution(this)) {
        rem(attr.getAttributeInfo());
        return (null);
      }
    }

    return (attr.getSV());
  }
  // org.dmd.dms.util.GenUtility.formatSV(GenUtility.java:709)
  public void setBinding(WsdlBindingDMO value) {
    DmcAttribute<?> attr = get(DmwsdlDMSAG.__binding);
    if (attr == null) attr = new DmcTypeWsdlBindingREFSV(DmwsdlDMSAG.__binding);
    else ((DmcTypeWsdlBindingREFSV) attr).removeBackReferences();

    try {
      attr.set(value);
      set(DmwsdlDMSAG.__binding, attr);
    } catch (DmcValueException ex) {
      throw (new IllegalStateException(
          "The type specific set() method shouldn't throw exceptions!", ex));
    }
  }
  /** Returns the reference to WsdlBinding without attempting lazy resolution (if turned on). */
  public WsdlBindingREF getBindingREF() {
    DmcTypeWsdlBindingREFSV attr = (DmcTypeWsdlBindingREFSV) get(DmwsdlDMSAG.__binding);
    if (attr == null) return (null);

    return (attr.getSV());
  }