public void addTriplesMap(TriplesMap triplesMap) { triplesMapIndex.put(triplesMap.getId(), triplesMap); List<TriplesMapLink> neighbouringLinks = neighboringTriplesMapCache.get(triplesMap.getId()); if (neighbouringLinks == null) { neighbouringLinks = new LinkedList<>(); neighboringTriplesMapCache.put(triplesMap.getId(), neighbouringLinks); } }
private void addPredicateObjectMaps( KR2RMLMapping mapping, Resource mappingRes, TriplesMap trMap, URI trMapUri, Workspace workspace, Worksheet worksheet) throws RepositoryException { // Add the predicate object maps for (PredicateObjectMap pom:trMap.getPredicateObjectMaps()) { addPredicateObjectMap(mapping, mappingRes, trMapUri, workspace, pom, worksheet); } }
@Override public Boolean call() throws HNodeNotFoundKarmaException, ValueNotFoundKarmaException, NoValueFoundInNodeException { try{ latch.await(); } catch (Exception e ) { LOG.error("Error while waiting for dependent triple maps to process", e); notifyDependentTriplesMapWorkers(); return false; } LOG.debug("Processing " + triplesMap.getId() + " " +triplesMap.getSubject().getId()); try { plan.execute(r, outWriters); } catch (Exception e) { e.printStackTrace(); LOG.error("Something went wrong " + e.getMessage() ); } LOG.debug("Processed " + triplesMap.getId() + " " +triplesMap.getSubject().getId()); notifyDependentTriplesMapWorkers(); return true; }
TriplesMapGraph graph, TriplesMap map, TriplesMapPlan plan) { if(!unprocessedTriplesMapsIds.remove(map.getId())) LOG.error("already visited " + map.toString()); return; LOG.error("No worker plan for " + map.getId()); return; List<TriplesMapLink> links = graph.getAllNeighboringTriplesMap(map.getId()); LOG.error("Attempted to add dependency for "+map.getId() +" invalid triplesmap " + mapDependedOn.getId());
for(TriplesMapGraph graph : graphTriplesMapsProcessingOrder.keySet()) if(graph.getTriplesMapIds().contains(triplesMap.getId())) links = graph.getAllNeighboringTriplesMap(triplesMap.getId()); break; if(link.getSourceMap().getId().compareTo(triplesMap.getId()) ==0 && !link.isFlipped() || link.getTargetMap().getId().compareTo(triplesMap.getId()) == 0 && link.isFlipped()) LOG.error("Unable to generate plan for link " + link.getSourceMap().getId() + " " + link.getPredicateObjectMapLink().getPredicate().getId() + " " + link.getTargetMap().getId(), e); for (TemplateTermSet typeTerm:triplesMap.getSubject().getRdfsType()) { for(PredicateObjectMap pom : triplesMap.getPredicateObjectMaps())
private boolean doesPredicateAlreadyExist(TriplesMap triplesMap, PredicateObjectMap poMap, RefObjectMap refObjMap) { boolean alreadyExists = false; for(PredicateObjectMap pom : triplesMap.getPredicateObjectMaps()) { if(pom.getPredicate().getTemplate().isSingleUriString() && poMap.getPredicate().getTemplate().isSingleUriString()) { if(pom.getPredicate().getTemplate().toString().equalsIgnoreCase(poMap.getPredicate().getTemplate().toString())) { if(pom.getObject().hasRefObjectMap() && pom.getObject().getRefObjectMap().getParentTriplesMap().getId().equalsIgnoreCase(refObjMap.getParentTriplesMap().getId())) { alreadyExists = true; } else if(!pom.getObject().hasRefObjectMap() && !poMap.getObject().hasRefObjectMap() && pom.getObject().getTemplate().toString().compareTo(poMap.getObject().getTemplate().toString())== 0) { alreadyExists = true; } } } } return alreadyExists; }
TriplesMap triple = (TriplesMap)currentObj; boolean foundHasValue = false; List<PredicateObjectMap> predicates = triple.getPredicateObjectMaps(); queue.add(objMap.getParentTriplesMap()); logger.info(triple.getSubject().getId() + " ---> " + objMap.getParentTriplesMap().getSubject().getId()); ParentMapingInfoList.put(objMap.getParentTriplesMap().getSubject().getId(), new ParentMapingInfo(triple, p_map.getPredicate())); String rdfsTypes = triple.getSubject().getRdfsType().get(0).toString(); this.prefix_list.put(rdfsTypes, "pref"+var_count); query.append(" ?"+var + " a pref"+var_count+": ."); ParentMapingInfo parentTriple = ParentMapingInfoList.get(triple.getSubject().getId()); predicate + " ?"+var + " . "); } else { logger.error("predicate is null from parent : " + triple.getSubject().getRdfsType().toString());
public void generateInternal(TemplateTermSet subjectMapTemplate, PredicateObjectMap pom, TriplesMap objectTriplesMap, Map<ColumnTemplateTerm, HNodePath> subjectTermsToPaths) throws HNodeNotFoundKarmaException { this.isLiteral = false; objectTemplateTermSetPopulator = generateTemplateTermSetPopulatorForSubjectMap(objectTriplesMap.getSubject()); generateInternal(subjectMapTemplate, pom, subjectTermsToPaths); } @Override
trMap.addPredicateObjectMap(pom); TemplateTermSet subjTemplTermSet = trMap.getSubject().getTemplate(); if(subjTemplTermSet != null) subjTemplTermSet, rdfLiteralTypeTermSet); pom.setObject(objMap); trMap.addPredicateObjectMap(pom); addColumnNameToPredObjectMapLink(objMap, pom, kr2rmlMapping);
private void createTripleMaps() { Set<Node> nodes = alignmentGraph.vertexSet(); for (Node node:nodes) { if (node instanceof InternalNode) { // Create a TriplesMap corresponding to the Internal node SubjectMap subjMap = r2rmlMapping.getSubjectMapIndex().get(node.getId()); TriplesMap trMap = new TriplesMap(TriplesMap.getNewId(), subjMap); r2rmlMapping.getTriplesMapIndex().put(node.getId(), trMap); this.r2rmlMapping.addTriplesMap(trMap); r2rmlMapping.getAuxInfo().getTriplesMapGraph().addTriplesMap(trMap); } } }
subjTrMap.addPredicateObjectMap(poMap);
private List<Resource> createSubjectMaps(Resource mappingResource, KR2RMLMapping kr2rmlMapping) throws JSONException { List<Resource> subjectMapResources = new ArrayList<>(); Property hasTrMapUri = model.getProperty(Uris.KM_HAS_TRIPLES_MAP_URI); // Get all the triple maps NodeIterator trMapsResItr = model.listObjectsOfProperty(mappingResource, hasTrMapUri); while (trMapsResItr.hasNext()) { Resource trMapRes = trMapsResItr.next().asResource(); SubjectMap subjMap = addSubjectMapForTripleMap(trMapRes, kr2rmlMapping, subjectMapResources); // Add the Triples map TriplesMap trMap = new TriplesMap(trMapRes.getURI(), subjMap); kr2rmlMapping.getTriplesMapIndex().put(trMapRes.getURI(), trMap); kr2rmlMapping.addTriplesMap(trMap); kr2rmlMapping.getAuxInfo().getTriplesMapGraph().addTriplesMap(trMap); } return subjectMapResources; }
for(PredicateObjectMap pom : map.getPredicateObjectMaps()) if(!refObjectMap.getParentTriplesMap().getId().equalsIgnoreCase(triplesMapId)) targetSchema = triplesMapIdToSchema.get(refObjectMap.getParentTriplesMap().getId());
TriplesMap triple = (TriplesMap)currentObj; boolean foundHasValue = false; List<PredicateObjectMap> predicates = triple.getPredicateObjectMaps(); queue.add(objMap.getParentTriplesMap()); logger.info(triple.getSubject().getId() + " ---> " + objMap.getParentTriplesMap().getSubject().getId()); ParentMapingInfoList.put(objMap.getParentTriplesMap().getSubject().getId(), new ParentMapingInfo(triple, p_map.getPredicate())); String rdfsTypes = triple.getSubject().getRdfsType().get(0).toString(); this.prefix_list.put("pref"+var_count, rdfsTypes); query.append(" ?"+var + " a pref"+var_count+": ."); ParentMapingInfo parentTriple = ParentMapingInfoList.get(triple.getSubject().getId());
public SubjectMap configureSubjectMapPlan(TriplesMap triplesMap) throws HNodeNotFoundKarmaException { subjectTermsToPaths = new HashMap<>(); SubjectMap subjMap = triplesMap.getSubject(); subjectMapTTSPopulator = generateTemplateTermSetPopulatorForSubjectMap(subjMap); populateTermsToPathForSubject(subjectTermsToPaths, subjectMapTTSPopulator.getTerms()); subjectPlan = new TemplateTermSetPopulatorPlan(subjectTermsToPaths, subjectTermsToPaths.keySet(), selection); return subjMap; }
inverseTrMap.addPredicateObjectMap(invPoMap); inverseOfTrMap.addPredicateObjectMap(invOfPoMap);
@Override public String toString() { if (template != null) return "ObjectMap [\n" + "template=" + template + ",\n" + "rdfLiteralType=" + rdfLiteralType + ",\n" + "language=" + language + "]"; else if (refObjectMap != null) return "RefObjectMap [" + refObjectMap.getParentTriplesMap().getId() + "]"; else return "<No ObjectMap or RefObjectMap found for the ObjectMap!>"; }
newGraph.removeLink(link); if(link.getSourceMap().getId().compareTo(triplesMapId) == 0 && (triplesMapId.compareTo(rootTriplesMapId) != 0)) logger.debug("Spilling " + tm.getSubject().getRdfsType() + " " +triplesMapId); modifications = true; List<String> removedTriplesMaps = newGraph.removeTriplesMap(triplesMapId);
for(TriplesMap tm : kr2rmlMapping.getTriplesMapList()) if(tm.getSubject().getId().equalsIgnoreCase(subjMap.getId())) List<PredicateObjectMap> poms = mytm.getPredicateObjectMaps(); for(PredicateObjectMap pom : poms )
private String checkParentMarked(TriplesMap triple, HashMap<TriplesMap, String> markedTriples, String var1) { Stack<String> stk = new Stack<>(); ParentMapingInfo parentTriple = this.ParentMapingInfoList.get(triple.getSubject().getId()); boolean markedParent = false; int count = 1; String rdfsTypes = parentTriple.parent.getSubject().getRdfsType().get(0).toString(); this.prefix_list.put("pref"+"Z"+count, rdfsTypes); stk.push(" ?Z"+count + " a pref"+"Z"+count+": ."); parentTriple = this.ParentMapingInfoList.get(parentTriple.parent.getSubject().getId()); if(parentTriple == null) { break;