//SPARQL‚ΜƒTƒ“ƒvƒ‹ƒvƒƒOƒ‰ƒ€

//o“TFhttp://www.techscore.com/tech/Others/Jena/17.html

 

 import com.hp.hpl.jena.query.Query;

  import com.hp.hpl.jena.query.QueryExecution;

  import com.hp.hpl.jena.query.QueryExecutionFactory;

  import com.hp.hpl.jena.query.QueryFactory;

  import com.hp.hpl.jena.query.QuerySolution;

  import com.hp.hpl.jena.query.ResultSet;

  import com.hp.hpl.jena.rdf.model.Literal;

  import com.hp.hpl.jena.rdf.model.Model;

  import com.hp.hpl.jena.rdf.model.Resource;

 import com.hp.hpl.jena.util.FileManager;

 

 public class SPARQLSample {

 

    public static void main(String[] args) {

       Model model = FileManager.get().loadModel(

              "file:./foaf_example.rdf");

 

       String queryString =

            "PREFIX  foaf: <http://xmlns.com/foaf/0.1/> "

          + "SELECT ?name ?mbox "

          + "WHERE { ?x foaf:name ?name . "

          + "?x foaf:mbox ?mbox }";

 

       Query query = QueryFactory.create(queryString);

       QueryExecution qexec =

                QueryExecutionFactory.create(query, model);

       ResultSet results = qexec.execSelect();

 

       try {

          while (results.hasNext()) {

             QuerySolution qs = results.nextSolution();

             Literal name = (Literal) qs.get("name");

             Resource mbox = (Resource) qs.get("mbox");

 

             System.out.println(name + ":" + mbox);

          }

       } finally {qexec.close();}

    }

 }

 

//ƒtƒ@ƒCƒ‹–Ό‚πfoaf_example.rdf‚Ζ‚΅AUTF-8‚Ε•Ϋ‘Ά

<?xml version="1.0"?>

<rdf:RDF

    xmlns:foaf="http://xmlns.com/foaf/0.1/"

    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" >

  <rdf:Description rdf:nodeID="A0">

    <foaf:name>ŽlŽŸŒ³‘Ύ˜Y</foaf:name>

    <foaf:mbox rdf:resource="mailto:yonta@4dd.co.jp"/>

  </rdf:Description>

  <rdf:Description rdf:nodeID="A1">

    <foaf:name>ŽlŽŸŒ³ŽŸ˜Y</foaf:name>

    <foaf:mbox rdf:resource="mailto:jiro@4dd.co.jp"/>

  </rdf:Description>

</rdf:RDF>