Limitations

Existen las siguientes limitaciones en la versión actual del DAS Relacional:

  • No hay soporte para nulls. No existe soporte para el tipo NULL de SQL. No es lícito asignar un NULL de PHP a una propiedad de un objeto de datos y el DAS Relacional no lo escribirá como NULL en la base de datos. Si se encuentran nulls en la base de datos en una consulta, la propiedad permanecerá sin establecer.

  • Sólo dos tipos de relaciones SDO. La metainformación descrita abajo permite al DAS Relacional modelar sólo dos tipo de relación SDO: relaciones de contención polievaluadas y referencias de no contención monoevaluadas. En SDO, si una propiedad describe una relación mono o polievaluada, y si es de contención o de no contención, es idenpendiente. El rango completo de posibilidades que SDO permite no puede ser definido. Pueden existir relaciones que serían útiles modelar pero cuya implementación no se puede administrar. Un ejemplo es una relación de contención monoevaluada.

  • No hay soporte para el rango completo de tipos de datos de SDO. El DAS Relacional define todos las propiedades primitivas en el modelo SDO como de tipo string. SDO define un conjunto más rico de tipos que contiene tipos integer, float, booleano y fecha y hora. String es adecuado para los propósitos del DAS Relacional porque la combinación de PHP, PDO y la base de datos asegurará que los valores pasados como cadenas serán convertidos al tipo apropiado antes de ser puestos en la base de datos. Esto afecta a algunos escenarios en los que el DAS Relacional tiene que trabajar con un grafo de datos que proviene o se dirige a un DAS diferente.

  • Sólo una clave foránea por tabla. La metainformación solamente proporciona los medios para especificar una clave foránea por tabla. Esta clave foránea puede ser referenciada a uno de los dos tipos de relación SDO soportados. Obviamente existen algunos escenarios que no se pueden describir bajo esta limitación - no es posible tener dos referencias de no contención desde una tabla a otra, por ejemplo.