diff --git a/documentation/302_configuration.html b/documentation/302_configuration.html
index 1adb802..0098160 100644
--- a/documentation/302_configuration.html
+++ b/documentation/302_configuration.html
@@ -305,11 +305,11 @@
 }
 </code></pre>
 
-<p>This example is similar to the workflows generated by the Xtext project wizard when you create new projects. It uses two convenience classes <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/model/project/StandardProjectConfig.xtend">StandardProjectConfig</a> and <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/StandardLanguage.xtend">StandardLanguage</a>, both of which are designed to apply default configurations that work for the majority of language projects.</p>
+<p>This example is similar to the workflows generated by the Xtext project wizard when you create new projects. It uses two convenience classes <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/model/project/StandardProjectConfig.xtend">StandardProjectConfig</a> and <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/StandardLanguage.java">StandardLanguage</a>, both of which are designed to apply default configurations that work for the majority of language projects.</p>
 
 <h3 id="project-configuration">Project Configuration</h3>
 
-<p>The Xtext generator needs to know the structure of your project in order to generate code into the correct paths. The base class for describing the project structure is <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/model/project/XtextProjectConfig.xtend">XtextProjectConfig</a>. It is composed of several descriptors for the individual subprojects:</p>
+<p>The Xtext generator needs to know the structure of your project in order to generate code into the correct paths. The base class for describing the project structure is <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/model/project/XtextProjectConfig.java">XtextProjectConfig</a>. It is composed of several descriptors for the individual subprojects:</p>
 
 <ul>
   <li><code>runtime</code> – The basic language features: grammar definition, parser, serializer, scoping, validation, etc.</li>
@@ -363,7 +363,7 @@
 
 <h3 id="other-general-configuration">Other General Configuration</h3>
 
-<p>The configuration block of our generator workflow example above contains a <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/CodeConfig.xtend">CodeConfig</a> as sibling of <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/model/project/StandardProjectConfig.xtend">StandardProjectConfig</a>. As the name suggests, the parameters of CodeConfig influence the generated code:</p>
+<p>The configuration block of our generator workflow example above contains a <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/CodeConfig.java">CodeConfig</a> as sibling of <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/model/project/StandardProjectConfig.xtend">StandardProjectConfig</a>. As the name suggests, the parameters of CodeConfig influence the generated code:</p>
 
 <ul>
   <li><code>encoding</code> – The character encoding</li>
@@ -371,7 +371,7 @@
   <li><code>preferXtendStubs</code> – Whether to prefer Xtend over Java for stub files to be implemented manually; this option applies only to files in <code>src</code> folders, while for <code>src-gen</code> folders Java files are always generated.</li>
 </ul>
 
-<p>The container for the <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/model/project/StandardProjectConfig.xtend">StandardProjectConfig</a> and <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/CodeConfig.xtend">CodeConfig</a> is of type <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/DefaultGeneratorModule.java">DefaultGeneratorModule</a> and is assigned to the property <code>configuration</code> of the <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/XtextGenerator.xtend">XtextGenerator</a>. The DefaultGeneratorModule is actually a <a href="https://github.com/google/guice">Guice</a> module, which can be subclassed in a similar way as explained in <a href="#dependency-injection">Dependency Injection</a> for overriding default configurations. This allows to alter the configuration in places that are not accessible through MWE2. For instance, you could bind your own subclass of <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/XtextGeneratorNaming.java">XtextGeneratorNaming</a> in order to influence the names of generated classes.</p>
+<p>The container for the <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/model/project/StandardProjectConfig.xtend">StandardProjectConfig</a> and <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/CodeConfig.java">CodeConfig</a> is of type <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/DefaultGeneratorModule.java">DefaultGeneratorModule</a> and is assigned to the property <code>configuration</code> of the <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/XtextGenerator.xtend">XtextGenerator</a>. The DefaultGeneratorModule is actually a <a href="https://github.com/google/guice">Guice</a> module, which can be subclassed in a similar way as explained in <a href="#dependency-injection">Dependency Injection</a> for overriding default configurations. This allows to alter the configuration in places that are not accessible through MWE2. For instance, you could bind your own subclass of <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/XtextGeneratorNaming.java">XtextGeneratorNaming</a> in order to influence the names of generated classes.</p>
 
 <h3 id="language-configuration">Language Configuration</h3>
 
