         /// - parameter index: 指定したインデックス
         case outOfRange(parent: JSONData, index: Int)
 
-        /// jsonデータに対してサポートされていない操作をした場合
+        /// JSONデータに対してサポートされていない操作をした場合
         ///
         /// - parameter data: 操作対象のデータ
         case notSupportOperation(data: JSONData)

        return str
    }

    public subscript(key: JSONData.Key) -> JSONData {
        get { return root[key] }
        set { root[key] = newValue }
    }

    public subscript(key: JSONData.Key, default value: String) -> String {
        return self[key].value(default: value)
    }

    public subscript(key: JSONData.Key, default value: Int) -> Int {
        return self[key].value(default: value)
    }

    public subscript(key: JSONData.Key, default value: Double) -> Double {
        return self[key].value(default: value)
    }

    public subscript(key: JSONData.Key, default value: Bool) -> Bool {
        return self[key].value(default: value)
    }

    /// jsonデータの変更や操作時のエラー内容を取得したい時用
    ///
    /// - parameter block: エラーを補足したい一連の処理を記述したクロージャ
    /// - throws: 発生したエラー内容。詳細は`JSON.ExceptionType`を参照

        }
    }

    /// JSONデータからDoubleを取得する
    ///
    /// - throws: `JSON.ExceptionType.typeUnmatch` : 型が一致しなかった場合
    /// - returns: Doubleの取得データ
