Compartir a través de


Campos y referencias a campos

En este tema se describen las diferencias existentes entre los campos y las referencias a campos.

Las columnas son campos o referencias a campos

Las columnas se representan como elementos Field o elementos Elemento FieldRef (ContentType) en los diversos esquemas de Windows SharePoint Services 3.0, como las definiciones de tipo de sitio, lista y contenido.

Las columnas de sitio y de lista se representan como elementos Field en las definiciones de sitio y lista. Sin embargo, las referencias a las columnas de sitio y lista se representan como elementos Elemento FieldRef (ContentType) en las definiciones de tipo de contenido. De forma similar, las columnas de sitio y lista que se encuentran en los sitios y las listas se representan como objetos SPField en el modelo de objetos, mientras que las referencias a columnas de sitio y lista en los tipos de contenido se representan como objetos SPFieldLink.

El elemento Field contiene la definición completa de una columna de sitio o lista.

El elemento Elemento FieldRef (ContentType) es una referencia a una columna definida en otro lugar, ya sea en el nivel de lista o en el de sitio. En la referencia del campo se puede reemplazar un subconjunto de propiedades de columna, como las siguientes:

  • Nombre para mostrar

  • Atributos de aumento y disminución de nivel de XML

  • Si el campo es opcional, obligatorio u oculto

Al cambiar estas propiedades en la referencia del campo, se modifican sólo cuando se aplican al tipo de contenido específico que incluye la referencia del campo.

Adición de columnas a las listas

Las columnas de sitio se pueden considerar plantillas; la columna de sitio se crea en el sitio y después se puede aplicar a las listas y sitios secundarios que desee.

Para obtener más información acerca de las columnas de sitio, consulte Introducción a las columnas.

Cuando se agrega una columna de sitio a una lista, la definición de columna se copia localmente en la lista como una columna de lista. Por lo tanto, en el esquema de lista, la columna de lista ahora está representada por un elemento Field en el esquema de lista. En el modelo de objetos, se representa mediante un objeto SPField.

Además, cuando se agrega una columna de sitio a una lista, la columna de lista resultante tiene el mismo identificador de campo que la columna de sitio. Windows SharePoint Services usa este identificador para realizar el seguimiento de las columnas de lista que son "secundarias" en relación con una columna de sitio determinada. Esto permite realizar cambios en una columna de sitio y propagar los cambios a todas las columnas de lista que son secundarias respecto a la columna de sitio.

Para obtener más información, consulte Actualización de columnas de sitio.

Puede crear también columnas en listas. Estas columnas sólo se aplican a la lista en la que se crean. Puede agregar columnas de lista sólo a los tipos de contenido de dicha lista. Las columnas de lista también se representan como elementos Field en el esquema de lista y como objetos SPField en el modelo de objetos. Dado que no proceden de otra columna, no tienen una relación principal-secundaria con ninguna otra columna.

Creación de referencias a columnas en tipos de contenido

Si desea realizar un seguimiento de determinados metadatos de elemento en un tipo de contenido, puede hacer referencia a una columna que represente dichos metadatos. Sin embargo, no se puede crear una columna en un tipo de contenido; debe crear la columna y, a continuación, hacer referencia a ella en la definición de tipo de contenido. Por tanto, cuando se agrega una columna a un tipo de contenido, el esquema de tipo de contenido no contiene ningún elemento Field, pero sí que contiene un elemento Elemento FieldRef (ContentType). Esto sucede tanto en las columnas de sitio como en las de lista que se agreguen a los tipos de contenido.

Una referencia de campo conserva el mismo identificador de campo que la columna a la que hace referencia.

Si crea un tipo de contenido basado en un tipo de contenido primario, de forma predeterminada todas las columnas a las que se hace referencia en el elemento primario se representan en el tipo de contenido secundario como elementos Elemento FieldRef (ContentType).

Al agregar un tipo de contenido a una lista, las columnas a las que se hace referencia en dicho tipo de contenido se copian localmente en la lista como columnas de lista. Las columnas a las que hacen referencia los distintos elementos Elemento FieldRef (ContentType) en el esquema de tipo de contenido se copian en el esquema de lista como elementos Field, nuevamente con la relación principal-secundario en relación con la columna del sitio.

Cuando se hace referencia a una columna de lista en un tipo de contenido de lista, ésta se agrega como un elemento FieldRef al esquema de tipo de contenido de lista.

Por lo tanto, las columnas se representan siempre mediante elementos Field en esquemas de sitio y de lista, pero siempre se representan mediante elementos Elemento FieldRef (ContentType) en esquemas de tipo de contenido.

Las referencias a campos en los tipos de contenido se representan mediante el objeto SPFieldLink en el modelo de objetos de Windows SharePoint Services 3.0.

En la siguiente figura se muestra esta relación. Supongamos que se hace referencia a la columna de sitio Autor en un tipo de contenido. En el esquema de tipo de contenido, la referencia de columna se representa mediante un elemento Elemento FieldRef (ContentType). Cuando se agrega el tipo de contenido a una lista, Windows SharePoint Services agrega la columna Autor como elemento Field. Ambos elementos tienen el mismo identificador de campo que la columna de sitio Autor. Cuando se hace referencia a la columna N.º de elemento en el tipo de contenido de lista, Windows SharePoint Services lo agrega como un elemento Elemento FieldRef (ContentType), con el mismo identificador de campo.

Campos y referencias de campo en sitios y listas

Vea también

Otros recursos

Column Definition Schema Overview
Tipos de contenido
Esquema de definición de tipo de contenido