pyegeria 5.4.0.dev5__tar.gz → 5.4.0.dev6__tar.gz

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 (161) hide show
  1. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/PKG-INFO +1 -1
  2. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_data_designer.py +1 -1
  3. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/data_designer_omvs.py +17 -17
  4. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/glossary_browser_omvs.py +5 -6
  5. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/output_formatter.py +4 -4
  6. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/solution_architect_omvs.py +4 -4
  7. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyproject.toml +1 -1
  8. pyegeria-5.4.0.dev5/commands/cat/debug_log +0 -227
  9. pyegeria-5.4.0.dev5/md_processing/dr_egeria_outbox/processed-2025-06-22 21:06-dr_egeria_data_designer_1.md +0 -134
  10. pyegeria-5.4.0.dev5/md_processing/dr_egeria_outbox/processed-2025-06-22 21:13-dr_egeria_data_designer_1.md +0 -133
  11. pyegeria-5.4.0.dev5/md_processing/dr_egeria_outbox/processed-2025-06-22 21:19-dr_egeria_data_designer_1.md +0 -141
  12. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/LICENSE +0 -0
  13. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/README.md +0 -0
  14. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/Dr-Egeria_md-orig.py +0 -0
  15. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/README.md +0 -0
  16. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/__init__.py +0 -0
  17. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/dr_egeria_jupyter.py +0 -0
  18. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/dr_egeria_md.py +0 -0
  19. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/exp_list_glossaries.py +0 -0
  20. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/get_asset_graph.py +0 -0
  21. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/get_collection.py +0 -0
  22. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/get_project_dependencies.py +0 -0
  23. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/get_project_structure.py +0 -0
  24. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/get_tech_type_elements.py +0 -0
  25. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/glossary_actions.py +0 -0
  26. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_assets.py +0 -0
  27. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_categories.py +0 -0
  28. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_cert_types.py +0 -0
  29. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_collections.py +0 -0
  30. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_data_structures_full.py +0 -0
  31. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_deployed_catalogs.py +0 -0
  32. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_deployed_database_schemas.py +0 -0
  33. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_deployed_databases.py +0 -0
  34. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_deployed_servers.py +0 -0
  35. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_glossaries.py +0 -0
  36. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_projects.py +0 -0
  37. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_tech_type_elements.py +0 -0
  38. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_tech_types.py +0 -0
  39. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_terms.py +0 -0
  40. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_todos.py +0 -0
  41. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cat/list_user_ids.py +0 -0
  42. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cli/__init__.py +0 -0
  43. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cli/egeria.py +0 -0
  44. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cli/egeria_cat.py +0 -0
  45. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cli/egeria_login_tui.py +0 -0
  46. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cli/egeria_my.py +0 -0
  47. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cli/egeria_ops.py +0 -0
  48. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cli/egeria_tech.py +0 -0
  49. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cli/ops_config.py +0 -0
  50. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/cli/txt_custom_v2.tcss +0 -0
  51. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/my/README.md +0 -0
  52. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/my/__init__.py +0 -0
  53. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/my/list_my_profile.py +0 -0
  54. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/my/list_my_roles.py +0 -0
  55. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/my/monitor_my_todos.py +0 -0
  56. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/my/monitor_open_todos.py +0 -0
  57. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/my/todo_actions.py +0 -0
  58. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/README.md +0 -0
  59. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/__init__.py +0 -0
  60. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/gov_server_actions.py +0 -0
  61. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/list_archives.py +0 -0
  62. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/list_catalog_targets.py +0 -0
  63. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/load_archive.py +0 -0
  64. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/monitor_asset_events.py +0 -0
  65. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/monitor_engine_activity.py +0 -0
  66. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/monitor_engine_activity_c.py +0 -0
  67. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/monitor_gov_eng_status.py +0 -0
  68. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/monitor_integ_daemon_status.py +0 -0
  69. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/monitor_platform_status.py +0 -0
  70. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/monitor_server_startup.py +0 -0
  71. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/monitor_server_status.py +0 -0
  72. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/orig_monitor_server_list.py +0 -0
  73. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/orig_monitor_server_status.py +0 -0
  74. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/refresh_integration_daemon.py +0 -0
  75. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/restart_integration_daemon.py +0 -0
  76. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/table_integ_daemon_status.py +0 -0
  77. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/ops/x_engine_actions.py +0 -0
  78. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/README.md +0 -0
  79. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/__init__.py +0 -0
  80. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/generic_actions.py +0 -0
  81. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/get_element_info.py +0 -0
  82. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/get_guid_info.py +0 -0
  83. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/get_tech_details.py +0 -0
  84. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/get_tech_type_template.py +0 -0
  85. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_all_om_type_elements.py +0 -0
  86. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_all_om_type_elements_x.py +0 -0
  87. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_all_related_elements.py +0 -0
  88. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_anchored_elements.py +0 -0
  89. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_asset_types.py +0 -0
  90. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_elements_by_classification_by_property_value.py +0 -0
  91. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_elements_by_property_value.py +0 -0
  92. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_elements_by_property_value_x.py +0 -0
  93. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_elements_for_classification.py +0 -0
  94. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_gov_action_processes.py +0 -0
  95. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_information_supply_chains.py +0 -0
  96. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_registered_services.py +0 -0
  97. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_related_elements_with_prop_value.py +0 -0
  98. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_related_specification.py +0 -0
  99. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_relationship_types.py +0 -0
  100. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_relationships.py +0 -0
  101. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_solution_blueprints.py +0 -0
  102. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_solution_components.py +0 -0
  103. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_solution_roles.py +0 -0
  104. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_tech_templates.py +0 -0
  105. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/list_valid_metadata_values.py +0 -0
  106. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/table_tech_templates.py +0 -0
  107. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/commands/tech/x_list_related_elements.py +0 -0
  108. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_Processing/data/commands.json +0 -0
  109. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/__init__.py +0 -0
  110. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/data/commands.json +0 -0
  111. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/dr_egeria_inbox/glossary_creation_experiment.ipynb +0 -0
  112. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/md_commands/__init__.py +0 -0
  113. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/md_commands/data_designer_commands.py +0 -0
  114. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/md_commands/glossary_commands.py +0 -0
  115. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/md_commands/project_commands.py +0 -0
  116. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/md_commands/solution_architect_commands.py +0 -0
  117. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/md_processing_utils/__init__.py +0 -0
  118. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/md_processing_utils/common_md_proc_utils.py +0 -0
  119. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/md_processing_utils/common_md_utils.py +0 -0
  120. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/md_processing_utils/extraction_utils.py +0 -0
  121. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/md_processing_utils/md_processing_constants.py +0 -0
  122. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/md_processing/md_processing_utils/message_constants.py +0 -0
  123. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/README.md +0 -0
  124. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/__init__.py +0 -0
  125. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/_client.py +0 -0
  126. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/_deprecated_gov_engine.py +0 -0
  127. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/_exceptions.py +0 -0
  128. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/_globals.py +0 -0
  129. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/_validators.py +0 -0
  130. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/asset_catalog_omvs.py +0 -0
  131. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/automated_curation_omvs.py +0 -0
  132. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/classification_manager_omvs.py +0 -0
  133. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/collection_manager_omvs.py +0 -0
  134. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/core_omag_server_config.py +0 -0
  135. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/create_tech_guid_lists.py +0 -0
  136. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/dr.egeria spec.md +0 -0
  137. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/egeria_cat_client.py +0 -0
  138. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/egeria_client.py +0 -0
  139. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/egeria_config_client.py +0 -0
  140. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/egeria_my_client.py +0 -0
  141. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/egeria_tech_client.py +0 -0
  142. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/feedback_manager_omvs.py +0 -0
  143. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/full_omag_server_config.py +0 -0
  144. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/glossary_manager_omvs.py +0 -0
  145. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/governance_officer_omvs.py +0 -0
  146. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/m_test.py +0 -0
  147. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/md_processing_helpers.py +0 -0
  148. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/md_processing_utils.py +0 -0
  149. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/md_processing_utils_orig.py +0 -0
  150. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/mermaid_utilities.py +0 -0
  151. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/metadata_explorer_omvs.py +0 -0
  152. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/my_profile_omvs.py +0 -0
  153. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/platform_services.py +0 -0
  154. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/project_manager_omvs.py +0 -0
  155. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/registered_info.py +0 -0
  156. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/runtime_manager_omvs.py +0 -0
  157. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/server_operations.py +0 -0
  158. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/template_manager_omvs.py +0 -0
  159. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/utils.py +0 -0
  160. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/valid_metadata_omvs.py +0 -0
  161. {pyegeria-5.4.0.dev5 → pyegeria-5.4.0.dev6}/pyegeria/x_action_author_omvs.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pyegeria
