code: def initialize(self, id, timestamp=None, user=None, page=None, minor=None,
                     comment=None, text=None, bytes=None, sha1=None,
                     parent_id=None, model=None, format=None, deleted=None):
  
          self.id = none_or(id, int)
          
  
          self.timestamp = none_or(timestamp, Timestamp)
          """
          Revision timestamp : :class:`mwtypes.Timestamp`
          """
  
          self.user = none_or(user, User)
          """
          Contributing user metadata : :class:`~mwtypes.User`
          """
  
          self.page = none_or(page, Page)
          """
          Page metadata : :class:`~mwtypes.Page`
          """
  
          self.minor = none_or(minor, bool)
          """
          Is revision a minor change? : `bool`
          """
  
          self.comment = none_or(comment, str)
          """
          Comment left with revision : `str`
          """
  
          self.text = none_or(text, str)
          """
          Content of text : `str`
          """
  
          self.bytes = none_or(bytes, int)
          """
          Number of bytes of content : `int`
          """
  
          self.sha1 = none_or(sha1, str)
          """
          sha1 hash of the content : `str`
          """
  
          self.parent_id = none_or(parent_id, int)
          """
          Revision ID of preceding revision : `int` | `None`
          """
  
          self.model = none_or(model, str)
          """
          TODO: ??? : `str`
          """
  
          self.format = none_or(format, str)
          """
          TODO: ??? : `str`
          """
  
          self.deleted = none_or(deleted, self.Deleted)
          """
          The deleted/suppressed status of the revision.
          """
docs: Revision ID : `int`