1   /*
2    * RDFpro - An extensible tool for building stream-oriented RDF processing libraries.
3    * 
4    * Written in 2014 by Francesco Corcoglioniti with support by Marco Amadori, Michele Mostarda,
5    * Alessio Palmero Aprosio and Marco Rospocher. Contact info on http://rdfpro.fbk.eu/
6    * 
7    * To the extent possible under law, the authors have dedicated all copyright and related and
8    * neighboring rights to this software to the public domain worldwide. This software is
9    * distributed without any warranty.
10   * 
11   * You should have received a copy of the CC0 Public Domain Dedication along with this software.
12   * If not, see <http://creativecommons.org/publicdomain/zero/1.0/>.
13   */
14  package eu.fbk.rdfpro.jsonld;
15  
16  import java.util.Collections;
17  import java.util.Set;
18  
19  import org.openrdf.model.URI;
20  import org.openrdf.rio.RDFFormat;
21  import org.openrdf.rio.RioSetting;
22  import org.openrdf.rio.helpers.RioSettingImpl;
23  
24  /**
25   * Constants for the Turtle Quads (TQL) format.
26   * <p>
27   * Constant {@link #FORMAT} is a local alias for the JSON-LD RDFFormat defined in
28   * {@link RDFFormat#JSONLD}. Constant {@link #ROOT_TYPES} is an optional setting controlling the
29   * writing of JSON-LD data by {@link JSONLDWriter}.
30   * </p>
31   */
32  public class JSONLD {
33  
34      /** RDFFormat constant for the JSON-LD format (alias of {@link RDFFormat#JSONLD}). */
35      public static final RDFFormat FORMAT = RDFFormat.JSONLD;
36  
37      /**
38       * Optional setting specifying the {@code rdf:type}(s) of RDF resources to be emitted as top
39       * level JSONLD nodes.
40       */
41      public static final RioSetting<Set<URI>> ROOT_TYPES = new RioSettingImpl<Set<URI>>(
42              "eu.fbk.jsonld.roottypes", "The rdf:type(s) of RDF resources to be emitted "
43                      + "as root (top level) nodes in the produced JSONLD",
44              Collections.<URI>emptySet());
45  
46  }