Github user nickwallen commented on a diff in the pull request:
https://github.com/apache/metron/pull/856#discussion_r158582738
--- Diff:
metron-stellar/stellar-common/src/main/java/org/apache/metron/stellar/common/utils/validation/annotations/StellarExpressionMap.java
---
@@ -0,0 +1,83 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.metron.stellar.common.utils.validation.annotations;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * {@code StellarExpressionMap} is applied to
+ * a {@code Map} which contains Stellar expressions as the values, such
+ * that calling .toString() on a value of this map yields a Stellar
expression.
+ *
+ * The key is used as the name the expression.
+ *
+ * It is possible for a {@code Map} to contain other maps or complex
objects,
+ * thus this annotation contains properties that give information on
evaluation of the {@code Map}
+ * should it be complex and contain nested maps.
+ *
+ */
+@Documented
+@Retention(RetentionPolicy.RUNTIME)
+@Target({ElementType.FIELD,ElementType.TYPE})
+public @interface StellarExpressionMap {
+
+ /**
+ * The Name to give to the map
+ *
+ * @return String of the name
+ */
+ String name() default "default";
+
+ /**
+ * A map may be a StellarExpressionMap based on the type
+ * of another field, this is that field's name.
+ *
+ * {@code} qualify_with_field_type} is the type of that field
+ *
+ * @return Field Name or empty String
+ */
+ String qualify_with_field() default "";
--- End diff --
These variables_go_against_the_style convention, no? qualify_with_field,
qualify_with_field_type, inner_map_keys
---