Notation3

Summary

Notation3, or N3 as it is more commonly known, is a shorthand non-XML serialization of Resource Description Framework models, designed with human-readability in mind: N3 is much more compact and readable than XML RDF notation. The format is being developed by Tim Berners-Lee and others from the Semantic Web community. A formalization of the logic underlying N3 was published by Berners-Lee and others in 2008.[1]

Notation3
Filename extension
.n3
Internet media type
text/n3;charset=utf-8
Developed byTim Berners-Lee
Type of formatsemantic web
Container forRDF data
Standardn3
Websitewww.w3.org/TeamSubmission/n3/

N3 has several features that go beyond a serialization for RDF models, such as support for RDF-based rules. Turtle is a simplified, RDF-only subset of N3.

Examples edit

The following is an RDF model in standard XML notation:

<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
  <rdf:Description rdf:about="https://en.wikipedia.org/wiki/Tony_Benn">
    <dc:title>Tony Benn</dc:title>
    <dc:publisher>Wikipedia</dc:publisher>
  </rdf:Description>
</rdf:RDF>

may be written in Notation3 like this:

@prefix dc: <http://purl.org/dc/elements/1.1/>.

<https://en.wikipedia.org/wiki/Tony_Benn>
  dc:title "Tony Benn";
  dc:publisher "Wikipedia".

This N3 code above would also be in valid Turtle syntax.

Comparison of Notation3, Turtle, and N-Triples edit

Feature Notation3 Turtle N-Triples
Character encoding UTF-8 ASCII
Directives @base      
@forAll      
@forSome      
@keywords      
@prefix      
Lists
() (DAML lists)      
{ … } (statement lists)      
Literals true / false
(Boolean)
     
xsd:decimal
(decimal arbitrary length)
     
xsd:double
(decimal double)
     
xsd:integer
(decimal integer)
     
Syntactic sugar RDF paths      
QNames      
a/@a (equiv. to rdf:type)      
[] (shorthand for blank node)      
=> (x implies y)      
<= (y implies x)      
= (x is equivalent to y)      
, (repeat object in list)      
; (repeat subject/verb in list)      

See also edit

External links edit

  • Notation 3 W3C Submission
  • Notation 3 Outline on W3C Design Issues by Tim Berners-Lee
  • Notation 3 Primer: Getting into RDF & Semantic Web using N3
  • A Rough Guide to Notation3
  • RDF for "Little Languages"
  • An editing mode of N3 for Emacs
  • An editing mode of N3 for vim
  • An editing mode of N3 for textmate
  • An editing mode of N3 for gedit
  • EulerGUI, an IDE centered on N3 editor with translation from RDF, with validation, prefix management, uploading of resources, graph view, table view, etc.

References edit

  1. ^ Berners-Lee, T. I. M.; Connolly, D. A. N.; Kagal, L.; Scharf, Y.; Hendler, J. I. M. (2008). "N3Logic: A logical framework for the World Wide Web". Theory and Practice of Logic Programming. 8 (3). arXiv:0711.1533. doi:10.1017/S1471068407003213.