Sparql减法实例
我有一本选集,我创建了一个评估界面,或者有一个提交按钮。此按钮允许您计算旧值和值20之间的差值。我尝试用sparql选择一个实例,然后计算一个实例的值减去旧值20Sparql减法实例,sparql,ontology,Sparql,Ontology,我有一本选集,我创建了一个评估界面,或者有一个提交按钮。此按钮允许您计算旧值和值20之间的差值。我尝试用sparql选择一个实例,然后计算一个实例的值减去旧值20 valider.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Model m=ModelFactory.createMemModelMaker()
valider.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
Model m=ModelFactory.createMemModelMaker().createModel(null);
FileManager.get().readModel( m, owlFile );
String myOntologyName = "ProjetHela";
String uri="file:///C:/Project/Krs1.owl";
// Définition de prefixe pour simplifier l'utilisation de SPARQL
String reuses = "maj: <"+RDF.getURI()+">" ;
// String myOntologyPrefix = "PREFIX "+myOntologyName+": <"+myOntologyNS+">" ;
String myOntologyPrefix = "PREFIX "+myOntologyName+": <"+uri+">" ;
// if (liste.getSelectedItem().toString().equals("GMP: Puissance=60352 Watt,limite supérieure= 73500 Watt")) {
String queryString=
"PREFIX maj: <http://www.owl-ontologies.com/reuses.owl#>"
+ "SELECT ?hasnameevaluated"
+ " WHERE "
+ "{"
+ "?Besoin maj:hasnameevaluated ?hasnameevaluated "
+"FILTER (?hasnameevaluated - 20) "
+ " } ";
Query query = QueryFactory.create(queryString) ;
QueryExecution qexec = QueryExecutionFactory.create(query, m) ;
try {
ResultSet rs = qexec.execSelect() ;
// Affichage des resultats
for ( ; rs.hasNext() ; ){
//System.out.print("");
QuerySolution rb = rs.nextSolution() ;
String y = rb.getLiteral("hasnameevaluated").getString();
System.out.println( " " + y);
}} finally {
qexec.close() ;
}
}
}
);
valider.addActionListener(新ActionListener()
{
已执行的公共无效操作(操作事件e)
{
Model m=ModelFactory.createMemModelMaker().createModel(空);
FileManager.get().readModel(m,owlFile);
字符串myOntologyName=“ProjetHela”;
字符串uri=”file:///C:/Project/Krs1.owl";
//Déprefixe de pour simplifier l’SPARQL的使用
字符串重用=“maj:”;
//字符串myOntologyPrefix=“前缀”+myOntologyName+:”;
字符串myOntologyPrefix=“前缀”+myOntologyName+:”;
//如果(liste.getSelectedItem().toString().equals(“GMP:Puissance=60352瓦,limite supérieure=73500瓦”)){
字符串查询字符串=
“前缀maj:”
+“选择?已评估”
+“哪里”
+ "{"
+“?Besoin maj:hasnameevaluated?hasnameevaluated”
+“过滤器(?hasnameevaluated-20)”
+ " } ";
Query=QueryFactory.create(queryString);
QueryExecution qexec=QueryExecutionFactory.create(query,m);
试一试{
ResultSet rs=qexec.execSelect();
//结果附加
对于(;rs.hasNext();){
//系统输出打印(“”);
QuerySolution rb=rs.nextSolution();
字符串y=rb.getLiteral(“hasnameevaluated”).getString();
系统输出打印项次(“+y”);
}}最后{
qexec.close();
}
}
}
);
但它不起作用
请帮帮我
过滤器(?hasname-20)
是一种测试,而不是赋值
您是否打算使用:
绑定(?hasnameevaluated-20作为新值)
或
选择?hasnameevaluated(?hasnameevaluated-20作为?newvalue),其中
我只想得到一个新的值?hasnameevaluated=?hasnameevaluated-20