El nombre, la ubicación y el contenido de este archivo forman parte de la API del área de trabajo. Esto implica que existe la garantía de que estos valores no cambiarán de tal manera que los usuarios existentes del archivo se vean afectados. Sin embargo, el derecho a añadir más elementos y atributos a los códigos XML está reservado para las posibles adiciones que se hagan en el archivo en el futuro. Por este motivo, los clientes que lean el contenido del archivo descriptivo deben estar abiertos a encontrarse con elementos y atributos desconocidos.
Los clientes que modifiquen, supriman o sustituyan el archivo descriptivo del proyecto deben saber que lo hacen bajo su propia responsabilidad. En general, los proyectos cuyos archivos descriptivos falten o no sean válidos no se podrán utilizar. Si en el momento del inicio del área de trabajo se descubre un proyecto cuyo archivo descriptivo no es válido, el proyecto queda cerrado y no será posible abrirlo mientras no se haya reparado el archivo descriptivo. Normalmente, el área de trabajo no intentará reparar automáticamente un archivo descriptivo que falte o no sea válido. Sin embargo, los archivos desriptivos del proyecto se regenerarán durante la operación de guardar el área de trabajo y en las llamadas al método IProject.setDescription.
Las modificaciones realizadas en el archivo descriptivo del proyecto tienen casi el mismo efecto que cuando se cambia la descripción del proyecto por medio del método IProject.setDescription. No obstante, cuando se añaden o eliminan naturalezas del proyecto, no se desencadenará el correspondiente método de configuración o desconfiguración de la naturaleza. Además, se pasan por alto los cambios que se realicen en el nombre del proyecto.
Si se crea un proyecto nuevo en una ubicación que contiene un archivo
descriptivo existente, se respetará el contenido de dicho archivo descriptivo
como descripción del proyecto. No obstante, se hará caso omiso del nombre de
proyecto situado en el archivo si no coincide con el nombre del proyecto que
se está creando. Si el archivo descriptivo que hay en disco no es válido, la
creación del proyecto fallará.
Códigos XML de configuración:
<!ELEMENT projectDescription (name, comment, projects, buildSpec, natures)>
<!ELEMENT name EMPTY>
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>WinterProject</name>
<comment>Este es un proyecto atractivo.</comment>
<projects>
<project>org.seasons.sdt</project>
<project>CoolStuff</project>
</projects>
<buildSpec>
<buildCommand>
<name>org.seasons.sdt.seasonBuilder</name>
<arguments>
<dictionary>
<key>climate</key>
<value>cold</value>
</dictionary>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.seasons.sdt.seasonNature</nature>
</natures>
</projectDescription>
Información sobre las API: el contenido del archivo descriptivo del proyecto se correlaciona con la interfaz org.eclipse.core.resources.IProjectDescription. El método IProject.setDescription() puede sobrescribir el archivo descriptivo del proyecto.