```plantuml @startuml left to right direction ' Actors actor "Store Owner" as StoreOwner actor "Consumer" as Consumer rectangle "Affordable & Healthy Eating Hub - Market Module" { ' Store & Inventory Management (Maintain Inventory) as MaintainInventory (Add Item to Inventory) as AddInventory (Remove Item from Inventory) as RemoveInventory (Create Store) as CreateStore (Manage Store) as ManageStore (Delete Store) as DeleteStore (Assign Items to Store) as AssignItems (Unassign Items from Store) as UnassignItems (Update Store Details) as UpdateStoreDetails (Update Store Contact Info) as UpdateContact (Update Store Description) as UpdateDesc ' Market Listing Management (Create Market Listing) as CreateListing (Update Listing Details) as UpdateListing (Update Listing Price) as UpdateListingPrice (Update Listing Stock) as UpdateListingStock (Update Listing Description) as UpdateListingDescription (Update Listing Image) as UpdateListingImage (Remove Listing) as RemoveListing ' Grocery Search & Filtering (Search Market Listings) as SearchListings (Filter Market Listings) as FilterListings (View All Listings) as ViewAllListings (Filter Listings by Price) as FilterPrice (Filter Listings by Nutrition Score) as FilterNutrition (Filter Listings by Store Rating) as FilterStoreRating (Filter Listings by Dietary Options) as FilterDietary (Filter Listings by Allergens) as FilterAllergens (Rate Item) as RateItem (Share Item) as ShareItem (View Item Details) as ViewItemDetails ' Shopping List Management (Manage Shopping List) as ManageShoppingList (Create Shopping List) as CreateShoppingList (Add Item to Shopping List) as AddToShoppingList (Remove Item from Shopping List) as RemoveFromShoppingList ' Relationships & Inclusions MaintainInventory <|-- AddInventory : <<generalization>> MaintainInventory <|-- RemoveInventory : <<generalization>> ManageStore <|-- AssignItems : <<generalization>> ManageStore <|-- UnassignItems : <<generalization>> ManageStore <|-- UpdateStoreDetails : <<generalization>> ManageStore <|-- DeleteStore : <<generalization>> UpdateStoreDetails <|-- UpdateContact : <<generalization>> UpdateStoreDetails <|-- UpdateDesc : <<generalization>> UpdateListing <|-- UpdateListingPrice : <<generalization>> UpdateListing <|-- UpdateListingStock : <<generalization>> UpdateListing <|-- UpdateListingDescription : <<generalization>> UpdateListing <|-- UpdateListingImage : <<generalization>> AssignItems <|-- CreateListing : <<extend>> AssignItems <|-- AddInventory : <<extend>> RemoveListing <|-- UnassignItems : <<include>> RemoveInventory --|> UnassignItems : <<include>> FilterListings <|-- FilterPrice : <<generalization>> FilterListings <|-- FilterNutrition : <<generalization>> FilterListings <|-- FilterStoreRating : <<generalization>> FilterListings <|-- FilterDietary : <<generalization>> FilterListings <|-- FilterAllergens : <<generalization>> ViewAllListings <|-- SearchListings : <<extend>> ViewAllListings <|-- FilterListings : <<extend>> AddInventory <|-- RateItem : <<extend>> AddInventory <|-- ShareItem : <<extend>> AddInventory <|-- ViewItemDetails : <<extend>> ManageShoppingList <|-- AddToShoppingList : <<generalization>> ManageShoppingList <|-- RemoveFromShoppingList : <<generalization>> CreateShoppingList <|-- AddToShoppingList : <<extend>> ' Actor Associations StoreOwner --> MaintainInventory StoreOwner --> CreateStore StoreOwner --> ManageStore StoreOwner --> UpdateListing StoreOwner --> RemoveListing Consumer --> ViewAllListings Consumer --> CreateShoppingList Consumer --> ManageShoppingList } @enduml