Added: incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JSONJenaWriter.java URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JSONJenaWriter.java?rev=1083505&view=auto ============================================================================== --- incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JSONJenaWriter.java (added) +++ incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JSONJenaWriter.java Sun Mar 20 17:01:32 2011 @@ -0,0 +1,254 @@ +package org.apache.stanbol.kres.jersey.writers; + +import java.io.BufferedWriter; +import java.io.IOException; +import java.io.OutputStream; +import java.io.OutputStreamWriter; +import java.io.Writer; +import java.net.URI; +import java.net.URISyntaxException; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.hp.hpl.jena.JenaRuntime; +import com.hp.hpl.jena.rdf.model.Literal; +import com.hp.hpl.jena.rdf.model.Model; +import com.hp.hpl.jena.rdf.model.Property; +import com.hp.hpl.jena.rdf.model.RDFErrorHandler; +import com.hp.hpl.jena.rdf.model.RDFWriter; +import com.hp.hpl.jena.rdf.model.ResIterator; +import com.hp.hpl.jena.rdf.model.Resource; +import com.hp.hpl.jena.rdf.model.Statement; +import com.hp.hpl.jena.rdf.model.StmtIterator; + +public class JSONJenaWriter implements RDFWriter{ + + + private static final Logger LOG = LoggerFactory.getLogger(JSONJenaWriter.class); + + static protected final String propBase = "http://jena.hpl.hp.com/json/properties/" ; + + private String lineSeparator = JenaRuntime.getLineSeparator() ; + private RDFErrorHandler errorHandler = null; + private Map<String, Object> writerPropertyMap = null ; + private String baseURIref = null ; + private String baseURIrefHash = null ; + + private Writer out = null; + + public RDFErrorHandler setErrorHandler(RDFErrorHandler errHandler) { + RDFErrorHandler old = errorHandler; + errorHandler = errHandler; + return old; + } + + public Object setProperty(String propName, Object propValue) { + if ( ! ( propValue instanceof String ) ) + { + LOG.warn("JSON.setProperty: Property for '"+propName+"' is not a string") ; + propValue = propValue.toString() ; + } + + // Store absolute name of property + propName = absolutePropName(propName) ; + if ( writerPropertyMap == null ) + writerPropertyMap = new HashMap<String, Object>() ; + Object oldValue = writerPropertyMap.get(propName); + writerPropertyMap.put(propName, propValue); + return oldValue; + } + + protected String absolutePropName(String propName) + { + if ( propName.indexOf(':') == -1 ) + return JSONJenaWriter.propBase + propName ; + return propName ; + } + + + public void write(Model model, OutputStream output, String base) { + try { + Writer w = new BufferedWriter(new OutputStreamWriter(output, "UTF-8")) ; + write(model, w, base) ; + try { w.flush() ; } catch (IOException ioEx) {} + } catch (java.io.UnsupportedEncodingException ex) + { + System.err.println("Failed to create UTF-8 writer") ; + } + } + + public void write(Model baseModel, Writer _out, String base) { + if (!(_out instanceof BufferedWriter)) + _out = new BufferedWriter(_out); + + out = _out; + + if ( base != null ) + { + baseURIref = base ; + if ( !base.endsWith("#") &&! isOpaque(base) ) + baseURIrefHash = baseURIref+"#" ; + } + + try { + processModel(baseModel) ; + } catch (IOException e) { + LOG.error("IOError writing model.", e); + } + } + + private boolean isOpaque(String uri) + { + try { + return new URI(uri).isOpaque() ; + } catch (URISyntaxException ex) { return true ; } + } + + private void processModel(Model baseModel) throws IOException + { + writeLine("{"); + boolean first = true; + ResIterator subjectIterator = baseModel.listSubjects(); + while (subjectIterator.hasNext()) { + if (!first) { + writeLine(","); + } + first = false; + Resource subjectResource = subjectIterator.nextResource(); + processSubject(subjectResource); + } + writeLine(""); + writeLine("}"); + } + + private void processSubject(Resource subjectResource) throws IOException { + write(" \""); + if (subjectResource.isAnon()) { + write("_:"); + write(escape(subjectResource.asNode().getBlankNodeId().getLabelString())); + } else { + write(escape(subjectResource.getURI())); + } + writeLine("\" : {"); + processProperties(subjectResource); + write(" }"); + } + + private void processProperties(Resource subjectResource) throws IOException { + HashSet<Property> propertiesToProcess = new HashSet<Property>(); + StmtIterator allPropertiesIterator = subjectResource.listProperties(); + while (allPropertiesIterator.hasNext()) { + Statement statement = allPropertiesIterator.nextStatement(); + if (!propertiesToProcess.contains(statement.getPredicate().getURI())) { + propertiesToProcess.add(statement.getPredicate()); + } + } + int processed = 0; + for (Property property : propertiesToProcess) { + write(" \""); + write(escape(property.getURI())); + write("\" : [ "); + StmtIterator propertyIterator = subjectResource.listProperties(property); + boolean moreThanOneValue = false; + while (propertyIterator.hasNext()) { + Statement propertyStatement = propertyIterator.nextStatement(); + boolean moreValues = propertyIterator.hasNext(); + if (moreValues) { + moreThanOneValue = true; + } + if (moreThanOneValue) { + writeLine(""); + write(" "); + } + processProperty(propertyStatement); + if (moreValues) { + write(","); + } + } + if (moreThanOneValue) { + writeLine(""); + write(" "); + } else { + write(" "); + } + write("]"); + processed++; + if (processed < propertiesToProcess.size()) { + write(","); + } + writeLine(""); + } + } + + private void processProperty(Statement property) throws IOException { + write("{ \"value\" : \""); + if (property.getObject().isURIResource()) { + Resource r = (Resource)property.getObject(); + write(escape(r.getURI())); + write("\", \"type\" : \"uri\""); + } else if (property.getObject().isLiteral()) { + Literal l = (Literal)property.getObject(); + write(escape(l.getLexicalForm())); + write("\", \"type\" : \"literal\""); + String languageValue = l.getLanguage(); + if (languageValue != null && !languageValue.trim().equals("")) { + write(", \"lang\" : \""); + write(languageValue); + write("\""); + } + String dataTypeValue = l.getDatatypeURI(); + if (dataTypeValue != null && !dataTypeValue.trim().equals("")) { + write(", \"datatype\" : \""); + write(escape(dataTypeValue)); + write("\""); + } + } else if (property.getObject().isAnon()) { + write("_:"); + write(escape(property.getObject().asNode().getBlankNodeId().getLabelString())); + write("\", \"type\" : \"bnode\""); + } + write(" }"); + } + + protected String escape(String s) { + StringBuilder builder = new StringBuilder(); + for (int i= 0; i<s.length(); i++) { + char c = s.charAt(i); + if (c == '"') { + builder.append("\\\""); + } else if (c == '\\') { + builder.append("\\\\"); + } else if (c == '/') { + builder.append("\\/"); + } else if (c == '\b') { + builder.append("\\b"); + } else if (c == '\f') { + builder.append("\\f"); + } else if (c == '\n') { + builder.append("\\n"); + } else if (c == '\r') { + builder.append("\\r"); + } else if (c == '\t') { + builder.append("\\t"); + } else { + builder.append(c); + } + } + return builder.toString(); + } + + private void writeLine(String line) throws IOException { + write(line); + write(lineSeparator); + } + + private void write(String line) throws IOException { + out.write(line); + } + + +} \ No newline at end of file
Added: incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JenaModelTransformer.java URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JenaModelTransformer.java?rev=1083505&view=auto ============================================================================== --- incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JenaModelTransformer.java (added) +++ incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JenaModelTransformer.java Sun Mar 20 17:01:32 2011 @@ -0,0 +1,76 @@ +package org.apache.stanbol.kres.jersey.writers; + +import java.io.IOException; +import java.io.OutputStream; +import java.io.StringReader; + +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; + +import org.w3c.dom.Document; +import org.xml.sax.InputSource; +import org.xml.sax.SAXException; + +import com.hp.hpl.jena.rdf.model.Model; + +public class JenaModelTransformer { + + + public String toText(Model model){ + + OutputStream outputStream = getStringOutputStream(); + + model.write(outputStream); + + return outputStream.toString(); + } + + public Document toDocument(Model model){ + Document dom = null; + + OutputStream outputStream = getStringOutputStream(); + + model.write(outputStream); + + DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); + DocumentBuilder builder; + try { + builder = factory.newDocumentBuilder(); + InputSource is = new InputSource( new StringReader(outputStream.toString())); + dom = builder.parse( is ); + } catch (ParserConfigurationException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (SAXException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + return dom; + + } + + private OutputStream getStringOutputStream(){ + OutputStream outputStream = new OutputStream() { + + private StringBuilder string = new StringBuilder(); + + @Override + public void write(int b) throws IOException { + this.string.append((char) b ); + } + + + public String toString(){ + return this.string.toString(); + } + }; + + return outputStream; + } + +} Added: incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JenaModelWriter.java URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JenaModelWriter.java?rev=1083505&view=auto ============================================================================== --- incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JenaModelWriter.java (added) +++ incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/JenaModelWriter.java Sun Mar 20 17:01:32 2011 @@ -0,0 +1,70 @@ +package org.apache.stanbol.kres.jersey.writers; + +import java.io.IOException; +import java.io.OutputStream; +import java.lang.annotation.Annotation; +import java.lang.reflect.Type; + +import javax.ws.rs.Produces; +import javax.ws.rs.WebApplicationException; +import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.MultivaluedMap; +import javax.ws.rs.ext.MessageBodyWriter; +import javax.ws.rs.ext.Provider; +import javax.xml.transform.OutputKeys; +import javax.xml.transform.Transformer; +import javax.xml.transform.TransformerException; +import javax.xml.transform.TransformerFactory; +import javax.xml.transform.dom.DOMSource; +import javax.xml.transform.stream.StreamResult; + +import org.w3c.dom.Document; + + +import com.hp.hpl.jena.rdf.model.Model; + + +@Provider +@Produces({"application/rdf+xml", "application/xml", "text/xml"}) + +public class JenaModelWriter implements MessageBodyWriter<Model> { + + + + public static final String ENCODING = "UTF-8"; + + public long getSize(Model arg0, Class<?> arg1, Type arg2, + Annotation[] arg3, MediaType arg4) { + return -1; + } + + public boolean isWriteable(Class<?> arg0, Type arg1, Annotation[] arg2, + MediaType arg3) { + + return Model.class.isAssignableFrom(arg0); + } + + public void writeTo(Model model, Class<?> arg1, Type arg2, + Annotation[] arg3, MediaType arg4, + MultivaluedMap<String, Object> arg5, OutputStream outputStream) + throws IOException, WebApplicationException { + Document doc = null; + + try { + doc = new JenaModelTransformer().toDocument(model); + DOMSource domSource = new DOMSource(doc); + StreamResult streamResult = new StreamResult(outputStream); + TransformerFactory tf = TransformerFactory.newInstance(); + Transformer serializer = tf.newTransformer(); + serializer.setOutputProperty(OutputKeys.ENCODING,ENCODING); + serializer.setOutputProperty(OutputKeys.INDENT,"yes"); + serializer.transform(domSource, streamResult); + } catch(TransformerException te) { + throw new IOException("TransformerException in writeTo()"); + } + + outputStream.flush(); + + } + +} Added: incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/OWLOntologyWriter.java URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/OWLOntologyWriter.java?rev=1083505&view=auto ============================================================================== --- incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/OWLOntologyWriter.java (added) +++ incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/OWLOntologyWriter.java Sun Mar 20 17:01:32 2011 @@ -0,0 +1,127 @@ +package org.apache.stanbol.kres.jersey.writers; + +import java.io.IOException; +import java.io.OutputStream; +import java.lang.annotation.Annotation; +import java.lang.reflect.Type; + +import javax.servlet.ServletContext; +import javax.ws.rs.Produces; +import javax.ws.rs.WebApplicationException; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.MultivaluedMap; +import javax.ws.rs.ext.MessageBodyWriter; +import javax.ws.rs.ext.Provider; + +import org.apache.clerezza.rdf.core.MGraph; +import org.apache.clerezza.rdf.core.serializedform.Serializer; +import org.apache.clerezza.rdf.core.serializedform.SupportedFormat; +import org.apache.clerezza.rdf.rdfjson.serializer.RdfJsonSerializingProvider; +import org.coode.owlapi.manchesterowlsyntax.ManchesterOWLSyntaxOntologyFormat; +import org.coode.owlapi.turtle.TurtleOntologyFormat; +import org.semanticweb.owlapi.apibinding.OWLManager; +import org.semanticweb.owlapi.io.OWLFunctionalSyntaxOntologyFormat; +import org.semanticweb.owlapi.io.OWLXMLOntologyFormat; +import org.semanticweb.owlapi.io.RDFXMLOntologyFormat; +import org.semanticweb.owlapi.model.OWLOntology; +import org.semanticweb.owlapi.model.OWLOntologyManager; +import org.semanticweb.owlapi.model.OWLOntologyStorageException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import org.apache.stanbol.kres.jersey.format.KReSFormat; +import eu.iksproject.kres.shared.transformation.OWLAPIToClerezzaConverter; + +@Provider +@Produces( { KReSFormat.RDF_XML, KReSFormat.OWL_XML, KReSFormat.MANCHESTER_OWL, + KReSFormat.FUNCTIONAL_OWL, KReSFormat.TURTLE, KReSFormat.RDF_JSON }) +public class OWLOntologyWriter implements MessageBodyWriter<OWLOntology> { + + protected Serializer serializer; + + protected ServletContext servletContext; + + public OWLOntologyWriter(@Context ServletContext servletContext) { + Logger log = LoggerFactory.getLogger(getClass()); + this.servletContext = servletContext; + log.info("Setting context to " + servletContext); + serializer = (Serializer) this.servletContext + .getAttribute(Serializer.class.getName()); + if (serializer == null) { + log.info("Serializer not found in Servlet context."); + serializer = new Serializer(); + } + } + + @Override + public long getSize(OWLOntology arg0, Class<?> arg1, Type arg2, + Annotation[] arg3, MediaType arg4) { + // TODO Auto-generated method stub + return -1; + } + + @Override + public boolean isWriteable(Class<?> type, Type genericType, + Annotation[] annotations, MediaType mediaType) { + return OWLOntology.class.isAssignableFrom(type); + } + + @Override + public void writeTo(OWLOntology ontology, Class<?> arg1, Type arg2, + Annotation[] arg3, MediaType mediaType, + MultivaluedMap<String, Object> arg5, OutputStream out) + throws IOException, WebApplicationException { + + Logger log = LoggerFactory.getLogger(getClass()); + OWLOntologyManager manager = OWLManager.createOWLOntologyManager(); + + log.debug("Rendering ontology " + ontology.getOntologyID() + + "to KReS format " + mediaType); + + if (mediaType.toString().equals(KReSFormat.RDF_XML)) { + try { + manager.saveOntology(ontology, new RDFXMLOntologyFormat(), out); + } catch (OWLOntologyStorageException e) { + log.error("Failed to store ontology for rendering.", e); + } + } else if (mediaType.toString().equals(KReSFormat.OWL_XML)) { + try { + manager.saveOntology(ontology, new OWLXMLOntologyFormat(), out); + } catch (OWLOntologyStorageException e) { + log.error("Failed to store ontology for rendering.", e); + } + } else if (mediaType.toString().equals(KReSFormat.MANCHESTER_OWL)) { + try { + manager.saveOntology(ontology, + new ManchesterOWLSyntaxOntologyFormat(), out); + } catch (OWLOntologyStorageException e) { + log.error("Failed to store ontology for rendering.", e); + } + } else if (mediaType.toString().equals(KReSFormat.FUNCTIONAL_OWL)) { + try { + manager.saveOntology(ontology, + new OWLFunctionalSyntaxOntologyFormat(), out); + } catch (OWLOntologyStorageException e) { + log.error("Failed to store ontology for rendering.", e); + } + } else if (mediaType.toString().equals(KReSFormat.TURTLE)) { + try { + manager.saveOntology(ontology, new TurtleOntologyFormat(), out); + } catch (OWLOntologyStorageException e) { + log.error("Failed to store ontology for rendering.", e); + } + } else if (mediaType.toString().equals(KReSFormat.RDF_JSON)) { + + MGraph mGraph = OWLAPIToClerezzaConverter + .owlOntologyToClerezzaMGraph(ontology); + + RdfJsonSerializingProvider provider = new RdfJsonSerializingProvider(); + provider.serialize(out, mGraph, SupportedFormat.RDF_JSON); + + } + + out.flush(); + } + +} Added: incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/OwlModelWriter.java URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/OwlModelWriter.java?rev=1083505&view=auto ============================================================================== --- incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/OwlModelWriter.java (added) +++ incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/OwlModelWriter.java Sun Mar 20 17:01:32 2011 @@ -0,0 +1,56 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +package org.apache.stanbol.kres.jersey.writers; + +import java.io.IOException; +import java.io.OutputStream; +import java.lang.annotation.Annotation; +import java.lang.reflect.Type; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.ws.rs.Produces; +import javax.ws.rs.WebApplicationException; +import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.MultivaluedMap; +import javax.ws.rs.ext.MessageBodyWriter; +import javax.ws.rs.ext.Provider; +import org.semanticweb.owlapi.io.RDFXMLOntologyFormat; +import org.semanticweb.owlapi.model.OWLOntology; +import org.semanticweb.owlapi.model.OWLOntologyStorageException; + +/** + * + * @author elvio + */ +@Provider +@Produces({"application/rdf+xml", "application/xml", "text/xml"}) +public class OwlModelWriter implements MessageBodyWriter<OWLOntology>{ + + @Override + public boolean isWriteable(Class<?> arg0, Type arg1, Annotation[] arg2, MediaType arg3) { + return OWLOntology.class.isAssignableFrom(arg0); + } + + @Override + public long getSize(OWLOntology arg0, Class<?> arg1, Type arg2, Annotation[] arg3, MediaType arg4) { + return -1; + } + + @Override + public void writeTo(OWLOntology model, Class<?> arg1, Type arg2, Annotation[] arg3, MediaType arg4, MultivaluedMap<String, Object> arg5, OutputStream outputStream) throws IOException, WebApplicationException { + + try { + model.getOWLOntologyManager().saveOntology(model, new RDFXMLOntologyFormat(), outputStream); + } catch (OWLOntologyStorageException ex) { + Logger.getLogger(OwlModelWriter.class.getName()).log(Level.SEVERE, null, ex); + throw new IOException("TransformerException in writeTo()"); + } + + outputStream.flush(); + } + +} + Added: incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/ResultSetToXml.java URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/ResultSetToXml.java?rev=1083505&view=auto ============================================================================== --- incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/ResultSetToXml.java (added) +++ incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/ResultSetToXml.java Sun Mar 20 17:01:32 2011 @@ -0,0 +1,96 @@ +package org.apache.stanbol.kres.jersey.writers; + +import java.util.Set; + +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; + +import org.apache.clerezza.rdf.core.BNode; +import org.apache.clerezza.rdf.core.Language; +import org.apache.clerezza.rdf.core.PlainLiteral; +import org.apache.clerezza.rdf.core.Resource; +import org.apache.clerezza.rdf.core.TypedLiteral; +import org.apache.clerezza.rdf.core.UriRef; +import org.apache.clerezza.rdf.core.sparql.ResultSet; +import org.apache.clerezza.rdf.core.sparql.SolutionMapping; +import org.apache.clerezza.rdf.core.sparql.query.Variable; +import org.w3c.dom.Document; +import org.w3c.dom.Element; + +class ResultSetToXml { + private final DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); + + Document toDocument(ResultSet rs) throws ParserConfigurationException { + final Document doc = dbf.newDocumentBuilder().newDocument(); + + // root element + Element root = doc.createElement("sparql"); + root.setAttribute("xmlns", "http://www.w3.org/2005/sparql-results#"); + doc.appendChild(root); + Element head = doc.createElement("head"); + root.appendChild(head); + + // result set + Element results = doc.createElement("results"); + SolutionMapping solutionMapping = null; + while (rs.hasNext()) { + solutionMapping = rs.next(); + createResultElement(solutionMapping, results, doc); + } + createVariable(solutionMapping, head, doc); + root.appendChild(results); + + return doc; + } + + private void createResultElement(SolutionMapping solutionMap, Element results, Document doc) { + Set<Variable> keys = solutionMap.keySet(); + Element result = doc.createElement("result"); + results.appendChild(result); + for (Variable key : keys) { + Element bindingElement = doc.createElement("binding"); + bindingElement.setAttribute("name", key.getName()); + bindingElement.appendChild(createValueElement( + (Resource) solutionMap.get(key), doc)); + result.appendChild(bindingElement); + } + } + + private void createVariable(SolutionMapping solutionMap, Element head, Document doc) { + if(solutionMap != null) { + Set<Variable> keys = solutionMap.keySet(); + for (Variable key : keys) { + Element varElement = doc.createElement("variable"); + varElement.setAttribute("name", key.getName()); + head.appendChild(varElement); + } + } + } + + private Element createValueElement(Resource resource, Document doc) { + Element value = null; + if (resource instanceof UriRef) { + value = doc.createElement("uri"); + value.appendChild(doc.createTextNode(((UriRef) resource) + .getUnicodeString())); + } else if (resource instanceof TypedLiteral) { + value = doc.createElement("literal"); + value.appendChild(doc.createTextNode(((TypedLiteral) resource) + .getLexicalForm())); + value.setAttribute("datatype", (((TypedLiteral) resource) + .getDataType().getUnicodeString())); + } else if (resource instanceof PlainLiteral) { + value = doc.createElement("literal"); + value.appendChild(doc.createTextNode(((PlainLiteral) resource) + .getLexicalForm())); + Language lang = ((PlainLiteral) resource).getLanguage(); + if (lang != null) { + value.setAttribute("xml:lang", (lang.toString())); + } + } else { + value = doc.createElement("bnode"); + value.appendChild(doc.createTextNode(((BNode) resource).toString())); + } + return value; + } +} Added: incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/ResultSetWriter.java URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/ResultSetWriter.java?rev=1083505&view=auto ============================================================================== --- incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/ResultSetWriter.java (added) +++ incubator/stanbol/trunk/kres/jersey/src/main/java/org/apache/stanbol/kres/jersey/writers/ResultSetWriter.java Sun Mar 20 17:01:32 2011 @@ -0,0 +1,70 @@ +package org.apache.stanbol.kres.jersey.writers; + +import java.io.IOException; +import java.io.OutputStream; +import java.lang.annotation.Annotation; +import java.lang.reflect.Type; + +import javax.ws.rs.Produces; +import javax.ws.rs.WebApplicationException; +import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.MultivaluedMap; +import javax.ws.rs.ext.MessageBodyWriter; +import javax.ws.rs.ext.Provider; +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.transform.OutputKeys; +import javax.xml.transform.Transformer; +import javax.xml.transform.TransformerException; +import javax.xml.transform.TransformerFactory; +import javax.xml.transform.dom.DOMSource; +import javax.xml.transform.stream.StreamResult; + +import org.apache.clerezza.rdf.core.sparql.ResultSet; +import org.w3c.dom.Document; + +/** MessageBodyWriter for a ResultSet. + * Clerezza does provide such a writer, but it seems to require + * quite a lot of Clerezza dependencies that we don't really need. + */ +@Provider +@Produces({"application/sparql-results+xml", "application/xml", "text/xml"}) +public class ResultSetWriter implements MessageBodyWriter<ResultSet> { + + public static final String ENCODING = "UTF-8"; + + @Override + public long getSize(ResultSet resultSet, Class<?> type, Type genericType, + Annotation[] annotations, MediaType mediaType) { + return -1; + } + + @Override + public boolean isWriteable(Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType) { + return ResultSet.class.isAssignableFrom(type); + } + + @Override + public void writeTo(ResultSet resultSet, Class<?> type, Type genericType, + Annotation[] annotations, MediaType mediaType, + MultivaluedMap<String, Object> httpHeaders, OutputStream entityStream) + throws IOException, WebApplicationException { + Document doc = null; + + try { + doc = new ResultSetToXml().toDocument(resultSet); + DOMSource domSource = new DOMSource(doc); + StreamResult streamResult = new StreamResult(entityStream); + TransformerFactory tf = TransformerFactory.newInstance(); + Transformer serializer = tf.newTransformer(); + serializer.setOutputProperty(OutputKeys.ENCODING,ENCODING); + serializer.setOutputProperty(OutputKeys.INDENT,"yes"); + serializer.transform(domSource, streamResult); + } catch(TransformerException te) { + throw new IOException("TransformerException in writeTo()", te); + } catch(ParserConfigurationException pce) { + throw new IOException("Exception in ResultSetToXml.toDocument()", pce); + } + + entityStream.flush(); + } +} Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/add.gif URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/add.gif?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/add.gif ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/addRule.gif URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/addRule.gif?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/addRule.gif ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/ajax-loader.gif URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/ajax-loader.gif?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/ajax-loader.gif ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/anonymous_48.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/anonymous_48.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/anonymous_48.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/black_gear_128.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/black_gear_128.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/black_gear_128.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/black_gear_16.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/black_gear_16.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/black_gear_16.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/caos_puzzle.jpg URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/caos_puzzle.jpg?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/caos_puzzle.jpg ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/compass_48.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/compass_48.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/compass_48.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/compass_map_48.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/compass_map_48.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/compass_map_48.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/configure.gif URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/configure.gif?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/configure.gif ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/delete.gif URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/delete.gif?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/delete.gif ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/download.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/download.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/download.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/download_rdf.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/download_rdf.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/download_rdf.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/external.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/external.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/external.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/favicon-black.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/favicon-black.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/favicon-black.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/favicon-sw.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/favicon-sw.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/favicon-sw.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/favicon.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/favicon.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/favicon.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/fise_logo_cropped.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/fise_logo_cropped.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/fise_logo_cropped.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/fise_logo_white.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/fise_logo_white.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/fise_logo_white.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/fise_logo_white_small.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/fise_logo_white_small.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/fise_logo_white_small.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/foldable_folded.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/foldable_folded.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/foldable_folded.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/foldable_unfolded.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/foldable_unfolded.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/foldable_unfolded.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/header_bg.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/header_bg.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/header_bg.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/iks_project_logo.jpg URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/iks_project_logo.jpg?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/iks_project_logo.jpg ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/kresLogo.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/kresLogo.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/kresLogo.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/kresLogoExtended.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/kresLogoExtended.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/kresLogoExtended.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/loading.gif URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/loading.gif?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/loading.gif ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/next.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/next.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/next.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/organization_48.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/organization_48.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/organization_48.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/previous.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/previous.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/previous.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf_flyer.64.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf_flyer.64.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf_flyer.64.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf_flyer_16.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf_flyer_16.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf_flyer_16.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf_flyer_24.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf_flyer_24.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rdf_flyer_24.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rules.gif URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rules.gif?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/rules.gif ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/stlabLogo.jpg URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/stlabLogo.jpg?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/stlabLogo.jpg ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/stlabLogo.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/stlabLogo.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/stlabLogo.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/sw-cube.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/sw-cube.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/sw-cube.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/user_48.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/user_48.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/user_48.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/user_group_48.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/user_group_48.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/user_group_48.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/wikipedia_w_16.png URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/wikipedia_w_16.png?rev=1083505&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/images/wikipedia_w_16.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/scripts/jit-yc.js URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/scripts/jit-yc.js?rev=1083505&view=auto ============================================================================== --- incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/scripts/jit-yc.js (added) +++ incubator/stanbol/trunk/kres/jersey/src/main/resources/META-INF/static/scripts/jit-yc.js Sun Mar 20 17:01:32 2011 @@ -0,0 +1,27 @@ +/* + Copyright (c) 2010, Nicolas Garcia Belmonte + All rights reserved + + > Redistribution and use in source and binary forms, with or without + > modification, are permitted provided that the following conditions are met: + > * Redistributions of source code must retain the above copyright + > notice, this list of conditions and the following disclaimer. + > * Redistributions in binary form must reproduce the above copyright + > notice, this list of conditions and the following disclaimer in the + > documentation and/or other materials provided with the distribution. + > * Neither the name of the organization nor the + > names of its contributors may be used to endorse or promote products + > derived from this software without specific prior written permission. + > + > THIS SOFTWARE IS PROVIDED BY NICOLAS GARCIA BELMONTE ``AS IS'' AND ANY + > EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + > WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + > DISCLAIMED. IN NO EVENT SHALL NICOLAS GARCIA BELMONTE BE LIABLE FOR ANY + > DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + > (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + > LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + > ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + > (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + > SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ [... 3 lines stripped ...]
