anchor.diff:  ----
   
   This way you can then use methods like getPartByStyle to retrieve particular content parts.
  -[source]
  +
   .Retrieve content part by style
  +[source]
   ----
   ContentPart style_two = document.getPartByStyle("style two");
   // other possible way of retrieving parts:
  
positive.code: 
  === Options
  
  {asciidoctor-url}[Asciidoctor] supports different kind of options, like +in_place+ which renders the output inside a file, +template_dir+ used to provide a directory of Tilt-compatible templates to be used instead of the default built-in templates, or for example +attributes+ option where we can set key-value pairs of attributes that will be used within asciidoc document.
  
  The second parameter of +render+ methods are a +java.util.Map+ where all these options can be set.
  
  .Example of using in_place Option and backend Attribute
  [source, java]
  ----
  Map<String, Object> attributes = new HashMap<String, Object>();
  attributes.put("backend", "docbook");
  
negative.code: product.setSmallImage(new Image((String)document.getHeader().getAttributes().get("smallImage"),product.getTitle()));
  
  product.setDescription(document.getPartByStyle("description").getContent());
  
  List<ContentPart> images = document.getPartsByContext("image");
  for (ContentPart image : images) {
      Image image = new Image();
      image.setSrc((String) image.getAttributes().get("target"));
      image.setAlt((String) image.getAttributes().get("alt"));
      product.getImages().add(image);
  }
  
  product.setDetail(document.getPartByStyle("detail").getContent());
  ----
  
  