0 suara
1,5k tampilan

Saya punya rekan yang memiliki Perjanjian Baru yang sudah diterbitkan, tetapi tidak memiliki kamus. Mereka tertarik untuk membuat satu, tetapi ingin dihindari dari 'pekerjaan berat' sebanyak mungkin. Apakah ada cara untuk mendapatkan Daftar Kata Paratext ke FLEx (misalnya, 'Ekspor ke XML')? Apakah ini direkomendasikan? Apakah ada rekomendasi lain? Terima kasih atas nasihatnya.

Diterjemahkan secara otomatis dari English
Paratext oleh (642 poin) | 1,5k tampilan

8 Jawaban

+1 suara
Jawaban terbaik

Paul - ada banyak pemikiran tentang hal ini. Beberapa orang mengatakan bahwa Anda tidak boleh
membangun kamus dari teks terjemahan. Meskipun demikian, Anda bisa
mengekspor daftar kata ke xml dan kemudian mencoba mengimpornya ke FLEx. Namun
ini akan menghasilkan kekacauan. Anda akan memiliki banyak bentuk dan
bentuk waktu yang berbeda. Saya sarankan Anda melihat situs Rapid Word Collection:
http://rapidwords.net/

anon848905
Koordinator Teknologi Bahasa Wilayah Amerika
[Email Removed]
[Phone Removed]Kantor di JAARS)
[Phone Removed]Seluler)
Nama Skype: anon848905

Diterjemahkan secara otomatis dari English
oleh (9,9k poin)

Terima kasih anon848905. Kami sangat menyadari RWC (saya telah mengumpulkan ~ 4.000 kata dengan cara ini dan membantu beberapa rekan memulai dengannya juga). Rekan-rekan tertentu yang dimaksud telah menghabiskan lebih dari dua puluh tahun bekerja dalam bahasa tersebut dan mencari cara untuk memasukkan bentuk kata ke FLEx agar mereka dapat mulai menggunakan alat Edit Massal (Bulk Edit) yang tersedia di sana. Rapid Word Collection Lite? Saya rasa saya berusaha menghemat mereka dari kebosanan mengetik apa yang kemungkinan akan menjadi lebih dari 5.000 akar kata. Saat ini, inilah penghalang yang mencegah mereka maju… Saya akan terus mencari opsi lain.

Diterjemahkan secara otomatis dari English

Bagaimana jika Anda mengekstrak daftar kata dari Paratext dan membuat dokumen teks
(mungkin 50 dokumen berisi 100 kata masing-masing) dan kemudian memberikan setiap
dokumen tersebut ke FLEx dan hanya menambahkan bentuk kata yang
sesuai ke dalam kamus? (Tergantung pada bahasanya, Anda bisa meluangkan waktu untuk
menyiapkan beberapa parsing, sehingga “acted” akan di-parse sebagai “act” + “-ed” dll.)

Diterjemahkan secara otomatis dari English

Berikut adalah cuplikan dari Daftar Kata Paratext saya yang diekspor ke XML:

Saya rasa tidak akan sulit untuk melakukan beberapa langkah Cari / Ganti (Find / Replace) untuk membuatnya berguna:
Cari: <item word=" -> \lx[spasi]
Cari: spelling=“Correct” -> [kosong]
Saya tidak yakin apa yang harus dilakukan dengan morfemnya, meskipun… Mungkin itu harus dilakukan di FLEx.

Saya akan menyampaikan ini kepada mereka dan melihat apakah ini awal yang mereka cari. Terima kasih.

Diterjemahkan secara otomatis dari English

Ummm… Bisakah seseorang 'menempelkan' (paste) ke forum ini? Saya menempelkan bagian teks di jendela ini dan itu muncul saat menyusun, tetapi tidak muncul setelah saya memposting…

Diterjemahkan secara otomatis dari English
0 suara

Anda mungkin telah menempelkan teks yang ditafsirkan dengan cara khusus oleh format Markdown atau yang tidak valid dan karenanya dihapus.
Pastikan untuk memperhatikan panel pratinjau (preview) saat menyusun.

Diterjemahkan secara otomatis dari English
oleh [Expert]
(16,7k poin)

Biarkan saya mencoba lagi, menghapus < di awal setiap baris:

