Cinder Volumes are created with the heat resource OS::Cinder::Volume.
 
 As stated in :need:`R-46119`, :need:`R-90748`, :need:`R-03251`, a
-VNF's Heat Orchestration Template's Resource OS::Heat::CinderVolume
+VNF's Heat Orchestration Template's Resource ``OS::Heat::CinderVolume``
 **MAY** be defined in a Base Module, Incremental Module, or Cinder
 Volume Module.
 
 
     :target: VNF
     :keyword: MUST
     :validation_mode: static
-    :updated: casablanca
+    :updated: dublin
 
     If a VNF's Heat Orchestration Template resource attribute
     ``property:`` uses a nested ``get_param``, the nested
     ``get_param`` **MUST** reference an index.
 
+    That is, to obtain a property value, two ``get_param`` intrinsic
+    functions are used.  The second ``get_param`` must be used
+    to obtain an index value used to reference a parameter value in
+    a parameter defined as ``type: comma_delimited_list``.  For
+    example:
+
+    * ``name: {get_param: [ name, get_param: index ] }``
+
+
 metadata
 ++++++++++
 
 
     :target: VNF
     :keyword: MAY
 
-    A VNF's Heat Orchestration Template's Resource OS::Heat::CinderVolume
+    A VNF's Heat Orchestration Template's Resource ``OS::Heat::CinderVolume``
     **MAY** be defined in a Base Module.
 
 .. req::
     :target: VNF
     :keyword: MAY
 
-    A VNF's Heat Orchestration Template's Resource OS::Heat::CinderVolume
+    A VNF's Heat Orchestration Template's Resource ``OS::Heat::CinderVolume``
     **MAY** be defined in an Incremental Module.
 
 .. req::
     :target: VNF
     :keyword: MAY
 
-    A VNF's Heat Orchestration Template's Resource OS::Heat::CinderVolume
+    A VNF's Heat Orchestration Template's Resource ``OS::Heat::CinderVolume``
     **MAY** be defined in a Cinder Volume Module.
 
 ONAP also supports the concept of an optional, independently deployed Cinder
 volume via a separate Heat Orchestration Templates, referred to as a Cinder
 Volume Module. This allows the volume to persist after a Virtual Machine
 (VM) (i.e., OS::Nova::Server) is deleted, allowing the volume to be reused
-on another instance (e.g., during a failover activity).
+on another instance (e.g., during a fail over activity).
 
 .. req::
     :id: R-11200
     be named identical to the base or incremental module it is supporting with
     ``_volume`` appended.
 
+
+.. req::
+    :id: R-589037
+    :keyword: MUST
+    :validation_mode: static
+    :introduced: dublin
+
+    A VNF Heat Orchestration Template's Cinder Volume Module resources section
+    **MUST** only be defined using one of the following:
+
+    * one of more ``OS::Cinder::Volume`` resources
+    * one or more ``OS::Heat::ResourceGroup`` resources that call a nested YAML
+      file that contains only ``OS::Cinder::Volume`` resources
+    * a resource that calls a nested YAML file (static nesting) that contains
+      only ``OS::Cinder::Volume`` resources
+
 .. req::
     :id: R-31141
     :target: VNF
     A VNF's Heat Orchestration Template's Cinder Volume Module Output
     Parameter(s)
     **MUST** include the
-    UUID(s) of the Cinder Volumes created in template,
-    while others **MAY** be included.
+    UUID(s) of the Cinder Volumes created in template.
 
 A VNF's Heat Orchestration Template's Cinder Volume Module Output Parameter(s)
 are only available for the module (base or incremental) that the volume
 
 .. req::
     :id: R-27469
     :target: VNF
-    :keyword: MUST
-    :validation_mode: static
-    :updated: casablanca
+    :keyword: SHOULD
+    :validation_mode: none
+    :updated: dublin
 
     A VNF's Heat Orchestration Template's Resource ``OS::Neutron::Port``
-    that is creating a *Reserve Port* with an IPv4 address Resource ID **MUST**
-    use the naming convention
+    that is creating a *Reserve Port* with an IPv4 address Resource ID
+    **SHOULD** use the naming convention
 
     * ``reserve_port_{vm-type}_{network-role}_floating_ip_{index}``
 
 .. req::
     :id: R-68520
     :target: VNF
-    :keyword: MUST
-    :validation_mode: static
-    :updated: casablanca
+    :keyword: SHOULD
+    :validation_mode: none
+    :updated: dublin
 
     A VNF's Heat Orchestration Template's Resource ``OS::Neutron::Port``
-    that is creating a *Reserve Port* with an IPv6 address Resource ID **MUST**
-    use the naming convention
+    that is creating a *Reserve Port* with an IPv6 address Resource ID
+    **SHOULD** use the naming convention
 
     * ``reserve_port_{vm-type}_{network-role}_floating_v6_ip_{index}``