  ---
  
  ## The metadata API
  
  Behavior for dealing with `OPTIONS` requests was previously built directly into the class based views. This has now been properly separated out into a Metadata API that allows the same pluggable style as other API policies in REST framework.
  
  This makes it far easier to use a different style for `OPTIONS` responses throughout your API, and makes it possible to create third-party metadata policies.
  
  ---
  
 
</s> remove A viewset is simply a type of class based view that allows you to group multiple views into a single common class.
 </s> add A viewset is simply a type of class-based view that allows you to group multiple views into a single common class. </s> remove Because this class provides the same interface as the `Serializer` class, you can use it with the existing generic class based views exactly as you would for a regular `Serializer` or `ModelSerializer`.
 </s> add Because this class provides the same interface as the `Serializer` class, you can use it with the existing generic class-based views exactly as you would for a regular `Serializer` or `ModelSerializer`.
Behavior for dealing with `OPTIONS` requests was previously built directly into the class-based views. This has now been properly separated out into a Metadata API that allows the same pluggable style as other API policies in REST framework.
  ---
  
  ## The metadata API
  
Behavior for dealing with `OPTIONS` requests was previously built directly into the class-based views. This has now been properly separated out into a Metadata API that allows the same pluggable style as other API policies in REST framework.
  
  This makes it far easier to use a different style for `OPTIONS` responses throughout your API, and makes it possible to create third-party metadata policies.
  
  ---
  
keep keep keep keep replace keep keep keep keep keep
 Replace "class based views" occurrences with "class-based views" (#4251) 
docs/topics/3.0-announcement.md