@@ -384,7 +384,7 @@
   <li><code>referencedResources</code> – Additional resources to load (see <a href="#importing-metamodels">Importing Existing Metamodels</a>)</li>
 </ul>
 
-<p>The actual code generation is performed by <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/IXtextGeneratorFragment.java">generator fragments</a>, which can be added to a language configuration using the <code>fragment</code> property. The Xtext project wizard creates a workflow that employs the <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/StandardLanguage.xtend">StandardLanguage</a>, which specializes XtextGeneratorLanguage in a similar way as StandardProjectConfig specializes XtextProjectConfig (see <a href="#project-configuration">Project Configuration</a>). The main contribution of StandardLanguage is a default list of generator fragments that includes all features of Xtext. These fragments automatically adapt their generated code to your language and project configuration. Some fragments offer their own configuration parameters, hence each fragment can be accessed via a dedicated property in StandardLanguage. For instance, in the language configuration</p>
+<p>The actual code generation is performed by <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/IXtextGeneratorFragment.java">generator fragments</a>, which can be added to a language configuration using the <code>fragment</code> property. The Xtext project wizard creates a workflow that employs the <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/StandardLanguage.java">StandardLanguage</a>, which specializes XtextGeneratorLanguage in a similar way as StandardProjectConfig specializes XtextProjectConfig (see <a href="#project-configuration">Project Configuration</a>). The main contribution of StandardLanguage is a default list of generator fragments that includes all features of Xtext. These fragments automatically adapt their generated code to your language and project configuration. Some fragments offer their own configuration parameters, hence each fragment can be accessed via a dedicated property in StandardLanguage. For instance, in the language configuration</p>
 
 <pre><code class="language-mwe2">language = StandardLanguage {
     name = "org.example.domainmodel.Domainmodel"
@@ -397,7 +397,7 @@
 </code></pre>
 <p>we see the <code>generateStub</code> parameter disabled for the <code>serializer</code> fragment, which means that the fragment should not create any stub file for customizing serialization.</p>
 
-<p>It is not possible to remove fragments from the <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/StandardLanguage.xtend">StandardLanguage</a>. If you need a language configuration where one or more of the default fragments are omitted, you can do so by using <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/XtextGeneratorLanguage.xtend">XtextGeneratorLanguage</a> instead and listing the required fragments explicitly. You can take the following configuration as a template:</p>
+<p>It is not possible to remove fragments from the <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/StandardLanguage.java">StandardLanguage</a>. If you need a language configuration where one or more of the default fragments are omitted, you can do so by using <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext.xtext.generator/src/org/eclipse/xtext/xtext/generator/XtextGeneratorLanguage.xtend">XtextGeneratorLanguage</a> instead and listing the required fragments explicitly. You can take the following configuration as a template:</p>
 
 <pre><code class="language-mwe2">language = XtextGeneratorLanguage {
     name = "org.example.domainmodel.Domainmodel"
diff --git a/documentation/330_web_support.html b/documentation/330_web_support.html
index c3a6699..7d34f6f 100644
--- a/documentation/330_web_support.html
+++ b/documentation/330_web_support.html
@@ -492,11 +492,11 @@
 
 <h2 id="server">The Server</h2>
 
-<p>The language-specific resources are provided through HTTP requests which are processed by the <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web.servlet/src/main/java/org/eclipse/xtext/web/servlet/XtextServlet.xtend">XtextServlet</a>. This class is also responsible for managing the lifecycle of the language <a href="https://google.github.io/guice/api-docs/latest/javadoc/com/google/inject/Injector.html">Injector</a> (see <a href="302_configuration.html#dependency-injection">Dependency Injection</a>). The default approach is to create an injector when the servlet is started and to register it in the <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext/src/org/eclipse/xtext/resource/IResourceServiceProvider.java">IResourceServiceProvider.Registry</a>. In order to override the default behavior, you can change or add bindings in the <code>&lt;LanguageName&gt;WebModule</code> or <code>&lt;LanguageName&gt;IdeModule</code> of your language.</p>
+<p>The language-specific resources are provided through HTTP requests which are processed by the <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web.servlet/src/main/java/org/eclipse/xtext/web/servlet/XtextServlet.java">XtextServlet</a>. This class is also responsible for managing the lifecycle of the language <a href="https://google.github.io/guice/api-docs/latest/javadoc/com/google/inject/Injector.html">Injector</a> (see <a href="302_configuration.html#dependency-injection">Dependency Injection</a>). The default approach is to create an injector when the servlet is started and to register it in the <a href="https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext/src/org/eclipse/xtext/resource/IResourceServiceProvider.java">IResourceServiceProvider.Registry</a>. In order to override the default behavior, you can change or add bindings in the <code>&lt;LanguageName&gt;WebModule</code> or <code>&lt;LanguageName&gt;IdeModule</code> of your language.</p>
 
-<p>The usual way to include the Xtext servlet in a server application is to create a subclass of <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web.servlet/src/main/java/org/eclipse/xtext/web/servlet/XtextServlet.xtend">XtextServlet</a>, override <code>init()</code> and <code>destroy()</code> to manage the runtime resources, and add a <a href="https://docs.oracle.com/javaee/7/api/javax/servlet/annotation/WebServlet.html">WebServlet</a> annotation with <code>urlPatterns = "/xtext-service/*"</code> as parameter. See <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web.example.jetty/src/main/java/org/eclipse/xtext/web/example/jetty/MyXtextServlet.java">MyXtextServlet</a> for an example.</p>
+<p>The usual way to include the Xtext servlet in a server application is to create a subclass of <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web.servlet/src/main/java/org/eclipse/xtext/web/servlet/XtextServlet.java">XtextServlet</a>, override <code>init()</code> and <code>destroy()</code> to manage the runtime resources, and add a <a href="https://docs.oracle.com/javaee/7/api/javax/servlet/annotation/WebServlet.html">WebServlet</a> annotation with <code>urlPatterns = "/xtext-service/*"</code> as parameter. See <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web.example.jetty/src/main/java/org/eclipse/xtext/web/example/jetty/MyXtextServlet.java">MyXtextServlet</a> for an example.</p>
 
-<p>If you want to implement your own communication channel to provide the language-specific services without using XtextServlet, you can do so by injecting an instance of <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web/src/main/java/org/eclipse/xtext/web/server/XtextServiceDispatcher.xtend">XtextServiceDispatcher</a> and calling <code>getService(IServiceContext)</code>. The input to this method is an <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web/src/main/java/org/eclipse/xtext/web/server/IServiceContext.java">IServiceContext</a>, which must be implemented to provide the request parameters and the client session. The return value is a descriptor that can be used to invoke the actual service. Furthermore, <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web/src/main/java/org/eclipse/xtext/web/server/XtextServiceDispatcher.xtend">XtextServiceDispatcher</a> can be subclassed in order to add custom services with access to the document AST and all related Xtext APIs.</p>
+<p>If you want to implement your own communication channel to provide the language-specific services without using XtextServlet, you can do so by injecting an instance of <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web/src/main/java/org/eclipse/xtext/web/server/XtextServiceDispatcher.java">XtextServiceDispatcher</a> and calling <code>getService(IServiceContext)</code>. The input to this method is an <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web/src/main/java/org/eclipse/xtext/web/server/IServiceContext.java">IServiceContext</a>, which must be implemented to provide the request parameters and the client session. The return value is a descriptor that can be used to invoke the actual service. Furthermore, <a href="https://github.com/eclipse/xtext-web/blob/master/org.eclipse.xtext.web/src/main/java/org/eclipse/xtext/web/server/XtextServiceDispatcher.java">XtextServiceDispatcher</a> can be subclassed in order to add custom services with access to the document AST and all related Xtext APIs.</p>
 
 <p>The following sections describe how to customize the standard services for web editors.</p>
 
diff --git a/feed.xml b/feed.xml
index ae5888c..cee288a 100644
--- a/feed.xml
+++ b/feed.xml
@@ -6,8 +6,8 @@
 </description>
     <link>http://xtext.org/Xtext/</link>
     <atom:link href="http://xtext.org/Xtext/feed.xml" rel="self" type="application/rss+xml"/>
-    <pubDate>Sun, 26 Jul 2020 08:36:08 +0000</pubDate>
-    <lastBuildDate>Sun, 26 Jul 2020 08:36:08 +0000</lastBuildDate>
+    <pubDate>Mon, 03 Aug 2020 09:46:04 +0000</pubDate>
+    <lastBuildDate>Mon, 03 Aug 2020 09:46:04 +0000</lastBuildDate>
     <generator>Jekyll v2.5.3</generator>
     
       <item>
