import org.onap.sdc.tosca.parser.api.ISdcCsarHelper;
 import org.onap.sdc.toscaparser.api.CapabilityAssignment;
 import org.onap.sdc.toscaparser.api.CapabilityAssignments;
+import org.onap.sdc.toscaparser.api.elements.Metadata;
 import org.onap.sdc.toscaparser.api.NodeTemplate;
 import org.onap.sdc.toscaparser.api.RequirementAssignment;
 
      * @throws PolicyDecodingException if extract fails
      */
     public Content extractInfo(final NodeTemplate node) throws PolicyDecodingException {
-
-        LOGGER.debug("the meta data of this nodetemplate = " + sdcCsarHelper.getNodeTemplateMetadata(node));
+        Metadata metaData = sdcCsarHelper.getNodeTemplateMetadata(node);
+        LOGGER.debug("the meta data of this nodetemplate = " + metaData);
         final List<NodeTemplate> lnodeChild = sdcCsarHelper.getNodeTemplateChildren(node);
         LOGGER.debug("the size of lnodeChild = " + lnodeChild.size());
 
         LOGGER.debug("the size of cp is =" + lnodeVduCp.size());
 
         final Content content = new Content();
+        content.setResources(metaData.getValue("name"));
+        content.setIdentity(content.getPolicyType() + "_" + content.getResources());
         extractInfoVdu(lnodeVdu, content);
         extractInfoVduCp(lnodeVduCp, content);
         if (content.getFlavorFeatures().isEmpty()) {
             flavorAttribute.setAttributeName("flavorName");
             flavorAttribute.setAttributeValue("");
             final Directive flavorDirective = new Directive();
-            flavorDirective.setType("flavor_directive");
+            flavorDirective.setType("flavor_directives");
             flavorDirective.getAttributes().add(flavorAttribute);
             final FlavorFeature flavorFeature = new FlavorFeature();
             flavorFeature.setId(sdcCsarHelper.getNodeTemplatePropertyLeafValue(node, "name"));
 
         LOGGER.debug("the size of Vf = " + lnodeVf.size());
         final ExtractFromNode extractFromNode = new ExtractFromNode();
         extractFromNode.setSdcCsarHelper(sdcCsarHelper);
+        final String serviceName = sdcCsarHelper.getServiceMetadata().getValue("name");
+        LOGGER.debug("the name of the service = " + serviceName);
         for (final NodeTemplate node : lnodeVf) {
             final Content content = extractFromNode.extractInfo(node);
             if (content != null) {
                 configBody.setRiskType(decoderParameters.getRiskType());
                 configBody.setGuard("false");
                 content.getPolicyScope().add("HPA");
+                content.getPolicyScope().add(serviceName);
                 configBody.setContent(content);
                 policy.setConfigBody(gson.toJson(configBody));
                 policys.add(policy);
 
 
         assertTrue(policy.getConfigBody().contains("\"id\":\"vdu_vnf_1\""));
         assertTrue(policy.getConfigBody().contains("\"type\":\"tosca.node.nfv.Vdu.Compute\""));
-        assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directive\""));
+        assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directives\""));
         assertTrue(policy.getConfigBody().contains("\"hpa-feature\":\"BasicCapabilities\""));
         assertTrue(policy.getConfigBody().contains("\"mandatory\":\"true\""));
         assertTrue(policy.getConfigBody().contains("\"architecture\":\"generic\""));
 
         assertTrue(policy.getConfigBody().contains("\"id\":\"vdu_vnf_1\""));
         assertTrue(policy.getConfigBody().contains("\"type\":\"tosca.node.nfv.Vdu.Compute\""));
-        assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directive\""));
+        assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directives\""));
         assertTrue(policy.getConfigBody().contains("\"attribute_name\":\"flavorName\""));
         assertTrue(policy.getConfigBody().contains("\"attribute_value\":\"\""));
         assertTrue(policy.getConfigBody().contains("\"hpa-feature\":\"SriovNICNetwork\""));
 
         assertTrue(policy.getConfigBody().contains("\"id\":\"vdu_vnf_1\""));
         assertTrue(policy.getConfigBody().contains("\"type\":\"tosca.node.nfv.Vdu.Compute\""));
-        assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directive\""));
+        assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directives\""));
         assertTrue(policy.getConfigBody().contains("\"attribute_name\":\"flavorName\""));
         assertTrue(policy.getConfigBody().contains("\"attribute_value\":\"\""));
         assertTrue(policy.getConfigBody().contains("\"hpa-feature\":\"pciePassthrough\""));
 
         assertTrue(policy.getConfigBody().contains("\"id\":\"vdu_vnf_1\""));
         assertTrue(policy.getConfigBody().contains("\"type\":\"tosca.node.nfv.Vdu.Compute\""));
-        assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directive\""));
+        assertTrue(policy.getConfigBody().contains("\"type\":\"flavor_directives\""));
         assertTrue(policy.getConfigBody().contains("\"attribute_name\":\"flavorName\""));
         assertTrue(policy.getConfigBody().contains("\"attribute_value\":\"\""));
         assertTrue(policy.getConfigBody().contains("\"hpa-feature\":\"hugePages\""));