item word=“abu” spelling=“Correct” morph=“abu” />
item word=“abua” spelling=“Correct” morph=“abu +a” />
item word=“abughami” spelling=“Correct” morph=“abu +ghami” />
item word=“abughamu” spelling=“Correct” morph=“abu +ghamu” />
item word=“abughinia” spelling=“Unknown” morph=“abu +ghini +a” />
item word=“abughita” spelling=“Correct” morph=“abu +ghita” />
item word=“abugho” spelling=“Correct” morph=“abu +gho” />
item word=“abui” spelling=“Correct” morph=“abu +i” />
item word=“abukoira” spelling=“Correct” morph=“abu +ko +ira” />
item word=“abukolu” spelling=“Unknown” morph=“abu +kolu” />
item word=“abura” spelling=“Correct” morph=“abu +ra” />
item word=“aburara” spelling=“Unknown” morph=“abu +ra +ra” />
item word=“abutughami” spelling=“Correct” morph=“abu +tu +ghami” />
item word=“abutuira” spelling=“Correct” morph=“abu +tu +ira” />
item word=“abuu” spelling=“Correct” morph=“abu +u” />

Diterjemahkan secara otomatis dari English
0 suara

Jadi saya telah melakukan Cari & Ganti (Find & Replace) untuk mengubah < item word=" menjadi \lx[spasi]. Apakah ada ekspresi reguler yang bisa saya gunakan untuk menghilangkan semua yang mengikuti kata, yaitu, dari " pertama hingga > di akhir:

\lx abu" spelling=“Correct” morph=“abu” />

Diterjemahkan secara otomatis dari English
oleh (642 poin)
0 suara

Yang berikut ini seharusnya berhasil:
Cari: ".+?>
Ganti: (kosong)

P.S. Saya sangat merekomendasikan situs web ini untuk membantu membuat ekspresi reguler. Itu yang terbaik yang pernah saya temukan. :smile:

Diterjemahkan secara otomatis dari English
oleh [Expert]
(16,7k poin)

Berhasil sempurna. Terima kasih! Saya rasa ini akan cukup untuk memulai rekan-rekan saya. :wink:

Diterjemahkan secara otomatis dari English
0 suara

Ada utilitas yang akan mengekstrak glosa dari Paratext Interlinear sebagai file SFM atau Spreadsheet Excel. Mungkin bisa dicoba. http://lingtransoft.info/apps/extract-paratext-interlinear-glosses

Diterjemahkan secara otomatis dari English
oleh [Expert]
(2,9k poin)
0 suara

Saya menemukan utilitas lain untuk melihat glosa di Paratext Interlinearizer. http://lingtransoft.info/apps/glossy

Diterjemahkan secara otomatis dari English
oleh [Expert]
(2,9k poin)

Glossy dapat digunakan untuk mengekstrak glosa dengan cara yang dapat diimpor ke FLEx, tetapi saat ini belum diatur persis untuk itu. Ini untuk penelusuran leksikon interaktif. Saya rasa saya bisa mencari cara untuk menghasilkan file SFM jika orang-orang tertarik.

Diterjemahkan secara otomatis dari English

Apakah ada kemajuan dalam mendapatkan Glossy untuk mengekstrak glosa dari PT Interlineariser dan mengimpornya ke sesuatu seperti file SFM? Saya telah mencoba menyeret file lexicon.xml ke program ParatextLexiconSetup. Tetapi ketika saya menjalankan program ParatextLexicon, saya tidak tahu apa yang harus dimasukkan di slot yang diberi label ‘SFM File’. Saya melihat kotak dialog berjudul ‘Convert Paratext Lexicon to SFM’. Kemudian Anda diminta untuk memasukkan nama file untuk dua bidang:
Paratext Lexicon, dan
SMF File.
Saya bisa dengan mudah memasukkan file lexicon.xml. Tetapi saya tidak tahu apa yang harus dimasukkan di file SFM. Apakah ada daftar berbagai gaya format SFM untuk dipilih?

Diterjemahkan secara otomatis dari English

anon088806,

File SFM adalah nama file output dari lexicon.xml yang dipilih. Anda bisa memasukkan nama jalur lengkap apa pun yang Anda inginkan. Ini akan menjadi file sfm yang diinginkan.

kent_schroeder

Diterjemahkan secara otomatis dari English

Halo kent_schroeder,

Terima kasih banyak! Saya tidak menyangka solusinya bisa sesederhana itu… Sangat dihargai! anon088806

