Skip to content

Package: ListDescriptor

ListDescriptor

Coverage

1: /*
2: * JOPA
3: * Copyright (C) 2024 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: * Describes storage of a list.
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 model, it is the owning entity.
48: *
49: * @return List owner
50: */
51: NamedResource getListOwner();
52:
53: /**
54: * Gets the property assertion which connects the list to its owner.
55: *
56: * @return Property assertion
57: * @see #getListOwner()
58: */
59: Assertion getListProperty();
60:
61: /**
62: * Gets the property assertion which connects the list nodes to each other.
63: *
64: * @return Property assertion
65: */
66: Assertion getNextNode();
67: }