private void addColumnNameToPredObjectMapLink(ObjectMap objMap, PredicateObjectMap pom, KR2RMLMapping kr2rmlMapping) { TemplateTermSet objTermSet = objMap.getTemplate(); if(objTermSet == null) { logger.error("No matching object term set"); return; } for (TemplateTerm term:objTermSet.getAllTerms()) { if (term instanceof ColumnTemplateTerm) { String columnName = term.getTemplateTermValue(); String columnNameWithoutFormatting = kr2rmlMapping.getColumnNameFormatter().getColumnNameWithoutFormatting(columnName); List<PredicateObjectMap> existingPomList = kr2rmlMapping.getAuxInfo(). getColumnNameToPredObjLinks().get(columnNameWithoutFormatting); if (existingPomList == null) { existingPomList = new ArrayList<>(); } existingPomList.add(pom); kr2rmlMapping.getAuxInfo().getColumnNameToPredObjLinks().put(columnNameWithoutFormatting, existingPomList); } } }
private void addPredicateObjectMap(KR2RMLMapping mapping, Resource mappingRes, URI trMapUri, Workspace workspace, PredicateObjectMap pom, Worksheet worksheet) throws RepositoryException { KR2RMLColumnNameFormatter columnNameFormatter = mapping.getColumnNameFormatter(); RepFactory factory = workspace.getFactory(); URI pomUri = f.createURI(Namespaces.KARMA_DEV + pom.getId()); //BNode pomBlankNode = f.createBNode(); boolean usablePredicate = addPredicate(pom, columnNameFormatter, factory, pomUri); if(!usablePredicate) { return; } addObject(mappingRes, pom, columnNameFormatter, factory, pomUri, worksheet); con.add(trMapUri, repoURIs.get(Uris.RR_PRED_OBJ_MAP_URI), pomUri); // Add the predicate object map type statement con.add(pomUri, RDF.TYPE, repoURIs.get(Uris.RR_PREDICATEOBJECTMAP_CLASS_URI)); con.add(pomUri, repoURIs.get(Uris.KM_IS_PART_OF_MAPPING_URI), mappingRes); con.add(mappingRes, repoURIs.get(Uris.KM_HAS_PREDICATE_OBJECT_MAP_URI), pomUri); }
URI trMapUri, Workspace workspace) throws RepositoryException { KR2RMLColumnNameFormatter columnNameFormatter = mapping.getColumnNameFormatter(); RepFactory factory = workspace.getFactory();
String template = templNode.toString(); subjTemplTermSet = TemplateTermSetBuilder.constructTemplateTermSetFromR2rmlTemplateString( template, kr2rmlMapping.getColumnNameFormatter()); List<String> columnsCovered = new LinkedList<>(); for(TemplateTerm term : subjTemplTermSet.getAllColumnNameTermElements())
Property templateProp = model.getProperty(Uris.RR_TEMPLATE_URI); Property constantProp = model.getProperty(Uris.RR_CONSTANT); KR2RMLColumnNameFormatter formatter = kr2rmlMapping.getColumnNameFormatter(); TriplesMap trMap = kr2rmlMapping.getTriplesMapIndex().get(trMapRes.getURI()); if (trMap == null) { boolean isUri = !templNode.isLiteral(); objTemplTermSet = TemplateTermSetBuilder.constructTemplateTermSetFromR2rmlTemplateString( template, isUri, kr2rmlMapping.getColumnNameFormatter());