Diterjemahkan secara otomatis dari English
0 suara

Seolah-olah kita bisa menggunakan utilitas untuk bekerja dengan file daftar kata Paratext. Apakah ada yang tertarik untuk menulis satu?

Diterjemahkan secara otomatis dari English
oleh [Expert]
(2,9k poin)

Apa yang Anda ingin alat ini lakukan?

kent_schroeder
Pengembang Perangkat Lunak/Konsultan Teknologi Bahasa
SIL – Layanan Bersama yang Berfokus pada Afrika

Nairobi, Kenya

Diterjemahkan secara otomatis dari English

kent_schroeder, tampaknya mereka ingin memanen kata dari alat daftar kata untuk membuat leksikon di Fieldworks. Data interlinearizer lebih baik karena juga memiliki glosa, tetapi alat daftar kata kemungkinan besar akan memiliki lebih banyak kata. Jika kata-kata vernakular mereka bisa dihapus dari file html dan ditandai dengan penanda \lx maka file tersebut dapat diimpor ke basis data Flex yang sudah ada. Pengguna kemudian harus memeriksa setiap entri dan menyesuaikan bentuk permukaan menjadi leksim yang benar dan memasukkan glosa dan kelas kata sendiri.

Diterjemahkan secara otomatis dari English

kent_schroeder, bisakah Anda memberikan perangkat lunak Anda kemampuan untuk mengonversi file Biblicaltermsxyz.xml ke format standar? Seseorang di posting lain ingin melakukan itu.

Diterjemahkan secara otomatis dari English
0 suara

Berikut adalah skrip yang telah saya tulis untuk python3 (saya menggunakan Wasta Linux 18.04). Perhatikan bahwa saya telah mengkodekan jalur untuk input dan output di dalam kode…

#!/usr/bin/python3
# run with python3 convertLexicon2SFM.py3

# BEST TO IMPORT INTO TEXT AND WORDS - not into the dictionary itself.
#   -Import into Standard Format Words and Glosses

#
#  MODIFIED AND ONLY MILDLY TESTED!!!!  It only includes words that 1.) have glosses
# and 2.) are marked as correctly spelled and 3.) exist in the text.
#

import codecs
from lxml import etree
xmldoc = etree.parse("/home/justin/Desktop/Lexicon.xml")
#Paratext Wordlist Export as XML 
wordlist = etree.parse("/home/justin/Desktop/wordlist.xml")
outfile=codecs.open("/home/justin/Desktop/PT7_dictionary_py3.sfm", mode="w", encoding='utf-8')
outfile.write ("\_sh v3.0  400  MDF\n\_DateStampHasFourDigitYear\n\n")
#correctWords=spellings.getroot().findall("Status")
correctWords=wordlist.getroot().findall("item")
wordlistTotal=len(correctWords)
approvedWords=[]
#for index,word in reversed( list( enumerate(correctWords) ) ) :
for index,word in reversed( list( enumerate(correctWords) ) ) :
  if word.attrib['spelling'] == "Correct" :
  #if word.attrib['State'] == "W" :
    del correctWords[index]
    approvedWords.append(word.attrib['word'])
    #approvedWords.append(word.attrib['Word'])

itemList = xmldoc.getroot().findall("Entries/item")
for item in itemList :
  Lexeme=next( item.iter("Lexeme") )
  if (Lexeme.get('Type') == 'Word') and (Lexeme.get('Form') not in approvedWords) :
    print ( 'unused', Lexeme.get('Type'), Lexeme.get('Form'), "wordlist", wordlistTotal, "incorrect", len(correctWords) )
    continue
  print ( 'good', Lexeme.get('Type'), Lexeme.get('Form'), 'count', approvedWords.count(Lexeme.get('Form')), 'unglossed remaining', len(approvedWords) )
  if approvedWords.count(Lexeme.get('Form')) :
    approvedWords.remove( Lexeme.get('Form') )
  outfile.write ("\n\\lx ")
  if Lexeme.get("Type") == "Suffix" :
    outfile.write ("-")
    #outfile.write ("-", end='')
  outfile.write ("%s" % Lexeme.get("Form"))
  #outfile.write ("%s" % Lexeme.get("Form"), end='')
  if Lexeme.get("Type") == "Prefix" :
    outfile.write ("-")
    #outfile.write ("-", end='')
  outfile.write ("\n")
  outfile.write   ("\\co_Eng %s\n" % next( item.iter("Lexeme") ).get("Type"))
  entryList = item.iter("Gloss")
  sense=1
  for element in entryList :
    if element.get("Language") == "English" :
      outfile.write ("\\sn %s\n" % sense)
      outfile.write ("\\ge %s\n" %  element.text )
      sense+=1
    if element.get("Language") == "Korean" :
      outfile.write ("\\sn %s\n" % sense)
      outfile.write ("\\g_Kor %s\n" %  element.text )
      sense+=1

