%-------------------------------------------------------------------------% % % Licensed to the Apache Software Foundation (ASF) under one or more % contributor license agreements. See the NOTICE file distributed with % this work for additional information regarding copyright ownership. % The ASF licenses this file to You 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. % %-------------------------------------------------------------------------% :- module rdf. :- interface. :- import_module string. :- import_module graph. :- func rdf(string) = string is det. :- pred type(graph, string, string). :- mode type(in, in, in) is semidet. :- mode type(in, out, in) is nondet. :- mode type(in, in, out) is nondet. :- mode type(in, out, out) is nondet. :- implementation. rdf(S) = "http://www.w3.org/1999/02/22-rdf-syntax-ns#" ++ S. type(Graph, Subject, Type) :- contains(Graph, Subject, rdf("type"), Type).