import sys, os, csv, re
import collections
import subprocess
from lxml import etree
from pprint import pprint
%load_ext autoreload
%autoreload 2
import laf
from laf.fabric import LafFabric
from etcbc.preprocess import prepare
from etcbc.lib import Transcription, monad_set
#from etcbc.mql import MQL
fabric = LafFabric()
0.00s This is LAF-Fabric 4.5.21 API reference: http://laf-fabric.readthedocs.org/en/latest/texts/API-reference.html Feature doc: https://shebanq.ancient-data.org/static/docs/featuredoc/texts/welcome.html
API=fabric.load('etcbc4b', '--', 'mql', {
"xmlids": {"node": False, "edge": False},
"features": ('''
otype nu ps gn vs vt prs ls lex g_cons g_word_utf8 g_cons_utf8
function txt
book chapter verse label sp kind typ
''',
''' functional_parent
'''),
"prepare": prepare,
}, verbose='DETAIL')
exec(fabric.localnames.format(var='fabric'))
#Q = MQL(API)
0.00s LOADING API: please wait ... 0.00s DETAIL: COMPILING m: UP TO DATE 0.00s USING main DATA COMPILED AT: 2015-12-17T15-56-05 0.00s DETAIL: COMPILING a: UP TO DATE 0.01s DETAIL: keep main: G.node_anchor_min 0.01s DETAIL: keep main: G.node_anchor_max 0.01s DETAIL: keep main: G.node_sort 0.01s DETAIL: keep main: G.node_sort_inv 0.01s DETAIL: keep main: G.edges_from 0.01s DETAIL: keep main: G.edges_to 0.01s DETAIL: keep main: F.etcbc4_db_otype [node] 0.01s DETAIL: keep main: F.etcbc4_ft_g_word_utf8 [node] 0.01s DETAIL: keep main: F.etcbc4_sft_book [node] 0.01s DETAIL: keep main: F.etcbc4_sft_chapter [node] 0.01s DETAIL: keep main: F.etcbc4_sft_verse [node] 0.01s DETAIL: clear main: F.etcbc4_ft_lex_utf8 [node] 0.01s DETAIL: clear main: F.etcbc4_ft_trailer_utf8 [node] 0.01s DETAIL: clear main: F.etcbc4_kq_g_qere_utf8 [node] 0.01s DETAIL: clear main: F.etcbc4_kq_qtrailer_utf8 [node] 0.01s DETAIL: clear main: F.etcbc4_ph_phono [node] 0.01s DETAIL: clear main: F.etcbc4_ph_phono_sep [node] 0.01s DETAIL: clear annox: F.etcbc4_db_otype [node] 0.01s DETAIL: clear annox: F.etcbc4_ft_g_word_utf8 [node] 0.01s DETAIL: clear annox: F.etcbc4_ft_lex_utf8 [node] 0.01s DETAIL: clear annox: F.etcbc4_ft_trailer_utf8 [node] 0.01s DETAIL: clear annox: F.etcbc4_kq_g_qere_utf8 [node] 0.01s DETAIL: clear annox: F.etcbc4_kq_qtrailer_utf8 [node] 0.01s DETAIL: clear annox: F.etcbc4_ph_phono [node] 0.01s DETAIL: clear annox: F.etcbc4_ph_phono_sep [node] 0.01s DETAIL: clear annox: F.etcbc4_sft_book [node] 0.02s DETAIL: clear annox: F.etcbc4_sft_chapter [node] 0.02s DETAIL: clear annox: F.etcbc4_sft_verse [node] 0.02s DETAIL: load main: F.etcbc4_ft_function [node] 0.17s DETAIL: load main: F.etcbc4_ft_g_cons [node] 0.42s DETAIL: load main: F.etcbc4_ft_g_cons_utf8 [node] 0.80s DETAIL: load main: F.etcbc4_ft_gn [node] 1.01s DETAIL: load main: F.etcbc4_ft_kind [node] 1.07s DETAIL: load main: F.etcbc4_ft_lex [node] 1.34s DETAIL: load main: F.etcbc4_ft_ls [node] 1.60s DETAIL: load main: F.etcbc4_ft_nu [node] 1.86s DETAIL: load main: F.etcbc4_ft_prs [node] 2.12s DETAIL: load main: F.etcbc4_ft_ps [node] 2.37s DETAIL: load main: F.etcbc4_ft_sp [node] 2.67s DETAIL: load main: F.etcbc4_ft_txt [node] 2.71s DETAIL: load main: F.etcbc4_ft_typ [node] 3.18s DETAIL: load main: F.etcbc4_ft_vs [node] 3.43s DETAIL: load main: F.etcbc4_ft_vt [node] 3.68s DETAIL: load main: F.etcbc4_sft_label [node] 3.71s DETAIL: load main: F.etcbc4_ft_functional_parent [e] 4.04s DETAIL: load main: C.etcbc4_ft_functional_parent -> 5.00s DETAIL: load main: C.etcbc4_ft_functional_parent <- 5.60s INFO: LOADING PREPARED data: please wait ... 5.60s DETAIL: keep prep: G.node_sort 5.60s DETAIL: keep prep: G.node_sort_inv 5.60s DETAIL: keep prep: L.node_up 5.60s DETAIL: keep prep: L.node_down 5.60s DETAIL: keep prep: V.verses 5.60s DETAIL: keep prep: V.books_la 5.60s ETCBC reference: http://laf-fabric.readthedocs.org/en/latest/texts/ETCBC-reference.html 7.70s INFO: LOADED PREPARED data 7.70s INFO: DATA LOADED FROM SOURCE etcbc4b AND ANNOX lexicon FOR TASK mql AT 2016-03-14T15-37-14
All bet preposition constructions with infinitive hifil or nifal in the HB, at the beginning of a clause. F. we need verbal stem (vs) F. verbal tense (vt) value for vt = infc value for vs = nifal, hifil
otype = word InfC, value
infc_lst = []
def find_infc():
'''Finds the infinitive construct phrase with verbal stem hifil or nifal with prepostion b.'''
for node in NN():
if F.otype.v(node) == 'word':
if F.vt.v(node) == 'infc' and F.vs.v(node) == 'hif' or F.vs.v(node) == 'nif':
phrases = L.u('phrase', node)
b_found = False
for word in L.d('word', phrases):
if word == node and b_found:
infc_lst.append(word)
break
b_found = F.lex.v(word) == 'B'
find_infc()
words = [F.g_cons_utf8.v(n) for n in infc_lst]
len(words)
117
def is_start(n):
'''Finds the second word in the clause. The infc is in the second position of the clause'''
c = L.u('clause', n)
words = list(L.d('word', c))
return len(words) > 1 and words[1] == n
data_lst = []
for n in infc_lst:
book = L.u('book', n)
verse = L.u('verse', n)
clause = L.u('clause', n)
data_lst.append([
str(n),
str(is_start(n)),
F.g_cons.v(n),
T.book_name(book),
str(F.chapter.v(verse)),
str(F.verse.v(verse)),
T.words(L.d('word', clause)).strip('\n')
])
with open("b-Inf.csv", 'w') as f:
header = ['node', 'start', 'verb', 'book', 'chapter', 'verse', 'clause']
f.write('{}\n'.format(','.join(header)))
for item in data_lst:
f.write('{}\n'.format(','.join(item)))
for (node, start, verb, book, chapter, verse, clause) in data_lst:
print('{} {} {}'.format(verb, start, clause))
הבראם True בְּהִבָּֽרְאָ֑ם המלו True בְּהִמֹּלֹ֖ו בְּשַׂ֥ר עָרְלָתֹֽו׃ המלו True בְּהִ֨מֹּלֹ֔ו אֵ֖ת בְּשַׂ֥ר עָרְלָתֹֽו׃ הולד True בְּהִוָּ֣לֶד לֹ֔ו אֵ֖ת יִצְחָ֥ק בְּנֹֽו׃ העטיף True בְהַעֲטִ֥יף הַצֹּ֖אן האבקו True בְּהֵֽאָבְקֹ֖ו עִמֹּֽו׃ המול True בְּהִמֹּ֥ול לָ֨נוּ֙ כָּל־זָכָ֔ר הקשׁתה True בְהַקְשֹׁתָ֖הּ הוציאך True בְּהֹוצִֽיאֲךָ֤ אֶת־הָעָם֙ מִמִּצְרַ֔יִם הכתי True בְּהַכֹּתִ֖י בְּאֶ֥רֶץ מִצְרָֽיִם׃ הכבדי True בְּהִכָּבְדִ֣י בְּפַרְעֹ֔ה בְּרִכְבֹּ֖ו וּבְפָרָשָֽׁיו׃ הוציאי True בְּהֹוצִיאִ֥י אֶתְכֶ֖ם מֵאֶ֥רֶץ מִצְרָֽיִם׃ היטיבו True בְּהֵיטִיבֹ֛ו אֶת־הַנֵּרֹ֖ת העלת True בְהַעֲלֹ֨ת אַהֲרֹ֧ן אֶת־הַנֵּרֹ֛ת בֵּ֥ין הָעֲרְבַּ֖יִם העלות True בְהֵעָלֹ֤ות הֶֽעָנָן֙ מֵעַ֣ל הַמִּשְׁכָּ֔ן הוציאי True בְּהֹוצִיאִ֥י אֹותָ֖ם מֵאֶ֣רֶץ מִצְרָ֑יִם הקרבם True בְּֽהַקְרִבָם֩ אֵ֨שׁ זָרָ֜ה לִפְנֵ֤י יְהוָה֙ בְּמִדְבַּ֣ר סִינַ֔י העלתך True בְּהַעֲלֹֽתְךָ֙ אֶת־הַנֵּרֹ֔ת האריך False וּבְהַאֲרִ֧יךְ הֶֽעָנָ֛ן עַל־הַמִּשְׁכָּ֖ן יָמִ֣ים רַבִּ֑ים האריך True בְּהַאֲרִ֨יךְ הֶעָנָ֤ן עַל־הַמִּשְׁכָּן֙ העלתו True בְהֵעָלֹתֹ֖ו הקהיל True בְהַקְהִ֖יל אֶת־הַקָּהָ֑ל הקהל True בְּהִקָּהֵ֤ל הָֽעֵדָה֙ עַל־מֹשֶׁ֣ה וְעַֽל־אַהֲרֹ֔ן הרימכם True בַּהֲרִֽימְכֶ֤ם אֶת־חֶלְבֹּו֙ מִמֶּ֔נּוּ הרימכם True בַּהֲרִֽימְכֶ֥ם אֶת־חֶלְבֹּ֖ו מִמֶּ֑נּוּ הצתם True בְּהַצֹּתָ֖ם עַל־יְהוָֽה׃ הקריבם True בְּהַקְרִיבָ֥ם אֵשׁ־זָרָ֖ה לִפְנֵ֥י יְהוָֽה׃ הקריבכם True בְּהַקְרִ֨יבְכֶ֜ם מִנְחָ֤ה חֲדָשָׁה֙ לַֽיהוָ֔ה בְּשָׁבֻעֹ֖תֵיכֶ֑ם הניח True בְּהָנִ֣יחַ יְהוָ֣ה אֱלֹהֶ֣יךָ ׀ לְ֠ךָ מִכָּל־אֹ֨יְבֶ֜יךָ מִסָּבִ֗יב בָּאָ֨רֶץ֙ הוציאו True בְּהֹוצִיאֹ֥ו אֹתָ֖ם מֵאֶ֥רֶץ מִצְרָֽיִם׃ הפרידו True בְּהַפְרִידֹ֖ו בְּנֵ֣י אָדָ֑ם הריחו True בַּהֲרִיחֹ֣ו אֵ֔שׁ השׁביע True בְּהַשְׁבִּ֣יעַ אָבִיו֮ אֶת־הָעָם֒ הכרת True בְּהַכְרִ֤ת יְהוָה֙ אֶת־אֹיְבֵ֣י דָוִ֔ד העותו False אֲשֶׁר֙ בְּהַ֣עֲוֹתֹ֔ו הבנתו True בְּהִבָּ֣נֹתֹ֔ו הבנתו True בְּהִבָּנֹתֹֽו׃ הוציאו True בְּהֹוצִיאֹ֥ו אֹתָ֖ם מֵאֶ֥רֶץ מִצְרָֽיִם׃ ס הנגף True בְּֽהִנָּגֵ֞ף עַמְּךָ֧ יִשְׂרָאֵ֛ל לִפְנֵ֥י אֹויֵ֖ב העצר True בְּהֵעָצֵ֥ר שָׁמַ֛יִם הוציאך True בְּהֹוצִיאֲךָ֧ אֶת־אֲבֹתֵ֛ינוּ מִמִּצְרַ֖יִם הכרית True בְּהַכְרִ֣ית אִיזֶ֔בֶל אֵ֖ת נְבִיאֵ֣י יְהוָ֑ה עלות True בַּעֲלֹ֣ות הַמִּנְחָ֗ה העלות True בְּהַעֲלֹ֤ות יְהוָה֙ אֶת־אֵ֣לִיָּ֔הוּ בַּֽסְעָרָ֖ה הַשָּׁמָ֑יִם הלחמו True בְּהִלָּ֣חֲמֹ֔ו אֶת־חֲזָהאֵ֖ל מֶ֣לֶךְ אֲרָ֑ם הלחמו True בְּהִלָּ֣חֲמֹ֔ו אֶת־חֲזָאֵ֖ל מֶ֣לֶךְ אֲרָ֑ם המצאו True בְּהִמָּצְאֹ֑ו גלותו True בַּ֠גְלֹותֹו אֶת־יְכָנְיָ֨ה בֶן־יְהֹויָקִ֧ים מֶֽלֶךְ־יְהוּדָ֛ה מִירֽוּשָׁלִַ֖ם בָּבֶ֑לָה העלות True בְּהֵֽעָלֹות֙ חֵ֣יל הַכַּשְׂדִּ֔ים מֵעַ֖ל יְרֽוּשָׁלִָ֑ם מִפְּנֵ֖י חֵ֥יל פַּרְעֹֽה׃ ס הנשׂא False וּבְהִנָּשֵׂ֤א הַֽחַיֹּות֙ מֵעַ֣ל הָאָ֔רֶץ הנשׂאם False וּֽבְהִנָּשְׂאָ֞ם מֵעַ֣ל הָאָ֗רֶץ הזרותיכם True בְּהִזָּרֹֽותֵיכֶ֖ם בָּאֲרָצֹֽות׃ הפיצי True בַּהֲפִיצִ֤י אֹותָם֙ בַּגֹּויִ֔ם העביר True בְּהַעֲבִ֥יר אֹותָ֖ם לָהֶֽם׃ העביר True בְּהַעֲבִ֖יר כָּל־פֶּ֣טֶר רָ֑חַם העביר True בְּֽהַעֲבִיר֩ בְּנֵיכֶ֨ם בָּאֵ֜שׁ הוציאי True בְּהֹוצִיאִ֤י אֶתְכֶם֙ מִן־הָ֣עַמִּ֔ים הביאי True בַּהֲבִיאִ֥י אֶתְכֶ֖ם אֶל־אַדְמַ֣ת יִשְׂרָאֵ֑ל אֶל־הָאָ֗רֶץ הגלות True בְּהִגָּלֹ֣ות פִּשְׁעֵיכֶ֗ם הרג True בֵּהָ֤רֵֽג הֶ֨רֶג֙ בְּתֹוכֵ֔ךְ העלות True בְּהַעֲלֹ֤ות עָלַ֨יִךְ֙ אֶת־תְּהֹ֔ום השׁענם True בְהִֽשָּׁעֲנָ֤ם עָלֶ֨יךָ֙ הורדי True בְּהֹורִדִ֥י אֹתֹ֛ו שְׁאֹ֖ולָה אֶת־יֹ֣ורְדֵי בֹ֑ור הביאי True בַּהֲבִיאִ֤י שִׁבְרְךָ֙ בַּגֹּויִ֔ם הכותי True בְּהַכֹּותִ֖י אֶת־כָּל־ הקדשׁי True בְּהִקָּדְשִׁ֥י בָכֶ֖ם לְעֵינֵיהֶֽם׃ העלותי False וּבְהַעֲלֹותִ֥י אֶתְכֶ֛ם מִקִּבְרֹותֵיכֶ֖ם הקדשׁי True בְּהִקָּדְשִׁ֥י בְךָ֛ לְעֵינֵיהֶ֖ם הגלותי True בְּהַגְלֹותִ֤י אֹתָם֙ אֶל־הַגֹּויִ֔ם הביאכם True בַּהֲבִיאֲכֶ֣ם בְּנֵֽי־נֵכָ֗ר עַרְלֵי־לֵב֙ וְעַרְלֵ֣י בָשָׂ֔ר הקריבכם True בְּהַקְרִֽיבְכֶ֤ם אֶת־לַחְמִי֙ חֵ֣לֶב וָדָ֔ם הפילכם True בְהַפִּֽילְכֶ֨ם אֶת־הָאָ֜רֶץ בְּנַחֲלָ֗ה הקציף True בְּהַקְצִ֤יף אֲבֹֽתֵיכֶם֙ אֹתִ֔י הנבאו True בְּהִנָּבְאֹֽו׃ הנבאתו True בְּהִנָּֽבְאֹתֹ֑ו הראותו True בְּהֵרָֽאֹותֹ֑ו הקיץ True בְ֝הָקִ֗יץ הוסדם True בְּהִוָּסְדָ֣ם יַ֣חַד עָלַ֑י השׁפטו True בְּהִשָּׁפְטֹֽו׃ הכרת True בְּהִכָּרֵ֖ת רְשָׁעִ֣ים המיר True בְּהָמִ֣יר אָ֑רֶץ הצותו True בְּהַצֹּותֹ֨ו ׀ אֶ֥ת אֲרַ֣ם נַהֲרַיִם֮ וְאֶת־אֲרַ֪ם צֹ֫ובָ֥ה עיר True בָּעִ֤יר ׀ נפלאותיו False וְלֹֽא־הֶ֝אֱמִ֗ינוּ בְּנִפְלְאֹותָֽיו׃ נאמני False עֵינַ֤י ׀ בְּנֶֽאֶמְנֵי־אֶרֶץ֮ הקבץ True בְּהִקָּבֵ֣ץ עַמִּ֣ים יַחְדָּ֑ו השׁפטו True בְּ֭הִשָּׁ֣פְטֹו הביטי True בְּ֝הַבִּיטִ֗י אֶל־כָּל־מִצְוֹתֶֽיךָ׃ נפלאותיך False וְ֝אָשִׂ֗יחָה בְּנִפְלְאֹותֶֽיךָ׃ נפלאות False וְלֹֽא־הִלַּ֓כְתִּי ׀ בִּגְדֹלֹ֖ות וּבְנִפְלָאֹ֣ות מִמֶּֽנִּי׃ המרותם True בְהַמְּרֹותָ֗ם הלו True בְּהִלֹּ֣ו נֵ֭רֹו עֲלֵ֣י רֹאשִׁ֑י השׁקט True בְּהַשְׁקִ֥ט אֶ֝֗רֶץ מִדָּרֹֽום׃ הכינו True בַּהֲכִינֹ֣ו שָׁ֭מַיִם השׂכיל True בְהַשְׂכִּ֥יל לְ֝חָכָ֗ם כשׁלו True בִכָּשְׁלֹ֗ו הכלים True בְּהַכְלִ֖ים אֹתְךָ֣ רֵעֶֽךָ׃ עטף True בֵּֽעָטֵ֤ף עֹולֵל֙ וְיֹונֵ֔ק בִּרְחֹבֹ֖ות קִרְיָֽה׃ ס הראתו True בְּהַרְאֹתֹ֗ו אֶת־עֹ֨שֶׁר֙ כְּבֹ֣וד מַלְכוּתֹ֔ו וְאֶ֨ת־יְקָ֔ר תִּפְאֶ֖רֶת גְּדוּלָּתֹ֑ו יָמִ֣ים רַבִּ֔ים שְׁמֹונִ֥ים וּמְאַ֖ת יֹֽום׃ השׁמע True בְּהִשָּׁמַ֤ע דְּבַר־הַמֶּ֨לֶךְ֙ וְדָתֹ֔ו הקבץ False וּֽבְהִקָּבֵ֞ץ נְעָרֹ֥ות רַבֹּ֛ות אֶל־שׁוּשַׁ֥ן הַבִּירָ֖ה אֶל־יַ֣ד הֵגָ֑י הגיע False וּבְהַגִּ֡יעַ תֹּר֩ נַעֲרָ֨ה וְנַעֲרָ֜ה הגיע True בְהַגִּ֣יעַ תֹּר־אֶסְתֵּ֣ר בַּת־אֲבִיחַ֣יִל דֹּ֣ד מָרְדֳּכַ֡י הקבץ False וּבְהִקָּבֵ֥ץ בְּתוּלֹ֖ות שֵׁנִ֑ית החבא True בְּהֵחָבֵֽא׃ הכשׁלם True בְהִכָּ֣שְׁלָ֔ם הודת False וּבְהֹודֹ֤ת לַֽיהוָה֙ עשׂר True בַּעְשֵׂ֣ר הַלְוִיִּ֑ם הגלות True בְּהַגְלֹ֣ות יְהוָ֔ה אֶת־יְהוּדָ֖ה וִירוּשָׁלִָ֑ם בְּיַ֖ד נְבֻכַדְנֶאצַּֽר׃ ס העצר True בְּהֵעָצֵ֧ר הַשָּׁמַ֛יִם הכנעו True בְהִכָּֽנְעֹ֗ו הריע True בְּהָרִ֨יעַ֙ אִ֣ישׁ יְהוּדָ֔ה השׁענך True בְּהִשָּׁ֨עֶנְךָ֜ עַל־מֶ֤לֶךְ אֲרָם֙ השׁענך True בְהִשָּֽׁעֶנְךָ֥ עַל־יְהוָ֖ה הלחמו True בְּהִלָּ֣חֲמֹ֔ו אֶת־חֲזָהאֵ֖ל מֶ֣לֶךְ אֲרָ֑ם הוציאם True בְהֹוצִיאָ֣ם אֶת־הַכֶּ֔סֶף העלות True בְּהַֽעֲלֹ֛ות הָעֹולָ֥ה וְהַחֲלָבִ֖ים עַד־לָ֑יְלָה