##
1. Purpose and rationale
purpose 1
Purpose 2
purpose 3
purpose list 1
list2
2. Purpose and rationale
2 purpose 1
2 Purpose 2
2 purpose 3
2 purpose list 1
2 list2
2. Some other heading
2 content 1
2 content 2
####
xmllint.exe --xpath " //header[ contains(.,'rationale') ]/child::text() | //header[ contains(.,'rationale') ] /l/preceding-sibling::* " fudge
1. Purpose and rationale
purpose 1
Purpose 2
purpose 3
2. Purpose and rationale
2 purpose 1
2 Purpose 2
2 purpose 3