- public Collection<SchemaNodeIdentifier> parseArgumentValue(final StmtContext<?, ?, ?> ctx, final String value)
- throws SourceException {
-
- final List<String> keyTokens = StmtContextUtils.LIST_KEY_SPLITTER.splitToList(value);
-
- // to detect if key contains duplicates
- if ((new HashSet<>(keyTokens)).size() < keyTokens.size()) {
- throw new IllegalArgumentException();
+ public Collection<SchemaNodeIdentifier> parseArgumentValue(final StmtContext<?, ?, ?> ctx, final String value) {
+ final Builder<SchemaNodeIdentifier> builder = ImmutableSet.<SchemaNodeIdentifier>builder();
+ int tokens = 0;
+ for (String keyToken : StmtContextUtils.LIST_KEY_SPLITTER.split(value)) {
+ builder.add(SchemaNodeIdentifier.create(false, Utils.qNameFromArgument(ctx, keyToken)));
+ tokens++;