In my few this is was your are looking for:
" //span[contains(text(),'mybooktext')]
/ancestor::div[@class='book']
//a[@class='mylinkclass']"
//span[contains(text(),'mybooktext')]
Find san containing "mybooktext"
/ancestor::div[@class='book']
Navigate up Book div (in any deeps)
//a[@class='mylinkclass']
Find link with class 'mylinkclass' within book div (in any deeps)
Update:
change first condition to
//span[(text() ='mybooktext']
if mybooktext is the only text in span