turash/bugulma/frontend/docs/COMPREHENSIVE_ORGANIZATION_CATEGORIZATION_SYSTEM.md

16 KiB

Comprehensive Organization Categorization System

This document provides a complete analysis of the current categorization system in the database and proposes a comprehensive, well-thought-out replacement system based on actual data analysis.

Database Analysis Summary

Total Organizations: 1,280 Data Source: PostgreSQL database (turash) Primary Categorization: sector and subtype fields in organizations table


Current System Analysis

Sector Distribution (21 sectors)

Sector Count Description
retail 248 Retail stores and commercial establishments
healthcare 134 Medical facilities and healthcare providers
services 126 Professional and personal services
automotive 119 Automotive services and transportation
food_beverage 94 Restaurants, cafes, and food services
beauty_wellness 79 Beauty salons and wellness services
religious 86 Religious institutions and organizations
education 117 Educational institutions
energy 46 Energy production and utilities
construction 31 Construction and building services
entertainment 25 Entertainment and cultural venues
financial 43 Financial services and institutions
hospitality 24 Hotels and accommodation services
manufacturing 18 Manufacturing facilities
government 17 Government offices and agencies
furniture 32 Furniture and home goods
other 28 Miscellaneous categories
sports 2 Sports facilities
technology 2 Technology companies
agriculture 2 Agricultural businesses
(empty) 17 Organizations without sector classification

Subtype Distribution (19 subtypes)

Subtype Count Primary Usage
retail 202 Consumer retail establishments
healthcare 134 Medical and healthcare services
commercial 87 Commercial and business services
personal_services 79 Personal care and services
automotive 76 Automotive services
religious 65 Religious institutions
educational 104 Educational services
food_beverage 84 Food and beverage services
transportation 15 Transportation services
infrastructure 6 Infrastructure services
energy 41 Energy services
professional_services 19 Professional consulting
hospitality 16 Hospitality services
manufacturing 16 Manufacturing services
cultural 18 Cultural and entertainment
financial 41 Financial services
government 17 Government services
other 8 Other services
technology 2 Technology services

Critical Issues Identified

  1. Sector-Subtype Confusion: 699 organizations (54.6%) have identical sector and subtype values
  2. Inconsistent Classification: Some sectors have very few organizations (agriculture: 2, sports: 2, technology: 2)
  3. Limited Granularity: Only two levels of categorization
  4. User-Unfriendly: Categories are not aligned with how users search for services

Sector-Subtype Relationship Analysis

Most Problematic Combinations (where sector = subtype):

  • retail/retail: 202 organizations
  • healthcare/healthcare: 134 organizations
  • services/commercial: 87 organizations (different but related)
  • food_beverage/food_beverage: 84 organizations

Well-Differentiated Combinations:

  • beauty_wellness/personal_services: 79 organizations
  • education/educational: 104 organizations
  • automotive/transportation: 15 organizations
  • religious/cultural: 9 organizations

Additional Categorization Fields Found

Industrial Sector Codes (25 values)

Found in industrial_sector field (appears to be abbreviated codes):

Code Likely Meaning
arts_centr Arts Center
bus_statio Bus Station
cafe Cafe/Restaurant
car_wash Car Wash
cinema Cinema/Theater
clinic Medical Clinic
college College
community_ Community Center
fast_food Fast Food
fire_stati Fire Station
fuel Fuel Station
hospital Hospital
kindergart Kindergarten
mortuary Mortuary/Funeral Services
pharmacy Pharmacy
place_of_w Place of Worship
post_offic Post Office
restaurant Restaurant
school School
social_fac Social Facility
theatre Theatre
townhall Town Hall
training Training Center
university University

Product Categories (10 categories)

From products table:

Category Description
agricultural Agricultural products
chemicals Chemical products
construction Construction materials
equipment Equipment and machinery
food Food products
manufacturing Manufactured goods
materials Raw materials
oil_gas Oil and gas products
other Other products
services Service offerings

Site Types (4 types)

From sites table:

Site Type Description
commercial Commercial properties
cultural Cultural facilities
industrial Industrial facilities
infrastructure Infrastructure facilities

Site Ownership (2 types)

Ownership Description
private Privately owned
unknown Ownership unknown

Heritage Status (2 values)

Status Description
local_heritage_candidate Candidate for local heritage protection
regional_heritage_candidate Candidate for regional heritage protection

