Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package de.unibonn.iai.eis.luzzu.semantics.utilities;
  
  import java.util.Date;
  import java.util.HashMap;
  import java.util.List;
  import java.util.Map;
 
 
 
 
 public class DAQHelper {
 
 	private DAQHelper(){}
 	
 	public static String getClassLabel(Resource uri){
 		StmtIterator iter = InternalModelConf.getDAQModel().listStatements(uri., (RDFNodenull);
 		String label = "";
 		while (iter.hasNext()){
 			label = iter.nextStatement().getObject().toString();
 		}
 		return label;
 	}
 	
 	public static String getDimensionLabel(Resource metricURI){
 		return getClassLabel(getDomainResource(metricURI));
 	}
 	
 	public static String getCategoryLabel(Resource metricURI){
 		Resource dim = getDomainResource(metricURI);
 		Resource cat = getDomainResource(dim);
 		
 		return getClassLabel(cat);
 	}
 	
 	public static Resource getDimensionResource(Resource metricURI){
 		return getDomainResource(metricURI);
 	}
 		
 	public static Resource getCategoryResource(Resource metricURI){
 		Resource intermediate = getDomainResource(metricURI);
 		return getDomainResource(intermediate);
 	}
 	
 	private static Resource getDomainResource(Resource uri){
 		String whereClause = "?prop " + " " + SPARQLHelper.toSPARQL(.) + SPARQLHelper.toSPARQL(uri) + " . ";
 		whereClause = whereClause + " ?prop " + SPARQLHelper.toSPARQL(.) + " ?domain .";
 		
 		Model m = InternalModelConf.getFlatModel();
 		String query = ..replace("[variables]""?domain").replace("[whereClauses]"whereClause);
 		Resource r = null;
 		Query qry = QueryFactory.create(query);
 	    QueryExecution qe = QueryExecutionFactory.create(qrym);
 	    ResultSet rs = qe.execSelect();
 
 	    while (rs.hasNext()){
 	    	r = rs.next().get("domain").asResource();
 	    }
 	    
 	    return r;
 	}
 	
 	public static Resource getPropertyResource(Resource uri){
 		String whereClause = "?prop " + " " + SPARQLHelper.toSPARQL(.) + SPARQLHelper.toSPARQL(uri) + " . ";
 		
 		Model m = InternalModelConf.getFlatModel();
 		String query = ..replace("[variables]""?prop").replace("[whereClauses]"whereClause);
 		Resource r = null;
 		Query qry = QueryFactory.create(query);
 	    QueryExecution qe = QueryExecutionFactory.create(qrym);
 	    ResultSet rs = qe.execSelect();
 	    
 	    while (rs.hasNext()){
 	    	r = rs.next().get("prop").asResource();
 	    }
 	    
	    return r;
	}
	public static String getClassDescription(Resource uri){
		StmtIterator iter = InternalModelConf.getDAQModel().listStatements(uri., (RDFNodenull);
		String label = "";
		while (iter.hasNext()){
			label = iter.nextStatement().getObject().toString();
		}
		return label;
	}


Extract all observations from a dataset

Parameters:
dataset URI
Returns:
a HashMap with the metric type being the key and a list of observations
	public static Map<String,List<Observation>> getQualityMetadataObservations(String datasetMetadataUri){
		Dataset d = RDFDataMgr.loadDataset(datasetMetadataUri);
		Model qualityMD = d.getNamedModel(graph.getURI());
		Map<String,List<Observation>> map = new HashMap<String,List<Observation>>(); // metric resource, list<observations>
		while(iter.hasNext()){
			Resource res = iter.next();
			//get metric uri
			Resource metricURI = qualityMD.listObjectsOfProperty(res.).next().asResource();
			//get metric type
			Resource metricType = qualityMD.listObjectsOfProperty(metricURI.).next().asResource();
			//get datetime
			Date date = null;
			try {
catch (ParseException e) {
				// TODO Auto-generated catch block
			}
			//get value
			Float value = qualityMD.listObjectsOfProperty(res.).next().asLiteral().getFloat();
			Observation obs = new Observation(resdatevaluemetricType);
			if (!(map.containsKey(metricType.toString()))){
				map.put(metricType.toString(), new ArrayList<Observation>());
			}
			map.get(metricType.toString()).add(obs);
		}
		return map;
	}

Queries the internal model for the total number of metrics in each dimension.

Returns:
a Map of dimensions and the count of metrics.
		Map<StringIntegermetricsPerDimension = new HashMap<StringInteger>();
		Model m = InternalModelConf.getFlatModel();
		String whereClause = "?dimensionURI a " + SPARQLHelper.toSPARQL(.) + 
				" . ?dimensionURI ?hasMetricProperty ?metricURI . " +
				"?hasMetricProperty " + SPARQLHelper.toSPARQL(.) + SPARQLHelper.toSPARQL(.) + " .";
		String variables = "?dimensionURI COUNT(?metricURI) as ?count";
		String query = ..replace("[variables]"variables).replace("[whereClauses]"whereClause);
		Query qry = QueryFactory.create(query);
	    QueryExecution qe = QueryExecutionFactory.create(qrym);
	    ResultSet rs = qe.execSelect();
	    
	    while (rs.hasNext()){
	    	QuerySolution qs = rs.next();
	    	String dim = qs.get("dimensionURI").asResource().getURI();
	    	Integer count = qs.get("count").asLiteral().getInt();
	    	metricsPerDimension.put(dimcount);
	    }
	    return metricsPerDimension;
	}
	public static String getDimensionForMetric(Resource metricURI){
		Model m = InternalModelConf.getFlatModel();
		String whereClause = "?dimension ?prop " + SPARQLHelper.toSPARQL(metricURI) +
				"?prop " + SPARQLHelper.toSPARQL(.) + SPARQLHelper.toSPARQL(.) + " .";
		String query = ..replace("[variables]""?dimension").replace("[whereClauses]"whereClause);
		Query qry = QueryFactory.create(query);
	    QueryExecution qe = QueryExecutionFactory.create(qrym);
	    ResultSet rs = qe.execSelect();
	    
	    String dim = "";
	    while (rs.hasNext()){
	    	QuerySolution qs = rs.next();
	    	dim = qs.get("dimension").asResource().getURI();
	    }
	    return dim;
	}
		Map<StringIntegerdimensionPerCategory = new HashMap<StringInteger>();
		Model m = InternalModelConf.getFlatModel();
		String whereClause = "?categoryURI a " + SPARQLHelper.toSPARQL(.) + 
				" . ?categoryURI ?hasDimensionProperty ?dimensionURI . " +
				"?hasMetricProperty " + SPARQLHelper.toSPARQL(.) + SPARQLHelper.toSPARQL(.) + " .";
		String variables = "?categoryURI COUNT(?dimensionURI) as ?count";
		String query = ..replace("[variables]"variables).replace("[whereClauses]"whereClause);
		Query qry = QueryFactory.create(query);
	    QueryExecution qe = QueryExecutionFactory.create(qrym);
	    ResultSet rs = qe.execSelect();
	    
	    while (rs.hasNext()){
	    	QuerySolution qs = rs.next();
	    	String cat = qs.get("categoryURI").asResource().getURI();
	    	Integer count = qs.get("count").asLiteral().getInt();
	    	dimensionPerCategory.put(catcount);
	    }
	    return dimensionPerCategory;
	}
	public static String getCategoryForDimension(Resource dimensionURI){
		Model m = InternalModelConf.getFlatModel();
		String whereClause = "?category ?prop " + SPARQLHelper.toSPARQL(dimensionURI) +
				"?prop " + SPARQLHelper.toSPARQL(.) + SPARQLHelper.toSPARQL(.) + " .";
		String query = ..replace("[variables]""?category").replace("[whereClauses]"whereClause);
		Query qry = QueryFactory.create(query);
	    QueryExecution qe = QueryExecutionFactory.create(qrym);
	    ResultSet rs = qe.execSelect();
	    
	    String cat = "";
	    while (rs.hasNext()){
	    	QuerySolution qs = rs.next();
	    	cat = qs.get("category").asResource().getURI();
	    }
	    return cat;
	}
	public static List<StringgetDimensionsInCategory(Resource categoryURI){
		Model m = InternalModelConf.getFlatModel();
		String whereClause = SPARQLHelper.toSPARQL(categoryURI) + " ?prop ?dimensionURI" +
				"?prop " + SPARQLHelper.toSPARQL(.) + SPARQLHelper.toSPARQL(.) + " .";
		String query = ..replace("[variables]""?dimensionURI").replace("[whereClauses]"whereClause);
		Query qry = QueryFactory.create(query);
	    QueryExecution qe = QueryExecutionFactory.create(qrym);
	    ResultSet rs = qe.execSelect();
	    
	    List<Stringdimensions = new ArrayList<String>();
	    while (rs.hasNext()){
	    	QuerySolution qs = rs.next();
	    	dimensions.add(qs.get("dimensionURI").asResource().getURI());
	    }
	    return dimensions;
	}

Formats an xsd:dateTime to a JAVA object data

Parameters:
date - A string extracted from the triple's object
Returns:
JAVA object data
Throws:
java.text.ParseException
	private static Date toDateFormat(String datethrows ParseException{
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ss.SSS'Z'");
		return sdf.parse(date);
	}
	public static int getNumberOfMetricsInDataSet(Model m){
	}
	public static int getNumberOfMetricsInDataSet(Model mResource dimensionOrCategoryURIboolean isCategory){
		String extraWhereClause = "";
		if (isCategory){
			extraWhereClause = SPARQLHelper.toSPARQL(dimensionOrCategoryURI) + " ?hasDimensionProperty ?dimensionTypeURI . ";
			extraWhereClause = "?dimensionTypeURI  ?hasMetricProperty ?metricTypeURI .";
else {
			extraWhereClause = SPARQLHelper.toSPARQL(dimensionOrCategoryURI) + " ?hasMetricProperty ?metricTypeURI . ";
		}
		return getNumberOfMetricsInDataSet(mextraWhereClause);
	}
	private static int getNumberOfMetricsInDataSet(Model mString extraSPARQLstmt){
		Integer total = 0;
		Model internal = InternalModelConf.getFlatModel();
		Dataset _temp = new DatasetImpl(internal);
		String _tempGraph = Commons.generateURI().toString();
		_temp.addNamedModel(_tempGraphm);
		String whereDefaultGraphClause = "?metricTypeURI " + SPARQLHelper.toSPARQL(.) + " " + SPARQLHelper.toSPARQL(.) + " .";
		whereDefaultGraphClause = whereDefaultGraphClause + extraSPARQLstmt;
		String graphClause = "GRAPH <"+_tempGraph+"> { [where] }";
		String whereNamedGraphClause = "?typeURI " + SPARQLHelper.toSPARQL(.) + " ?metricTypeURI . ";
		graphClause = graphClause.replace("[where]"whereNamedGraphClause);
		String whereClause = whereDefaultGraphClause + graphClause;
		String query = ..replace("[variables]""(count(?typeURI) as ?count)").replace("[whereClauses]"whereClause);
		Query qry = QueryFactory.create(query);
	    QueryExecution qe = QueryExecutionFactory.create(qry_temp);
	    ResultSet rs = qe.execSelect();
	    
	    while (rs.hasNext()){
	    	QuerySolution soln = rs.next();
	    	total = new Integer(soln.getResource("count").toString());
	    }
		return total.intValue();
	}
New to GrepCode? Check out our FAQ X