3
- Version: 5.4.0.dev5
3
+ Version: 5.4.0.dev6
4
4
  Summary: A python client for Egeria
5
5
  License: Apache 2.0
6
6
  Keywords: egeria,metadata,governance
@@ -167,7 +167,7 @@ def main(object_type: str="Data Fields"):
167
167
 
168
168
  try:
169
169
  search_string = Prompt.ask(
170
- "Enter the category you are searching for or '*' for all:", default="*"
170
+ "Enter the element you are searching for or '*' for all:", default="*"
171
171
  )
172
172
  output_format = Prompt.ask("What output format do you want?", choices=["TABLE", "FORM", "REPORT"],
173
173
  default="TABLE")
@@ -678,23 +678,23 @@ r replace_all_properties: bool, default = False
678
678
 
679
679
 
680
680
  # extract existing related data structure and data field elements
681
- other_related_elements = el_struct["otherRelatedElements"]
682
-
683
- for rel in other_related_elements:
684
- related_element = rel["relatedElement"]
685
- type = related_element["elementHeader"]["type"]["typeName"]
686
- guid = related_element["elementHeader"]["guid"]
687
- qualified_name = related_element["properties"].get("qualifiedName","") or ""
688
- display_name = related_element["properties"].get("displayName","") or ""
689
- if type == "DataStructure":
690
- data_structure_guids.append(guid)
691
- data_structure_names.append(display_name)
692
- data_structure_qnames.append(qualified_name)
693
-
694
- elif type == "DataField":
695
- parent_guids.append(guid)
696
- parent_names.append(display_name)
697
- parent_qnames.append(qualified_name)
681
+ other_related_elements = el_struct.get("otherRelatedElements",None)
682
+ if other_related_elements:
683
+ for rel in other_related_elements:
684
+ related_element = rel["relatedElement"]
685
+ type = related_element["elementHeader"]["type"]["typeName"]
686
+ guid = related_element["elementHeader"]["guid"]
687
+ qualified_name = related_element["properties"].get("qualifiedName","") or ""
688
+ display_name = related_element["properties"].get("displayName","") or ""
689
+ if type == "DataStructure":
690
+ data_structure_guids.append(guid)
691
+ data_structure_names.append(display_name)
692
+ data_structure_qnames.append(qualified_name)
693
+
694
+ elif type == "DataField":
695
+ parent_guids.append(guid)
696
+ parent_names.append(display_name)
697
+ parent_qnames.append(qualified_name)
698
698
 
