Work in progress!
Greek has many particles, such as μέν and δέ, that are used to indicate contrast or emphasis.
The particle δέ, commonly found in the Greek New Testament, can be used in either an adversative (contrasting) or copulative (confirming) manner, affecting the meaning and interpretation of the surrounding text. The challenge in translating δέ into English arises due to the inherent ambiguity of the particle. English equivalents such as "but," "and," or "now" often fail to capture the full range of its meaning.
In its adversative usage, δέ introduces a contrast or a counterpoint to what has been previously mentioned. It serves to emphasize a distinction or a shift in thought, often presenting an alternative viewpoint or introducing a new topic. This contrasting function of δέ can be theologically significant as it highlights the tensions or conflicts within the text, revealing different perspectives or opposing ideas.
In its copulative usage, δέ functions as a confirming particle, connecting statements or thoughts in a continuous and cohesive manner. It serves to link ideas together, reinforcing the flow of the discourse. This copulative function of δέ is relevant in conveying theological concepts by maintaining a logical progression in the text, presenting ideas that build upon each other or providing additional supporting information.
Identifying the use of δέ is easily done using Text-Fabric. The challenge lies in creating queries that gather relevant information regarding the syntactical surroundings, which could hint at whether δέ is intended adversative or copulative.
%load_ext autoreload
%autoreload 2
# Loading the Text-Fabric code
# Note: it is assumed Text-Fabric is installed in your environment
from tf.fabric import Fabric
from tf.app import use
# load the N1904 app and data
N1904 = use ("tonyjurg/Nestle1904LFT", version="0.6", hoist=globals())
Locating corpus resources ...
Name | # of nodes | # slots / node | % coverage |
---|---|---|---|
book | 27 | 5102.93 | 100 |
chapter | 260 | 529.92 | 100 |
verse | 7943 | 17.35 | 100 |
sentence | 8011 | 17.20 | 100 |
wg | 105430 | 6.85 | 524 |
word | 137779 | 1.00 | 100 |
3
tonyjurg/Nestle1904LFT
C:/Users/tonyj/text-fabric-data/github/tonyjurg/Nestle1904LFT/app
e68bd68c7c4c862c1464d995d51e27db7691254f
''
orig_order
verse
book
chapter
none
unknown
NA
''
0
text-orig-full
https://github.com/tonyjurg/Nestle1904LFT/blob/main/docs/
about
https://github.com/tonyjurg/Nestle1904LFT
https://github.com/tonyjurg/Nestle1904LFT/blob/main/docs/features/<feature>.md
layout-orig-full
}True
local
C:/Users/tonyj/text-fabric-data/github/tonyjurg/Nestle1904LFT/_temp
Nestle 1904 (Low Fat Tree)
10.5281/zenodo.10182594
tonyjurg
/tf
Nestle1904LFT
Nestle1904LFT
0.6
https://learner.bible/text/show_text/nestle1904/
Show this on the Bible Online Learner website
en
https://learner.bible/text/show_text/nestle1904/<1>/<2>/<3>
{webBase}/word?version={version}&id=<lid>
v0.6
True
True
{book}
''
True
True
{chapter}
''
0
#{sentence} (start: {book} {chapter}:{headverse})
''
True
chapter verse
{book} {chapter}:{verse}
''
0
#{wgnum}: {wgtype} {wgclass} {clausetype} {wgrole} {wgrule} {junction}
''
True
lemma
gloss
chapter verse
grc
# The following will push the Text-Fabric stylesheet to this notebook (to facilitate proper display with notebook viewer)
N1904.dh(N1904.getCss())
# Set default view in a way to limit noise as much as possible.
N1904.displaySetup(condensed=True, multiFeatures=False,queryFeatures=False)
This can be done using a straight forward query. The node numbers of sentence,clause and phrase containing the δέ will also be gathered allowing easier further processing.
# Define the query template
DeQuery= '''
word lemma=δέ
'''
# The following will create a list containing ordered tuples consisting of node numbers of the items as they appear in the query
DeResult = N1904.search(DeQuery)
0.09s 2787 results
import unicodedata
import string
from unidecode import unidecode
def remove_punctuation(input_string):
# Create a string of all punctuation characters
punctuation_chars = ".,*"
# Use str.translate to replace punctuation characters with empty string
result_string = input_string.translate(str.maketrans("", "", punctuation_chars))
return result_string
def fix_abbreviated(input_string):
fixed_string = input_string.replace("d'", "de")
return fixed_string
# small function to find position of a word
def find_word_position(sentence, target_word):
words = sentence.split()
try:
position = words.index(target_word) + 1
# Adding 1 to make it more 'natural' (i.e. 1-based index)
return position
except ValueError:
# following print reveals any occurence of 'de' which is not accounted for
print ('NOT:',sentence)
return -1 # Word not found in the sentence
target_word = unidecode('δέ')
position_frequency = {}
# DeResult is a list of tuples each consisting of two integers, we need the second one _,
for word in DeResult:
# get first item from tuple of integers
parent_wg=L.u(word[0])[0]
# decoded text of the parent wordgroup with punctuations removed and abreviations 'repaired'
parent_wg_text=fix_abbreviated(remove_punctuation(unidecode(T.text(parent_wg))))
position = find_word_position(parent_wg_text, target_word)
# Check if the position is found
if position != -1:
# Update the frequency dictionary
position_frequency[position] = position_frequency.get(position, 0) + 1
# Print the frequency list
print("Position frequency list:", position_frequency)
Position frequency list: {2: 2687, 3: 75, 4: 14, 5: 2, 1: 1, 12: 1, 7: 3, 9: 2, 6: 1, 11: 1}
The scripts in this notebook require (beside text-fabric
) the following Python libraries to be installed in the environment:
{none}
You can install any missing library from within Jupyter Notebook using eitherpip
or pip3
.