/******************************************************************************* * Copyright 2012 University of Southern California * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * This code was developed by the Information Integration Group as part * of the Karma project at the Information Sciences Institute of the * University of Southern California. For more information, publications, * and related projects, please see: http://www.isi.edu/integration ******************************************************************************/ package edu.isi.karma.modeling; import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.util.ArrayList; import java.util.List; public abstract class Uris { public static final String BLANK_NODE_PREFIX = "_:"; public static final String THING_URI = Namespaces.OWL + "Thing"; public static final String RDFS_SUBCLASS_URI = Namespaces.RDFS + "subClassOf"; public static final String RDF_TYPE_URI = Namespaces.RDF + "type"; public static final String RDFS_CLASS_URI = Namespaces.RDFS + "Class"; public static final String RDFS_LABEL_URI = Namespaces.RDFS + "label"; public static final String RDFS_COMMENT_URI = Namespaces.RDFS + "comment"; public static final String RDF_VALUE_URI = Namespaces.RDF + "value"; public static final String OWL_SAMEAS_URI = Namespaces.OWL + "sameAs"; // Karma Internal URIs public static final String DEFAULT_LINK_URI = Namespaces.KARMA_DEV + "defaultLink"; public static final String DEFAULT_NODE_URI = Namespaces.KARMA_DEV + "defaultNode"; // public static final String OBJECT_PROPERTY_DIRECT_LINK_URI = Namespaces.KARMA_DEV + "objectPropertyDirectLink"; // public static final String OBJECT_PROPERTY_INDIRECT_LINK_URI = Namespaces.KARMA_DEV + "objectPropertyIndirectLink"; // public static final String OBJECT_PROPERTY_WITH_ONLY_DOMAIN_LINK_URI = Namespaces.KARMA_DEV + "objectPropertyWithOnlyDomainLink"; // public static final String OBJECT_PROPERTY_WITH_ONLY_RANGE_LINK_URI = Namespaces.KARMA_DEV + "objectPropertyWithOnlyRangeLink"; // public static final String OBJECT_PROPERTY_WITHOUT_DOMAIN_AND_RANGE_LINK_URI = Namespaces.KARMA_DEV + "objectPropertyWithoutDomainAndRangeLink"; public static final String CLASS_INSTANCE_LINK_URI = Namespaces.KARMA_DEV + "classLink"; public static final String COLUMN_SUBCLASS_LINK_URI = Namespaces.KARMA_DEV + "columnSubClassOfLink"; public static final String MODEL_HAS_DATA_URI = Namespaces.KARMA_DEV + "hasData"; public static final String DATAPROPERTY_OF_COLUMN_LINK_URI = Namespaces.KARMA_DEV + "dataPropertyOfColumnLink"; public static final String OBJECTPROPERTY_SPECIALIZATION_LINK_URI = Namespaces.KARMA_DEV + "objectPropertySpecialization"; //SCHEMA.ORG domain and range predicates public static final String SCHEMA_DOMAIN_INCLUDES = Namespaces.SCHEMA + "domainIncludes"; public static final String SCHEMA_RANGE_INCLUDES = Namespaces.SCHEMA + "rangeIncludes"; // R2RML Vocabulary URIs public static final String RR_TRIPLESMAP_CLASS_URI = Namespaces.RR + "TriplesMap"; public static final String RR_SUBJECTMAP_CLASS_URI = Namespaces.RR+ "SubjectMap"; public static final String RR_PREDICATEOBJECTMAP_CLASS_URI = Namespaces.RR+ "PredicateObjectMap"; public static final String RR_OBJECTMAP_CLASS_URI = Namespaces.RR+ "ObjectMap"; public static final String RR_LOGICAL_TABLE_CLASS_URI = Namespaces.RR + "LogicalTable"; public static final String RR_SUBJECTMAP_URI = Namespaces.RR + "subjectMap"; public static final String RR_TABLENAME_URI = Namespaces.RR + "tableName"; public static final String RR_TEMPLATE_URI = Namespaces.RR + "template"; public static final String RR_CONSTANT = Namespaces.RR + "constant"; public static final String RR_PRED_OBJ_MAP_URI = Namespaces.RR + "predicateObjectMap"; public static final String RR_PREDICATE_URI = Namespaces.RR + "predicate"; public static final String RR_OBJECTMAP_URI = Namespaces.RR + "objectMap"; public static final String RR_COLUMN_URI = Namespaces.RR + "column"; public static final String RR_DATATYPE_URI = Namespaces.RR + "datatype"; public static final String RR_LANGUAGE_URI = Namespaces.RR + "language"; public static final String RR_LOGICAL_TABLE_URI = Namespaces.RR + "logicalTable"; public static final String RR_REF_OBJECT_MAP_CLASS_URI = Namespaces.RR + "RefObjectMap"; public static final String RR_PARENT_TRIPLE_MAP_URI = Namespaces.RR + "parentTriplesMap"; public static final String RR_TERM_TYPE_URI = Namespaces.RR + "termType"; public static final String RR_BLANK_NODE_URI = Namespaces.RR + "BlankNode"; public static final String RR_CLASS_URI = Namespaces.RR + "class"; public static final String RR_LITERAL_URI = Namespaces.RR + "Literal"; public static final String KM_BLANK_NODE_PREFIX_URI = Namespaces.KARMA_DEV + "namePrefix"; public static final String KM_NODE_ID_URI = Namespaces.KARMA_DEV + "alignmentNodeId"; public static final String KM_R2RML_MAPPING_URI = Namespaces.KARMA_DEV + "R2RMLMapping"; public static final String KM_STEINER_TREE_ROOT_NODE = Namespaces.KARMA_DEV + "steinerTreeRootNode"; public static final String KM_SOURCE_NAME_URI = Namespaces.KARMA_DEV + "sourceName"; public static final String KM_HAS_TRIPLES_MAP_URI = Namespaces.KARMA_DEV + "hasTriplesMap"; public static final String KM_HAS_SUBJECT_MAP_URI = Namespaces.KARMA_DEV + "hasSubjectMap"; public static final String KM_HAS_OBJECT_MAP_URI = Namespaces.KARMA_DEV + "hasObjectMap"; public static final String KM_HAS_PREDICATE_OBJECT_MAP_URI = Namespaces.KARMA_DEV + "hasPredicateObjectMap"; public static final String KM_HAS_LOGICAL_TABLE_URI = Namespaces.KARMA_DEV + "hasLogicalTable"; public static final String KM_IS_PART_OF_MAPPING_URI = Namespaces.KARMA_DEV + "isPartOfMapping"; public static final String KM_HAS_WORKSHEET_HISTORY_URI = Namespaces.KARMA_DEV + "hasWorksheetHistory"; public static final String KM_MODEL_PUBLICATION_TIME_URI = Namespaces.KARMA_DEV + "modelPublicationTime"; public static final String KM_MODEL_VERSION_URI = Namespaces.KARMA_DEV + "modelVersion"; public static final String KM_SOURCE_TYPE_URI = Namespaces.KARMA_DEV + "sourceType"; public static final String KM_HAS_BLOOMFILTER = Namespaces.KARMA_DEV + "hasBloomFilter"; public static final String KM_HAS_INPUTCOLUMNS = Namespaces.KARMA_DEV + "hasInputColumns"; public static final String KM_HAS_OUTPUTCOLUMNS = Namespaces.KARMA_DEV + "hasOutputColumns"; public static final String KM_HAS_MODELLABEL = Namespaces.KARMA_DEV + "hasModelLabel"; public static final String KM_HAS_BASEURI = Namespaces.KARMA_DEV + "hasBaseURI"; public static final String KM_HAS_OLDHISTORY = Namespaces.KARMA_DEV + "hasOldHistory"; public static final String PROV_ENTITY_URI = Namespaces.PROV + "Entity"; public static final String PROV_WAS_DERIVED_FROM_URI = Namespaces.PROV + "wasDerivedFrom"; // Worksheet properties related URIs public static final String KM_SERVICE_OPTIONS_URI = Namespaces.KARMA_DEV + "hasServiceOptions"; public static final String KM_SERVICE_URL_URI = Namespaces.KARMA_DEV + "serviceUrl"; public static final String KM_SERVICE_REQ_METHOD_URI = Namespaces.KARMA_DEV + "serviceRequestMethod"; public static final String KM_SERVICE_POST_METHOD_TYPE_URI = Namespaces.KARMA_DEV + "servicePostMethodType"; // Linking related URIs public static final String KM_LINKING_MATCHES_URI = Namespaces.KARMA_DEV + "possibleLinkingMatches"; public static final List<String> Uris = new ArrayList<>(); static { List<Field> staticFields = new ArrayList<>(); Field[] allFields = Uris.class.getDeclaredFields(); for (Field field : allFields) { if (Modifier.isStatic(field.getModifiers())) { staticFields.add(field); } } for (Field field : staticFields) { Class<?> t = field.getType(); if (t == String.class && !field.getName().equals("BLANK_NODE_PREFIX")) try { Uris.add((String)field.get(null)); } catch (IllegalArgumentException e) { } catch (IllegalAccessException e) { } } } }