01: /*
02: (c) Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008 Hewlett-Packard Development Company, LP
03: [See end of file]
04: $Id: TripleMatch.java,v 1.11 2008/01/02 12:06:55 andy_seaborne Exp $
05: */
06:
07: package com.hp.hpl.jena.graph;
08:
09: /**
10: Interface for triple matching; may become obsolete. <i>do not assume this is
11: stable</i>. Triple matches are defined by subject, predicate, and object, and
12: may be converted to triples [which in fact subsume the work of TripleMatch].
13:
14: @author Jeremy Carroll
15: @author kers
16: */
17: public interface TripleMatch {
18:
19: /** If it is known that all triples selected by this filter will
20: * have a common subject, return that node, otherwise return null */
21: Node getMatchSubject();
22:
23: /** If it is known that all triples selected by this match will
24: * have a common predicate, return that node, otherwise return null */
25: Node getMatchPredicate();
26:
27: /** If it is known that all triples selected by this match will
28: * have a common object, return that node, otherwise return null */
29: Node getMatchObject();
30:
31: /**
32: Answer a Triple capturing this match.
33: */
34: Triple asTriple();
35: }
36:
37: /*
38: (c) Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008 Hewlett-Packard Development Company, LP
39: All rights reserved.
40:
41: Redistribution and use in source and binary forms, with or without
42: modification, are permitted provided that the following conditions
43: are met:
44:
45: 1. Redistributions of source code must retain the above copyright
46: notice, this list of conditions and the following disclaimer.
47:
48: 2. Redistributions in binary form must reproduce the above copyright
49: notice, this list of conditions and the following disclaimer in the
50: documentation and/or other materials provided with the distribution.
51:
52: 3. The name of the author may not be used to endorse or promote products
53: derived from this software without specific prior written permission.
54:
55: THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
56: IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
57: OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
58: IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
59: INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
60: NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
61: DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
62: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
63: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
64: THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
65: */
|