pyegeria 5.4.3.4__py3-none-any.whl → 5.4.4__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 (208) hide show
  1. commands/cat/debug_log.2025-09-04_08-21-58_788009.log.zip +0 -0
  2. commands/cat/debug_log.2025-09-05_09-37-53_062579.log.zip +0 -0
  3. commands/cat/list_format_set.py +3 -1
  4. md_processing/__init__.py +9 -1
  5. md_processing/data/commands.json +7181 -1400
  6. md_processing/data/generated_format_sets.json +4137 -0
  7. md_processing/data/generated_format_sets.py +51 -0
  8. md_processing/dr_egeria.py +14 -2
  9. md_processing/md_commands/ext_ref_commands.py +543 -0
  10. md_processing/md_commands/old_solution_architect_commands.py +1139 -0
  11. md_processing/md_commands/solution_architect_commands.py +26 -59
  12. md_processing/md_processing_utils/debug_log +1 -3
  13. md_processing/md_processing_utils/dr-egeria-help-2025-09-09T11:10:03.md +3305 -0
  14. md_processing/md_processing_utils/gen_format_sets.py +422 -0
  15. md_processing/md_processing_utils/md_processing_constants.py +19 -1
  16. pyegeria/_output_formats.py +239 -85
  17. pyegeria/collection_manager.py +3 -3
  18. pyegeria/egeria_tech_client.py +3 -0
  19. pyegeria/external_references.py +1794 -0
  20. pyegeria/solution_architect.py +290 -485
  21. {pyegeria-5.4.3.4.dist-info → pyegeria-5.4.4.dist-info}/METADATA +1 -1
  22. {pyegeria-5.4.3.4.dist-info → pyegeria-5.4.4.dist-info}/RECORD +25 -199
  23. commands/.DS_Store +0 -0
  24. commands/cat/.DS_Store +0 -0
  25. commands/cat/.env +0 -8
  26. commands/cat/debug_log.2025-08-29_07-07-27_848189.log.zip +0 -0
  27. commands/cat/debug_log.2025-08-30_21-15-48_528443.log.zip +0 -0
  28. commands/cat/debug_log.log +0 -7276
  29. commands/cat/logs/pyegeria.log +0 -90
  30. commands/cli/debug_log.log +0 -0
  31. commands/doc/.DS_Store +0 -0
  32. commands/ops/logs/pyegeria.log +0 -0
  33. md_processing/.DS_Store +0 -0
  34. md_processing/.idea/.gitignore +0 -8
  35. md_processing/.idea/inspectionProfiles/Project_Default.xml +0 -59
  36. md_processing/.idea/md_processing.iml +0 -15
  37. md_processing/.idea/modules.xml +0 -8
  38. md_processing/.idea/sonarlint/issuestore/index.pb +0 -0
  39. md_processing/.idea/sonarlint/securityhotspotstore/index.pb +0 -0
  40. md_processing/.idea/vcs.xml +0 -6
  41. md_processing/.idea/workspace.xml +0 -107
  42. md_processing/dr_egeria_inbox/Derive-Dr-Gov-Defs.md +0 -8
  43. md_processing/dr_egeria_inbox/Dr.Egeria Templates.md +0 -873
  44. md_processing/dr_egeria_inbox/arch_test.md +0 -57
  45. md_processing/dr_egeria_inbox/archive/dr_egeria_intro.md +0 -254
  46. md_processing/dr_egeria_inbox/archive/dr_egeria_intro_more_terms.md +0 -696
  47. md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part1.md +0 -254
  48. md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part2.md +0 -298
  49. md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part3.md +0 -608
  50. md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part4.md +0 -94
  51. md_processing/dr_egeria_inbox/archive/freddie_intro.md +0 -284
  52. md_processing/dr_egeria_inbox/archive/freddie_intro_orig.md +0 -275
  53. md_processing/dr_egeria_inbox/archive/test-term.md +0 -110
  54. md_processing/dr_egeria_inbox/cat_test.md +0 -100
  55. md_processing/dr_egeria_inbox/collections.md +0 -39
  56. md_processing/dr_egeria_inbox/data_designer_debug.log +0 -6
  57. md_processing/dr_egeria_inbox/data_designer_out.md +0 -60
  58. md_processing/dr_egeria_inbox/data_designer_search_test.md +0 -11
  59. md_processing/dr_egeria_inbox/data_field.md +0 -54
  60. md_processing/dr_egeria_inbox/data_spec.md +0 -77
  61. md_processing/dr_egeria_inbox/data_spec_test.md +0 -2014
  62. md_processing/dr_egeria_inbox/data_test.md +0 -179
  63. md_processing/dr_egeria_inbox/data_test2.md +0 -429
  64. md_processing/dr_egeria_inbox/data_test3.md +0 -462
  65. md_processing/dr_egeria_inbox/dr_egeria_data_designer_1.md +0 -124
  66. md_processing/dr_egeria_inbox/dr_egeria_intro_categories.md +0 -168
  67. md_processing/dr_egeria_inbox/dr_egeria_intro_part1.md +0 -280
  68. md_processing/dr_egeria_inbox/dr_egeria_intro_part2.md +0 -318
  69. md_processing/dr_egeria_inbox/dr_egeria_intro_part3.md +0 -1073
  70. md_processing/dr_egeria_inbox/dr_egeria_isc1.md +0 -44
  71. md_processing/dr_egeria_inbox/generated_help_report.md +0 -9
  72. md_processing/dr_egeria_inbox/generated_help_terms.md +0 -842
  73. md_processing/dr_egeria_inbox/glossary_list.md +0 -5
  74. md_processing/dr_egeria_inbox/glossary_search_test.md +0 -40
  75. md_processing/dr_egeria_inbox/glossary_test1.md +0 -378
  76. md_processing/dr_egeria_inbox/gov_def.md +0 -718
  77. md_processing/dr_egeria_inbox/gov_def2.md +0 -447
  78. md_processing/dr_egeria_inbox/img.png +0 -0
  79. md_processing/dr_egeria_inbox/output_tests.md +0 -114
  80. md_processing/dr_egeria_inbox/product.md +0 -219
  81. md_processing/dr_egeria_inbox/rel.md +0 -8
  82. md_processing/dr_egeria_inbox/sb.md +0 -119
  83. md_processing/dr_egeria_inbox/solution-components.md +0 -136
  84. md_processing/dr_egeria_inbox/solution_blueprints.md +0 -118
  85. md_processing/dr_egeria_inbox/synonym_test.md +0 -42
  86. md_processing/dr_egeria_inbox/t2.md +0 -268
  87. md_processing/dr_egeria_outbox/.DS_Store +0 -0
  88. md_processing/dr_egeria_outbox/.obsidian/app.json +0 -1
  89. md_processing/dr_egeria_outbox/.obsidian/appearance.json +0 -1
  90. md_processing/dr_egeria_outbox/.obsidian/community-plugins.json +0 -7
  91. md_processing/dr_egeria_outbox/.obsidian/core-plugins.json +0 -33
  92. md_processing/dr_egeria_outbox/.obsidian/plugins/buttons/main.js +0 -5164
  93. md_processing/dr_egeria_outbox/.obsidian/plugins/buttons/manifest.json +0 -10
  94. md_processing/dr_egeria_outbox/.obsidian/plugins/buttons/styles.css +0 -624
  95. md_processing/dr_egeria_outbox/.obsidian/plugins/calendar/data.json +0 -10
  96. md_processing/dr_egeria_outbox/.obsidian/plugins/calendar/main.js +0 -4459
  97. md_processing/dr_egeria_outbox/.obsidian/plugins/calendar/manifest.json +0 -10
  98. md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-kanban/data.json +0 -3
  99. md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-kanban/main.js +0 -153
  100. md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-kanban/manifest.json +0 -11
  101. md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-kanban/styles.css +0 -1
  102. md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-tasks-plugin/main.js +0 -500
  103. md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-tasks-plugin/manifest.json +0 -12
  104. md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-tasks-plugin/styles.css +0 -1
  105. md_processing/dr_egeria_outbox/.obsidian/plugins/templater-obsidian/data.json +0 -38
  106. md_processing/dr_egeria_outbox/.obsidian/plugins/templater-obsidian/main.js +0 -37
  107. md_processing/dr_egeria_outbox/.obsidian/plugins/templater-obsidian/manifest.json +0 -11
  108. md_processing/dr_egeria_outbox/.obsidian/plugins/templater-obsidian/styles.css +0 -220
  109. md_processing/dr_egeria_outbox/.obsidian/types.json +0 -28
  110. md_processing/dr_egeria_outbox/.obsidian/workspace.json +0 -270
  111. md_processing/dr_egeria_outbox/Button Test.md +0 -11
  112. md_processing/dr_egeria_outbox/Scripts/.DS_Store +0 -0
  113. md_processing/dr_egeria_outbox/Scripts/sendRest.js +0 -24
  114. md_processing/dr_egeria_outbox/Templates/sendToApi.md.md +0 -17
  115. md_processing/dr_egeria_outbox/Untitled.canvas +0 -1
  116. md_processing/dr_egeria_outbox/monday/processed-2025-09-01 09:26-product.md +0 -210
  117. md_processing/dr_egeria_outbox/monday/processed-2025-09-01 14:03-product.md +0 -209
  118. md_processing/dr_egeria_outbox/monday/processed-2025-09-01 14:24-product.md +0 -263
  119. md_processing/dr_egeria_outbox/monday/processed-2025-09-01 16:03-data_spec_test.md +0 -2374
  120. md_processing/dr_egeria_outbox/monday/processed-2025-09-01 16:05-data_spec_test.md +0 -2374
  121. md_processing/dr_egeria_outbox/monday/processed-2025-09-02 08:28-data_spec_test.md +0 -2321
  122. md_processing/dr_egeria_outbox/monday/processed-2025-09-02 08:37-data_spec_test.md +0 -2304
  123. md_processing/dr_egeria_outbox/monday/processed-2025-09-02 08:56-data_spec_test.md +0 -2324
  124. md_processing/dr_egeria_outbox/monday/processed-2025-09-02 09:00-data_spec_test.md +0 -2324
  125. md_processing/dr_egeria_outbox/processed-2025-08-30 16:56-generated_help_terms.md +0 -795
  126. md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 15:00-Derive-Dr-Gov-Defs.md +0 -719
  127. md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 20:13-Derive-Dr-Gov-Defs.md +0 -41
  128. md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 20:14-Derive-Dr-Gov-Defs.md +0 -33
  129. md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 20:50-Derive-Dr-Gov-Defs.md +0 -192
  130. md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 22:08-gov_def2.md +0 -486
  131. md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 22:10-gov_def2.md +0 -486
  132. md_processing/dr_egeria_outbox/thursday/processed-2025-07-18 08:53-gov_def2.md +0 -486
  133. md_processing/dr_egeria_outbox/thursday/processed-2025-07-18 08:54-gov_def2.md +0 -486
  134. md_processing/dr_egeria_outbox/thursday/processed-2025-07-18 09:03-gov_def2.md +0 -486
  135. md_processing/dr_egeria_outbox/thursday/processed-2025-07-18 09:06-gov_def2.md +0 -486
  136. md_processing/dr_egeria_outbox/thursday/processed-2025-07-18 09:10-gov_def2.md +0 -486
  137. md_processing/family_docs/Data Designer/Create_Data_Class.md +0 -164
  138. md_processing/family_docs/Data Designer/Create_Data_Dictionary.md +0 -30
  139. md_processing/family_docs/Data Designer/Create_Data_Field.md +0 -162
  140. md_processing/family_docs/Data Designer/Create_Data_Specification.md +0 -36
  141. md_processing/family_docs/Data Designer/Create_Data_Structure.md +0 -38
  142. md_processing/family_docs/Data Designer/View_Data_Classes.md +0 -78
  143. md_processing/family_docs/Data Designer/View_Data_Dictionaries.md +0 -78
  144. md_processing/family_docs/Data Designer/View_Data_Fields.md +0 -78
  145. md_processing/family_docs/Data Designer/View_Data_Specifications.md +0 -78
  146. md_processing/family_docs/Data Designer/View_Data_Structures.md +0 -78
  147. md_processing/family_docs/Data Designer.md +0 -842
  148. md_processing/family_docs/Digital Product Manager/Add_Member->Collection.md +0 -42
  149. md_processing/family_docs/Digital Product Manager/Attach_Collection->Resource.md +0 -36
  150. md_processing/family_docs/Digital Product Manager/Create_Agreement.md +0 -96
  151. md_processing/family_docs/Digital Product Manager/Create_Data_Sharing_Agreement.md +0 -72
  152. md_processing/family_docs/Digital Product Manager/Create_DigitalSubscription.md +0 -102
  153. md_processing/family_docs/Digital Product Manager/Create_Digital_Product.md +0 -134
  154. md_processing/family_docs/Digital Product Manager/Link_Agreement_Items.md +0 -60
  155. md_processing/family_docs/Digital Product Manager/Link_Contracts.md +0 -26
  156. md_processing/family_docs/Digital Product Manager/Link_Digital_Product_-_Digital_Product.md +0 -30
  157. md_processing/family_docs/Digital Product Manager/Link_Subscribers.md +0 -48
  158. md_processing/family_docs/Digital Product Manager.md +0 -668
  159. md_processing/family_docs/Glossary/Attach_Category_Parent.md +0 -18
  160. md_processing/family_docs/Glossary/Attach_Term-Term_Relationship.md +0 -26
  161. md_processing/family_docs/Glossary/Create_Category.md +0 -38
  162. md_processing/family_docs/Glossary/Create_Glossary.md +0 -42
  163. md_processing/family_docs/Glossary/Create_Term.md +0 -70
  164. md_processing/family_docs/Glossary.md +0 -206
  165. md_processing/family_docs/Governance Officer/Create_Business_Imperative.md +0 -106
  166. md_processing/family_docs/Governance Officer/Create_Certification_Type.md +0 -112
  167. md_processing/family_docs/Governance Officer/Create_Governance_Approach.md +0 -114
  168. md_processing/family_docs/Governance Officer/Create_Governance_Obligation.md +0 -114
  169. md_processing/family_docs/Governance Officer/Create_Governance_Principle.md +0 -114
  170. md_processing/family_docs/Governance Officer/Create_Governance_Procedure.md +0 -128
  171. md_processing/family_docs/Governance Officer/Create_Governance_Process.md +0 -122
  172. md_processing/family_docs/Governance Officer/Create_Governance_Processing_Purpose.md +0 -106
  173. md_processing/family_docs/Governance Officer/Create_Governance_Responsibility.md +0 -122
  174. md_processing/family_docs/Governance Officer/Create_Governance_Rule.md +0 -122
  175. md_processing/family_docs/Governance Officer/Create_Governance_Strategy.md +0 -106
  176. md_processing/family_docs/Governance Officer/Create_License_Type.md +0 -112
  177. md_processing/family_docs/Governance Officer/Create_Naming_Standard_Rule.md +0 -122
  178. md_processing/family_docs/Governance Officer/Create_Regulation_Article.md +0 -106
  179. md_processing/family_docs/Governance Officer/Create_Regulation_Definition.md +0 -118
  180. md_processing/family_docs/Governance Officer/Create_Security_Access_Control.md +0 -114
  181. md_processing/family_docs/Governance Officer/Create_Security_Group.md +0 -120
  182. md_processing/family_docs/Governance Officer/Create_Service_Level_Objectives.md +0 -122
  183. md_processing/family_docs/Governance Officer/Create_Threat_Definition.md +0 -106
  184. md_processing/family_docs/Governance Officer/Link_Governance_Controls.md +0 -32
  185. md_processing/family_docs/Governance Officer/Link_Governance_Drivers.md +0 -32
  186. md_processing/family_docs/Governance Officer/Link_Governance_Policies.md +0 -32
  187. md_processing/family_docs/Governance Officer/View_Governance_Definitions.md +0 -82
  188. md_processing/family_docs/Governance Officer.md +0 -2412
  189. md_processing/family_docs/Solution Architect/Create_Information_Supply_Chain.md +0 -70
  190. md_processing/family_docs/Solution Architect/Create_Solution_Blueprint.md +0 -44
  191. md_processing/family_docs/Solution Architect/Create_Solution_Component.md +0 -96
  192. md_processing/family_docs/Solution Architect/Create_Solution_Role.md +0 -66
  193. md_processing/family_docs/Solution Architect/Link_Information_Supply_Chain_Peers.md +0 -32
  194. md_processing/family_docs/Solution Architect/Link_Solution_Component_Peers.md +0 -32
  195. md_processing/family_docs/Solution Architect/View_Information_Supply_Chains.md +0 -32
  196. md_processing/family_docs/Solution Architect/View_Solution_Blueprints.md +0 -32
  197. md_processing/family_docs/Solution Architect/View_Solution_Components.md +0 -32
  198. md_processing/family_docs/Solution Architect/View_Solution_Roles.md +0 -32
  199. md_processing/family_docs/Solution Architect.md +0 -490
  200. md_processing/md_commands/old_project_commands.py +0 -164
  201. md_processing/md_processing_utils/debug_log.log +0 -5580
  202. md_processing/md_processing_utils/generated_help_terms.md +0 -842
  203. md_processing/md_processing_utils/logs/pyegeria.log +0 -56
  204. pyegeria/.DS_Store +0 -0
  205. pyegeria/___external_references.py +0 -3255
  206. {pyegeria-5.4.3.4.dist-info → pyegeria-5.4.4.dist-info}/LICENSE +0 -0
  207. {pyegeria-5.4.3.4.dist-info → pyegeria-5.4.4.dist-info}/WHEEL +0 -0
  208. {pyegeria-5.4.3.4.dist-info → pyegeria-5.4.4.dist-info}/entry_points.txt +0 -0
