anchor.diff:     * [0]: http://tools.ietf.org/html/rfc2616#section-3.11
      */
      String get etag => getField("etag");
  -   
  +
     /**
      * The link to the access control entry.
      */
     String get selfLink => getField("selfLink");
  -  
  +
     /**
      * The domain associated with the entity, if any
      */
     String get domain => getField("domain");
  -  
  +
     /**
      * The email address associated with the entity, if any.
      */
     String get email => getField("email");
  -  
  +
     /**
      * The `ID` for the entity, if any.
      */
     String get entityId => getField("entityId");
  -  
  +
     /**
      * The entity holding the permission, in one of the following forms:
      * - `user-userId`
  
positive.code:       throw 'Invalid role: $value';
      }
    }
    
    String toString() => _value;
  }
  
negative.code:    * of an entry.
     */
    static const OWNER = const PermissionRole._("OWNER");
  
  
    static const List values = const [READER, WRITER, OWNER];
    final String _value;
    const PermissionRole._(String this._value);
  
    factory PermissionRole.fromString(String value) {
      if (value == null) return null;
      try {
  