+ *
+ * Note that sequences implement the typed data ComplexDataInterface (via the
+ * parent ArrayElement) rather than the ListInterface. This is because sequences
+ * may have named keys, which is not supported by ListInterface. From the typed
+ * data API perspective sequences are handled as ordered mappings without
+ * metadata about existing properties.