for Lexeme in approvedWords :
  outfile.write ("\n\\lx %s\n" % Lexeme)
  print ("adding unglossed words", len(approvedWords), Lexeme )

outfile.close()
Diterjemahkan secara otomatis dari English
oleh (105 poin)
Salam,

Saya telah mengambil skrip Python di atas untuk membuatnya menjadi umum, di mana akan ada prompt untuk daftar kata dan leksikon (jika ada), serta mengoutputkan file SMF untuk diimpor ke FLEx

#!/usr/bin/python3
"""
wordlist_to_sfm.py

Mengekspor daftar kata Paratext ke format SFM (Standard Format Markers)
untuk diimpor ke FLEx (FieldWorks Language Explorer).

Penggunaan:
    python wordlist_to_sfm.py

Skrip ini akan meminta:
  - File XML daftar kata Paratext (misalnya, diekspor dari alat daftar kata Paratext)
  - Opsional, file XML Leksikon Paratext untuk menyediakan glosa bahasa Inggris
  - Path file output untuk file .sfm yang dihasilkan

Hanya kata yang ditandai sebagai "Correct" dalam daftar kata yang diekspor secara default.
Hal ini dapat diubah dengan mengedit pengaturan INCLUDE_* di bawah ini.

Format output adalah MDF (Multi-Dictionary Formatter), dialek SFM standar yang digunakan oleh FLEx untuk impor leksikon.
"""

import codecs
import os
import xml.etree.ElementTree as etree

# --- Pengaturan ----------------------------------------------------------------
# Mengontrol kategori ejaan mana yang disertakan dalam ekspor.
# Setel ke True untuk menyertakan kata dalam kategori tersebut, False untuk mengecualikannya.

INCLUDE_CORRECT   = True   # Kata yang telah disetujui penerjemah
INCLUDE_UNKNOWN   = False  # Kata yang belum ditinjau
INCLUDE_INCORRECT = False  # Kata yang ditandai sebagai salah eja

# Setel ke True untuk menulis frekuensi korpus kata sebagai field komentar (\co_count)
INCLUDE_COUNT     = True
# -----------------------------------------------------------------------------

def prompt_path(prompt_text, default):
    """Menampilkan prompt dengan nilai default opsional; mengembalikan input pengguna atau default."""
    display = f" [{default}]" if default else ""
    value = input(f"{prompt_text}{display}: ").strip()
return value if value else default

def get_user_inputs():
    """Meminta pengguna untuk tiga path file yang diperlukan untuk menjalankan ekspor."""
    print("Paratext Word List to SFM Exporter")
    print("-----------------------------------\n")

    # Daftar kata diperlukan - terus meminta sampai file ditemukan
    wordlist_path = prompt_path("Word list file (XML)", "Notsi-WL.xml")
    while not os.path.exists(wordlist_path):
        print(f"  Cannot find '{wordlist_path}'. Please check the path and try again.")
        wordlist_path = prompt_path("Word list file (XML)", "Notsi-WL.xml")

    # Leksikon opsional - lewati secara diam-diam jika tidak ditemukan
    lexicon_path = prompt_path("Lexicon file for glosses (press Enter to skip)", "")
    if lexicon_path and not os.path.exists(lexicon_path):
        print(f"  Cannot find '{lexicon_path}'. Continuing without glosses.")
        lexicon_path = ""

    output_path = prompt_path("Output file name", "wordlist_for_flex.sfm")
    return wordlist_path, lexicon_path, output_path

