What’s New in RDF 1.1 W3C Working Group Note 25 February 2014 This version: http://www.w3.org/TR/2014/NOTE-rdf11-new-20140225/ Latest published version: http://www.w3.org/TR/rdf11-new/ Previous version: http://www.w3.org/TR/2013/WD-rdf11-new-20131217/ Editor: Please check the errata for any errors or issues reported since publication. Copyright © 2014 W3C ® ( MIT , ERCIM , Keio, Beihang), All Rights Reserved. W3C liability, trademark and document use rules apply.

Abstract This document provides the reader with a summary of changes to RDF introduced in RDF version 1.1.

1. Introduction This document is informative in nature. Its purpose is to provide a summary of differences between RDF versions 1.0 and 1.1 and to introduce new additions in a very brief manner. Readers new to RDF should start with the RDF 1.1 Primer [ RDF11-PRIMER ] and then move on to the specifications in which they are most interested. This document is meant to serve as a guide for those already familiar with RDF 1.0 who wish to understand changes in version 1.1. Normative specifications of RDF can be found in the following documents: A document describing the basic concepts underlying RDF, as well as abstract syntax ("RDF Concepts and Abstract Syntax") [ RDF11-CONCEPTS ]

] A document describing the formal model-theoretic semantics of RDF ("RDF Semantics") [ RDF11-MT ]

] Specifications of concrete syntaxes for RDF, such as Turtle [ TURTLE ], TriG [ TRIG ], N-Triples [ N-TRIPLES ], N-Quads [ N-QUADS ] and JSON-LD [ JSON-LD ]. RDFa [ RDFA-PRIMER ] is also a concrete syntax for RDF, but it was not defined by the RDF Working Group. The 2004 RDF/XML syntax was updated to be in line with the RDF 1.1 specifications [ RDF11-XML ].

], TriG [ ], N-Triples [ ], N-Quads [ ] and JSON-LD [ ]. RDFa [ ] is also a concrete syntax for RDF, but it was not defined by the RDF Working Group. The 2004 RDF/XML syntax was updated to be in line with the RDF 1.1 specifications [ ]. A document describing RDF Schema [ RDF11-SCHEMA ], which provides a data-modeling vocabulary for RDF data. The following prefixes are used in this document: Prefixes and IRIs Namespace prefix Namespace IRI RDF vocabulary rdf http://www.w3.org/1999/02/22-rdf-syntax-ns# The RDF built-in vocabulary [ RDF11-SCHEMA ] xsd http://www.w3.org/2001/XMLSchema# The RDF-compatible XML Schema datatypes

2. Abstract Syntax 2.1 Identifiers Identifiers in RDF 1.1 are now IRIs. The following table summarizes specific differences. Identifiers in RDF 1.0 and 1.1. RDF 1.0 RDF 1.1 Identifiers RDF URI References IRIs Additional characters "<", ">", "{", "}", "|", "\", "^", "`", ‘"’ (double quote), and " " (space) None; percent-encoding must be used as described in section 2.1 of [ RFC3986 ]. Fragment identifiers Fragment identifiers interpreted in accordance with RDF/XML representation. Full IRIs, including possible fragment identifiers, denote a resource. Blank nodes RDF 1.0 makes no reference to any internal structure of blank nodes. Given two blank nodes, it is possible to determine whether or not they are the same. Blank node identifiers are local identifiers that are used in some concrete RDF syntaxes or RDF store implementations. They are always locally scoped to the file or RDF store, and are not persistent or portable identifiers for blank nodes. See the section in Concepts and Abstract Syntax regarding Skolemization if blank nodes must be shared between implementations. 2.2 Literals The following table summarizes differences in the handling of literals. Literals in RDF 1.0 and 1.1. RDF 1.0 RDF 1.1 Language tags Literals with a language tag did not have a datatype URI. Literals with language tags now have the datatype IRI rdf:langString . Simple literals Simple literals could appear directly, e.g. "a literal". All literals have datatypes; serializations or other implementations might choose to support syntax for simple literals, but only as synonyms for xsd:string literals. Control codes in the #x0-#x1F range were permitted. The xsd:string datatype does not permit the #x0 character, and implementations might not permit control codes in the #x1-#x1F range. A literal with type xsd:string containing the #x0 character is ill-typed. Language tags Permitted language tags that adhered to the generic tag/subtag syntax of language tags, but were not well-formed according to [ BCP47 ]. Language tags must be well-formed according to [ BCP47 ]. Planned updates to DOM version 4 [ DOM4 ] are not complete as of this writing. The Working Group decided to follow the changes to the DOM in order to support the new datatype rdf:HTML . The unfinished status of DOM version 4 is why both rdf:HTML and rdf:XMLLiteral are non-normative in RDF 1.1 Concepts. RDF 1.1 Concepts and Abstract Syntax clarifies functionality deemed to be useful for those including fragments of XML and HTML content in RDF serialization formats. 2.3 Datasets RDF 1.1 introduces the concept of RDF Datasets. An RDF Dataset is a collection of RDF Graphs. SPARQL 1.1 [ SPARQL11-OVERVIEW ] also defines the concept of an RDF Dataset, but the definition in RDF 1.1 differs slightly in that RDF 1.1 allows RDF Graphs to be identified using either an IRI or a blank node. More information is available in RDF 1.1 Concepts and Abstract Syntax. The semantics of RDF Datasets are minimally specified as of RDF 1.1. The Working Group published a draft Note discussing issues related to semantics of datasets [ RDF11-DATASETS ]. RDF Graphs may be named using an IRI or a blank node. RDF Graphs that are so named are called named graphs. RDF 1.1 includes three new serialization formats capable of representing multiple graphs. 2.4 Datatypes A table of RDF-compatible XSD datatypes has been added to RDF 1.1 Concepts and Abstract Syntax. Any XSD datatypes not represented in this table are incompatible with RDF. The following XSD 1.1 datatypes were added to the list of RDF-compatible datatypes: xsd:duration

xsd:dayTimeDuration

xsd:yearMonthDuration

xsd:dateTimeStamp Support for rdf:XMLLiteral support is now optional. Technically, support for any individual datatype is optional and therefore may not be present in a given implementation. RDF-conformant specifications may require specific datatype maps.

3. New Serialization Formats RDF 1.1 introduces a number of new serialization formats. RDF 1.1 Concepts and Abstract Syntax makes it clear that RDF/XML is no longer the only recommended serialization format; RDF itself should be considered to be the data model (the abstract syntax), not any particular serialization. Fig. 1 RDF 1.0 and 1.1 serialization formats

4. Semantics Most of the changes between RDF and RDF 1.1 do not have any effect on implementations of entailment. Datatype entailment formally refers to a set of 'recognized' datatypes, replacing datatype maps in RDF 1.0 Semantics, but this does not have any effect on implementation. Datatype entailment formally refers to a set of 'recognized' datatype IRIs. The RDF 1.0 Semantics used the concept of a datatype map: in the new semantic description, this is the mapping from recognized IRIs to the datatypes they identify. This change does not have any effect on implementation or semantic entailments. RDF entailment has two required datatypes xsd:string and rdf:langString which must be recognized, but this doesn't appreciably add to RDF entailment as these two datatypes replace plain literals. One change that does affect entailment is that graphs containing invalid literals (e.g., "a"^^xsd:integer ) are immediately inconsistent for recognized datatypes, even in sub-RDFS entailment regimes. RDF 1.1 includes RDF Datasets. However, the semantics of RDF Datasets in RDF 1.1 is minimal and entailment per se is only defined on RDF graphs so there are no changes here.