Skip to contentPackage: ListDescriptor
ListDescriptor
Coverage
1: /*
2: * JOPA
3: * Copyright (C) 2023 Czech Technical University in Prague
4: *
5: * This library is free software; you can redistribute it and/or
6: * modify it under the terms of the GNU Lesser General Public
7: * License as published by the Free Software Foundation; either
8: * version 3.0 of the License, or (at your option) any later version.
9: *
10: * This library is distributed in the hope that it will be useful,
11: * but WITHOUT ANY WARRANTY; without even the implied warranty of
12: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13: * Lesser General Public License for more details.
14: *
15: * You should have received a copy of the GNU Lesser General Public
16: * License along with this library.
17: */
18: package cz.cvut.kbss.ontodriver.descriptor;
19:
20: import cz.cvut.kbss.ontodriver.model.Assertion;
21: import cz.cvut.kbss.ontodriver.model.NamedResource;
22:
23: import java.net.URI;
24:
25: /**
26: * This interface declares the basic methods for working with sequences in JOPA.
27: */
28: public interface ListDescriptor {
29:
30: /**
31: * Gets context in which the list is stored.
32: *
33: * @return Context URI, {@code null} if it is not set and the default is assumed
34: */
35: URI getContext();
36:
37: /**
38: * Sets context of the list.
39: *
40: * @param context Context URI, can be {@code null}
41: */
42: void setContext(URI context);
43:
44: /**
45: * Gets owner of the list.
46: * <p>
47: * That is, the named resource which is at the head of the list. In object
48: * model, it is the owning entity.
49: *
50: * @return List owner
51: */
52: NamedResource getListOwner();
53:
54: /**
55: * Gets the property assertion which connects the list to its owner.
56: *
57: * @return Property assertion
58: * @see #getListOwner()
59: */
60: Assertion getListProperty();
61:
62: /**
63: * Gets the property assertion which connects the list nodes to each other.
64: *
65: * @return Property assertion
66: */
67: Assertion getNextNode();
68: }