Proposed Comprehensive Categorization System

Three-Tier Hierarchical Structure

Tier 1: Primary Sectors (11 categories - Mutually Exclusive)

Sector Description Current Sectors Included Icon
CONSUMER_SERVICES Direct services to individual consumers beauty_wellness, retail, services (personal) Scissors
PROFESSIONAL_SERVICES Specialized expertise and consulting services (professional), financial, technology Briefcase
HEALTHCARE_WELLNESS Medical care and physical/mental wellness healthcare Heart
EDUCATION_TRAINING Learning and skill development education GraduationCap
FOOD_HOSPITALITY Food service and accommodation food_beverage, hospitality UtensilsCrossed
RETAIL_COMMERCE Consumer goods and retail retail, furniture ShoppingBag
MANUFACTURING_INDUSTRY Production and industrial activities manufacturing, construction, energy Factory
TRANSPORTATION_LOGISTICS Movement of people and goods automotive (transportation) Truck
GOVERNMENT_PUBLIC Public sector and government services government Building
COMMUNITY_RELIGIOUS Community and religious organizations religious, entertainment, sports Church
AGRICULTURE_RESOURCES Agricultural and natural resources agriculture Leaf

Tier 2: Business Types (Operational Classifications)

Business Type Description Examples
direct_service One-on-one personal services Salons, tutoring, personal training
professional_service Expert consulting and advisory Legal, accounting, consulting
retail_store Physical retail establishments Shops, boutiques, stores
food_establishment Restaurants, cafes, food service Restaurants, cafes, food trucks
healthcare_facility Medical and healthcare providers Clinics, hospitals, pharmacies
educational_institution Schools and learning centers Schools, universities, academies
manufacturing_facility Production and manufacturing Factories, workshops
hospitality_venue Accommodation and entertainment Hotels, theaters, event spaces
government_office Public administration Government offices, agencies
religious_institution Places of worship and religious orgs Churches, temples, mosques
transportation_service Transport and logistics Taxi, delivery, shipping
online_business Digital-first businesses E-commerce, online services
non_profit_organization Charitable and community orgs NGOs, charities, clubs
construction_contractor Building and construction Contractors, builders
agricultural_business Farming and agriculture Farms, agricultural suppliers

Tier 3: Service Categories (User-Need Based Filtering)

Service Category Description User Search Context
essential_services Critical daily needs Emergency, medical, utilities
daily_living Everyday necessities Groceries, banking, household
personal_care Beauty and personal grooming Salons, spas, fitness
health_medical Healthcare and wellness Doctors, hospitals, pharmacies
food_dining Food and beverage services Restaurants, cafes, delivery
education_learning Educational services Schools, tutors, training
professional_business Business and professional services Legal, accounting, consulting
shopping_retail Shopping and consumer goods Stores, markets, malls
entertainment_leisure Recreation and entertainment Theaters, sports, events
transportation Getting around Taxi, bus, delivery
community_religious Community and spiritual services Churches, community centers
home_services Home and property services Cleaning, repairs, maintenance
financial_services Banking and financial services Banks, ATMs, financial advice
government_services Public services and administration Government offices, licenses
specialized_services Niche or specialized offerings Unique or expert services

Migration Strategy

Phase 1: Data Analysis & Mapping

  1. Analyze current data distribution ✓ (Completed)
  2. Create sector-subtype mapping table
  3. Identify edge cases and special handling
  4. Validate mapping logic with sample data

Phase 2: System Implementation

  1. Add new categorization fields to database schema
  2. Create migration scripts for existing data
  3. Update application logic to use new system
  4. Implement backward compatibility during transition

Phase 3: UI/UX Updates

  1. Redesign filtering interfaces based on service categories
  2. Update search functionality for new hierarchy
  3. Create admin tools for new categorization
  4. User testing and feedback integration

Phase 4: Data Cleanup & Optimization

  1. Clean up legacy data after successful migration
  2. Optimize database indexes for new queries
  3. Update API endpoints and documentation
  4. Performance monitoring and optimization

Benefits of New System

For Users

  • Intuitive navigation: Find services based on actual needs
  • Better discovery: Multi-dimensional filtering reveals relevant options
  • Reduced cognitive load: Categories match mental models
  • Comprehensive results: No missed opportunities due to poor categorization

