Turtle (syntax)
Format for expressing data in the RDF data model
title: "Turtle (syntax)" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["resource-description-framework", "syntax", "computer-file-formats"] description: "Format for expressing data in the RDF data model" topic_path: "linguistics" source: "https://en.wikipedia.org/wiki/Turtle_(syntax)" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0
::summary Format for expressing data in the RDF data model ::
::data[format=table title="Infobox file format"]
| Field | Value |
|---|---|
| name | Terse RDF Triple Language |
| extension | .ttl |
| mime | text/turtle |
| owner | Dave Beckett |
| genre | Semantic Web |
| latest_release_version | RDF 1.1 Turtle (REC) |
| latest_release_date | 25 February 2014 |
| container for | RDF data |
| extended from | N-Triples, Notation3 |
| extended to | TriG |
| url | |
| :: |
| name = Terse RDF Triple Language | icon = | logo = | extension = .ttl | mime = text/turtle | type code = | uniform type = | magic = | owner = Dave Beckett | genre = Semantic Web | latest_release_version = RDF 1.1 Turtle (REC) | latest_release_date = 25 February 2014 | container for = RDF data | extended from = N-Triples, Notation3 | extended to = TriG | standard = | standards = | url =
In computing, Terse RDF Triple Language (Turtle) is a syntax and file format for expressing data in the Resource Description Framework (RDF) data model. Turtle syntax is similar to that of SPARQL, an RDF query language. It is a common data format for storing RDF data, along with N-Triples, JSON-LD and RDF/XML.
RDF represents information using semantic triples, which comprise a subject, predicate, and object. Each item in the triple is expressed as a Web URI. Turtle provides a way to group three URIs to make a triple, and provides ways to abbreviate such information, for example by factoring out common portions of URIs. For example, information about Huckleberry Finn could be expressed as:
.
History
Turtle was defined by Dave Beckett as a subset of Tim Berners-Lee and Dan Connolly's Notation3 (N3) language, and a superset of the minimal N-Triples format. Unlike full N3, which has an expressive power that goes much beyond RDF, Turtle can only serialize valid RDF graphs. Turtle is an alternative to RDF/XML, the original syntax and standard for writing RDF. As opposed to RDF/XML, Turtle does not rely on XML and is generally recognized as being more readable and easier to edit manually than its XML counterpart.
SPARQL, the query language for RDF, uses a syntax similar to Turtle for expressing query patterns.
In 2011, a working group of the World Wide Web Consortium (W3C) started working on an updated version of RDF, with the intention of publishing it along with a standardised version of Turtle. This Turtle specification was published as a W3C Recommendation on 25 February 2014.
A significant proportion of RDF toolkits include Turtle parsing and serializing capability. Some examples of such toolkits are Redland, RDF4J, Jena, Python's RDFLib and JavaScript's N3.js.
Example
The following example defines 3 prefixes ("rdf", "dc", and "ex"), and uses them in expressing a statement about the editorship of the RDF/XML document: ::code[lang=turtle] @prefix rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# . @prefix dc: http://purl.org/dc/elements/1.1/ . @prefix ex: http://example.org/stuff/1.0/ .
http://www.w3.org/TR/rdf-syntax-grammar dc:title "RDF/XML Syntax Specification (Revised)" ; ex:editor [ ex:fullname "Dave Beckett"; ex:homePage http://purl.org/net/dajobe/ ] . ::
(Turtle examples are also valid Notation3).
The example encodes an RDF graph made of four triples, which express these facts:
- The W3C technical report on RDF syntax and grammar has the title RDF/XML Syntax Specification (Revised).
- That report's editor is a certain individual, who in turn
- Has full name Dave Beckett.
- Has a home page at a certain place.
Here are the triples made explicit in N-Triples notation: ::code[lang=turtle] http://www.w3.org/TR/rdf-syntax-grammar http://purl.org/dc/elements/1.1/title "RDF/XML Syntax Specification (Revised)" . http://www.w3.org/TR/rdf-syntax-grammar http://example.org/stuff/1.0/editor _:bnode . _:bnode http://example.org/stuff/1.0/fullname "Dave Beckett" . _:bnode http://example.org/stuff/1.0/homePage http://purl.org/net/dajobe/ . ::
The MIME type of Turtle is text/turtle. The character encoding of Turtle content is always UTF-8.
Named graphs
TriG RDF syntax extends Turtle with support for named graphs.
References
References
- (25 February 2014). "RDF 1.1 Turtle - Terse RDF Triple LanguageTurtle". [[World Wide Web Consortium]] (W3C).
- (28 March 2011). "MIME Media Types: text/turtle". [[Internet Assigned Numbers Authority]] (IANA).
::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::