[ 
https://issues.apache.org/jira/browse/TINKERPOP-3261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18092394#comment-18092394
 ] 

ASF GitHub Bot commented on TINKERPOP-3261:
-------------------------------------------

spmallette commented on code in PR #3483:
URL: https://github.com/apache/tinkerpop/pull/3483#discussion_r3494063993


##########
docs/src/dev/provider/gremlin-semantics.asciidoc:
##########
@@ -2564,6 +2650,12 @@ the possible values are:
 ** 8 for including values (VertexProperty)
 ** 15 for including all
 
+The label format in the map is controlled by source-level `with("multilabel")` 
and `with("singlelabel")` options, not
+by the graph's `LabelCardinality`. When `"multilabel"` is present and 
`"singlelabel"` is not, the label value is a

Review Comment:
   > When `"multilabel"` is present and `"singlelabel"` is not,
   
   that's an odd way to say that, no? it's not like they make any sense both 
being configured.  ah, but then:
   
   > When both options are present on the same source, `"singlelabel"` always 
takes precedence regardless of the order in which they were applied.
   
   I'm not sure I like that. I suppose it's better than an error? Was this an 
explicit design choice?
   





> 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
>            Priority: Major
>
> 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