public synchronized static void buildCategories(){
		List<Fingerprint> dataset = HomeFactory.getFingerprintHome().getAll();
		for (Fingerprint f : dataset) {
			if (f == null || f.getLocation() == null || f.getMeasurement() == null) continue;
			
			Integer id = ((Location)f.getLocation()).getId();
			if (id == null) continue;
			
			String locationTag = id.toString();
			LocationCategorizer().AddCategory(locationTag);
			Measurement m = (Measurement)f.getMeasurement();
			for (WiFiReading r : m.getWiFiReadings()) {
				if (r != null && r.getBssid() != null) {
					BSSIDCategorizer().AddCategory(r.getBssid());
				}
			}
		}
	}