 {
     // MARK: - Properties
     
+    // URL string
     var rootUrl: String
+    
+    // Model attributes Dictionary
     var data: JSON
     
     // MARK: - Init
     
+    /**
+    Initializer
+    
+    - parameter rootUrl: URL string. `""` by default.
+    - parameter data   : Model attributes Dictionary. `[:]` by default.
+    */
     init(rootUrl: String = "", data: Dictionary<String, AnyObject> = [:]) {
         self.rootUrl = rootUrl
         self.data = JSON(data)

    
    // MARK: - Rest API helper methods
    
    func fetch(data parameters: Dictionary<String, AnyObject> = [:], success: ((response: JSON) -> ())? = nil, error: ((response: JSON) -> ())? = nil) {
        if (self.isNew()) {
            self.request(method: "get", url: self.rootUrl, data: parameters, success: success, error: error)

        }
    }
    
    /**
    Send POST/PUT request.
    Send POST request if model is new.
    Send PUT request if model is not new (has data["id"]).
    
    - parameter data    : Request parameters Dictionary. `[:]` by default.
    - parameter encoding: Parameter encoding. `.JSON` by default.
    - parameter success : Success handler callback. `nil` by default.
    - parameter error   : Error handler callback. `nil` by default.
    */
    func save(data parameters: Dictionary<String, AnyObject> = [:], encoding: ParameterEncoding = .JSON, success: ((response: JSON) -> ())? = nil, error: ((response: JSON) -> ())? = nil) {
        if (self.isNew()) {
            self.request(method: "post", url: self.rootUrl, data: parameters, encoding: encoding, success: success, error: error)
