try {
KR2RMLBloomFilterManager peopleBloomFilterManager = getBloomFilterManagerForSource("people.json", InputType.JSON, "people-model");
KR2RMLBloomFilterManager scheduleBloomFilterManager = getBloomFilterManagerForSource("schedule.csv", InputType.CSV, "schedule-model");
KR2RMLBloomFilter peoplePersonWithTwitterIdBF = peopleBloomFilterManager.getBloomFilter("http://isi.edu/integration/karma/dev#PredicateObjectMap_5fcf2d39-f62b-4cdd-863e-bde21493e1bd");
Key k = new Key(("<http://lod.isi.edu/cs548/person/Slepicka>").getBytes());
assertFalse(peoplePersonWithTwitterIdBF.membershipTest(k));
k = new Key(("<http://lod.isi.edu/cs548/person/Taheriyan>").getBytes());
assertTrue(peoplePersonWithTwitterIdBF.membershipTest(k));
k = new Key(("<http://lod.isi.edu/cs548/person/Kozareva>").getBytes());
assertFalse(peoplePersonWithTwitterIdBF.membershipTest(k));
k = new Key(("<http://lod.isi.edu/cs548/person/Ambite>").getBytes());
assertFalse(peoplePersonWithTwitterIdBF.membershipTest(k));
k = new Key(("<http://lod.isi.edu/cs548/person/Szekely>").getBytes());
assertTrue(peoplePersonWithTwitterIdBF.membershipTest(k));
k = new Key(("<http://lod.isi.edu/cs548/person/Knoblock>").getBytes());
assertTrue(peoplePersonWithTwitterIdBF.membershipTest(k));
k = new Key(("<http://lod.isi.edu/cs548/person/Wu>").getBytes());
assertFalse(peoplePersonWithTwitterIdBF.membershipTest(k));
assertEquals(3, peoplePersonWithTwitterIdBF.estimateNumberOfHashedValues());
KR2RMLBloomFilter schedulePersonBF = scheduleBloomFilterManager.getBloomFilter("http://isi.edu/integration/karma/dev#TriplesMap_413a6176-d893-45aa-b1c2-6661b5c491ab");
k = new Key(("<http://lod.isi.edu/cs548/person/Slepicka>").getBytes());
assertTrue(schedulePersonBF.membershipTest(k));
k = new Key(("<http://lod.isi.edu/cs548/person/Taheriyan>").getBytes());
assertTrue(schedulePersonBF.membershipTest(k));
k = new Key(("<http://lod.isi.edu/cs548/person/Ambite>").getBytes());
assertTrue(schedulePersonBF.membershipTest(k));
k = new Key(("<http://lod.isi.edu/cs548/person/Szekely>").getBytes());
assertTrue(schedulePersonBF.membershipTest(k));
k = new Key(("<http://lod.isi.edu/cs548/person/Knoblock>").getBytes());
assertTrue(schedulePersonBF.membershipTest(k));
assertEquals(5, schedulePersonBF.estimateNumberOfHashedValues());
KR2RMLBloomFilter intersectionBF = new KR2RMLBloomFilter(KR2RMLBloomFilter.defaultVectorSize, KR2RMLBloomFilter.defaultnbHash, Hash.JENKINS_HASH);
intersectionBF.or(peoplePersonWithTwitterIdBF);
intersectionBF.and(schedulePersonBF);
assertEquals(3, intersectionBF.estimateNumberOfHashedValues());
KR2RMLBloomFilter hasInstructorBF = scheduleBloomFilterManager.getBloomFilter("http://isi.edu/integration/karma/dev#RefObjectMap_bb82f923-2953-4bd4-bc7b-d1196e05dbf6");
k = new Key(("<http://lod.isi.edu/cs548/person/Szekely>").getBytes());
assertTrue(hasInstructorBF.membershipTest(k));
intersectionBF = new KR2RMLBloomFilter(KR2RMLBloomFilter.defaultVectorSize, KR2RMLBloomFilter.defaultnbHash, Hash.JENKINS_HASH);
intersectionBF.or(hasInstructorBF);
intersectionBF.and(peoplePersonWithTwitterIdBF);
assertEquals(3, intersectionBF.estimateNumberOfHashedValues());