Store the document in the given database.

        :param database: the `Database` object source for storing the document.
        :return: an updated instance of `Document` / self.

def store(self, database, validate=True, role=None):
        """Store the document in the given database.

        :param database: the `Database` object source for storing the document.
        :return: an updated instance of `Document` / self.
        """
        if validate:
            self.validate()
        self._id, self._rev = database.save(self.to_primitive(role=role))
        return self