Un elemento es el árbol completo de los DDO de componente, con al menos un componente raíz.
Un elemento o DDO debe tener asociada una propiedad de tipo genérico. Este tipo genérico del DDO es un documento, carpeta o elemento. Cuando se crean elementos, la propiedad item se especifica en el segundo parámetro de la función createDDO del almacén de datos, entremezclada con el tipo semántico. Se envía un solo valor, pero los valores de la propiedad item y del tipo semántico se derivan y se establecen en el DDO de forma separada. Los tipos de la propiedad item son un subconjunto de los tipos semánticos. Este valor se almacena en la propiedad DK_CM_PROPERTY_ITEM_TYPE del DDO. No confunda esta propiedad con la definición de tipo de elemento global que describe la estructura de este elemento. PROPERTY_ITEM_TYPE hace referencia a la propiedad item, no a la definición de tipo de elemento que describe completamente los valores y estructura del elemento.
La tabla siguiente muestra una lista de tipos de propiedad de elemento disponibles.
| Tipo de propiedad | Constante | Definición |
|---|---|---|
| Documento | DK_CM_DOCUMENT | El elemento representa un documento o datos almacenados. La información contenida en este elemento puede formar un documento. Este elemento se puede considerar un documento común, porque no cumple estrictamente una implementación de un modelo de documento específico. El establecimiento de un tipo de documento no significa necesariamente un documento con partes que utilizan el modelo de documento de IBM® Content Manager Versión 8 que, en su lugar, está controlado por la clasificación "documento" en la definición de tipo de elemento. |
| Carpeta | DK_CM_FOLDER | El elemento representa una carpeta que puede contener otros elementos. Este
elemento representa una colección DKFolder incorporada que puede incluir contenidos de carpeta que establezcan
enlaces de carpeta con otros elementos.
Se añade automáticamente una colección DKFolder vacía. Todos los elementos que
tengan este valor pueden utilizar el mecanismo DKFolder. Sin embargo, este valor no implica necesariamente
que una solución utilice el mecanismo DKFolder; puede implementar en su lugar su propia solución de carpetas. Este valor se corresponde con cualquier interpretación de una carpeta, pero el DKFolder incorporado
está disponible para dichos elementos. Consejo: Puede crear enlaces distintos a los de carpeta y
referencias de elementos de cualquier tipo semántico o tipo de propiedad de elemento.
|
| Item (valor predeterminado) | DK_CM_ITEM | Elemento genérico. Este es el tipo de propiedad de elemento para todos los tipos semánticos distintos de un documento o carpeta. |
Los elementos se crean como DKDDO. Utilice siempre los métodos createDDO() del objeto DKDatastoreICM para crear objetos DKDDO puesto que el sistema utiliza el createDDO del objeto DKDatastoreICM para configurar automáticamente información importante en la estructura DKDDO. No se recomiendan los constructores DDO. Para crear instancias DKDDO (o subclases) se recomienda utilizar los distintos métodos DKDatastoreICM::createDDO(). No se recomienda la utilización de cualquier medio de instancializar un DDO o la creación de una nueva instancia de DDO desde una clase de DDO para crear los DDO. Los métodos createDDO() crean instancias con la subclase correcta y establecen cualquier otra información necesaria dentro de los DDO para que funcionen correctamente con otras operaciones.
Cuando se crean elementos, puede especificarse un tipo semántico en el segundo parámetro de la función createDDO del almacén de datos. Un tipo semántico es, en general, una metáfora de un elemento. Los tipos semánticos son principalmente una característica para su utilización por aplicaciones y no se refuerza típicamente o es especialmente significativo en el servidor IBM Content Manager. Los tipos semánticos dan a los elementos una característica aplicable para algunas operaciones básicas y proporcionan a las aplicaciones la capacidad de aplicar un tipo semántico. Allí donde sea aplicable, los tipos semánticos se refuerzan dentro de IBM Content Manager, pero principalmente el único tipo semántico que tiene algún significado, validación o refuerzo es FOLDER.
El valor se guarda en la propiedad DKConstantICM.DK_ICM_PROPERTY_SEMANTIC_TYPE del DDO, que podría contener el mismo valor que el tipo de propiedad del elemento. La tabla siguiente lista los tipos semánticos disponibles.
| Tipo semántico | Constante | Definición |
|---|---|---|
| Cualquiera | Definido por el usuario | CreateDDO asigna cualquier valor especificado al valor de tipo semántico. Dado que las aplicaciones pueden aplicar la semántica de la forma que deseen, ningún valor está prohibido excepto para los tipos de elementos clasificados como "documento" (modelo de documento). |
| Documento | DK_ICM_SEMANTIC_TYPE _DOCUMENT | El elemento representa genéricamente a un documento. El establecimiento de tipo semántico en un documento no significa necesariamente un documento con partes que utilizan el modelo de documento de IBM Content Manager V8 que, en su lugar, está controlado por la clasificación "documento" en la definición de tipo de elemento. Equivale al tipo de propiedad de elemento DK_CM_DOCUMENT. |
| Carpeta | DK_ICM_SEMANTIC_TYPE _FOLDER | El elemento representa una carpeta que puede contener otros elementos. Este elemento representa una colección DKFolder incorporada que puede incluir contenidos de carpeta que establezcan enlaces de carpeta con otros elementos. Se añade automáticamente una colección DKFolder vacía. Todos los elementos que tengan este valor pueden utilizar el mecanismo DKFolder. Sin embargo, este valor no implica necesariamente que una solución utilice el mecanismo DKFolder y puede implementar en su lugar su propia solución de carpetas. Este valor se corresponde con cualquier interpretación de una carpeta, pero el DKFolder incorporado está disponible para dichos elementos. Puede crear enlaces distintos a los de carpeta y referencias de elementos de cualquier tipo semántico o tipo de propiedad de elemento. Equivale al tipo de propiedad de elemento DK_CM_FOLDER. |
| Contenedor | DK_ICM_SEMANTIC_TYPE _CONTAINER | El elemento representa un elemento o contenedor genéricos. Equivale al tipo de propiedad de elemento DK_CM_ITEM. Las soluciones pueden implementar una relación de contenido a través de cualquier solución que elijan excepto mediante el mecanismo DKFolder integrado (enlaces de carpeta). Puede utilizar enlaces de cualquier otro tipo, atributos de referencia o cualquier solución personalizada de su elección. |
| Base | DK_ICM_SEMANTIC_TYPE _BASE | La parte más parecida a una parte de documento de tipo "BASE" para utilizar en el modelo de documento incorporado donde las partes se crean y añaden para constituir un documento. Sin embargo, únicamente con este valor no se constituye o identifica una parte BASE. Este valor no se valida o fuerza. El tipo de elemento de la parte (identificado por el tipo de objeto del PID para el DDO de la parte) es lo que define esta parte como una parte BASE. Las partes BASE pueden crearse con cualquier tipo semántico que se desee. Defina las partes BASE con este tipo semántico, pero para detectar tipos de parte utilice antes el tipo de objeto del PID. Utilice este valor, si ha creado tipos de elemento de parte personalizados, para que otras aplicaciones que no conozcan su tipo de parte personalizado puedan asociarlo al tipo de parte más similar que entiendan. |
| BaseText | DK_ICM_SEMANTIC_TYPE_BASETEXT | Lo mismo que BASE (Vea la documentación de "Base" para más detalles) y lo que más se asemeja a "BASETEXT". |
| BaseStream | DK_ICM_SEMANTIC_TYPE_BASESTREAM | Lo mismo que BASE (Vea la documentación de "Base" para más detalles) y lo que más se asemeja a "BASETSTREAM". |
| Anotación | DK_ICM_SEMANTIC_TYPE _ANNOTATION | Lo mismo que BASE (Vea la documentación de "Base" para más detalles) y lo que más se asemeja a "ANNOTATION". |
| Archivo histórico | DK_ICM_SEMANTIC_TYPE _HISTORY | Lo mismo que BASE (Vea la documentación de "Base" para más detalles) y lo que más se asemeja a "HISTORY". |
| Nota | DK_ICM_SEMANTIC_TYPE _NOTE | Lo mismo que BASE (Vea la documentación de "Base" para más detalles) y lo que más se asemeja a "NOTE". |
| Definido por el usuario | Definido por el usuario | Tipo semántico definido por el usuario. Consulte los Ejemplos de tipo semántico para obtener más información. |
En Java™, las constantes están definidas en DKConstantICM.java. En C++, las constantes están definidas en DKConstantICM.h..
Cuando cree un elemento, debe crear también los componentes hijo que lo forman, si los hay.
En el ejemplo anterior, el último paso ha creado un documento en el servidor de contenido. Cuando se añade un DDO de documento a un servidor de contenido, se añaden todos sus atributos, incluidas todas las partes contenidas en la colección DKParts. Cuando se añade un DDO de documento a un servidor de contenido, se añaden todos sus atributos, incluidos todos los hijos y todas las partes contenidas en la colección DKParts.
Si crea un elemento en un tipo de elemento que se ha definido como tipo de elemento de recurso, se devuelve el XDO correcto. Para obtener más información sobre recursos, consulte el ejemplo SResourceItemCreationICM. Puede también serle útil repasar la información sobre creación de elementos contenida en el ejemplo SItemCreationICM.
