/* * Copyright (c) 2010 Mysema Ltd. * All rights reserved. * */ package com.mysema.rdfbean.sesame.query; import java.util.ArrayList; import java.util.List; import org.junit.Test; import org.openrdf.query.MalformedQueryException; import org.openrdf.query.QueryLanguage; import org.openrdf.query.UnsupportedQueryLanguageException; import org.openrdf.query.parser.GraphQueryModel; import org.openrdf.query.parser.QueryParserUtil; import org.openrdf.query.parser.TupleQueryModel; public class ParsingTest { @Test public void TupleQuery() throws MalformedQueryException, UnsupportedQueryLanguageException { List<String> queries = new ArrayList<String>(); queries.add("SELECT R FROM {R} rdfs:label {L}"); queries.add("SELECT L, R FROM {R} rdfs:label {L}"); queries.add("SELECT R FROM {R} rdfs:label {\"Hello World\"}"); queries.add("SELECT R FROM {R} rdfs:label {\"Hello World\"^^xsd:string}"); queries.add("SELECT label(L), lang(L) FROM {R} rdfs:label {L}"); queries.add("SELECT xsd:integer(L) FROM {R} rdfs:label {L}"); queries.add("SELECT R FROM {R} rdfs:label {L} LIMIT 1"); queries.add("SELECT R FROM {R} rdfs:label {L} OFFSET 2"); queries.add("SELECT R FROM {R} rdfs:label {L} LIMIT 2 OFFSET 3"); queries.add("SELECT val FROM {node} <ex:value> {val} WHERE val >= ANY ( SELECT value FROM {} <ex:value> {value} )"); for (String query : queries) { TupleQueryModel model = QueryParserUtil.parseTupleQuery(QueryLanguage.SERQL, query, null); System.out.println(model); System.out.println(); } } @Test public void GraphQuery() { List<String> queries = new ArrayList<String>(); queries.add("CONSTRUCT {S} rdf:type {O} FROM {S} rdf:type {O}"); for (String query : queries) { GraphQueryModel model = QueryParserUtil.parseGraphQuery(QueryLanguage.SERQL, query, null); System.out.println(model); System.out.println(); } } @Test public void GraphQuery2() { List<String> queries = new ArrayList<String>(); queries.add("CONSTRUCT { ?s ?p ?o ; <test:test> ?o .} WHERE { ?s ?p ?o }"); queries.add("CONSTRUCT { ?s ?p <test:test> ; <test:test> ?o .} WHERE { ?s ?p ?o }"); for (String query : queries) { GraphQueryModel model = QueryParserUtil.parseGraphQuery(QueryLanguage.SPARQL, query, null); System.out.println(model); System.out.println(); } } }