def load_lexicon_glosses(lexicon_path):
    """
    Membaca glosa bahasa Inggris dari file XML Leksikon Paratext.

    Mengembalikan kamus yang dikey berdasarkan bentuk lekseme, di mana setiap nilai berisi tipe lekseme (Word, Prefix, Suffix) dan daftar string glosa bahasa Inggris.
    Mengembalikan kamus kosong jika tidak ada path leksikon yang disediakan.
    """
    glosses = {}
    if not lexicon_path:
        print("No lexicon provided - entries will be exported without glosses.")
        return glosses

    print(f"Reading lexicon from: {lexicon_path}")
    with open(lexicon_path, "rb") as f:
        data = f.read()
    # Hapus varian BOM apa pun (BOM UTF-8 standar, atau BOM yang dienkod dua kali)
    for bom in (b"\xef\xbb\xbf", b"\xc3\xaf\xc2\xbb\xc2\xbf"):
        if data.startswith(bom):
            data = data[len(bom):]
            break
    xmldoc = etree.fromstring(data)

    for item in xmldoc.findall("Entries/item"):
        lexeme = next(item.iter("Lexeme"), None)
        if lexeme is None:
            continue

        form     = lexeme.get("Form", "")
        lex_type = lexeme.get("Type", "Word")  # Word, Prefix, atau Suffix

        # Kumpulkan semua glosa bahasa Inggris untuk entri ini (mungkin ada lebih dari satu makna)
        entry_glosses = [
            gloss.text
            for gloss in item.iter("Gloss")
            if gloss.get("Language") == "en" and gloss.text
        ]

        if form and entry_glosses:
            glosses[form] = {"type": lex_type, "glosses": entry_glosses}

    print(f"  Found {len(glosses)} entries with English glosses.")
    return glosses

def build_approved_list(wordlist_path):
    """
    Membaca XML daftar kata Paratext dan mengembalikan kata yang lolos filter INCLUDE_*.

    Mengembalikan daftar bentuk kata yang disetujui dan kamus metadata yang berisi jumlah korpus, penghubung, dan rincian morfologi untuk setiap kata.
    """
    wordlist  = etree.parse(wordlist_path)
    all_items = wordlist.getroot().findall("item")
    print(f"Reading word list from: {wordlist_path}")
    print(f"  {len(all_items)} words found in list.")

    approved = []
    metadata = {}

    for item in all_items:
        spelling = item.attrib.get("spelling", "Unknown")
        word     = item.attrib.get("word", "")

        include = (
            (spelling == "Correct"   and INCLUDE_CORRECT)   or
            (spelling == "Unknown"   and INCLUDE_UNKNOWN)   or
            (spelling == "Incorrect" and INCLUDE_INCORRECT)
        )

        if include and word:
            approved.append(word)
            metadata[word] = {
                "count":          item.attrib.get("count", "0"),
                "hyphenation":    item.attrib.get("hyphenation", ""),
                "morphology":     item.attrib.get("morphology", ""),
                "morph_approved": item.attrib.get("morphologyApproved", "False"),
                "specificcase":   item.attrib.get("specificcase", ""),
            }

    print(f"  {len(approved)} words marked as correct and ready to export.")
    return approved, metadata

def write_sfm_entry(outfile, word, lex_type, glosses, meta, include_count):
    """
    Menulis satu entri leksikon SFM ke file output.

    Konvensi MDF yang diikuti:
      \\lx  - lekseme (kata utama); afiks mendapat tanda hubung di sisi yang terikat
      \\sn  - nomor makna (ditulis sekali per glosa)
      \\ge  - glosa bahasa Inggris untuk makna tersebut
      \\mr  - string morfologi (jika disetujui oleh penerjemah)
      \\co_* - field komentar untuk metadata yang tidak memiliki penanda standar di FLEx
    """
    # Tulis kata utama, menambahkan tanda hubung untuk menunjukkan titik tempelan afiks
    outfile.write("\n\\lx ")
    if lex_type == "Suffix":
        outfile.write("-")
    outfile.write(word)
    if lex_type == "Prefix":
        outfile.write("-")
    outfile.write("\n")

    # Catat tipe afiks sebagai komentar agar tetap ada setelah impor FLEx
    if lex_type != "Word":
        outfile.write(f"\\co_type {lex_type}\n")

    # Frekuensi korpus - berguna untuk memprioritaskan entri selama pembuatan kamus
