
Page introducing you to the LINC core support team members , and giving you the contact information you need What 's New News Events Archives Pages showing details of LINC news , events , deadlines etc . Data Base by Subject theme by South West Locality Access to the collective evidence-base for policy . Resources include ; numeric datasets and narrative documents which can for the appropriate type of resource be graphed , instantly thematic mapped or exported for use in your reports and analysis . Work Groups Population Consultation Safer Communities Social Inclusion Cultural Activity Learning & Skills Business & Economy Planning Health & Welfare Environment ( ERIN ) Advisory Group Management Board Page giving access to sub-pages for display of the material relevant to specific work groups Downloads Page giving access to the LINC database of downloadable resources Links Page giving access to the LINC signposting of web-links Feedback Page for sending comments and feedback to the LINC team 