public static CardinalityValueTraversal list(final Object value) {
            return new CardinalityValueTraversal(list, value);
        }
A {@code VertexProperty} is similar to a {@link Property} in that it denotes a key/value pair associated with an
{@link Vertex}, however it is different in the sense that it also represents an entity that it is an {@link Element}
that can have properties of its own.
<p/>
A property is much like a Java8 {@code Optional} in that a property can be not present (i.e. empty).
The key of a property is always a String and the value of a property is an arbitrary Java object.
Each underlying graph engine will typically have constraints on what Java objects are allowed to be used as values.

@author Matthias Broecheler (me@matthiasb.com)
@author Marko A. Rodriguez (http://markorodriguez.com)
@author Stephen Mallette (http://stephen.genoprime.com)
gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/VertexProperty.java