@@ -12,10 +12,11 @@ from rich.console import Console
12
12
  from rich.markdown import Markdown
13
13
 
14
14
  from md_processing.md_processing_utils.common_md_proc_utils import (parse_upsert_command, parse_view_command)
15
- from md_processing.md_processing_utils.common_md_utils import update_element_dictionary
15
+ from md_processing.md_processing_utils.common_md_utils import update_element_dictionary, set_element_prop_body, \
16
+ set_update_body, set_create_body
16
17
  from md_processing.md_processing_utils.extraction_utils import (extract_command_plus, update_a_command)
17
18
  from md_processing.md_processing_utils.md_processing_constants import (load_commands)
18
- from pyegeria import body_slimmer, EgeriaTech
19
+ from pyegeria import body_slimmer, EgeriaTech, PyegeriaException, print_basic_exception
19
20
 
20
21
  load_commands('commands.json')
21
22
 
@@ -275,30 +276,15 @@ def process_blueprint_upsert_command(egeria_client: EgeriaTech, txt: str, direct
275
276
  attributes = parsed_output['attributes']
276
277
  description = attributes.get('Description', {}).get('value', None)
277
278
  display_name = attributes['Display Name'].get('value', None)
278
- version_identifier = attributes.get('Version Identifier', {}).get('value', None)
279
- effective_time = attributes.get('Effective Time', {}).get('value', None)
280
- effective_from = attributes.get('Effective From', {}).get('value', None)
281
- effective_to = attributes.get('Effective To', {}).get('value', None)
282
- external_source_guid = attributes.get('External Source GUID', {}).get('value', None)
283
- external_source_name = attributes.get('External Source Name', {}).get('value', None)
284
279
 
285
- anchor_guid = attributes.get('Anchor ID', {}).get('guid', None)
286
- parent_guid = attributes.get('Parent ID', {}).get('guid', None)
287
- parent_relationship_type_name = attributes.get('Parent Relationship Type Name', {}).get('value', None)
288
- parent_at_end1 = attributes.get('Parent at End1', {}).get('value', True)
289
280
 
290
- anchor_scope_guid = attributes.get('Anchor Scope GUID', {}).get('value', None)
291
- is_own_anchor = attributes.get('Is Own Anchor', {}).get('value', True)
292
- if parent_guid is None:
293
- is_own_anchor = True
294
281
 
295
- additional_prop = attributes.get('Additional Properties', {}).get('value', None)
296
- additional_properties = json.loads(additional_prop) if additional_prop is not None else None
297
- extended_prop = attributes.get('Extended Properties', {}).get('value', None)
298
- extended_properties = json.loads(extended_prop) if extended_prop is not None else None
282
+
299
283
  component_guids = attributes.get('Solution Components', {}).get('guid_list', None)
300
284
 
301
- initial_status = "ACTIVE"
285
+ status = attributes.get('Status', {}).get('value', None)
286
+ if status is None:
287
+ status = "ACTIVE"
302
288
 
303
289
  replace_all_props = not attributes.get('Merge Update', {}).get('value', True)
304
290
 
@@ -313,6 +299,8 @@ def process_blueprint_upsert_command(egeria_client: EgeriaTech, txt: str, direct
313
299
  return valid
314
300
 
315
301
  elif directive == "process":
302
+ prop_body = set_element_prop_body(object_type, qualified_name, attributes)
303
+
316
304
  try:
317
305
  if object_action == "Update":
318
306
  if not exists:
@@ -326,16 +314,19 @@ def process_blueprint_upsert_command(egeria_client: EgeriaTech, txt: str, direct
326
314
  print(Markdown(
327
315
  f"==> Validation of {command} completed successfully! Proceeding to apply the changes.\n"))
328
316
 
329
- body = body_slimmer({
330
- "class": "UpdateSolutionBlueprintRequestBody", "externalSourceGUID": external_source_guid,
331
- "externalSourceName": external_source_name, "effectiveTime": effective_time,
332
- "forLineage": False, "forDuplicateProcessing": False, "properties": {
333
- "class": "SolutionBlueprintProperties", "qualifiedName": qualified_name,
334
- "displayName": display_name, "description": description, "version": version_identifier,
335
- "additionalProperties": additional_properties, "extendedProperties": extended_properties,
336
- "effectiveFrom": effective_from, "effectiveTo": effective_to
337
- }
338
- })
317
+ body = set_update_body(object_type, attributes)
318
+ body['properties'] = prop_body
319
+ egeria_client.update_solution_blueprint(guid, body)
320
+ if status:
321
+ egeria_client.update_solution_element_status(guid, status)
322
+
323
+ msg = f"Updated {object_type} `{display_name}` with GUID {guid}\n\n___"
324
+ update_element_dictionary(qualified_name, {
325
+ 'guid': guid, 'display_name': display_name
326
+ })
327
+ logger.info(msg)
328
+ logger.success(msg)
329
+ return egeria_client.find_solution_blueprints(qualified_name, output_format='MD')
339
330
 
340
331
  egeria_client.update_solution_blueprint(guid, body, replace_all_props)
341
332
  logger.success(f"==> Updated {object_type} `{display_name}` with GUID {guid}\n\n")
@@ -363,32 +354,8 @@ def process_blueprint_upsert_command(egeria_client: EgeriaTech, txt: str, direct
363
354
  return
364
355
 
365
356
  else:
366
- body = {
367
- "class": "NewSolutionBlueprintRequestBody",
368
- "externalSourceGUID": external_source_guid,
369
- "externalSourceName": external_source_name,
370
- "forLineage": False,
371
- "forDuplicateProcessing": False,
372
- "effectiveTime": effective_time,
373
- "anchorGUID": anchor_guid,
374
- "isOwnAnchor": is_own_anchor,
375
- "anchorScopeGUID": anchor_scope_guid,
376
- "parentGUID": parent_guid,
377
- "parentRelationshipTypeName": parent_relationship_type_name,
378
- "parentAtEnd1": parent_at_end1,
379
- "properties": {
380
- "class": "SolutionBlueprintProperties",
381
- "effectiveFrom": effective_from,
382
- "effectiveTo": effective_to, # "typeName": type_name,
383
- "extendedProperties": extended_properties,
384
- "qualifiedName": qualified_name,
385
- "additionalProperties": additional_properties,
386
- "displayName": display_name,
387
- "description": description,
388
- "versionIdentifier": version_identifier
389
- },
390
- "initialStatus": initial_status,
391
- }
357
+ body = set_create_body(object_type,attributes)
358
+ body['properties'] = prop_body
392
359
  guid = egeria_client.create_solution_blueprint(body)
393
360
  except Exception as e:
394
361
  print(f"Unexpected error: {e}, {type(valid)}, {valid}")
@@ -406,8 +373,8 @@ def process_blueprint_upsert_command(egeria_client: EgeriaTech, txt: str, direct
406
373
  logger.error(msg)
407
374
  return None
408
375
 
409
- except Exception as e:
410
- print("why did I get here")
376
+ except PyegeriaException as e:
377
+ print_basic_exception(e)
411
378
  logger.error(f"Error performing {command}: {e}")
412
379
  return None
413
380
  else:
@@ -1,3 +1 @@
1
- D 2025-08-27T07:09:25.357601-0500 | INFO | create_help_terms | 162 | Help documentation saved to ././dr-egeria-help-2025-08-27T07:09:25.md | {}
2
- D 2025-08-27T10:11:41.452446-0500 | INFO | create_help_terms | 184 | Help documentation saved to ././dr-egeria-help-2025-08-27T10:11:41.md | {}
3
- D 2025-08-27T10:33:31.756212-0500 | INFO | create_help_terms | 184 | Help documentation saved to ././dr-egeria-help-2025-08-27T10:33:31.md | {}
1
+ D 2025-09-09T11:10:03.787382-0500 | INFO | create_help_terms | 184 | Help documentation saved to ././dr-egeria-help-2025-09-09T11:10:03.md | {}