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 }