// $Id: AskJena.java,v 1.10 2004/04/10 14:28:03 amdus Exp $

import java.net.URL;
import java.io.File;
import java.io.PrintWriter;
import java.io.FileInputStream;
import java.io.ByteArrayOutputStream;
import java.util.Properties;

import com.hp.hpl.jena.mem.ModelMem;
import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.RDFReader;
import com.hp.hpl.jena.rdf.model.RDFWriter;

import euler.output.ILogger;
import euler.output.Outputter;

public class AskJena {

  public static final String fromWeb(String in) {
    Outputter.getInstance().log("AskJena", "fromWeb", "AskJena " + in, ILogger.FINE);
    String b = in;
    Model m = new ModelMem();
    RDFReader r = m.getReader("RDF/XML");
    try {
      URL url = new URL(in);
      r.read(m, in);
    }
    catch (Exception e) {
      try {
        File f = new File(in);
        b = "file:///" + f.getCanonicalPath().replace('\\', '/');
        r.read(m, new FileInputStream(in), b);
      }
      catch (Exception ex) {
        return "\n";
      }
    }
    RDFWriter w = m.getWriter("N3");
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    try {
      w.write(m, new PrintWriter(baos), b);
    }
    catch (Exception e) {
      return "\n";
    }
    return baos.toString();
  }

}
