pyegeria 5.4.0.24__py3-none-any.whl → 5.4.0.26__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.
Files changed (50) hide show
  1. commands/cat/debug_log +7373 -1452
  2. commands/cat/dr_egeria_md.py +21 -4
  3. commands/cat/logs/pyegeria.log +4 -0
  4. md_processing/.DS_Store +0 -0
  5. md_processing/__init__.py +7 -3
  6. md_processing/data/commands.json +1683 -2801
  7. md_processing/dr_egeria_inbox/product.md +69 -20
  8. md_processing/dr_egeria_outbox/.obsidian/workspace.json +5 -5
  9. md_processing/dr_egeria_outbox/monday/processed-2025-08-19 07:05-product.md +426 -0
  10. md_processing/dr_egeria_outbox/monday/processed-2025-08-19 07:56-product.md +212 -0
  11. md_processing/dr_egeria_outbox/monday/processed-2025-08-19 09:43-product.md +201 -0
  12. md_processing/dr_egeria_outbox/tuesday/processed-2025-08-19 10:55-product.md +209 -0
  13. md_processing/md_commands/governance_officer_commands.py +1 -73
  14. md_processing/md_commands/product_manager_commands.py +453 -211
  15. md_processing/md_processing_utils/common_md_proc_utils.py +60 -5
  16. md_processing/md_processing_utils/common_md_utils.py +21 -9
  17. md_processing/md_processing_utils/extraction_utils.py +2 -2
  18. md_processing/md_processing_utils/md_processing_constants.py +8 -7
  19. pyegeria/.DS_Store +0 -0
  20. pyegeria/__init__.py +4 -300
  21. pyegeria/_client_new.py +59 -11
  22. pyegeria/_output_formats.py +43 -0
  23. pyegeria/collection_manager.py +79 -14
  24. pyegeria/{data_designer_omvs.py → data_designer.py} +1171 -1675
  25. pyegeria/egeria_cat_client.py +2 -2
  26. pyegeria/egeria_client.py +4 -4
  27. pyegeria/egeria_tech_client.py +1 -1
  28. pyegeria/glossary_browser.py +1259 -0
  29. pyegeria/{glossary_manager_omvs.py → glossary_manager.py} +1181 -1099
  30. pyegeria/models.py +9 -3
  31. pyegeria/output_formatter.py +2 -1
  32. pyegeria/project_manager.py +1743 -0
  33. pyegeria/solution_architect_omvs.py +1 -1
  34. pyegeria/utils.py +4 -1
  35. {pyegeria-5.4.0.24.dist-info → pyegeria-5.4.0.26.dist-info}/METADATA +1 -1
  36. {pyegeria-5.4.0.24.dist-info → pyegeria-5.4.0.26.dist-info}/RECORD +39 -43
  37. commands/cat/debug_log.2025-08-15_09-14-07_444802.zip +0 -0
  38. commands/cat/debug_log.2025-08-16_10-21-59_388912.zip +0 -0
  39. md_processing/dr_egeria_outbox/monday/processed-2025-07-14 12:38-data_designer_out.md +0 -663
  40. md_processing/dr_egeria_outbox/monday/processed-2025-07-21 10:52-generated_help_report.md +0 -2744
  41. md_processing/dr_egeria_outbox/monday/processed-2025-07-21 18:38-collections.md +0 -62
  42. md_processing/dr_egeria_outbox/monday/processed-2025-08-01 11:34-gov_def.md +0 -444
  43. md_processing/dr_egeria_outbox/monday/processed-2025-08-17 21:04-product.md +0 -97
  44. pyegeria/collection_manager_omvs.py +0 -6541
  45. pyegeria/glossary_browser_omvs.py +0 -3840
  46. pyegeria/governance_officer_omvs.py +0 -2367
  47. pyegeria/project_manager_omvs.py +0 -1933
  48. {pyegeria-5.4.0.24.dist-info → pyegeria-5.4.0.26.dist-info}/LICENSE +0 -0
  49. {pyegeria-5.4.0.24.dist-info → pyegeria-5.4.0.26.dist-info}/WHEEL +0 -0
  50. {pyegeria-5.4.0.24.dist-info → pyegeria-5.4.0.26.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,212 @@
1
+
2
+ # Update Data Specification
3
+
4
+ ## Data Specification Name
5
+
6
+ GeoSpatial Root
7
+
8
+ ## Display Name
9
+ GeoSpatial Root
10
+
11
+ ## Qualified Name
12
+ [Root::GeoSpatial-Root](#6751311c-fdda-4649-9068-ab4c13f42ea2)
13
+
14
+ ## Category
15
+ GeoSpatial
16
+
17
+ ## Description
18
+ This is the root of the GeoSpatial work
19
+
20
+ [[Data Specification]]
21
+
22
+ # Don't Update Folder
23
+ ## Name
24
+ Digital Products MarketPlace
25
+
26
+ ## Qualified Name
27
+ Folder::Digital-Products-MarketPlace
28
+ ## Description
29
+ This is the digital products marketplace.
30
+
31
+ ## Catagory
32
+ GeoSpatial
33
+
34
+ ____
35
+
36
+ # Don't Create Folder
37
+ ## Name
38
+ GeoSpatial Products
39
+
40
+ ## Qualified Name
41
+ Folder::GeoSpatial-Products
42
+
43
+ ## Description
44
+ GeoSpatial product offerings.
45
+
46
+ ## Catagory
47
+ GeoSpatial
48
+ ____
49
+
50
+ # Don't Create Folder
51
+ ## Name
52
+ Agricultural Products
53
+
54
+ ## Qualified Name
55
+ Folder::Agricultural-Products
56
+
57
+ ## Description
58
+ Agricultural product offerings.
59
+
60
+ ## Catagory
61
+ GeoSpatial
62
+ ____
63
+
64
+ # Don't Create Folder
65
+ ## Name
66
+ Prepared Imagery Products
67
+
68
+ ## Description
69
+ Imagry products that are ready for consumption.
70
+
71
+ ## Catagory
72
+ GeoSpatial
73
+
74
+ ____
75
+
76
+ # Don't Create Folder
77
+ ## Name
78
+ Raw Satellite Imagery Products.
79
+
80
+ ## Qualified Name
81
+ Folder::Raw Satellite-Imagery-Products
82
+
83
+ ## Description
84
+ Satellite imagery imported from or referenced from external providers.
85
+
86
+ ## Catagory
87
+ GeoSpatial
88
+
89
+ ____
90
+
91
+ # Don't Create Digital Product
92
+ ## Name
93
+ Sentinel-2a
94
+
95
+ ## Qualified Name
96
+ DigitalProduct::Sentinel-2a
97
+
98
+ ## Description
99
+ Level 2a (surface level) imagery. Updated
100
+
101
+ ## Product Name
102
+ Sentinel Level 2A
103
+
104
+ ## Status
105
+ Active
106
+
107
+ ## Product Identifier
108
+ sentinel-2a
109
+
110
+ ## Maturity
111
+ Mature
112
+
113
+ ## Service Life
114
+ Until interest and budget wane.
115
+
116
+ ## Category
117
+ GeoSpatial
118
+
119
+ ____
120
+
121
+ # Don't Create Folder
122
+
123
+ ## Name
124
+ Standard Subscription Agreements Folder
125
+
126
+ ## Qualified Name
127
+ Folder::Standard-Subscription-Agreements-Folder
128
+
129
+ ## Description
130
+ A folder for digital product subscriptions.
131
+
132
+ ## Catagory
133
+ GeoSpatial
134
+
135
+ ____
136
+ # Don't Create Digital Subscription
137
+ ## Name
138
+ GeoSpatial Data Products Subscription
139
+
140
+ # Qualified Name
141
+ Subscription::GeoSpatial-Products-Subscription
142
+
143
+ ## Description
144
+ A general subscription agreement for GeoSpatial Data Products
145
+
146
+ ## Identifier
147
+ GeoSpatial-Sub-0
148
+
149
+ ## Support Level
150
+ Best Effort
151
+ ____
152
+
153
+ # Don't Create Agreement
154
+ ## Name
155
+ A test agreement
156
+
157
+ # Qualified Name
158
+ Agreement::A-test-agreement
159
+
160
+ ## Description
161
+ A general agreement for testing and testing
162
+
163
+ ## Identifier
164
+ Agreement 1
165
+
166
+ ____
167
+
168
+ # Don't Link Agreement Item
169
+ ## Agreement Name
170
+ Subscription::GeoSpatial-Products-Subscription
171
+
172
+ ## Item Name
173
+ DigitalProduct::Sentinel-2a
174
+
175
+ ## Agreement Item Id
176
+ Sentinel-2a-Subscription
177
+
178
+ ## Agreement Start
179
+ 2025-08-01
180
+
181
+ ## Agreement End
182
+ 2030-12-31
183
+
184
+ ## Entitlements
185
+ { "Data Download" : "Allowed", "Data Sharing" : "Allowed"}
186
+
187
+ ## Obligations
188
+ { "Attribution" : "Required"}
189
+
190
+
191
+ ___
192
+
193
+ # Don't View Data Sharing Agreements
194
+ ## Output Format
195
+ LIST
196
+
197
+ ___
198
+
199
+ # Don't View Data Sharing Agreements
200
+ ## Output Format
201
+ REPORT
202
+ ___
203
+ # Don't View Report
204
+ ## Output Format
205
+ REPORT
206
+ ## Output Format Set
207
+ Collections
208
+
209
+
210
+ # Provenance
211
+
212
+ * Results from processing file product.md on 2025-08-19 07:56
@@ -0,0 +1,201 @@
1
+ # Don't Update Root Collection
2
+ ## Name
3
+ GeoSpatial Root
4
+
5
+ ## Qualified Name
6
+ Root::GeoSpatial-Root
7
+ ## Description
8
+ This is the root of the GeoSpatial work
9
+
10
+ ## Category
11
+ GeoSpatial
12
+
13
+ ____
14
+
15
+ # Don't Update Folder
16
+ ## Name
17
+ Digital Products MarketPlace
18
+
19
+ ## Qualified Name
20
+ Folder::Digital-Products-MarketPlace
21
+ ## Description
22
+ This is the digital products marketplace.
23
+
24
+ ## Catagory
25
+ GeoSpatial
26
+
27
+ ____
28
+
29
+ # Don't Create Folder
30
+ ## Name
31
+ GeoSpatial Products
32
+
33
+ ## Qualified Name
34
+ Folder::GeoSpatial-Products
35
+
36
+ ## Description
37
+ GeoSpatial product offerings.
38
+
39
+ ## Catagory
40
+ GeoSpatial
41
+ ____
42
+
43
+ # Don't Create Folder
44
+ ## Name
45
+ Agricultural Products
46
+
47
+ ## Qualified Name
48
+ Folder::Agricultural-Products
49
+
50
+ ## Description
51
+ Agricultural product offerings.
52
+
53
+ ## Catagory
54
+ GeoSpatial
55
+ ____
56
+
57
+ # Don't Create Folder
58
+ ## Name
59
+ Prepared Imagery Products
60
+
61
+ ## Description
62
+ Imagry products that are ready for consumption.
63
+
64
+ ## Catagory
65
+ GeoSpatial
66
+
67
+ ____
68
+
69
+ # Don't Create Folder
70
+ ## Name
71
+ Raw Satellite Imagery Products.
72
+
73
+ ## Qualified Name
74
+ Folder::Raw Satellite-Imagery-Products
75
+
76
+ ## Description
77
+ Satellite imagery imported from or referenced from external providers.
78
+
79
+ ## Catagory
80
+ GeoSpatial
81
+
82
+ ____
83
+
84
+ # Don't Create Digital Product
85
+ ## Name
86
+ Sentinel-2a
87
+
88
+ ## Qualified Name
89
+ DigitalProduct::Sentinel-2a
90
+
91
+ ## Description
92
+ Level 2a (surface level) imagery. Updated
93
+
94
+ ## Product Name
95
+ Sentinel Level 2A
96
+
97
+ ## Status
98
+ Active
99
+
100
+ ## Product Identifier
101
+ sentinel-2a
102
+
103
+ ## Maturity
104
+ Mature
105
+
106
+ ## Service Life
107
+ Until interest and budget wane.
108
+
109
+ ## Category
110
+ GeoSpatial
111
+
112
+ ____
113
+
114
+ # Don't Create Folder
115
+
116
+ ## Name
117
+ Standard Subscription Agreements Folder
118
+
119
+ ## Qualified Name
120
+ Folder::Standard-Subscription-Agreements-Folder
121
+
122
+ ## Description
123
+ A folder for digital product subscriptions.
124
+
125
+ ## Catagory
126
+ GeoSpatial
127
+
128
+ ____
129
+ # Don't Create Digital Subscription
130
+ ## Name
131
+ GeoSpatial Data Products Subscription
132
+
133
+ # Qualified Name
134
+ Subscription::GeoSpatial-Data-Products-Subscription
135
+
136
+ ## Description
137
+ A general subscription agreement for GeoSpatial Data Products
138
+
139
+ ## Identifier
140
+ GeoSpatial-Sub-0
141
+
142
+ ## Support Level
143
+ Best Effort
144
+ ____
145
+
146
+ # Don't Create Agreement
147
+ ## Name
148
+ A test agreement
149
+
150
+ # Qualified Name
151
+ Agreement::A-test-agreement
152
+
153
+ ## Description
154
+ A general agreement for testing and testing
155
+
156
+ ## Identifier
157
+ Agreement 1
158
+
159
+ ____
160
+
161
+
162
+ * Agreement Name: `Subscription::GeoSpatial-Data-Products-Subscription`
163
+
164
+ * Item Name: `DigitalProduct::Sentinel-2a`
165
+
166
+ * Agreement Item Id: `Sentinel-2a-Subscription`
167
+
168
+ * Agreement Start: `2025-08-01`
169
+
170
+ * Agreement End: `2030-12-31`
171
+
172
+ * Obligations: `{
173
+ "Attribution": "Required"
174
+ }`
175
+
176
+ * Entitlements: `{
177
+ "Data Download": "Allowed",
178
+ "Data Sharing": "Allowed"
179
+ }`
180
+
181
+
182
+ # Don't View Data Sharing Agreements
183
+ ## Output Format
184
+ LIST
185
+
186
+ ___
187
+
188
+ # Don't View Data Sharing Agreements
189
+ ## Output Format
190
+ REPORT
191
+ ___
192
+ # Don't View Report
193
+ ## Output Format
194
+ REPORT
195
+ ## Output Format Set
196
+ Collections
197
+
198
+
199
+ # Provenance
200
+
201
+ * Results from processing file product.md on 2025-08-19 09:43
@@ -0,0 +1,209 @@
1
+ # Don't Update Root Collection
2
+ ## Name
3
+ GeoSpatial Root
4
+
5
+ ## Qualified Name
6
+ Root::GeoSpatial-Root
7
+ ## Description
8
+ This is the root of the GeoSpatial work
9
+
10
+ ## Category
11
+ GeoSpatial
12
+
13
+ ____
14
+
15
+ # Don't Update Folder
16
+ ## Name
17
+ Digital Products MarketPlace
18
+
19
+ ## Qualified Name
20
+ Folder::Digital-Products-MarketPlace
21
+ ## Description
22
+ This is the digital products marketplace.
23
+
24
+ ## Catagory
25
+ GeoSpatial
26
+
27
+ ____
28
+
29
+ # Don't Create Folder
30
+ ## Name
31
+ GeoSpatial Products
32
+
33
+ ## Qualified Name
34
+ Folder::GeoSpatial-Products
35
+
36
+ ## Description
37
+ GeoSpatial product offerings.
38
+
39
+ ## Catagory
40
+ GeoSpatial
41
+ ____
42
+
43
+ # Don't Create Folder
44
+ ## Name
45
+ Agricultural Products
46
+
47
+ ## Qualified Name
48
+ Folder::Agricultural-Products
49
+
50
+ ## Description
51
+ Agricultural product offerings.
52
+
53
+ ## Catagory
54
+ GeoSpatial
55
+ ____
56
+
57
+ # Don't Create Folder
58
+ ## Name
59
+ Prepared Imagery Products
60
+
61
+ ## Description
62
+ Imagry products that are ready for consumption.
63
+
64
+ ## Catagory
65
+ GeoSpatial
66
+
67
+ ____
68
+
69
+ # Don't Create Folder
70
+ ## Name
71
+ Raw Satellite Imagery Products.
72
+
73
+ ## Qualified Name
74
+ Folder::Raw Satellite-Imagery-Products
75
+
76
+ ## Description
77
+ Satellite imagery imported from or referenced from external providers.
78
+
79
+ ## Catagory
80
+ GeoSpatial
81
+
82
+ ____
83
+
84
+ # Don't Create Digital Product
85
+ ## Name
86
+ Sentinel-2a
87
+
88
+ ## Qualified Name
89
+ DigitalProduct::Sentinel-2a
90
+
91
+ ## Description
92
+ Level 2a (surface level) imagery. Updated
93
+
94
+ ## Product Name
95
+ Sentinel Level 2A
96
+
97
+ ## Status
98
+ Active
99
+
100
+ ## Product Identifier
101
+ sentinel-2a
102
+
103
+ ## Maturity
104
+ Mature
105
+
106
+ ## Service Life
107
+ Until interest and budget wane.
108
+
109
+ ## Category
110
+ GeoSpatial
111
+
112
+ ____
113
+
114
+ # Don't Create Folder
115
+
116
+ ## Name
117
+ Standard Subscription Agreements Folder
118
+
119
+ ## Qualified Name
120
+ Folder::Standard-Subscription-Agreements-Folder
121
+
122
+ ## Description
123
+ A folder for digital product subscriptions.
124
+
125
+ ## Catagory
126
+ GeoSpatial
127
+
128
+ ____
129
+ # Don't Create Digital Subscription
130
+ ## Name
131
+ GeoSpatial Data Products Subscription
132
+
133
+ # Qualified Name
134
+ Subscription::GeoSpatial-Data-Products-Subscription
135
+
136
+ ## Description
137
+ A general subscription agreement for GeoSpatial Data Products
138
+
139
+ ## Identifier
140
+ GeoSpatial-Sub-0
141
+
142
+ ## Support Level
143
+ Best Effort
144
+ ____
145
+
146
+ # Don't Create Agreement
147
+ ## Name
148
+ A test agreement
149
+
150
+ # Qualified Name
151
+ Agreement::A-test-agreement
152
+
153
+ ## Description
154
+ A general agreement for testing and testing
155
+
156
+ ## Identifier
157
+ Agreement 1
158
+
159
+ ____
160
+
161
+ # Don't Link Agreement->Item
162
+ ## Agreement Name
163
+ Subscription::GeoSpatial-Data-Products-Subscription
164
+
165
+ ## Item Name
166
+ DigitalProduct::Sentinel-2a
167
+
168
+ ## Agreement Item Id
169
+ Sentinel-2a-Subscription
170
+
171
+ ## Agreement Start
172
+ 2025-08-01
173
+
174
+ ## Agreement End
175
+ 2030-12-31
176
+
177
+ ## Entitlements
178
+ { "Data Download" : "Allowed", "Data Sharing" : "Allowed"}
179
+
180
+ ## Obligations
181
+ { "Attribution" : "Required"}
182
+ ____
183
+
184
+
185
+ * Subscription: `Subscription::GeoSpatial-Data-Products-Subscription`
186
+
187
+ * Subscriber: `Agreement::A-test-agreement`
188
+
189
+
190
+ # Don't View Data Sharing Agreements
191
+ ## Output Format
192
+ LIST
193
+
194
+ ___
195
+
196
+ # Don't View Data Sharing Agreements
197
+ ## Output Format
198
+ REPORT
199
+ ___
200
+ # Don't View Report
201
+ ## Output Format
202
+ REPORT
203
+ ## Output Format Set
204
+ Collections
205
+
206
+
207
+ # Provenance
208
+
209
+ * Results from processing file product.md on 2025-08-19 10:55
@@ -53,7 +53,7 @@ GOVERNANCE_CONTROLS = ["Governance Rule", "Service Level Objective", "Governance
53
53
  load_commands('commands.json')
54
54
  debug_level = DEBUG_LEVEL
55
55
 
56
- console = Console(width=int(200))
56
+ console = Console(width=int(250))
57
57
  setup_log()
58
58
 
59
59
 
@@ -423,78 +423,6 @@ def process_supporting_gov_def_link_detach_command(egeria_client: EgeriaTech, tx
423
423
  return None
424
424
 
425
425
 
426
- @logger.catch
427
- def process_gov_definition_list_command(egeria_client: EgeriaTech, txt: str,
428
- directive: str = "display") -> Optional[str]:
429
- """
430
- Processes a Governance Definition list object_action by extracting key attributes such as
431
- search string from the given text.
432
-
433
- :param txt: A string representing the input cell to be processed for
434
- extracting term-related attributes.
435
- :param directive: an optional string indicating the directive to be used - display, validate or execute
436
- :return: A string summarizing the outcome of the processing.
437
- """
438
- if True:
439
- return process_output_command(egeria_client, txt, directive)
440
-
441
- command, object_type, object_action = extract_command_plus(txt)
442
- print(Markdown(f"# {command}\n"))
443
-
444
- parsed_output = parse_view_command(egeria_client, object_type, object_action, txt, directive)
445
-
446
- valid = parsed_output['valid']
447
- print(Markdown(f"Performing {command}"))
448
- print(Markdown(parsed_output['display']))
449
-
450
- attr = parsed_output.get('attributes', {})
451
-
452
- search_string = attr.get('Search String', {}).get('value', '*')
453
- output_format = attr.get('Output Format', {}).get('value', 'LIST')
454
- output_format_set = attr.get('Output Format Set', {}).get('value', object_type)
455
- detailed = attr.get('Detailed', {}).get('value', False)
456
-
457
- if directive == "display":
458
- return None
459
- elif directive == "validate":
460
- if valid:
461
- print(Markdown(f"==> Validation of {command} completed successfully!\n"))
462
- else:
463
- msg = f"Validation failed for object_action `{command}`\n"
464
- logger.error(msg)
465
- return valid
466
-
467
- elif directive == "process":
468
- try:
469
- if not valid: # First validate the command before we process it
470
- msg = f"Validation failed for {object_action} `{object_type}`\n"
471
- logger.error(msg)
472
- return None
473
-
474
- list_md = f"\n# `{object_type}` with filter: `{search_string}`\n\n"
475
- body = set_find_body(object_type, attr)
476
-
477
- struct = egeria_client.find_governance_definitions(search_string,
478
- body=body,
479
- output_format=output_format,
480
- output_format_set=output_format_set,
481
- )
482
- if output_format.upper() == "DICT":
483
- list_md += f"```\n{json.dumps(struct, indent=4)}\n```\n"
484
- else:
485
- list_md += struct
486
- logger.info(f"Wrote `{object_type}` for search string: `{search_string}`")
487
-
488
- return list_md
489
-
490
- except Exception as e:
491
- logger.error(f"Error performing {command}: {e}")
492
- console.print_exception(show_locals=True)
493
- return None
494
- else:
495
- return None
496
-
497
-
498
426
  @logger.catch
499
427
  def process_gov_def_context_command(egeria_client: EgeriaTech, txt: str,
500
428
  directive: str = "display") -> Optional[str]: