Saya melihat apa yang sedang terjadi. Entri leksikal Anda adalah haruanga babuna yang dipetakan ke pasilanga babuna. Kapitalisasi kata pertama dipertahankan, tetapi kata kedua tidak. Mesin transfer FLExTrans tidak dapat menangani hal ini, jadi Anda harus melakukan perubahan pasca-sintesis.
Dalam kasus Sipsipka menjadi Sipsip xa, karena ini dihasilkan oleh aturan, Anda dapat membungkus string literal yang Anda outputkan dengan elemen 'get-case-from'. Tampilannya akan seperti ini:

Ini berarti jika kata asli yang masuk menggunakan huruf kapital, maka xa akan keluar dengan huruf kapital. Demikian pula jika menggunakan huruf kecil, maka akan keluar dengan huruf kecil.
Namun, Anda mungkin memiliki kata lain dalam judul bagian yang keluar dengan huruf kecil karena berbagai alasan. Jadi, Anda mungkin menginginkan solusi umum untuk membuat semua kata menjadi title case.
Tidak ada ekspresi reguler satu baris yang dapat melakukan ini. Jadi saya melihat dua solusi yang mungkin:
1) Tambahkan modul kustom ke set modul Drafting Anda yang akan menjalankan beberapa kode Python untuk mengkapitalisasi semua kata dalam header bagian.
2) Tambahkan ekspresi reguler untuk setiap huruf alfabet. Ini tidak terlalu nyaman karena harus memiliki 26 ekspresi dalam aturan Text Out Anda, tetapi ini berhasil.
Ekspresi untuk 'a' adalah Cari: (^\\s.*?\b)a(\w*) Ganti dengan: \1A\2
Untuk memudahkan penambahan semua ini, Anda dapat menambahkan baris xml berikut di bawah <SearchReplaceRules> dalam file Output\fixup_synthesis_rules.xml:
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)a(\w*)</SearchString>
<ReplaceString>\1A\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)b(\w*)</SearchString>
<ReplaceString>\1B\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)c(\w*)</SearchString>
<ReplaceString>\1C\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)d(\w*)</SearchString>
<ReplaceString>\1D\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)e(\w*)</SearchString>
<ReplaceString>\1E\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)f(\w*)</SearchString>
<ReplaceString>\1F\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)g(\w*)</SearchString>
<ReplaceString>\1G\2</ReplaceString>
</SearchReplaceRule>
dst.
I see what is going on. Your lexical entry is haruanga babuna which is mapped to pasilanga babuna. The capitalization of the first word gets retained but not the second. FLExTrans' transfer engine can't handle this so you will have to do a post-synthesis change.
In the case of Sipsipka going to Sipsip xa, since this gets produced by a rule you could wrap the literal string you are outputting with the 'get-case-from' element. It would look like this:

This means if the original word coming in is uppercase, the xa will come out in uppercase. Likewise if it is lowercase, it will come out in lowercase.
But, you may have other words in a section title that are coming out lowercase for various reasons. So you may want a general solution to make all the words title case.
There isn't a one-line regular expression that would do this. So I see two possible solutions:
1) Add a custom module to your Drafting set of modules that would run some Python code to capitalize all words in a section header.
2) Add a regular expression for each letter of the alphabet. This is not so nice to have 26 expressions in your Text Out rules, but it works.
The expression for 'a' would be Search For: (^\\s.*?\b)a(\w*) Replace with: \1A\2
To make it easy to add all these, you can add the following xml lines below <SearchReplaceRules> in the file Output\fixup_synthesis_rules.xml:
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)a(\w*)</SearchString>
<ReplaceString>\1A\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)b(\w*)</SearchString>
<ReplaceString>\1B\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)c(\w*)</SearchString>
<ReplaceString>\1C\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)d(\w*)</SearchString>
<ReplaceString>\1D\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)e(\w*)</SearchString>
<ReplaceString>\1E\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)f(\w*)</SearchString>
<ReplaceString>\1F\2</ReplaceString>
</SearchReplaceRule>
<SearchReplaceRule RegEx="yes" Inactive="no" Comment="">
<SearchString>(^\\s.*?\b)g(\w*)</SearchString>
<ReplaceString>\1G\2</ReplaceString>
</SearchReplaceRule>
etc.