Merge remote-tracking branch 'origin/main' into main
diff --git a/ctakes-examples/src/user/resources/org/apache/ctakes/examples/ctakes_cnlpt_py/src/ctakes_cnlpt/ae/negation_delegator.py b/ctakes-examples/src/user/resources/org/apache/ctakes/examples/ctakes_cnlpt_py/src/ctakes_cnlpt/ae/negation_delegator.py
index 262cde6..53129c0 100644
--- a/ctakes-examples/src/user/resources/org/apache/ctakes/examples/ctakes_cnlpt_py/src/ctakes_cnlpt/ae/negation_delegator.py
+++ b/ctakes-examples/src/user/resources/org/apache/ctakes/examples/ctakes_cnlpt_py/src/ctakes_cnlpt/ae/negation_delegator.py
@@ -9,12 +9,31 @@
 sem = asyncio.Semaphore(1)
 
 
+async def init_caller():
+    await negation_rest.startup_event()
+
+
+async def negation_caller(cas, text, event_mentions, offsets):
+    e_doc = EntityDocument(doc_text=text, entities=offsets)
+    # async with sem:
+    negation_output = await negation_rest.process(e_doc)
+    i = 0
+    for e in event_mentions:
+        # -1 represents that it had happened, 1 represents that it is negated
+        e.polarity = negation_output.statuses[i] * -1
+        i += 1
+
+
+def a_sort_by(a):
+    return a.begin
+
+
 class NegationDelegator(cas_annotator.CasAnnotator):
 
     # Initializes the cNLPT, which loads its Negation model.
     def initialize(self):
         print(time.ctime((time.time())), "Initializing cnlp-transformers negation ...")
-        asyncio.run(self.init_caller())
+        asyncio.run(init_caller())
         print(time.ctime((time.time())), "Done.")
 
     # Processes the document to get Negation on Events from cNLPT.
@@ -23,6 +42,7 @@
         # print(time.ctime((time.time())), "Processing cnlp-transformers negation on", get_document_id(cas), "...")
         sentences = cas.select(ctakes_types.Sentence)
         event_mentions = cas.select(ctakes_types.EventMention)
+        event_mentions.sort(key=a_sort_by)
         sentence_events = get_covered_list(sentences, event_mentions)
 
         i = 0
@@ -31,19 +51,6 @@
                 print(time.ctime((time.time())), "Processing cnlp-transformers negation on sentence",
                       str(i), "of", str(len(sentences)), "...")
                 offsets = get_windowed_offsets(sentence_events[i], sentences[i].begin)
-                asyncio.run(self.negation_caller(cas, sentences[i].get_covered_text(), sentence_events[i], offsets))
+                asyncio.run(negation_caller(cas, sentences[i].get_covered_text(), sentence_events[i], offsets))
             i += 1
         print(time.ctime((time.time())), "cnlp-transformers negation Done.")
-
-    async def init_caller(self):
-        await negation_rest.startup_event()
-
-    async def negation_caller(self, cas, text, event_mentions, offsets):
-        e_doc = EntityDocument(doc_text=text, entities=offsets)
-        # async with sem:
-        negation_output = await negation_rest.process(e_doc)
-        i = 0
-        for e in event_mentions:
-            # -1 represents that it had happened, 1 represents that it is negated
-            e.polarity = negation_output.statuses[i] * -1
-            i += 1
diff --git a/ctakes-pbj/src/user/resources/org/apache/ctakes/pbj/ctakes_pbj_py/src/ctakes_pbj/pbj_tools/event_creator.py b/ctakes-pbj/src/user/resources/org/apache/ctakes/pbj/ctakes_pbj_py/src/ctakes_pbj/pbj_tools/event_creator.py
index 71ebaed..ebb6088 100644
--- a/ctakes-pbj/src/user/resources/org/apache/ctakes/pbj/ctakes_pbj_py/src/ctakes_pbj/pbj_tools/event_creator.py
+++ b/ctakes-pbj/src/user/resources/org/apache/ctakes/pbj/ctakes_pbj_py/src/ctakes_pbj/pbj_tools/event_creator.py
@@ -4,7 +4,7 @@
 class EventCreator:
 
     def __init__(self, cas):
-        self.event_mention_type = cas.typesystem.get_type
+        self.event_mention_type = cas.typesystem.get_type(ctakes_types.EventMention)
         self.event_type = cas.typesystem.get_type(ctakes_types.Event)
         self.event_properties_type = cas.typesystem.get_type(ctakes_types.EventProperties)
 
diff --git a/ctakes-pbj/src/user/resources/org/apache/ctakes/pbj/ctakes_pbj_py/src/ctakes_pbj/pbj_tools/helper_functions.py b/ctakes-pbj/src/user/resources/org/apache/ctakes/pbj/ctakes_pbj_py/src/ctakes_pbj/pbj_tools/helper_functions.py
index 96987bd..2c8f1ef 100644
--- a/ctakes-pbj/src/user/resources/org/apache/ctakes/pbj/ctakes_pbj_py/src/ctakes_pbj/pbj_tools/helper_functions.py
+++ b/ctakes-pbj/src/user/resources/org/apache/ctakes/pbj/ctakes_pbj_py/src/ctakes_pbj/pbj_tools/helper_functions.py
@@ -24,8 +24,7 @@
         if b == begin:
             return e_mentions[i]
         i += 1
-    i = 0
-    event_men_type = cas.typesystem.get_type(ctakes_types.Procedure)
+    event_men_type = cas.typesystem.get_type(ctakes_types.EventMention)
     return create_type.add_type(cas, event_men_type, begin, end)