2014-02-17 28 views
-1

我想简单地问一下,如果有人知道java中的库函数将字符串转换为SPARQL URI。 我刚发现org.openrdf.ValueFactory,但是这个函数需要有一个连接(Repository) 参数和我不能这样做,因为需要很多时间。我需要一个函数来删除特殊字符,unicode(全部替换(“\ P {Print}”))...以在SPARQL更新中插入字符串作为URI,请求或查询;类似于* .string_To_URI(String string_URI); 谢谢你失去的时间,祝你有美好的一天。将字符串强制转换为sparql URI

回答

1

您可以使用Java URL或URI类来创建URI。如果URI无效,它会引发异常。

您应该查看JENA库以创建SPARQL查询。 (http://jena.apache.org/documentation/javadoc/arq/com/hp/hpl/jena/query/ParameterizedSparqlString.html

例如,你可以创建一个SPARQL查询是这样的:

public static String getAllTriplesOfContext(URL context) throws IOException { 

      String query = new String("SELECT ?x ?y ?z \n" + "FROM ?context \n" 
          + "WHERE {?x ?y ?z}"); 

      ParameterizedSparqlString queryString = new ParameterizedSparqlString(
          query); 

      queryString.setIri("?context", context); 

      return queryString.toString(); 

    } 
+0

非常感谢mr.hibe有一个愉快的一天! –

+1

org.apache.commons.httpclient.util.URIUtil.encodeQuery()我认为是最好的方法 –