if include_count and meta:
        outfile.write(f"\\co_count {meta['count']}\n")

    # Morfologi: gunakan penanda standar \\mr jika analisis telah disetujui,
    # jika tidak, simpan sebagai komentar untuk menghindari impor data yang belum diverifikasi
    if meta and meta["morphology"]:
        marker = "\\mr" if meta["morph_approved"] == "True" else "\\co_morph"
        outfile.write(f"{marker} {meta['morphology']}\n")

    # Tulis satu blok makna per glosa
    for sense_num, gloss_text in enumerate(glosses, start=1):
        outfile.write(f"\\sn {sense_num}\n")
        outfile.write(f"\\ge {gloss_text}\n")

def main():
    """
    Rutinitas ekspor utama.

    Pendekatan dua langkah:
      Langkah 1 - tulis entri yang memiliki glosa leksikon (data yang lebih kaya terlebih dahulu)
      Langkah 2 - tulis kata disetujui lainnya yang tidak memiliki entri leksikon
    Ini memastikan entri yang berglosa tidak diduplikasi.
    """
    wordlist_path, lexicon_path, output_path = get_user_inputs()
    print()

    approved_words, metadata = build_approved_list(wordlist_path)
    lexicon_glosses           = load_lexicon_glosses(lexicon_path)

    # Buka file output sebagai UTF-8 dan tulis header MDF
    outfile = codecs.open(output_path, mode="w", encoding="utf-8")
    outfile.write("\\_sh v3.0  400  MDF\n\\_DateStampHasFourDigitYear\n\n")

    remaining    = list(approved_words)  # Kata yang masih harus ditulis setelah langkah 1
    with_glosses = 0

    # Langkah 1: entri yang muncul di kedua leksikon dan daftar kata disetujui
    for form, lex_data in lexicon_glosses.items():
        if form not in approved_words:
            print(f"  Skipping '{form}' (in lexicon but not marked as correct in word list)")
            continue
        if form in remaining:
            remaining.remove(form)
        write_sfm_entry(outfile, word=form, lex_type=lex_data["type"],
                        glosses=lex_data["glosses"], meta=metadata.get(form),
                        include_count=INCLUDE_COUNT)
        with_glosses += 1

    # Langkah 2: kata disetujui tanpa entri leksikon - diekspor tanpa glosa
    for word in remaining:
        write_sfm_entry(outfile, word=word, lex_type="Word", glosses=[],
                        meta=metadata.get(word), include_count=INCLUDE_COUNT)

    total = with_glosses + len(remaining)
    outfile.close()
    print(f"\nExport complete.")
    print(f"  Total entries written : {total}")
    print(f"  With glosses          : {with_glosses}")
    print(f"  Without glosses       : {len(remaining)}")
    print(f"  Output file           : {output_path}")

if __name__ == "__main__":
    main()
Diterjemahkan secara otomatis dari English

Pertanyaan terkait

+1 suara
3 jawaban 435 tampilan
Exporting the Wordlist to HTML is a nice feature, except that for many users including me, working with HTML is ... that are currently marked as spelled correctly in PT? anon101508
anon101508 117 bertanya Mar 11, 2019
0 suara
6 jawaban 684 tampilan
Ini diposting di daftar FLEx hari ini. Saya punya komentar yang akan saya tambahkan di bawah pertanyaan yang ... fitur ini, tetapi mereka menghindari penggunaannya karena bug ini?
bbryson 105 bertanya Okt 12, 2021
0 suara
4 jawaban 787 tampilan
Saya sedang mencoba membantu seorang pengguna dengan masalah integrasi Paratext Flex (berkaitan dengan Tone Sandhi) dan setelah ... Proyek Paratext ada di versi 8. Ada ide?
MSEAIT_LT 478 bertanya Mei 28, 2020
0 suara
3 jawaban 310 tampilan
I have a user who is trying to export from Paratext 8.0 to a FLEx text. If he does a copy/paste in Standard ... 444 | Papua New Guinea [Email Removed].pgmailto:[Email Removed].pg
SIL LSS PNG 411 bertanya Nov 15, 2017
0 suara
1 jawaban 187 tampilan
Di Paratext 9.3, apakah mungkin untuk: mencetak daftar kata dari semua buku dalam proyek saya ke dalam satu file ... nama tempat dan orang) ke dalam satu daftar secara alfabetis?
debbodaneejo 118 bertanya Feb 16, 2023
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
For just as each of us has one body with many members, and these members do not all have the same function, so in Christ we, though many, form one body, and each member belongs to all the others.
Romans 12:4-5
3,046 pertanyaan
6,006 jawaban
5,671 komentar
2,027 pengguna