
There exists serious concern regarding the use of a text top-level type for N3. See the recent discussion on www-rdf-comments. Garret Eric Prud'hommeaux wrote:
Hi all, there are a couple languages that have been used for a while, turtle and n3, and I am trying work out the right media types to register for them.
== Cast of Characters ╔══════════╦══════════════════════════════╦══════════════════════╗ ║ name ║ role ║ current media type ║ ╠══════════╤══════════════════════════════╤══════════════════════╣ ║ RDF │ data model │ N/A ║ ╟──────────┼──────────────────────────────┼──────────────────────╢ ║ RDFXML │ XML serialization of RDF │ application/rdf+xml ║ ╟──────────┼──────────────────────────────┼──────────────────────╢ ║ ntriples │ simple serialization of RDF │ text/plain ║ ╟──────────┼──────────────────────────────┼──────────────────────╢ ║ turtle │ textual serialization of RDF │ application/x+turtle ║ ╟──────────┼──────────────────────────────┼──────────────────────╢ ║ n3 │ extension¹of turtle language │ text/rdf+n3 (not ║ ║ │ expressing a superset of RDF │ registered) ║ ╚══════════╧══════════════════════════════╧══════════════════════╝
¹ The origins of turtle and n3 are complicated, but this is the most practical model for media type consideration.
These languages will be published under http://www.w3.org/TR/ (which implies certain persistance and update policy) as soon as I work out what to include in the media type registration. In the mean time, see http://www.dajobe.org/2004/01/turtle/#sec-mime http://www.w3.org/DesignIssues/Notation3
Neither the turtle nor n3 media types are registered. I seek advice from the community on exactly how to register them, as I will have to beat out some sort of consensus in order to register them.
== Issues • subsumption relationshop — n3 subsumes turtle in both data model and grammar. To that end, text/n3; and text/n3; profile=turtle have been suggested. Another suggestion has been text/rdf+n3 and text/rdf+turtle , in somewhat the spirit of XML (where the +xml indecates the that it's the XML encoding of the preceding datatype).
• subtree — turtle and n3 are certainly more human-readable than ntriples (as they are basically extensions of ntriples, with namespace prefixes and abbreviations for some atoms). The default character encoding of iso-8859-1 is certainly outdated, and doesn't make sense for any of these languages. Garret Wilson (Cc'd) raised the question of whether a text/ registration may force the charset to be, say, utf-8². Both n3 and turtle, as well as related langs like SPARQL, are explcitly utf-8. Can the registration include text like "The encoding is always UTF-8"? Would that mean that the media type would not need a constant charset parameter?
² http://lists.w3.org/Archives/Public/www-rdf-comments/2007OctDec/0017
== Strawman Let me propose: n3: text/rdf+n3 turtle: text/rdf+turtle with [[ Encoding considerations: The encoding is always UTF-8 ]] and the expectation that [[ Content-type: text/rdf+n3 ]] (or +turtle) fully specifies the media type and the character encoding.
A plea to all: bear in mind that this consensus bit is a hard job, and that the world will be much better off if we can reach a timely compromise. We've suffered for five years without these media types so let's keep our mission reallistic.