1 /*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18 package org.apache.any23.vocab;
19
20 import org.eclipse.rdf4j.model.IRI;
21
22 /**
23 * This class models an internal <i>Sindice</i> Vocabulary to describe resource domains and Microformat nesting
24 * relationships.
25 *
26 * @author Davide Palmisano (dpalmisano@gmail.com)
27 * @author Michele Mostarda (michele.mostarda@gmail.com)
28 */
29 public class SINDICE extends Vocabulary {
30
31 public static final String DOMAIN = "domain";
32
33 public static final String NESTING = "nesting";
34
35 public static final String NESTING_ORIGINAL = "nesting_original";
36
37 public static final String NESTING_STRUCTURED = "nesting_structured";
38
39 public static final String SIZE = "size";
40
41 public static final String DATE = "date";
42
43 /**
44 * The namespace of the vocabulary as a string.
45 */
46 public static final String NS = "http://vocab.sindice.net/any23#";
47
48 private static SINDICE instance;
49
50 public static SINDICE getInstance() {
51 if (instance == null) {
52 instance = new SINDICE();
53 }
54 return instance;
55 }
56
57 /**
58 * The namespace of the vocabulary as a IRI.
59 */
60 public final IRI NAMESPACE = createIRI(NS);
61
62 /**
63 * This property expresses the DNS domain of the resource on which it is applied. It is intended to be used to keep
64 * track of the domain provenance of each resource.
65 */
66 public final IRI domain = createProperty(DOMAIN);
67
68 /**
69 * This property links a resource with a <i>blank node</i> that represents a nested <i>Microformat</i> node.
70 */
71 public final IRI nesting = createProperty(NESTING);
72
73 /**
74 * This property is used to keep track of the original nested <i>RDF property</i>.
75 */
76 public final IRI nesting_original = createProperty(NESTING_ORIGINAL);
77
78 /**
79 * This property links the resource with a <i>node</i> representing the nested <i>Microformat</i>
80 *
81 */
82 public final IRI nesting_structured = createProperty(NESTING_STRUCTURED);
83
84 /**
85 * Size meta property indicating the number of triples within the returned dataset.
86 */
87 public final IRI size = createProperty(SIZE);
88
89 /**
90 * Date meta property indicating the data generation time.
91 */
92 public final IRI date = createProperty(DATE);
93
94 private IRI createClass(String localName) {
95 return createClass(NS, localName);
96 }
97
98 private IRI createProperty(String localName) {
99 return createProperty(NS, localName);
100 }
101
102 private SINDICE() {
103 super(NS);
104 }
105
106 }