I am kind of guessing here because I don't know everything about what you are trying to do. But What I would suggest is that you use composit keys on some of the tables. (http://weblogs.sqlteam.com/jeffs/archive/2007/08/23/composite_primary_keys.aspx) I am posting the DDL for my suggestion and a diagram for you to view as well.
USE [TestDb]GOCREATE TABLE [dbo].[Category]( [CategoryID] [int] IDENTITY(1,1) NOT NULL, [Description] [varchar](50) NOT NULL, CONSTRAINT [PK_Category] PRIMARY KEY CLUSTERED ( [CategoryID] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOCREATE TABLE [dbo].[Deadline]( [DeadlineID] [int] IDENTITY(1,1) NOT NULL, [DeadlineValue] [int] NOT NULL, [Description] [nchar](10) NOT NULL, CONSTRAINT [PK_Deadline] PRIMARY KEY CLUSTERED ( [DeadlineID] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOCREATE TABLE [dbo].[Fee]( [FeeID] [int] IDENTITY(1,1) NOT NULL, [Description] [varchar](50) NOT NULL, CONSTRAINT [PK_Fee] PRIMARY KEY CLUSTERED ( [FeeID] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOCREATE TABLE [dbo].[Category_Deadline]( [CategoryID] [int] NOT NULL, [DeadlineID] [int] NOT NULL, CONSTRAINT [PK_Category_Deadline] PRIMARY KEY CLUSTERED ( [CategoryID] ASC, [DeadlineID] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOALTER TABLE [dbo].[Category_Deadline] WITH CHECK ADD CONSTRAINT [FK_Category_Category_Deadline] FOREIGN KEY([CategoryID])REFERENCES [dbo].[Category] ([CategoryID])GOALTER TABLE [dbo].[Category_Deadline] CHECK CONSTRAINT [FK_Category_Category_Deadline]GOALTER TABLE [dbo].[Category_Deadline] WITH CHECK ADD CONSTRAINT [FK_Deadline_Category_Deadline] FOREIGN KEY([DeadlineID])REFERENCES [dbo].[Deadline] ([DeadlineID])GOALTER TABLE [dbo].[Category_Deadline] CHECK CONSTRAINT [FK_Deadline_Category_Deadline]GOCREATE TABLE [dbo].[Fee_CategoryDeadline]( [FeeID] [int] NOT NULL, [CategoryID] [int] NOT NULL, [DeadlineID] [int] NOT NULL, CONSTRAINT [PK_Fee_CategoryDeadline] PRIMARY KEY CLUSTERED ( [FeeID] ASC, [CategoryID] ASC, [DeadlineID] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOALTER TABLE [dbo].[Fee_CategoryDeadline] WITH CHECK ADD CONSTRAINT [FK_CategoryDeadline_to_Fee_CategoryDeadline] FOREIGN KEY([CategoryID], [DeadlineID])REFERENCES [dbo].[Category_Deadline] ([CategoryID], [DeadlineID])GOALTER TABLE [dbo].[Fee_CategoryDeadline] CHECK CONSTRAINT [FK_CategoryDeadline_to_Fee_CategoryDeadline]GOALTER TABLE [dbo].[Fee_CategoryDeadline] WITH CHECK ADD CONSTRAINT [FK_Fee_to_Fee_CategoryDeadline] FOREIGN KEY([FeeID])REFERENCES [dbo].[Fee] ([FeeID])GO
===http://www.ElementalSQL.com/