anchor.diff:    X-OCCI-Attribute: occi.compute.architechture="x86_64"
     X-OCCI-Attribute: occi.compute.architechture="x86_64", occi.compute.cores=2
   */
  -//TODO output attribute header as JSON
  -attribute_header:
  -  ATTR_HEADER attribute_attrs
  -;
  -attribute_attrs:
  -  attribute_attr (COMMA attribute_attr)*
  +attribute_header returns [String attribute_header]
  +  : ATTR_HEADER attribute_attrs
  +    {$attribute_header = "{\"attributes\":{"+$attribute_attrs.attribute_attrs+"}}";}
  +;
  +attribute_attrs returns [String attribute_attrs]
  +  : attribute_attr
  +    {$attribute_attrs = $attribute_attr.attribute_attr;}
  +
  +  | multi_attr1 = attribute_attr
  +    {$attribute_attrs = $multi_attr1.attribute_attr;}
  +
  +  (
  +    COMMA multi_attr2 = attribute_attr
  +    {$attribute_attrs += ", " + $multi_attr2.attribute_attr;}
  +  )+
  +
   ;
   
   // ----------------------------------------
  
positive.code: // ---------- All OCCI Headers ------------
  // ----------------------------------------
  
  occi_header:
    (
    //Nice-to-have: merge these 2 rules
      multiple_category_header
    | category_header
  
    //Nice-to-have: merge these 2 rules
    | multiple_link_header
    | link_header
  
    | attribute_header
  
    | location_header
    )+
    EOF
  ;
  
negative.code: ;
  attributes_names returns[String attributes]
    : single_attr = attribute_attr_name
      {$attributes = $single_attr.attribute_name;}
  
    | {$attributes="";}
      multi_attr1 = attribute_attr_name
      {$attributes = $multi_attr1.attribute_name;}
  
      ( multi_attr2 = attribute_attr_name
        {$attributes += ", " + $multi_attr2.attribute_name;}
      )+
  ;
  action_attr returns [String actions]
  