1
2 package dev.metaschema.core.metapath.item.node;
3
4 import java.net.URI;
5
6 import dev.metaschema.core.metapath.function.InvalidTypeFunctionException;
7 import dev.metaschema.core.metapath.item.atomic.IAnyAtomicItem;
8 import edu.umd.cs.findbugs.annotations.Nullable;
9
10
11
12
13 public interface IDocumentBasedNodeItem extends INodeItem {
14
15 @Override
16 default IModelNodeItem<?, ?> getParentContentNodeItem() {
17
18 return null;
19 }
20
21
22
23
24
25
26 @Nullable
27 URI getDocumentUri();
28
29 @Override
30 default URI getBaseUri() {
31 return getDocumentUri();
32 }
33
34 @Override
35 default INodeItem getParentNodeItem() {
36
37 return null;
38 }
39
40 @Override
41 default IAnyAtomicItem toAtomicItem() {
42 throw new InvalidTypeFunctionException(InvalidTypeFunctionException.DATA_ITEM_IS_FUNCTION, this);
43 }
44 }