699
699
 
700
700
  member_of_collections = el_struct.get("memberOfCollections",{})
@@ -90,7 +90,7 @@ class GlossaryBrowser(Client):
90
90
  category_qualified_names = cat_md_qn.rstrip(',')
91
91
 
92
92
  result = {
93
- 'guid': guid, 'properties': properties, 'display_name': display_name, 'description': description,
93
+ 'GUID': guid, 'properties': properties, 'display_name': display_name, 'description': description,
94
94
  'language': language, 'usage': usage, 'qualified_name': qualified_name
95
95
  }
96
96
 
@@ -312,7 +312,7 @@ class GlossaryBrowser(Client):
312
312
  aliases = ", ".join(properties.get("aliases", "")) or ""
313
313
 
314
314
  return {
315
- 'guid': guid, 'properties': properties, 'display_name': display_name, 'aliases': aliases,
315
+ 'GUID': guid, 'properties': properties, 'display_name': display_name, 'aliases': aliases,
316
316
  'summary': summary, 'description': description, 'examples': examples, 'usage': usage,
317
317
  'version identifier': pub_version, 'qualified_name': qualified_name, 'status': status
318
318
  }
@@ -626,7 +626,7 @@ class GlossaryBrowser(Client):
626
626
  qualified_name = properties.get("qualifiedName", "") or ""
627
627
 
628
628
  return {
629
- 'guid': guid, 'properties': properties, 'display_name': display_name, 'description': description,
629
+ 'GUID': guid, 'properties': properties, 'display_name': display_name, 'description': description,
630
630
  'qualified_name': qualified_name
631
631
  }
632
632
 
@@ -1051,7 +1051,6 @@ class GlossaryBrowser(Client):
1051
1051
  "class": "SearchStringRequestBody", "searchString": search_string, "effectiveTime": effective_time,
1052
1052
  "typeName": type_name,
1053
1053
  }
1054
- body = body_slimmer(body)
1055
1054
 
