SDO
PHP Manual

Introducción

Los Objetos de Datos de Servicio (en inglés Service Data Objects - SDOs) habilitan a las aplicaciones de PHP para trabajar con datos de diferentes orígenes (como una consulta de base de datos, un fichero XML, y una hoja de cálculo) usando una única interfaz.

Cada tipo diferente de origen de datos necesita un Servicio de Acceso a Datos (en inglés Data Access Service - DAS) para proporcionar acceso a los datos en el origen de datos. En la aplicación PHP se usa un DAS para crear una instancia de SDO que representa alguna información del origen de datos. Se puede entonces establecer y obtener valores en la instancia de SDO usando la interfaz estándar de SDO. Finalmente se usa un DAS para volver a escribir los datos modificados en un origen de datos, normalmente el mismo.

Vea la lista de Servicios de Acceso a Datos para los detalles de los que están actualmente disponibles. Además del DAS proporcionado, SDO también proporciona interfaces para que otros sean implementados (véase la sección sobre la Interfaz de Servicios de Acceso a Datos de SDO para más detalles).

Esta extensión deriva de conceptos tomados de la » especificación de Objetos de Datos de Servicio. Incluye una versión del SDO de » Apache Tuscany para proyectos C++.

La escrutctura de un Objeto de Datos de Servicio

Una instancia de un Objeto de Datos de Servicio se compone de un árbol de objetos de datos. El árbol está definido por relaciones de contención entre los objetos de datos. Por ejemplo, un objeto de datos Compañía podría consistir en varios objetos de datos Departamento y por lo tanto la Compañía tendría una relación de contención con los Departamentos.

Un SDO también puede tener referencias de no contención entre objetos de datos del árbol. Por ejemplo, un objeto de datos Empleado podría referenciar a otro empleado para identificar un mentor de profesión.

Así como los objetos de datos se referencian unos a otros también pueden tener propiedades primitivas. Por ejemplo, el objeto de datos Compañía podría tener una propiedad llamada "nombre" de tipo string, para contener el nombre de la compañía (por ejemplo, "Acme").

Cada una de estas propiedades de un objeto de datos - relaciones de contención, referencias de no contención, o propiedades primitivas - pueden ser polievaluadas o o monoevaluadas. En los ejemplos de arriba, Departamentos es polievaluada y el nombre de la Compañía es monoevaluada.

En PHP, cada objeto de datos SDO es representado como un objeto de PHP. Se pueden acceder a las propiedades del objeto de datos usando la sintaxis de objetos o la sintaxis de array asociativo. Se verán algunos ejemplos de esto más tarde.


SDO
PHP Manual