title: RxJava flatmap chaining requests
body: <p>i am using Retrofit with RxJAva for an app that gets Rss Feeds, but the rss doesn't contain all the informations so i use jsoup to parse every item link, to retrieve the image and the article's description. now i am using it this way: </p>
  
  <pre><code>public Observable&lt;Rss&gt; getDumpData() {
      return newsAppService.getDumpData()
              .flatMap(rss -&gt; Observable.from(rss.channel.items)
              .observeOn(Schedulers.io())
              .flatMap(Checked.f1(item -&gt; Observable.just(Jsoup.connect(item.link).get())
              .observeOn(Schedulers.io())
              .map(document -&gt; document.select("div[itemprop=image] &gt; img").first())
                      .doOnNext(element -&gt; item.image = element.attr("src"))
              )))
              .defaultIfEmpty(rss)
              .ignoreElements()
              .observeOn(Schedulers.io())
              .subscribeOn(AndroidSchedulers.mainThread());
  }
  </code></pre>
  
  <p>and i am getting an error on this line: <code>defaultIfEmpty(rss)</code>
  it doesn't recognize rss of the flatmap. and when i move the  <code>defaultIfEmpty(rss)</code> in flatmap brackets i have another error saying that the return type must be changed to Element. is their any solution ?  </p>