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)

Reply via email to