1056
1055
  url = (f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/glossary-browser/glossaries/"
1057
1056
  f"by-search-string?startFrom={start_from}&pageSize={page_size}&startsWith={starts_with_s}&"
@@ -2176,11 +2175,11 @@ class GlossaryBrowser(Client):
2176
2175
  parent_guid = parent['elementHeader']['guid']
2177
2176
  parent_name = parent['glossaryCategoryProperties'].get('displayName', '---')
2178
2177
  parent_info = {
2179
- 'guid': parent_guid, 'name': parent_name
2178
+ 'GUID': parent_guid, 'name': parent_name
2180
2179
  }
2181
2180
 
2182
2181
  return {
2183
- 'guid': category_guid, 'name': display_name, 'qualifiedName': qualified_name,
2182
+ 'GUID': category_guid, 'name': display_name, 'qualifiedName': qualified_name,
2184
2183
  'description': description, 'parent': parent_info, 'children': children
2185
2184
  }
2186
2185
 
@@ -128,7 +128,7 @@ def generate_entity_md(elements: List[Dict],
128
128
  # Get additional properties if function is provided
129
129
  additional_props = {}
130
130
  if get_additional_props_func:
131
- additional_props = get_additional_props_func(element, props['guid'], output_format)
131
+ additional_props = get_additional_props_func(element,props['GUID'], output_format)
132
132
 
133
133
 
134
134
  # Format header based on output format
@@ -150,7 +150,7 @@ def generate_entity_md(elements: List[Dict],
150
150
  elements_md += make_md_attribute(key.replace('_', ' '), value, output_format)
151
151
 
152
152
  # # Add GUID
153
- # elements_md += make_md_attribute("GUID", props['guid'], output_format)
153
+ # elements_md += make_md_attribute("GUID",props['GUID'], output_format)
154
154
 
155
155
  # Add separator if not the last element
156
156
  if element != elements[-1]:
@@ -203,7 +203,7 @@ def generate_entity_md_table(elements: List[Dict],
203
203
  # Get additional properties if function is provided
204
204
  additional_props = {}
205
205
  if get_additional_props_func:
206
- additional_props = get_additional_props_func(element, props['guid'], output_format)
206
+ additional_props = get_additional_props_func(element,props['GUID'], output_format)
207
207
 
208
208
  # Build row
209
209
  row = "| "
@@ -257,7 +257,7 @@ def generate_entity_dict(elements: List[Dict],
257
257
  # Get additional properties if function is provided
258
258
  additional_props = {}
259
259
  if get_additional_props_func:
260
- additional_props = get_additional_props_func(element, props['guid'], output_format)
260
+ additional_props = get_additional_props_func(element,props['GUID'], output_format)
261
261
 
262
262
  # Create entity dictionary
263
263
  entity_dict = {}
@@ -153,7 +153,7 @@ class SolutionArchitect(Client):
153
153
  segments_list.append(segment_dict)
154
154
 
155
155
  return {
156
- 'guid': guid,
156
+ 'GUID': guid,
157
157
  'qualified_name': qualified_name,
158
158
  'display_name': display_name,
159
159
  'description': description,
@@ -193,7 +193,7 @@ class SolutionArchitect(Client):
193
193
  mer = f"```mermaid\n\n{element.get('mermaidGraph', None)}\n\n```"
194
194
 
195
195
  return {
196
- 'guid': guid,
196
+ 'GUID': guid,
197
197
  'qualified_name': qualified_name,
198
198
  'display_name': display_name,
199
199
  'description': description,
@@ -232,7 +232,7 @@ class SolutionArchitect(Client):
232
232
  solution_components_md += "{" + f" {sol_comp_name}:\t {sol_comp_desc}" + " },\n"
233
233
 
234
234
  return {
235
- 'guid': guid,
235
+ 'GUID': guid,
236
236
  'qualified_name': qualified_name,
237
237
  'display_name': display_name,
238
238
  'description': description,
@@ -334,7 +334,7 @@ class SolutionArchitect(Client):
334
334
  comp_graph = element.get('mermaidGraph', None)
335
335
 
336
336
  return {
337
- 'guid': guid,
337
+ 'GUID': guid,
338
338
  'qualified_name': qualified_name,
339
339
  'display_name': display_name,
340
340
  'description': description,
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "pyegeria"
3
- version = "5.4.0-dev5"
3
+ version = "5.4.0-dev6"
4
4
 
5
5
  license = 'Apache 2.0'
6
6
  authors = ["Dan Wolfson <dan.wolfson@pdr-associates.com>"]
@@ -1,227 +0,0 @@
1
- D 2025-06-22T21:05:54.627190-0500 | INFO | process_markdown_file | 79 |
2
-
3
- ====================================================
4
-
5
- | {}
6
- D 2025-06-22T21:05:54.627425-0500 | INFO | process_markdown_file | 80 | Processing Markdown File: ../../md_processing/dr_egeria_inbox/dr_egeria_data_designer_1.md | {}
7
- D 2025-06-22T21:06:29.028631-0500 | INFO | process_markdown_file | 79 |
8
-
9
- ====================================================
10
-
11
- | {}
12
- D 2025-06-22T21:06:29.028835-0500 | INFO | process_markdown_file | 80 | Processing Markdown File: ../../md_processing/dr_egeria_inbox/dr_egeria_data_designer_1.md | {}
13
- D 2025-06-22T21:06:29.029057-0500 | INFO | parse_upsert_command | 78 | Processing Update on a Data Structure
14
- | {}
15
- D 2025-06-22T21:06:29.029304-0500 | INFO | print_msg | 94 | INFO-Optional attribute with labels `{'Version Identifier', 'Version', 'Published Version'}` missing | {}
16
- D 2025-06-22T21:06:29.029338-0500 | TRACE | parse_upsert_command | 92 | ___
17
- Processing `Display Name` in `Update` on a `Data Structure`
18
- with usage level: `Basic` and attribute level `Basic` and for_update `True`
19
- | {}
20
- D 2025-06-22T21:06:29.081500-0500 | INFO | print_msg | 94 | DEBUG-INFO->Found Data Structure `TBDF-Incoming Weekly Measurement Data` with qualified name `DataStruct::TBDF-Incoming Weekly Measurement Data` | {}
21
- D 2025-06-22T21:06:29.081589-0500 | INFO | proc_el_id | 640 | Element TBDF-Incoming Weekly Measurement Data exists | {}
22
- D 2025-06-22T21:06:29.081624-0500 | TRACE | parse_upsert_command | 92 | ___
23
- Processing `Description` in `Update` on a `Data Structure`
24
- with usage level: `Basic` and attribute level `Basic` and for_update `True`
25
- | {}
26
- D 2025-06-22T21:06:29.081747-0500 | TRACE | parse_upsert_command | 92 | ___
27
- Processing `In Data Specification` in `Update` on a `Data Structure`
28
- with usage level: `Basic` and attribute level `Basic` and for_update `True`
29
- | {}
30
- D 2025-06-22T21:06:29.081892-0500 | DEBUG | proc_name_list | 801 | Attribute with labels `{element_type}` missing | {}
31
- D 2025-06-22T21:06:29.081922-0500 | TRACE | parse_upsert_command | 92 | ___
32
- Processing `Glossary Term` in `Update` on a `Data Structure`
33
- with usage level: `Basic` and attribute level `Advanced` and for_update `True`
34
- | {}
35
- D 2025-06-22T21:06:29.081943-0500 | TRACE | parse_upsert_command | 97 | Attribute `Glossary Term` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
36
- D 2025-06-22T21:06:29.081964-0500 | TRACE | parse_upsert_command | 92 | ___
37
- Processing `Qualified Name` in `Update` on a `Data Structure`
38
- with usage level: `Basic` and attribute level `Basic` and for_update `True`
39
- | {}
40
- D 2025-06-22T21:06:29.081989-0500 | INFO | proc_el_id | 615 | Optional attribute with label`Data Structure` missing | {}
41
- D 2025-06-22T21:06:29.082007-0500 | TRACE | parse_upsert_command | 92 | ___
42
- Processing `GUID` in `Update` on a `Data Structure`
43
- with usage level: `Basic` and attribute level `Basic` and for_update `True`
44
- | {}
45
- D 2025-06-22T21:06:29.082160-0500 | INFO | proc_simple_attribute | 445 | Optional attribute with labels: `{'Guid', 'GUID', 'guid'}` missing | {}
46
- D 2025-06-22T21:06:29.082183-0500 | TRACE | parse_upsert_command | 92 | ___
47
- Processing `Effective Time` in `Update` on a `Data Structure`
48
- with usage level: `Basic` and attribute level `Advanced` and for_update `True`
49
- | {}
50
- D 2025-06-22T21:06:29.082201-0500 | TRACE | parse_upsert_command | 97 | Attribute `Effective Time` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
51
- D 2025-06-22T21:06:29.082219-0500 | TRACE | parse_upsert_command | 92 | ___
52
- Processing `Effective From` in `Update` on a `Data Structure`
53
- with usage level: `Basic` and attribute level `Advanced` and for_update `True`
54
- | {}
55
- D 2025-06-22T21:06:29.082237-0500 | TRACE | parse_upsert_command | 97 | Attribute `Effective From` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
56
- D 2025-06-22T21:06:29.082255-0500 | TRACE | parse_upsert_command | 92 | ___
57
- Processing `Effective To` in `Update` on a `Data Structure`
58
- with usage level: `Basic` and attribute level `Advanced` and for_update `True`
59
- | {}
60
- D 2025-06-22T21:06:29.082283-0500 | TRACE | parse_upsert_command | 97 | Attribute `Effective To` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
61
- D 2025-06-22T21:06:29.082301-0500 | TRACE | parse_upsert_command | 92 | ___
62
- Processing `Merge Update` in `Update` on a `Data Structure`
63
- with usage level: `Basic` and attribute level `Advanced` and for_update `True`
64
- | {}
65
- D 2025-06-22T21:06:29.082320-0500 | TRACE | parse_upsert_command | 97 | Attribute `Merge Update` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
66
- D 2025-06-22T21:06:29.082338-0500 | TRACE | parse_upsert_command | 92 | ___
67
- Processing `Additional Properties` in `Update` on a `Data Structure`
68
- with usage level: `Basic` and attribute level `Invisible` and for_update `True`
69
- | {}
70
- D 2025-06-22T21:06:29.082353-0500 | TRACE | parse_upsert_command | 97 | Attribute `Additional Properties` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
71
- D 2025-06-22T21:06:29.082368-0500 | TRACE | parse_upsert_command | 92 | ___
72
- Processing `Extended Properties` in `Update` on a `Data Structure`
73
- with usage level: `Basic` and attribute level `Invisible` and for_update `True`
74
- | {}
75
- D 2025-06-22T21:06:29.082382-0500 | TRACE | parse_upsert_command | 97 | Attribute `Extended Properties` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
76
- D 2025-06-22T21:06:29.082395-0500 | TRACE | parse_upsert_command | 92 | ___
77
- Processing `Journal Entry` in `Update` on a `Data Structure`
78
- with usage level: `Basic` and attribute level `Invisible` and for_update `True`
79
- | {}
80
- D 2025-06-22T21:06:29.082409-0500 | TRACE | parse_upsert_command | 97 | Attribute `Journal Entry` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
81
- D 2025-06-22T21:06:29.084882-0500 | DEBUG | process_data_structure_upsert_command | 706 | {
82
- "valid": true,
83
- "exists": true,
84
- "display": "\n\t* Display Name: `TBDF-Incoming Weekly Measurement Data`\n\t\n\t* Description: `This describes the weekly measurement data for each patient for the Teddy Bear drop foot clinical trial.`\n\t\n\t* Qualified Name: `DataStruct::TBDF-Incoming Weekly Measurement Data`\n\t\n\t* GUID: `fd9380f4-1067-4f7b-bf3f-cb2f3a0e8341`\n\t",
85
- "display_name": "Data Structure",
86
- "qn_prefix": "DataStruct",
87
- "is_own_anchor": true,
88
- "reason": "",
89
- "version": null,
90
- "guid": "fd9380f4-1067-4f7b-bf3f-cb2f3a0e8341",
91
- "qualified_name": "DataStruct::TBDF-Incoming Weekly Measurement Data",
92
- "attributes": {
93
- "Display Name": {
94
- "status": "INFO",
95
- "reason": "Element TBDF-Incoming Weekly Measurement Data exists",
96
- "value": "TBDF-Incoming Weekly Measurement Data",
97
- "valid": true,
98
- "exists": true,
99
- "qualified_name": "DataStruct::TBDF-Incoming Weekly Measurement Data",
100
- "guid": "fd9380f4-1067-4f7b-bf3f-cb2f3a0e8341"
101
- },
102
- "Description": {
103
- "status": "INFO",
104
- "OK": null,
105
- "value": "This describes the weekly measurement data for each patient for the Teddy Bear drop foot clinical trial.",
106
- "valid": true,
107
- "exists": true
108
- },
109
- "In Data Specification": {
110
- "status": "INFO",
111
- "reason": "Attribute with labels `{element_type}` missing",
112
- "value": null,
113
- "valid": false,
114
- "exists": false
115
- },
116
- "Qualified Name": {
117
- "status": "INFO",
118
- "reason": "Optional attribute with label`Data Structure` missing",
119
- "value": null,
120
- "valid": false,
121
- "exists": false
122
- },
123
- "GUID": {
124
- "status": "INFO",
125
- "reason": "Optional attribute with labels: `{'Guid', 'GUID', 'guid'}` missing",
126
- "value": null,
127
- "valid": true,
128
- "exists": false
129
- }
130
- }
131
- } | {}
132
- D 2025-06-22T21:06:29.120455-0500 | INFO | process_data_structure_upsert_command | 796 | Updated element `TBDF-Incoming Weekly Measurement Data` with GUID fd9380f4-1067-4f7b-bf3f-cb2f3a0e8341 | {}
133
- D 2025-06-22T21:06:29.218865-0500 | DEBUG | update_data_collection_memberships | 130 | as_is: set() | {}
134
- D 2025-06-22T21:06:29.218956-0500 | DEBUG | update_data_collection_memberships | 131 | to_be_set: set() | {}
135
- D 2025-06-22T21:06:29.218989-0500 | DEBUG | update_data_collection_memberships | 135 | to_remove: set() | {}
136
- D 2025-06-22T21:06:29.219017-0500 | DEBUG | update_data_collection_memberships | 141 | to_add: set() | {}
137
- D 2025-06-22T21:06:29.219049-0500 | SUCCESS | process_data_structure_upsert_command | 807 | Updated Data Structure `TBDF-Incoming Weekly Measurement Data` with GUID fd9380f4-1067-4f7b-bf3f-cb2f3a0e8341
138
-
139
- ___ | {}
140
- D 2025-06-22T21:07:01.300523-0500 | INFO | process_markdown_file | 79 |
141
-
142
- ====================================================
143
-
144
- | {}
145
- D 2025-06-22T21:07:01.300839-0500 | INFO | process_markdown_file | 80 | Processing Markdown File: ../../md_processing/dr_egeria_inbox/dr_egeria_data_designer_1.md | {}
146
- D 2025-06-22T21:13:00.847213-0500 | INFO | process_markdown_file | 79 |
147
-
148
- ====================================================
149
-
150
- | {}
151
- D 2025-06-22T21:13:00.847595-0500 | INFO | process_markdown_file | 80 | Processing Markdown File: ../../md_processing/dr_egeria_inbox/dr_egeria_data_designer_1.md | {}
152
- D 2025-06-22T21:13:00.847888-0500 | INFO | parse_view_command | 276 | Processing View on Data Structures
153
- | {}
154
- D 2025-06-22T21:13:00.847923-0500 | TRACE | parse_view_command | 287 | ___
155
- Processing `Search String` in `View` on a `Data Structures`
156
- with usage level: `Basic` | {}
157
- D 2025-06-22T21:13:00.848092-0500 | TRACE | parse_view_command | 287 | ___
158
- Processing `Output Format` in `View` on a `Data Structures`
159
- with usage level: `Basic` | {}
160
- D 2025-06-22T21:13:00.848184-0500 | WARNING | proc_valid_value | 513 | Invalid value for attribute `{'Output Format', 'Format'}` | {}
161
- D 2025-06-22T21:13:00.848209-0500 | TRACE | parse_view_command | 287 | ___
162
- Processing `Detailed` in `View` on a `Data Structures`
163
- with usage level: `Basic` | {}
164
- D 2025-06-22T21:13:00.848228-0500 | TRACE | parse_view_command | 290 | Attribute `Detailed` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
165
- D 2025-06-22T21:13:00.848246-0500 | TRACE | parse_view_command | 287 | ___
166
- Processing `Effective Time` in `View` on a `Data Structures`
167
- with usage level: `Basic` | {}
168
- D 2025-06-22T21:13:00.848261-0500 | TRACE | parse_view_command | 290 | Attribute `Effective Time` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
169
- D 2025-06-22T21:13:00.913154-0500 | INFO | process_data_structure_list_command | 1520 | Wrote `Data Structures` for search string: `*` | {}
170
- D 2025-06-22T21:13:00.913258-0500 | INFO | parse_view_command | 276 | Processing View on Data Fields
171
- | {}
172
- D 2025-06-22T21:13:00.913296-0500 | TRACE | parse_view_command | 287 | ___
173
- Processing `Search String` in `View` on a `Data Fields`
174
- with usage level: `Basic` | {}
175
- D 2025-06-22T21:13:00.913339-0500 | TRACE | parse_view_command | 287 | ___
176
- Processing `Output Format` in `View` on a `Data Fields`
177
- with usage level: `Basic` | {}
178
- D 2025-06-22T21:13:00.913388-0500 | TRACE | parse_view_command | 287 | ___
179
- Processing `Detailed` in `View` on a `Data Fields`
180
- with usage level: `Basic` | {}
181
- D 2025-06-22T21:13:00.913416-0500 | TRACE | parse_view_command | 290 | Attribute `Detailed` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
182
- D 2025-06-22T21:13:00.913444-0500 | TRACE | parse_view_command | 287 | ___
183
- Processing `Effective Time` in `View` on a `Data Fields`
184
- with usage level: `Basic` | {}
185
- D 2025-06-22T21:13:00.913469-0500 | TRACE | parse_view_command | 290 | Attribute `Effective Time` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
186
- D 2025-06-22T21:13:01.067183-0500 | INFO | process_data_field_list_command | 1580 | Wrote `Data Fields` for search string: `*` | {}
187
- D 2025-06-22T21:19:17.837646-0500 | INFO | process_markdown_file | 79 |
188
-
189
- ====================================================
190
-
191
- | {}
192
- D 2025-06-22T21:19:17.837857-0500 | INFO | process_markdown_file | 80 | Processing Markdown File: ../../md_processing/dr_egeria_inbox/dr_egeria_data_designer_1.md | {}
193
- D 2025-06-22T21:19:17.838093-0500 | INFO | parse_view_command | 276 | Processing View on Data Structures
194
- | {}
195
- D 2025-06-22T21:19:17.838130-0500 | TRACE | parse_view_command | 287 | ___
196
- Processing `Search String` in `View` on a `Data Structures`
197
- with usage level: `Basic` | {}
198
- D 2025-06-22T21:19:17.838317-0500 | TRACE | parse_view_command | 287 | ___
199
- Processing `Output Format` in `View` on a `Data Structures`
200
- with usage level: `Basic` | {}
201
- D 2025-06-22T21:19:17.838464-0500 | WARNING | proc_valid_value | 513 | Invalid value for attribute `{'Format', 'Output Format'}` | {}
202
- D 2025-06-22T21:19:17.838490-0500 | TRACE | parse_view_command | 287 | ___
203
- Processing `Detailed` in `View` on a `Data Structures`
204
- with usage level: `Basic` | {}
205
- D 2025-06-22T21:19:17.838509-0500 | TRACE | parse_view_command | 290 | Attribute `Detailed` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
206
- D 2025-06-22T21:19:17.838527-0500 | TRACE | parse_view_command | 287 | ___
207
- Processing `Effective Time` in `View` on a `Data Structures`
208
- with usage level: `Basic` | {}
209
- D 2025-06-22T21:19:17.838543-0500 | TRACE | parse_view_command | 290 | Attribute `Effective Time` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
210
- D 2025-06-22T21:19:17.907991-0500 | INFO | process_data_structure_list_command | 1520 | Wrote `Data Structures` for search string: `*` | {}
211
- D 2025-06-22T21:19:17.908180-0500 | INFO | parse_view_command | 276 | Processing View on Data Fields
212
- | {}
213
- D 2025-06-22T21:19:17.908234-0500 | TRACE | parse_view_command | 287 | ___
214
- Processing `Search String` in `View` on a `Data Fields`
215
- with usage level: `Basic` | {}
216
- D 2025-06-22T21:19:17.908310-0500 | TRACE | parse_view_command | 287 | ___
217
- Processing `Output Format` in `View` on a `Data Fields`
218
- with usage level: `Basic` | {}
219
- D 2025-06-22T21:19:17.908377-0500 | TRACE | parse_view_command | 287 | ___
220
- Processing `Detailed` in `View` on a `Data Fields`
221
- with usage level: `Basic` | {}
222
- D 2025-06-22T21:19:17.908414-0500 | TRACE | parse_view_command | 290 | Attribute `Detailed` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
223
- D 2025-06-22T21:19:17.908452-0500 | TRACE | parse_view_command | 287 | ___
224
- Processing `Effective Time` in `View` on a `Data Fields`
225
- with usage level: `Basic` | {}
226
- D 2025-06-22T21:19:17.908486-0500 | TRACE | parse_view_command | 290 | Attribute `Effective Time` is not supported for `Basic` usage level. Skipping. | {'highlight': True}
227
- D 2025-06-22T21:19:18.061319-0500 | INFO | process_data_field_list_command | 1580 | Wrote `Data Fields` for search string: `*` | {}
@@ -1,134 +0,0 @@
1
- # Dr.Egeria - designing data - part 1
2
- ## Introduction
3
-
4
- As data professionals, we often need to design data to be collected, processed, and shared with others.
5
- The Egeria Data Designer module has been designed to support this. Using the features of data designer we can
6
- define and refine:
7
-
8
- * Data Structures - a composition of data fields (and data structures) that we work with as a unit. For instance, in
9
- a clinical trial, each measurement record we receive will conform to a data structure.
10
- * Data Fields - the building blocks of data structures - for example, in a clinical trial data structure we might find data fields for health measurements, a time and date when the measurements were made and a patient identifier.
11
- * Data Classes - data classes contain a set of rules that describe the allowable values of a kind of data. For instance, when we we receive new data, perhaps we expect a clinical trial measurement record, then we will often want to validate that it conforms to our expectations; that the value of each field, conforms to the data class specification.
12
- Similarly, if we receive some data and aren't sure what it is, we can compare the values we have received with this same set of rules to propose what kind of data it might be.
13
-
14
- These are basic building blocks. The following diagram shows how these building blocks come together in a simple example. The ficticious Coco Pharmaceuticals company
15
- is running a drug trial to measure the effectiveness of their experimental treatment of Teddy Bear Drop Foot. Each hospital participating in the trial provides
16
- weekly clinical data records. The clinical trial has established the following data specification to exchange this weekly measurement data.
17
-
18
- * A data structure named `TBDF-Incoming Weekly Measurement Data` that is composed of:
19
- * Data Field: Date
20
- * Data Field: PatientId
21
- * Data Field: AngleLeft
22
- * Data Field: AngleRight
23
-
24
- * The data field `PatientId` is composed of two sub-fields
25
- * Data Field: HospitalId
26
- * Data Field: PatientNumber
27
-
28
- Dr.Egeria allows us to easily sketch this out, and then refine the definitions incrementally as we work through the design.
29
- So lets begin. First we will define the `TBDF-Incoming Weekly Measurement Data` data structure. We will then Don't Create the new data fields.
30
-
31
- ___
32
-
33
-
34
- # Update Data Structure
35
-
36
- ## Data Structure Name
37
-
38
- TBDF-Incoming Weekly Measurement Data
39
-
40
- ## GUID
41
- fd9380f4-1067-4f7b-bf3f-cb2f3a0e8341
42
-
43
- ## Qualified Name
44
- DataStruct::TBDF-Incoming Weekly Measurement Data
45
-
46
- ## Description
47
- This describes the weekly measurement data for each patient for the Teddy Bear drop foot clinical trial.
48
-
49
- ## Data Fields
50
-
51
-
52
- ## Data Specification
53
-
54
-
55
- ## Namespace
56
-
57
-
58
- ## Version Identifier
59
-
60
-
61
- ## Extended Properties
62
- {}
63
-
64
- ## Additional Properties
65
- {}
66
-
67
-
68
- ## In Data Dictionary
69
-
70
-
71
-
72
- ## In Data Specification
73
-
74
-
75
-
76
-
77
- > Note: While not required, it is good practice to end each Dr.Egeria command with a `___` so that a markdown
78
- > seperator is displayed between commands. It improves the readability.
79
-
80
- # Don't Create Data Field
81
- ## Data Field
82
- Date
83
- ## Description
84
- A date of the form YYYY-MM-DD
85
-
86
- ___
87
-
88
- # Don't Create Data Field
89
- ## Data Field Name
90
- PatientId
91
- ## Description
92
- Unique identifier of the patient
93
-
94
- ___
95
-
96
- # Don't Create Data Field
97
- ## Data Field Name
98
- AngleLeft
99
- ## Description
100
- Angle rotation of the left leg from vertical
101
-
102
- ___
103
-
104
- # Don't Create Data Field
105
- ## Data Field Name
106
- AngleRight
107
- ## Description
108
- Angle rotation of the left leg from vertical
109
-
110
- ___
111
-
112
- # Don't Create Data Field
113
- ## Data Field Name
114
-
115
- HospitalId
116
-
117
- ## Description
118
- Unique identifier for a hospital. Used in forming PatientId.
119
-
120
- ___
121
-
122
- # Don't Create Data Field
123
- ## Data Field Name
124
- PatientNumber
125
- ## Description
126
- Unique identifier of the patient within a hospital.
127
-
128
- ___
129
-
130
-
131
-
132
- # Provenance
133
-
134
- * Results from processing file dr_egeria_data_designer_1.md on 2025-06-22 21:06