anchor.diff:  ===== Configuration
   Just as with the Authorization policy, you can define any number of rules you'd like.
   
  -* *rules* (array) : a single rule that your policy will apply if each of the following properties match:
  -** *path* (string) : defines the path you'd like the policy to be applicable to.
  -** *soapAction* (string) : defines the SOAPAction you'd like the policy to be applicable to.
  -** *role* (string) : defines the role you'd like the policy to be applicable to. If you want a single required role to protect your entire API, simply add one item with a path of \".*\" and an action of \"*\".
  -
  -* *multimatch* (boolean) : should the request pass when any or all of the authorization rules pass?
  -* *requestUnmatched* (boolean) : if the request does not match any of the authorization rules, should it pass or fail?
  +* *rules* (array) : A single rule that your policy will apply if each of the following properties match:
  +** *pathPattern* (string) : Defines the path you'd like the policy to be applicable to.
  +** *action* (string) : Defines the SOAPAction you'd like the policy to be applicable to.
  +** *role* (string) : The role the user must have if this pattern matches the request.
  +* *multiMatch* (boolean) : Should the request pass when any or all of the authorization rules pass?  Set to true if all rules must match, false if only one rule must match.
  +* *requestUnmatched* (boolean) : If the request does not match any of the authorization rules, should it pass or fail?  Set to true if you want the policy to *pass* when no rules are matched.
   
   
   ===== Sample Configuration
  
positive.code: {
     "rules" : [
     	{
     		"path": "/admin",
     		"soapAction": "hello",
     		"role": "admin"
     	},
     	{
     		"path": "/",
     		"soapAction": "goodbye",
     		"role": "user"
     	}
     ],
     "multimatch": true,
     "requestUnmatched": false
  }
  ```
  
negative.code: ==== URL Rewriting Policy
  [[policy-url-rewriting]]
  ===== Description
  This policy is used to re-write responses from the back-end API such that they will be modified by 
  fixing up any incorrect URLs found with modified ones.  This is useful because apiman works through 
  an API Gateway, and in some cases an API might return URLs to followup action or data endpoints.  In
  these cases the back-end API will likely be configured to return a URL pointing to the unmanaged API
  endpoint.  This policy can fix up those URL references so that they point to the managed API endpoint
  (the API Gateway endpoint) instead.
  
  TIP: This is a built-in policy and therefore no plugins need to be installed prior to using it.
  
  ===== Configuration
  This policy requires some basic configuration, including a regular expression used to match the
  URL, as well as a replacement value.
  
  * *fromRegex* (string regex) : A regular expression used to identify a matching URL found in the response.
  * *toReplacement* (string) : The replacement URL - regular expression groups identified in the *fromRegex* can be used.
  * *processBody* (boolean) : Set to true if URLs should be replaced in the response body.
  * *processHeaders* (boolean) : Set to true if URLs should be replaced in the response headers.
  
  TIP: This policy *cannot* be used for any other replacements besides URLs - the policy is implemented
  specifically to find and replace valid URLs.  As a result, arbitrary regular expression matching will
  not work (the policy scans for URLs and then matches those URLs against the configured regex).  This
  is done for performance reasons.
  
  ===== Sample Configuration
  SAMPLE CONFIG TBD
  ```json
  {
      "fromRegex" : "https?://[^\/]*\/([.\/]*)",
      "toReplacement" : "https://apiman.example.com/$1",
      "processBody" : true,
      "processHeaders" : true
  
  }
  ```
  
  