Yang Xia created TINKERPOP-3261:
-----------------------------------
Summary: Enable multiple label support on vertex with configurable
label cardinality
Key: TINKERPOP-3261
URL: https://issues.apache.org/jira/browse/TINKERPOP-3261
Project: TinkerPop
Issue Type: Task
Affects Versions: 4.0.0
Reporter: Yang Xia
Vertices are currently limited to a single immutable label assigned at
creation. This prevents modeling common real-world scenarios where entities
naturally belong to multiple categories (e.g., a person who is both an employee
and a manager).
Introduce a configurable LabelCardinality that controls how many labels a
vertex may have and whether they can be mutated after creation. Three proposed
modes: ONE (current behavior, default), ONE_OR_MORE (mutable, minimum one),
ZERO_OR_MORE (fully flexible).
New steps:
- labels() — flatMap step emitting each label as a traverser
- addLabel(String, String...) — add labels to a vertex
- dropLabel(String, String...) — remove specific labels
- dropLabels() — remove all labels
Edge labels remain at cardinality ONE. The infrastructure would support future
edge multi-label enablement without wire format changes.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)