diff --git a/api/pom.xml b/api/pom.xml
index ce5af21c..329e3873 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -18,7 +18,7 @@
jakarta.enterprise
jakarta.enterprise.cdi-parent
- 4.1.1-SNAPSHOT
+ 4.1.0-SNAPSHOT
jakarta.enterprise.cdi-api
diff --git a/api/src/main/resources/beans_4_1.xsd b/api/src/main/resources/beans_4_1.xsd
new file mode 100644
index 00000000..29a048db
--- /dev/null
+++ b/api/src/main/resources/beans_4_1.xsd
@@ -0,0 +1,369 @@
+
+
+
+
+
+
+
+
+
+ ...
+
+
+ The deployment descriptor may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for the Java EE
+ namespace with the following location:
+
+ https://jakarta.ee/xml/ns/jakartaee/beans_4_0.xsd
+
+ ]]>
+
+
+
+
+
+
+ Bean classes of enabled beans must be
+ deployed in bean archives. A library jar, EJB jar,
+ application client jar or rar archive is a bean archive if
+ it has a file named beans.xml in the META-INF directory. The
+ WEB-INF/classes directory of a war is a bean archive if
+ there is a file named beans.xml in the WEB-INF directory of
+ the war. A directory in the JVM classpath is a bean archive
+ if it has a file named beans.xml in the META-INF directory.
+
+ When running in a CDI Lite environment, the bean-discovery-mode
+ attribute is the only configuration value read from a beans.xml file.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The version of CDI this beans.xml is for. If the version is "4.1" (or
+ later), then the attribute bean-discovery-mode must be added.
+
+
+
+
+
+
+
+
+
+
+
+ It is strongly recommended you use "annotated". This is now the default and it
+ is also the default as of 4.1 when an empty beans.xml file is seen. When running
+ in a CDI Lite environment, this is the only aspect of the beans.xml file that
+ is used.
+
+ If the bean discovery mode is "all", then all types in this
+ archive will be considered. If the bean discovery mode is
+ "annotated", then only those types with bean defining annotations will be
+ considered. If the bean discovery mode is "none", then no
+ types will be considered.
+
+
+
+
+
+
+
+ Only those types with bean defining annotations will be
+ considered.
+
+
+
+
+
+
+ All types in this archive will be considered.
+
+
+
+
+
+
+ This archive will be ignored.
+
+
+
+
+
+
+
+
+
+
+
+
+ element allows exclusion of classes and packages from consideration. Various filters may be applied, and may be conditionally activated.]]>
+
+
+
+
+
+
+
+ would exclude all classes and subpackages of com.acme.]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ would exclude all classes and subpackages of com.acme.]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ By default, a bean archive has no enabled
+ interceptors bound via interceptor bindings. An interceptor
+ must be explicitly enabled by listing its class under the
+ <interceptors> element of the beans.xml file of the
+ bean archive. The order of the interceptor declarations
+ determines the interceptor ordering. Interceptors which
+ occur earlier in the list are called first. If the same
+ class is listed twice under the <interceptors>
+ element, the container automatically detects the problem and
+ treats it as a deployment problem.
+
+
+
+
+
+
+
+ Each child <class> element
+ must specify the name of an interceptor class. If
+ there is no class with the specified name, or if
+ the class with the specified name is not an
+ interceptor class, the container automatically
+ detects the problem and treats it as a deployment
+ problem.
+
+
+
+
+
+
+
+
+
+
+ By default, a bean archive has no enabled
+ decorators. A decorator must be explicitly enabled by
+ listing its bean class under the <decorators> element
+ of the beans.xml file of the bean archive. The order of the
+ decorator declarations determines the decorator ordering.
+ Decorators which occur earlier in the list are called first.
+ If the same class is listed twice under the
+ <decorators> element, the container automatically
+ detects the problem and treats it as a deployment problem.
+
+
+
+
+
+
+
+ Each child <class> element
+ must specify the name of a decorator class. If
+ there is no class with the specified name, or if
+ the class with the specified name is not a
+ decorator class, the container automatically
+ detects the problem and treats it as a deployment
+ problem.
+
+
+
+
+
+
+
+
+
+
+ An alternative is a bean that must be
+ explicitly declared in the beans.xml file if it should be
+ available for lookup, injection or EL resolution. By
+ default, a bean archive has no selected alternatives. An
+ alternative must be explicitly declared using the
+ <alternatives> element of the beans.xml file of the
+ bean archive. The <alternatives> element contains a
+ list of bean classes and stereotypes. An alternative is
+ selected for the bean archive if either: the alternative is
+ a managed bean or session bean and the bean class of the
+ bean is listed, or the alternative is a producer method,
+ field or resource, and the bean class that declares the
+ method or field is listed, or any @Alternative stereotype of
+ the alternative is listed.
+
+
+
+
+
+
+
+ Each child <class> element
+ must specify the name of an alternative bean class.
+ If there is no class with the specified name, or if
+ the class with the specified name is not an
+ alternative bean class, the container automatically
+ detects the problem and treats it as a deployment
+ problem. If the same class is listed twice under
+ the <alternatives> element, the container
+ automatically detects the problem and treats it as
+ a deployment problem.
+
+
+
+
+
+
+
+ Each child <stereotype>
+ element must specify the name of an @Alternative
+ stereotype annotation. If there is no annotation
+ with the specified name, or the annotation is not
+ an @Alternative stereotype, the container
+ automatically detects the problem and treats it as
+ a deployment problem. If the same stereotype is
+ listed twice under the <alternatives>
+ element, the container automatically detects the
+ problem and treats it as a deployment problem.
+
+
+
+
+
+
+
+
+
+ If an explicit bean archive contains the <trim/< element in its beans.xml file, types that don’t have
+ either a bean defining annotation (as defined in Bean defining annotations) or any scope annotation,
+ are removed from the set of discovered types.
+
+
+
+
+
diff --git a/el/pom.xml b/el/pom.xml
index 0904f622..ebc636f9 100644
--- a/el/pom.xml
+++ b/el/pom.xml
@@ -13,7 +13,7 @@
jakarta.enterprise
jakarta.enterprise.cdi-parent
- 4.1.1-SNAPSHOT
+ 4.1.0-SNAPSHOT
jakarta.enterprise.cdi-el-api
diff --git a/ide-config/pom.xml b/ide-config/pom.xml
index cc0367a5..46e0e720 100644
--- a/ide-config/pom.xml
+++ b/ide-config/pom.xml
@@ -14,7 +14,7 @@
jakarta.enterprise
jakarta.enterprise.cdi-parent
- 4.1.1-SNAPSHOT
+ 4.1.0-SNAPSHOT
cdi-ide-config
diff --git a/lang-model/pom.xml b/lang-model/pom.xml
index 42e20b29..c81d517b 100644
--- a/lang-model/pom.xml
+++ b/lang-model/pom.xml
@@ -13,7 +13,7 @@
jakarta.enterprise
jakarta.enterprise.cdi-parent
- 4.1.1-SNAPSHOT
+ 4.1.0-SNAPSHOT
jakarta.enterprise.lang-model
diff --git a/pom.xml b/pom.xml
index 12a52c5f..c2d31cdc 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,7 +19,7 @@
jakarta.enterprise
jakarta.enterprise.cdi-parent
pom
- 4.1.1-SNAPSHOT
+ 4.1.0-SNAPSHOT
Parent module for CDI Specification
diff --git a/spec/pom.xml b/spec/pom.xml
index 79e6d1d2..0548b5c2 100644
--- a/spec/pom.xml
+++ b/spec/pom.xml
@@ -13,7 +13,7 @@
jakarta.enterprise
jakarta.enterprise.cdi-parent
- 4.1.1-SNAPSHOT
+ 4.1.0-SNAPSHOT
jakarta.enterprise.cdi-spec-doc
diff --git a/spec/src/main/asciidoc/preface.asciidoc b/spec/src/main/asciidoc/preface.asciidoc
index 7cb45cec..2af8b191 100644
--- a/spec/src/main/asciidoc/preface.asciidoc
+++ b/spec/src/main/asciidoc/preface.asciidoc
@@ -46,6 +46,9 @@ New methods have been added to `BeanContainer` to check <