An application for converting the Ten Qira`at Arabic Text to Buckwalter Transliteration.
JQuran Java API Limitations
The JQuran API uses the Qur`ānic text from Tanzil Project in the XML file format. The version of the XML file version used in it is 1.0.1, that got released on February 4, 2008. However, the version released on February 12, 2021, is 1.1, with several corrections and enhancements. Consequently, the available JQuran API could not handle the Arabic Text conversion to Buckwalter transliteration for the below scenarios.
• Pause marks (ۖ ۗ ۘ ۙ ۚ ۛ)
• Sajdah signs (۩)
• Rub’ al-Ḥizb signs (۞) and verse end signs ()
• Taṭwīl below superscript alif (like in الرَّحْمَـٰن)
• Small high ya (ۧ) as superscript (like in إِبْرَٰهِـۧمَ) (Tanzil, 2021)
Additionally, there was a requirement to allocate special symbols related to the Ten Qira`at Corpus development with scenarios like words having Taqlīl and Tashīl.
So, there was a need to update the API to handle these enhancements and enrich it for the special symbols that would be used in the Qira`āt difference presentation. To achieve this, there was a need to introduce new characters in the existing list of Buckwalter Transliteration. Thus, we listed all symbols, small and capital letters, and their status of being used or free in the Buckwalter Transliteration. Then, all Arabic Unicode letters were listed, and the relevant ones were chosen for consideration. Finally, specific Buckwalter ASCII characters were assigned for the new Unicode handling, and JQuran Java API was updated accordingly. The newly included symbols are listed in the Table below.
Table Buckwalter Enhancements Characters
![image](https://private-user-images.githubusercontent.com/47498442/259995461-7c7d7b22-6545-4a30-bc33-2128fda359b7.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAwMDY2NTYsIm5iZiI6MTcyMDAwNjM1NiwicGF0aCI6Ii80NzQ5ODQ0Mi8yNTk5OTU0NjEtN2M3ZDdiMjItNjU0NS00YTMwLWJjMzMtMjEyOGZkYTM1OWI3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzAzVDExMzIzNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTc3M2Q4ZDdhNTY3MGJiNWQ4ZGNlMTFhNjA5ODc3MDU3OWRkOThmNGI1ZmMwYzZmYzc1NzFjYmEwZmFkNmI1MzMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.bSwR7SyO3RIN9Zbg1pegIl7HV5RbStDNRdvELMjJTEw)
JQuran Java API Enhancements
The JQuran API consisted of 13 packages, and the below three packages were updated for the enhancement.
Package org.jqurantree.arabic: This package includes seven classes, and we would append the characters and diacritics in relevant classes for this enhancement.
Class 1 (CharacterType): The updated Java code of the class is updated @ main/java/org/jqurantree/arabic/CharacterType.java
Class 2 (DiacriticType): The updated Java code of the class is updated @ main/java/org/jqurantree/arabic/ DiacriticType.java
Package org.jqurantree.arabic.encoding.Buckwalter: This package includes three classes, and we would require updating one of them only related to the assigned characters for the transliteration.
Class 3 (BuckwalterTable): The updated Java code of the class is updated @ main/java/org/jqurantree/arabic/encoding/buckwalter/BuckwalterTable.java
Package org.jqurantree.arabic.encoding.unicode: This package includes four classes, and we would update two related to the Unicode characters table and their type.
Class 4 (UnicodeTable): The updated Java code of the class is updated @ main/java/org/jqurantree/arabic/encoding/unicode/UnicodeTable.java
Class 5 (UnicodeType): The updated Java code of the class is updated @ main/java/org/jqurantree/arabic/encoding/unicode/ UnicodeType.java
The Ten Corpora Application
After developing the enhanced version of JQuran Java API, extensive conversions to Buckwalter Transliteration and vice versa were required. To ease up the work, an application was essential to be developed. Thus, an application was designed and developed for this work and has the following main features to ease up the process of the Corpus Development for a particular Riwāyah.
• Qur`ānic Arabic text converted to Buckwalter Transliteration.
• Buckwalter Transliteration converted to the Qur`ānic Arabic text.
• After the relevant conversion, the system automatically copies the result to the Clipboard, which can be pasted wherever required.
![image](https://private-user-images.githubusercontent.com/47498442/259994968-5e0a46e4-c747-486e-9fde-6858fef46046.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAwMDY2NTYsIm5iZiI6MTcyMDAwNjM1NiwicGF0aCI6Ii80NzQ5ODQ0Mi8yNTk5OTQ5NjgtNWUwYTQ2ZTQtYzc0Ny00ODZlLTlmZGUtNjg1OGZlZjQ2MDQ2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzAzVDExMzIzNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTEzMjhlOWYzOWY2ZGQxZTk5MGM4OGY1ZjRlY2JmMmM4MDUzMmJhMmM0OGNjMTM5NmJkMDNlY2VlYzUyNzBlNzImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.JkIfvw7zhA2q-zHPcnmqA2dKZrkRBun_ADgcpOxTies)