[#fractions]
= Fractions

WildFly Swarm is defined by an unbounded set of capabilities.
Each piece of functionality is called a _fraction._
Some fractions provide only access to APIs, such as JAX-RS or CDI; other fractions provide higher-level capabilities, such as integration with RHSSO (Keycloak).

The typical method for consuming WildFly Swarm fractions is through Maven coordinates.
Address a fraction by adding its Maven coordinates to the `pom.xml` file in your application. The functionality the fraction provides is then packaged with your application (see xref:creating-an-uberjar[]).

.Addressing Fractions in a POM file
====

Address the fractions in the `<dependency>` section of the `pom.xml` file.

Example with the JAX-RS fraction:

[source,xml]
----
<dependency>
  <groupId>org.wildfly.swarm</groupId>
  <artifactId>jaxrs</artifactId>
</dependency>
----

Example with the RHSSO/Keycloak fraction:

[source,xml]
----
<dependency>
  <groupId>org.wildfly.swarm</groupId>
  <artifactId>keycloak</artifactId>
</dependency>
----
====

To enable easier consumption of WildFly Swarm fractions, a bill of materials (BOM) is available. For more information, see xref:using-a-bom[].

