Notation3
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]
| Filename extension | 
.n3 | 
|---|---|
| Internet media type | 
text/n3;charset=utf-8 | 
| Developed by | Tim Berners-Lee | 
| Type of format | semantic web | 
| Container for | RDF data | 
| Standard | n3 | 
| Website | www | 
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
    
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
    
| Feature | Notation3 | Turtle | N-Triples | |
|---|---|---|---|---|
| Character encoding | UTF-8 | ASCII | ||
| Directives | @base |  |  |  | 
| @forAll |  |  |  | |
| @forSome |  |  |  | |
| @keywords |  |  |  | |
| @prefix |  |  |  | |
| Lists | ||||
| ()(DAML lists) |  |  |  | |
| <nowiki>{ … }</nowiki>(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. tordf:type) |  |  |  | |
| [](shorthand for blank node) |  |  |  | |
| <nowiki>=</nowiki>>(x implies y) |  |  |  | |
| <<nowiki>=</nowiki>(y implies x) |  |  |  | |
| <nowiki>=</nowiki>(x is equivalent to y) |  |  |  | |
| ,(repeat object in list) |  |  |  | |
| ;(repeat subject/verb in list) |  |  |  | |
See also
    
    
External links
    
- 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
    
- 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.
    This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.