In a Maven `<plugin>` element there is an `<executions>` element which contains multiple `<execution>` elements. Each `<execution>` element can have an `<id>` element containing a string. What references those `<id>...</id>` elements? What does it mean to omit that element? What are the semantics of the `<id>` element?

For example:

```
<project>
  [...]
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <executions>
          <execution>
            <id>default-jar-execution</id>
            <configuration>
              <finalName>mainjar</finalName>
            </configuration>
          </execution>
          <execution>
            <id>extra-jar-execution</id>
            <goals>
              <goal>jar</goal>
            </goals>
            <configuration>
              <finalName>anotherjar</finalName>
            </configuration>
          </execution>
        </exectutions>
      </plugin>
      [...]
    </plugins>
  </build>
</project>

```

What references those `<id>default-jar-execution</id>` and `<id>extra-jar-execution</id>` values? What is the behavioral difference of changing either of those strings? What does it mean to remove those elements?