tricc-oo 1.6.24__py3-none-any.whl → 1.6.25__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
tricc_oo/models/tricc.py CHANGED
@@ -99,6 +99,7 @@ class TriccNodeActivity(TriccNodeBaseModel):
99
99
  # - case definition
100
100
  calculates: List[TriccNodeCalculateBase] = []
101
101
  applicability: Optional[Union[Expression, TriccOperation]] = None
102
+ is_sequence_defined: bool = False
102
103
 
103
104
  # redefine
104
105
  def make_instance(self, instance_nb=None, **kwargs):
@@ -294,7 +295,8 @@ class TriccNodeDisplayModel(TriccNodeBaseModel):
294
295
  default: Optional[Union[Expression, TriccOperation, TriccReference, TriccStatic]] = None
295
296
  trigger: Optional[Union[Expression, TriccOperation, TriccReference]] = None
296
297
  priority: Union[float, int, None] = None
297
-
298
+ concept_type: str = None
299
+ datatype: str = None
298
300
  # to use the enum value of the TriccNodeType
299
301
 
300
302
 
@@ -357,8 +357,7 @@ def generate_choice_filter(strategy, node):
357
357
  choice_filter = TriccOperation(TriccOperator.OR, [basic])
358
358
  for k, op in relevances.items():
359
359
  choice_filter.append(
360
- TriccOperation(
361
- TriccOperator.AND,
360
+ and_join(
362
361
  [
363
362
  TriccOperation(
364
363
  TriccOperator.EQUAL,
@@ -368,7 +367,7 @@ def generate_choice_filter(strategy, node):
368
367
  ],
369
368
  ),
370
369
  op,
371
- ],
370
+ ]
372
371
  )
373
372
  )
374
373
  return strategy.get_tricc_operation_expression(choice_filter)