For Administrators

  • Data quality: Clear rules prevent inconsistent classification
  • Scalability: Easy to add new categories without breaking logic
  • Analytics-ready: Structured data enables better insights
  • Maintenance: Easier to manage and update categorization

For Developers

  • Clean architecture: Well-defined hierarchical relationships
  • Predictable queries: Consistent categorization patterns
  • Flexible filtering: Support for complex search combinations
  • Future-proof: Extensible design for new requirements

Implementation Details

Database Schema Changes

-- Add new categorization columns to organizations table
ALTER TABLE organizations ADD COLUMN primary_sector VARCHAR(50);
ALTER TABLE organizations ADD COLUMN business_types JSONB DEFAULT '[]'::jsonb;
ALTER TABLE organizations ADD COLUMN service_categories JSONB DEFAULT '[]'::jsonb;

-- Create indexes for new fields
CREATE INDEX idx_org_primary_sector ON organizations(primary_sector);
CREATE INDEX idx_org_business_types_gin ON organizations USING gin(business_types);
CREATE INDEX idx_org_service_categories_gin ON organizations USING gin(service_categories);

Mapping Logic Example

// Legacy to new system mapping
const sectorMapping: Record<string, string> = {
  'retail': 'RETAIL_COMMERCE',
  'healthcare': 'HEALTHCARE_WELLNESS',
  'services': 'PROFESSIONAL_SERVICES', // Will be refined by subtype
  'beauty_wellness': 'CONSUMER_SERVICES',
  'food_beverage': 'FOOD_HOSPITALITY',
  'education': 'EDUCATION_TRAINING',
  'automotive': 'TRANSPORTATION_LOGISTICS',
  'government': 'GOVERNMENT_PUBLIC',
  'religious': 'COMMUNITY_RELIGIOUS',
  'manufacturing': 'MANUFACTURING_INDUSTRY',
  'financial': 'PROFESSIONAL_SERVICES',
  'technology': 'PROFESSIONAL_SERVICES'
};

const subtypeToBusinessType: Record<string, string[]> = {
  'retail': ['retail_store'],
  'healthcare': ['healthcare_facility'],
  'personal_services': ['direct_service'],
  'professional_services': ['professional_service'],
  'food_beverage': ['food_establishment'],
  'educational': ['educational_institution'],
  'transportation': ['transportation_service'],
  'commercial': ['retail_store', 'professional_service'],
  'religious': ['religious_institution']
};

Icon Mapping Strategy

New Category Primary Icon Alternative Icons
CONSUMER_SERVICES Scissors Sparkles, User
PROFESSIONAL_SERVICES Briefcase Building2, Users
HEALTHCARE_WELLNESS Heart Stethoscope, Shield
EDUCATION_TRAINING GraduationCap BookOpen, School
FOOD_HOSPITALITY UtensilsCrossed Coffee, Hotel
RETAIL_COMMERCE ShoppingBag Store, Package
MANUFACTURING_INDUSTRY Factory Cog, Wrench
TRANSPORTATION_LOGISTICS Truck Car, Ship
GOVERNMENT_PUBLIC Building Landmark, Scale
COMMUNITY_RELIGIOUS Church Users, Heart
AGRICULTURE_RESOURCES Leaf Sprout, TreePine

Validation & Testing

Data Integrity Checks

  • All organizations have exactly one primary sector
  • Business types array is not empty for active organizations
  • Service categories align with primary sector
  • No conflicting categorizations

User Experience Testing

  • Filter combinations return relevant results
  • Search performance meets requirements
  • Icon display works across all categories
  • Mobile responsiveness maintained

Performance Benchmarks

  • Query performance for complex filters
  • Database index effectiveness
  • API response times
  • Memory usage for categorization logic

Future Extensions

Advanced Features

  • User personalization: Category preferences based on search history
  • Dynamic categorization: AI-assisted category suggestions
  • Multi-language support: Localized category names
  • Category relationships: "Related to" and "Often searched with"

Integration Points

  • External data sources: Import categorization from business directories
  • User feedback: Crowdsourced category improvements
  • Analytics integration: Track category usage and effectiveness
  • Machine learning: Automated categorization for new organizations

This comprehensive system addresses all identified issues while providing a scalable, user-centric foundation for organization categorization. The three-tier structure ensures clean separation, easy filtering, and maintainable code.