Document observer methods