@@ -2265,8 +2265,7 @@ def get_prev_node_expression(node, processed_nodes, get_overall_exp=False, exclu
2265
2265
  if act_expression_inputs:
2266
2266
  act_sub = or_join(act_expression_inputs)
2267
2267
  # if there is condition fallback on the calling activity condition
2268
- if act_sub == TriccStatic(True):
2269
- act_sub = get_node_expression(
2268
+ act_relevance = get_node_expression(
2270
2269
  prev_node.activity,
2271
2270
  processed_nodes=processed_nodes,
2272
2271
  get_overall_exp=get_overall_exp,
@@ -2274,7 +2273,9 @@ def get_prev_node_expression(node, processed_nodes, get_overall_exp=False, exclu
2274
2273
  negate=False,
2275
2274
  process=process,
2276
2275
  )
2277
- elif none_sequence_defined_prev_node:
2276
+ if act_sub == TriccStatic(True):
2277
+ act_sub = act_relevance
2278
+ elif act_relevance != TriccStatic(True) and none_sequence_defined_prev_node:
2278
2279
  # For nodes with is_sequence_defined = False, AND the activity relevance with the prev expression
2279
2280
  # activity_relevance = get_node_expression(
2280
2281
  # prev_node.activity,
@@ -2284,7 +2285,13 @@ def get_prev_node_expression(node, processed_nodes, get_overall_exp=False, exclu
2284
2285
  # negate=False,
2285
2286
  # process=process,
2286
2287
  # )
2287
- act_sub = and_join([ prev_node.activity.root, act_sub])
2288
+ act_sub = and_join([
2289
+ TriccOperation(
2290
+ TriccOperator.ISTRUE,
2291
+ [prev_node.activity.root]
2292
+ ),
2293
+ act_sub
2294
+ ])
2288
2295
  add_sub_expression(expression_inputs, act_sub)
2289
2296
  # avoid void is there is not conditions to avoid looping too much itme
2290
2297
  # expression_inputs = clean_or_list(
@@ -2661,13 +2668,10 @@ def get_selected_option_expression_multiple(option_node, negate):
2661
2668
  selected = TriccOperation(TriccOperator.SELECTED, [option_node.select, TriccStatic(option_node)])
2662
2669
 
2663
2670
  if negate:
2664
- return TriccOperation(
2665
- operator=TriccOperator.AND,
2666
- resource=[
2671
+ return and_join([
2667
2672
  TriccOperation(operator=TriccOperator.NOT, resource=[selected]),
2668
2673
  TriccOperation(operator=TriccOperator.ISNOTNULL, resource=[option_node.select]),
2669
- ],
2670
- )
2674
+ ])
2671
2675
 
2672
2676
  else:
2673
2677
  return selected
@@ -2778,7 +2782,7 @@ def generate_base(node, processed_nodes, **kwargs):
2778
2782
  )
2779
2783
  constraints_max = "The maximum value is {0}.".format(node.max)
2780
2784
  if len(constraints) > 1:
2781
- node.constraint = TriccOperation(TriccOperator.AND, constraints)
2785
+ node.constraint = and_join(constraints)
2782
2786
  node.constraint_message = (constraints_min + " " + constraints_max).strip()
2783
2787
  elif len(constraints) == 1:
2784
2788
  node.constraint = constraints[0]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tricc-oo
3
- Version: 1.6.24
3
+ Version: 1.6.25
4
4
  Summary: Python library that converts CDSS L2 in L3
5
5
  Project-URL: Homepage, https://github.com/SwissTPH/tricc
6
6
  Project-URL: Issues, https://github.com/SwissTPH/tricc/issues
@@ -1,6 +1,6 @@
1
1
  tests/build.py,sha256=Qbxvjkj_Wk2nQ-WjaMGiE1FIe3SRmJMRIgeoMoxqlfQ,6748
2
+ tests/test_cql.py,sha256=IRfjrmcxMn60XlAQLUur-7OUELs1NioqxRXWcOf8QcQ,5678
2
3
  tests/to_ocl.py,sha256=4e-i65K3UM6wHgdVcrZcM9AyL1bahIsXJiZTXhhHgQk,2048
3
- tests/data/test_cql.py,sha256=IRfjrmcxMn60XlAQLUur-7OUELs1NioqxRXWcOf8QcQ,5678
4
4
  tricc_oo/__init__.py,sha256=oWCE1ubmC_6iqaWOMgTei4eXVQgV202Ia-tXS1NnW_4,139
5
5
  tricc_oo/converters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  tricc_oo/converters/codesystem_to_ocl.py,sha256=V_oZNVUVaYHgzJtDiBMSrvIJnBWmDNFBDTTHEkOfpXk,6151
@@ -20,12 +20,12 @@ tricc_oo/models/calculate.py,sha256=uNP0IDUqPQcJq9Co05H8eX5wbR_DikSxuOHxfVE5Dxg,
20
20
  tricc_oo/models/lang.py,sha256=ZMRwdoPWe01wEDhOM0uRk-6rt3BkoAAZM8mZ61--s3A,2265
21
21
  tricc_oo/models/ocl.py,sha256=MybSeB6fgCOUVJ4aektff0vrrTZsyfwZ2Gt_pPBu_FY,8728
22
22
  tricc_oo/models/ordered_set.py,sha256=BpXLW8plRAy4te25PIUPvVXPnLPcypvKg3iNPhtPulA,3833
23
- tricc_oo/models/tricc.py,sha256=H_HPFzFsS_-fFXCx3vdKsw29DFrlTnAscTJE_lQG_Lk,17549
23
+ tricc_oo/models/tricc.py,sha256=dUh0H9hyzwH4VDFDkKIsEjyV794FYTbpJp8F1JugiOU,17640
24
24
  tricc_oo/parsers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
25
  tricc_oo/parsers/xml.py,sha256=uzkb1y18MHfqVFmZqVh0sKT4cx6u0-NcAT_lV_gHBt8,4208
26
26
  tricc_oo/serializers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
27
  tricc_oo/serializers/planuml.py,sha256=t57587-6L3aDncpHh58lS77Zft8yxDE9DPtXx2BeUSU,132
28
- tricc_oo/serializers/xls_form.py,sha256=XtXr4nuRYm2JbZ4a0rPPMASMtAEroSjGgiSTkCXy8L4,24295
28
+ tricc_oo/serializers/xls_form.py,sha256=SZPvZK6y4l_2v3HuGWITHmKd5rTClhHWvbUU3RendFg,24249
29
29
  tricc_oo/strategies/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
30
30
  tricc_oo/strategies/input/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
31
  tricc_oo/strategies/input/base_input_strategy.py,sha256=BEODXS74na1QRRcJVQ4cxiD8F7uRqaLyhE3QzKpGVvk,3891
@@ -41,11 +41,11 @@ tricc_oo/strategies/output/xlsform_cdss.py,sha256=X00Lt5MzV8TX14dR4dFI1MqllI5S1e
41
41
  tricc_oo/strategies/output/xlsform_cht.py,sha256=66sTRqVL9ZUL8NpX2f0xCRQ-siUKcKphosR9y7wsbuM,28326
42
42
  tricc_oo/strategies/output/xlsform_cht_hf.py,sha256=xm6SKirV3nMZvM2w54_zJcXAeAgAkq-EEqGEjnOWv6c,988
43
43
  tricc_oo/visitors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
44
- tricc_oo/visitors/tricc.py,sha256=2EoAGxrj4gD9wIQug_oFdy_EtdyLOI4h0CPeNOdw_Fk,114127
44
+ tricc_oo/visitors/tricc.py,sha256=VL1Ds4a7gCA0V7Mo2qPipT2uV4dcXDK2_swLdxZavDA,114272
45
45
  tricc_oo/visitors/utils.py,sha256=j83aAq5s5atXi3OC0jc_uJd54a8XrHHmizeeEbWZQJg,421
46
46
  tricc_oo/visitors/xform_pd.py,sha256=ryAnI3V9x3eTmJ2LNsUZfvl0_yfCqo6oBgeSu-WPqaE,9613
47
- tricc_oo-1.6.24.dist-info/licenses/LICENSE,sha256=Pz2eACSxkhsGfW9_iN60pgy-enjnbGTj8df8O3ebnQQ,16726
48
- tricc_oo-1.6.24.dist-info/METADATA,sha256=GA-YMXjihmywE-E9LF-f-gLrx5wb_zRj6w9pGsuxUtw,8600
49
- tricc_oo-1.6.24.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
50
- tricc_oo-1.6.24.dist-info/top_level.txt,sha256=NvbfMNAiy9m4b1unBsqpeOQWh4IgA1Xa33BtKA4abxk,15
51
- tricc_oo-1.6.24.dist-info/RECORD,,
47
+ tricc_oo-1.6.25.dist-info/licenses/LICENSE,sha256=Pz2eACSxkhsGfW9_iN60pgy-enjnbGTj8df8O3ebnQQ,16726
48
+ tricc_oo-1.6.25.dist-info/METADATA,sha256=If9bVy3gEm3zT0OMh6UPuUJxsFndAk_MtcglJXUH4LQ,8600
49
+ tricc_oo-1.6.25.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
50
+ tricc_oo-1.6.25.dist-info/top_level.txt,sha256=NvbfMNAiy9m4b1unBsqpeOQWh4IgA1Xa33BtKA4abxk,15
51
+ tricc_oo-1.6.25.dist-info/RECORD,,
File without changes