docs: function(service, name, namespace, props) {
              // If not given a 4th arg, assume the namespace was omitted
              if (!props) {
                  props = namespace;
                  namespace = {};
              }
  
              this.name = name;
              this._super(service, this.path(), namespace);
  
              this.acceleration = JSON.parse(props.content.acceleration) || {};
              if (this.acceleration.hasOwnProperty("enabled")) {
                  // convert the enabled property to a boolean
                  this.acceleration.enabled = !!this.acceleration.enabled;
              }
  
              // concise=0 (false) forces the server to return all details of the newly created data model.
              // we do not want a summary of this data model
              if (!props.hasOwnProperty("concise") || utils.isUndefined(props.concise)) {
                  this.concise = "0";
              }
  
              var dataModelDefinition = JSON.parse(props.content.description);
  
              this.objectNames = dataModelDefinition.objectNameList;
              this.displayName = dataModelDefinition.displayName;
              this.description = dataModelDefinition.description;
  
              // Parse the objects for this data model           
              var objs = dataModelDefinition.objects;
              this.objects = [];
              for (var i = 0; i < objs.length; i++) {
                  this.objects.push(new root.DataModelObject(objs[i], this));
              }
  
              this.remove = utils.bind(this, this.remove);
              this.update = utils.bind(this, this.update);
          }