Q: Is there any reliable source of advice that advocates for or against using Optional as an object transform mechanism DISCLAIMER - I'm not looking for a discussion about this way of using the Optional class in Java, but rather pointers to reputable information that advocates for or against it.
I have found lately that using the Optional class in Java (or the Option class in JavaSlang) has been a handy way to represent the transformation of an object through a series of steps i.e.
Optional.of(objectA)
.map(ServiceObject::someObjectFromA)
.map(AnotherService::someObjectFromB)
.flatMap(ObjectB::somePropertyOnB)
.map(YetAnotherService::someObjectC)
.getOrElseThrow(new Exception("Could not convert object A to object C"));

This idea might be better expressed as a return statement:
Optional<ObjectC> fromObjectA(ObjectA objectA) {
    return Optional.ofNullable(objectA)
    .map(ServiceObject::someObjectFromA)
    .map(AnotherService::someObjectFromB)
    .flatMap(ObjectB::somePropertyOnB)
    .map(YetAnotherService::someObjectC);
}

The benefit for me to this approach is that it clearly shows how the initial objectA is transformed into the object that I actually want, and all intermediate objects have the smallest possible scope. I also get the benefit of not having to worry about nulls and can respond to methods that return Optional quite naturally.
The problem is that I can't find any reputable sources of information that would clearly demonstrate that this is a valid or invalid approach.
The rules laid out by Stuart Marks in his talks don't really speak to this usage. There is an article on the Oracle web site that demonstrates this approach, although using only getters rather than external service calls.
There is also the issue of handling checked exceptions, although you may be using libraries that have made the decision to use runtime exceptions (i.e. JPA).
However it does violate the purpose of Optional to simply represent the presence or absence of a value.
But then again methods like peek() in JavaSlang Option tend to reinforce the idea that it is a container that can be interacted with in this way.
It also nicely removes about 4 null or .isPresent() checks.
But it could be functional vomit/method chaining for the sake of it cleverness. This is my dilemma.
So, without this turning into yet another endless discussion on how Optional should be used, can anyone point me to reputable talks, blog posts or documentation that speak to this kind of use of the Optional class?

A: Optional is a monad and being such is a cornerstone of functional programming.
You ask if chaining monadic transformations is a well established pattern? 
Certainly is.
There are many sources that speak of monads in functional programming for example Monadic Java or "What are monads in functional programming and why are they useful?"  , or the whole philosophy behind ReactiveX and RXJava.
Looking for monads in functional programming will get you many results, I would not limit my search for just Java Optional.
A great source could be the Video - Lecture 1.4 - Monads in Functional Program Design in Scala course.
