protected override ArmTemplate TransformInner(ArmTemplate armTemplate, IArmPropertyValueResolver armPropertyValueResolver)
        {
            var resourceIdProperties    = armTemplate.Json.GetAllChildProperties("resourceId");
            var additionalResourceNames = new HashSet <string>();

            foreach (var resourceIdProperty in resourceIdProperties)
            {
                var resourceId = new ResourceId(resourceIdProperty.Value.Value <string>(), armPropertyValueResolver);
                resourceIdProperty.Value = resourceId.ToParameterisedString();
                additionalResourceNames.Add(resourceId.ResourceParameterName);
            }
            armTemplate.AdditionalResourceNames.AddRange(additionalResourceNames);
            return(armTemplate);
        }