def categorize_data(md): """ Categorize medical data (MD) based on sensitivity level (SL). Args: md (dict): Medical data to be categorized. Returns: dict: Categorized data with sensitivity level. """ # Stage I: Determining Sensitivity Level sensitivity_criteria = { "public": 1, "widespread": 2, "restricted": 3, "limited": 4, "highly_restricted": 5 } # Example criteria based on predefined logic if 'type' in md: if md['type'] == "public_info": sl = sensitivity_criteria["public"] elif md['type'] == "research_data": sl = sensitivity_criteria["widespread"] elif md['type'] == "internal_project": sl = sensitivity_criteria["restricted"] elif md['type'] == "consultation": sl = sensitivity_criteria["limited"] elif md['type'] == "sensitive_health_data": sl = sensitivity_criteria["highly_restricted"] else: raise ValueError("Unknown medical data type!") else: raise KeyError("Medical data type is missing!") # Stage II: Categorizing data categorized_data = { 'data': md, 'sensitivity': sl } # Stage III: Returning categorized data return categorized_data