1: <?php
2:
3: declare(strict_types=1);
4:
5: namespace LaravelUi5\OData\Edm\Contracts\Annotation;
6:
7: /**
8: * A single named property within a record annotation value.
9: *
10: * Each property has a name that corresponds to a property defined
11: * on the term's record type, and a value that is itself an
12: * AnnotationValueInterface — which may be a constant, a nested
13: * record, or a collection.
14: *
15: * @see OData CSDL XML v4.01 §14.4.12 (Record)
16: */
17: interface PropertyValueInterface
18: {
19: /**
20: * The unqualified name of this property as declared on the
21: * term's record type, e.g. "CollectionPath" or "Parameters".
22: */
23: public function getProperty(): string;
24:
25: /**
26: * The value assigned to this property.
27: */
28: public function getValue(): AnnotationValueInterface;
29: }
30: