01: /*
02: (c) Copyright 2003, 2004, 2005, 2006, 2007, 2008 Hewlett-Packard Development Company, LP
03: [See end of file]
04: $Id: RDFVisitor.java,v 1.6 2008/01/02 12:05:48 andy_seaborne Exp $
05: */
06:
07: package com.hp.hpl.jena.rdf.model;
08:
09: /**
10: @author kers
11: The interface for visiting (ie type-dispatching) an RDF Node.
12: */
13: public interface RDFVisitor {
14: /**
15: Method to call when visiting a blank node r with identifier id.
16: @param r the blank RDF node being visited
17: @param id the identifier of that node
18: @return value to be returned from the visit
19: */
20: Object visitBlank(Resource r, AnonId id);
21:
22: /**
23: Method to call when visiting a URI node r with the given uri.
24: @param r the URI node being visited
25: @param uri the URI string of that node
26: @return value to be returned from the visit
27: */
28: Object visitURI(Resource r, String uri);
29:
30: /**
31: Method to call when visiting a literal RDF node l.
32: @param l the RDF Literal node
33: @return a value to be returned from the visit
34: */
35: Object visitLiteral(Literal l);
36: }
37:
38: /*
39: (c) Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008 Hewlett-Packard Development Company, LP
40: All rights reserved.
41:
42: Redistribution and use in source and binary forms, with or without
43: modification, are permitted provided that the following conditions
44: are met:
45:
46: 1. Redistributions of source code must retain the above copyright
47: notice, this list of conditions and the following disclaimer.
48:
49: 2. Redistributions in binary form must reproduce the above copyright
50: notice, this list of conditions and the following disclaimer in the
51: documentation and/or other materials provided with the distribution.
52:
53: 3. The name of the author may not be used to endorse or promote products
54: derived from this software without specific prior written permission.
55:
56: THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
57: IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
58: OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
59: IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
60: INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
61: NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
62: DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
63: THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
64: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
65: THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
66: */
|