What is MIME type "application/sparql-results+json"?

A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.

application/sparql-results+json indicates that the data is in the SPARQL query results format encoded as JSON. It tells programs that the content follows a specific structure used for SPARQL responses.

SPARQL is a query language for RDF data. The JSON output makes it easy for software to parse and work with the results. This format is popular in semantic web applications and linked data tools.


Files carrying this MIME type often use the extension SRJ.

For more technical details, visit the W3C SPARQL 1.1 Results JSON specification.

Associated file extensions

Usage Examples

HTTP Header

When serving content with this MIME type, set the Content-Type header:


    Content-Type: application/sparql-results+json    
  

HTML

In HTML, you can specify the MIME type in various elements:


    <a href="file.dat" type="application/sparql-results+json">Download file</a>    
  

Server-side (Node.js)

Setting the Content-Type header in Node.js:


    const http = require('http');    
    
    http.createServer((req, res) => {    
      res.setHeader('Content-Type', 'application/sparql-results+json');    
      res.end('Content here');    
    }).listen(3000);    
  

Associated file extensions

FAQs

What is the purpose of the application/sparql-results+json MIME type?

This MIME type identifies a document containing the results of a SPARQL query formatted as a JSON object. It follows a specific W3C standard schema, allowing Semantic Web applications to easily exchange and parse RDF data using standard JSON tools.

Which file extension is associated with application/sparql-results+json?

The specific file extension for this format is .srj. However, because SPARQL results are often generated dynamically by query endpoints (APIs), the data may not always have a physical file extension attached during transmission.

How does application/sparql-results+json differ from application/json?

While the content is syntactically valid JSON, the application/sparql-results+json subtype explicitly indicates that the data adheres to the SPARQL 1.1 Query Results JSON Format. This tells the client to expect a specific structure containing head (variables) and results (bindings), distinguishing it from arbitrary JSON data.

How do I configure Apache or Nginx to serve .srj files?

To ensure servers send the correct headers, update your configuration files. For Apache, add AddType application/sparql-results+json .srj to your .htaccess or config. For Nginx, add application/sparql-results+json srj; inside the types { ... } block.

Can I parse application/sparql-results+json using standard JavaScript?

Yes, since the content is standard JSON, you can use JSON.parse() or the fetch().json() method in JavaScript. You can then access the data rows typically found under the results.bindings path of the returned object.

Why does my browser download the file instead of displaying it?

Most browsers do not recognize the application/sparql-results+json Content-Type as a renderable text format by default. To view the raw data in a browser, you often need a JSON viewer extension or you must configure the server to send Content-Disposition: inline.

When should I use this MIME type over application/sparql-results+xml?

You should use application/sparql-results+json when building modern web applications or working with JavaScript environments. JSON is generally more lightweight and faster to parse in browsers compared to the XML alternative (application/sparql-results+xml).

General FAQ

What is a MIME type?

A MIME (Multipurpose Internet Mail Extensions) type is a standard that indicates the nature and format of a document, file, or assortment of bytes. MIME types are defined and standardized in IETF's RFC 6838.

MIME types are important because they help browsers and servers understand how to process a file. When a browser receives a file from a server, it uses the MIME type to determine how to display or handle the content, whether it's an image to display, a PDF to open in a viewer, or a video to play.

MIME types consist of a type and a subtype, separated by a slash (e.g., text/html, image/jpeg, application/pdf). Some MIME types also include optional parameters.

How do I find the MIME type for a file?

You can check the file extension or use a file identification tool such as file --mime-type on the command line. Many programming languages also provide libraries to detect MIME types.

Why are multiple MIME types listed for one extension?

Different applications and historical conventions may use alternative MIME identifiers for the same kind of file. Showing them all helps ensure compatibility across systems.