La metadata de artefactos de O3 se encuentra almacenada en eXist-DB, que se ubica dentro de la instalación de O3BI en el directorio /exist-db. Aquí se encuentra la definición de vistas, la relación entre cubos y roles asociados, las expresiones calculadas que se usan en vistas, restricciones aplicadas sobre cubos, programaciones, etc.
Dado que eXist-DB es una base de datos NoSQL sino XML, se debe utilizar xQuerys para obtener información relevante respecto a los mencionados artefactos y sus relaciones.
A continuación se explica cómo establecer conexión con la base eXist de la instalación de O3BI. Luego se presentan algunos ejemplos.
- xQuery para obtener los cubos de un rol:
- xQuery para obtener las expresiones calculadas de un servidor y para cada expresión, en qué vistas están aplicadas.
declare namespace vd="http://ns.ideasoft.biz/o3bi/schema/ViewDefinition/2011-01"; for $i in distinct-values(/vd:viewDefinition//dataComponents/@name) return <expression><name>{$i}</name><views>{/vd:viewDefinition[.//dataComponents/@name=$i]/vd:viewLabel}</views></expression>
El resultado es un archivo .xml
- xQuery para obtener las restricciones aplicadas sobre vistas de cubos:
declare namespace cd="http://ns.ideasoft.biz/o3bi/schema/CubeDefinition/2011-01"; /cd:cubeDefinition[not(empty(cd:accessRestrictions/cd:profileName/text()))]