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

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

amatiushkin commented on pull request #1485:
URL: https://github.com/apache/tinkerpop/pull/1485#issuecomment-950378846


   Ok. I think it make sense to introduce different strategies for importing 
default values. 
   
   Given the impact of this change, I would propose following strategies:
   - default (interim) — defaults are not imported at all, similar to current 
implementation. 
   - Gephi-like — default are imported like in Gephi (all defaults are 
assigned, unless overwritten)
   - explicit — only exact defaults are assigned (empty, self-closing nodes are 
ignored)
   - soft — empty and self-closing nodes are overwriting default values if 
possible
   - custom — user defines behavior as combination of above
   
   The list of exact features is not fully know to me, but I can highlight few 
things:
   - default value has been assigned to a node/edge 
   - node/edge has data element which refers to a key with default value
   - data element in node/edge defines default value
   
   These features needs to be listed in a specification-like fashion in  the 
documentation. I will propose draft, since I am busy with this anyway, but I 
absolutely need to collect your inputs.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@tinkerpop.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Support default attribute values in GraphMLReader
> -------------------------------------------------
>
>                 Key: TINKERPOP-848
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-848
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: io
>    Affects Versions: 3.0.2-incubating
>            Reporter: Pavel Klinov
>            Priority: Trivial
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> Looking at the code of GraphMLReader I see that it doesn't support default 
> values of attributes, which are allowed by the GraphML spec. This is a bit 
> annoying especially if the input defines default values for attributes which 
> are used for mandatory data, e.g. edge labels. 
> One small example is the sample graph at [1]. "d_e" is the label attribute 
> with a default value. There're <edge .. /> elements w/o body later in the 
> document and reading those will throw a "java.lang.IllegalArgumentException: 
> Label can not be null" exception (if the vendor considers edge labels 
> mandatory).
> I'd personaly squash both keyIdMap and keyTypesMap into a single String -> 
> AttrInfo map, where AttrInfo would contain information about the data 
> attribute name, type, and the default value.
> [1] http://www.eecs.wsu.edu/~yyao/DirectedStudyI/Datasets/AS/sample.graphml



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to