API References
QuranTree.Lemma — TypeLemma(data::String)Convert a string to a Lemma object.
QuranTree.Prefix — TypePrefix(data::Symbol, pos::AbstractPartOfSpeech)Create a new Prefix object with data as the symbol of the morphological feature with pos as  the corresponding Part of Speech.
QuranTree.QuranFeatures — TypeQuranFeatures(data::String)Convert a string to morphological feature object.
QuranTree.Root — TypeRoot(data::String)Convert a string to a Root object.
QuranTree.Special — TypeSpecial(data::String)Convert a string to a Special object.
QuranTree.Stem — TypeStem(data::Symbol, pos::AbstractPartOfSpeech)Create a new Stem object with data as the symbol of the morphological feature with pos as  the corresponding Part of Speech.
QuranTree.Suffix — TypeSuffix(data::Symbol, pos::AbstractPartOfSpeech)Create a new Suffix object with data as the symbol of the morphological feature with pos as  the corresponding Part of Speech.
Base.parse — Methodparse(::Type{QuranFeatures}, f::AbstractString)Extract the features of a morphological Feature object.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps)
julia> tnzldata = table(tnzl)
julia> parse(QuranFeatures, select(crpsdata.data, :features)[53])
Stem(:NEG, NEG, AbstractQuranFeature[Lemma("laA"), Special("<in~")])QuranTree.chapter_name — Methodchapter_name(quran::AbstractQuran, transliterate::Bool=false; lang::Symbol=:arabic)Extract the chapter name of the input quran, in either :arabic (default) or :english
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps)
julia> tnzldata = table(tnzl)
julia> chapter_name(crpsdata[13][2][1])
"ٱلرَّعْد"QuranTree.lemma — Methodlemma(feat::AbstractQuranFeature)Extract the lemma of the feature.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps)
julia> tnzldata = table(tnzl)
julia> lemma(parse(QuranFeatures, select(crpsdata[112].data, :features)[1]))
"qaAla"QuranTree.load — Methodload(data::QuranData)Load the raw QuranData as a ReadOnlyArray for both Quranic Corpus and Tanzil Data.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data);QuranTree.root — Methodroot(feat::AbstractQuranFeature)Extract the root of the feature.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps)
julia> tnzldata = table(tnzl)
julia> root(parse(QuranFeatures, select(crpsdata[112].data, :features)[1]))
"qwl"QuranTree.special — Methodspecial(feat::AbstractQuranFeature)Extract the special feature of the token.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps)
julia> tnzldata = table(tnzl)
julia> special(parse(QuranFeatures, select(crpsdata.data, :features)[53]))
"<in~"QuranTree.table — Methodtable(crps::CorpusRaw)Convert the CorpusRaw read-only array into a tabularized CorpusData using IndexedTable.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps);QuranTree.table — Methodtable(tnzl::TanzilRaw)Convert the TanzilRaw read-only array into a tabularized TanzilData using IndexedTable.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> tnzldata = table(tnzl);QuranTree.verses — Methodverses(quran::AbstractQuran; number=false, start_end=true)Extract the verses of a AbstractQuran object.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps)
julia> tnzldata = table(tnzl)
julia> verses(crpsdata[1])[7]
"Sira`Ta {l~a*iyna >anoEamota Ealayohimo gayori {lomagoDuwbi Ealayohimo walaA {lD~aA^l~iyna"
julia> verses(crpsdata[113:114], number=true)[1]
"113:(1,5)"
julia> verses(crpsdata[113:114], number=true, start_end=false)[1]
([113], [1, 2, 3, 4, 5])QuranTree.verses — Methodverses(data::DataFrame[, a::Int64[, b::Int64]]; number=false, start_end=true)Extract the verses of a DataFrame object from row a to row b.
QuranTree.verses — Methodverses(quran::TanzilData)Extract the verses of a TanzilData object.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps)
julia> tnzldata = table(tnzl)
julia> verses(tnzldata)[1]
"بِسْمِ ٱللَّهِ ٱلرَّحْمَٰنِ ٱلرَّحِيمِ"QuranTree.words — Methodwords(quran::AbstractQuran)Extract words of the input quran.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps)
julia> tnzldata = table(tnzl)
julia> words(tnzldata[1][7])[1]
"صِرَٰطَ"Yunir.isfeat — Methodisfeat(feat::QuranFeatures, pos::Type{<:AbstractQuranFeature})Check if the morphological Feature object is a type of pos.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps)
julia> tnzldata = table(tnzl)
julia> isfeat(parse(QuranFeatures, select(crpsdata[1].data, :features)[2]), Stem)
trueQuranTree.@data — Macro@data(expr)Extract the data property object.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps);
julia> tnzldata = table(tnzl);
julia> feat = parse(Features, select(crpsdata.data, :features)[53])
julia> @data feat
:NEGQuranTree.@desc — Macro@desc(expr)Extract the detailed description of a AbstractQuranFeature.
Examples
julia> data = QuranData()
julia> crps, tnzl = load(data)
julia> crpsdata = table(crps);
julia> tnzldata = table(tnzl);
julia> feat = parse(Features, select(crpsdata.data, :features)[53])
julia> @desc feat
Stem
────
Negative:
 ├ data: NEG
 ├ desc: Negative particle
 └ ar_label: حرف نفي
Lemma:
 └ data: laA
Special:
 └ data: <in~