DBA Data[Home] [Help]

VIEW: SYS.DBA_XML_SCHEMA_COMPLEX_TYPES

Source

View Text - Preformatted

select s.xmldata.schema_owner OWNER,
       s.xmldata.schema_url SCHEMA_URL,
       s.xmldata.target_namespace TARGET_NAMESPACE,
       ct.xmldata.name COMPLEX_TYPE_NAME,
       value(ct) COMPLEX_TYPE,
        (case
        when
                ct.xmldata.BASE_TYPE IS NULL then NULL
        when
                ( select count(1)
                  from xdb.xdb$simple_type st
                  where ct.xmldata.BASE_TYPE = ref(st) ) != 0
        then
                ( select st.xmldata.name
                  from  xdb.xdb$simple_type st
                  where ct.xmldata.BASE_TYPE = ref(st)  )
        else
                ( select ctb.xmldata.name
                  from xdb.xdb$complex_type ctm,
                       xdb.xdb$complex_type ctb
                  where ref(ct)  = ref(ctm)
                        and ctm.xmldata.BASE_TYPE = ref(ctb)  )
        end ) BASE_NAME,
        (case
        when
                ct.xmldata.BASE_TYPE IS NULL then NULL
        when
                ( select count(1)
                  from xdb.xdb$simple_type st
                  where ct.xmldata.BASE_TYPE = ref(st) ) != 0
        then
                ( select s.xmldata.schema_url
                  from  xdb.xdb$simple_type st, xdb.xdb$schema s
                  where ct.xmldata.BASE_TYPE = ref(st)
                  and sys_op_r2o(st.xmldata.parent_schema)  = s.sys_nc_oid$)
        else
                ( select s.xmldata.schema_url
                  from xdb.xdb$complex_type ctm,
                       xdb.xdb$complex_type ctb,
                       xdb.xdb$schema s
                  where ref(ct)  = ref(ctm)
                        and ctm.xmldata.BASE_TYPE = ref(ctb) and
                        sys_op_r2o(ctb.xmldata.parent_schema)  = s.sys_nc_oid$ )
        end ) BASE_SCHEMA_URL,
        (case
        when
                ct.xmldata.BASE_TYPE IS NULL then NULL
        when
                ( select count(1)
                  from xdb.xdb$simple_type st
                  where ct.xmldata.BASE_TYPE = ref(st) ) != 0
        then
                ( select s.xmldata.target_namespace
                  from  xdb.xdb$simple_type st, xdb.xdb$schema s
                  where ct.xmldata.BASE_TYPE = ref(st)
                  and sys_op_r2o(st.xmldata.parent_schema)  = s.sys_nc_oid$)
        else
                ( select s.xmldata.target_namespace
                  from xdb.xdb$complex_type ctm,
                       xdb.xdb$complex_type ctb,
                       xdb.xdb$schema s
                  where ref(ct)  = ref(ctm)
                        and ctm.xmldata.BASE_TYPE = ref(ctb) and
                        sys_op_r2o(ctb.xmldata.parent_schema)  = s.sys_nc_oid$ )
        end ) BASE_TARGET_NAMESPACE,
       ct.xmldata.maintain_dom MAINTAIN_DOM,
       ct.xmldata.sqltype SQL_TYPE,
       ct.xmldata.SQLSCHEMA SQL_SCHEMA
  from xdb.xdb$schema s, xdb.xdb$complex_type ct
 where sys_op_r2o(ct.xmldata.parent_schema)  = s.sys_nc_oid$
View Text - HTML Formatted

SELECT S.XMLDATA.SCHEMA_OWNER OWNER
, S.XMLDATA.SCHEMA_URL SCHEMA_URL
, S.XMLDATA.TARGET_NAMESPACE TARGET_NAMESPACE
, CT.XMLDATA.NAME COMPLEX_TYPE_NAME
, VALUE(CT) COMPLEX_TYPE
, (CASE WHEN CT.XMLDATA.BASE_TYPE IS NULL THEN NULL WHEN ( SELECT COUNT(1)
FROM XDB.XDB$SIMPLE_TYPE ST
WHERE CT.XMLDATA.BASE_TYPE = REF(ST) ) != 0 THEN ( SELECT ST.XMLDATA.NAME
FROM XDB.XDB$SIMPLE_TYPE ST
WHERE CT.XMLDATA.BASE_TYPE = REF(ST) ) ELSE ( SELECT CTB.XMLDATA.NAME
FROM XDB.XDB$COMPLEX_TYPE CTM
, XDB.XDB$COMPLEX_TYPE CTB
WHERE REF(CT) = REF(CTM)
AND CTM.XMLDATA.BASE_TYPE = REF(CTB) ) END ) BASE_NAME
, (CASE WHEN CT.XMLDATA.BASE_TYPE IS NULL THEN NULL WHEN ( SELECT COUNT(1)
FROM XDB.XDB$SIMPLE_TYPE ST
WHERE CT.XMLDATA.BASE_TYPE = REF(ST) ) != 0 THEN ( SELECT S.XMLDATA.SCHEMA_URL
FROM XDB.XDB$SIMPLE_TYPE ST
, XDB.XDB$SCHEMA S
WHERE CT.XMLDATA.BASE_TYPE = REF(ST)
AND SYS_OP_R2O(ST.XMLDATA.PARENT_SCHEMA) = S.SYS_NC_OID$) ELSE ( SELECT S.XMLDATA.SCHEMA_URL
FROM XDB.XDB$COMPLEX_TYPE CTM
, XDB.XDB$COMPLEX_TYPE CTB
, XDB.XDB$SCHEMA S
WHERE REF(CT) = REF(CTM)
AND CTM.XMLDATA.BASE_TYPE = REF(CTB) AND SYS_OP_R2O(CTB.XMLDATA.PARENT_SCHEMA) = S.SYS_NC_OID$ ) END ) BASE_SCHEMA_URL
, (CASE WHEN CT.XMLDATA.BASE_TYPE IS NULL THEN NULL WHEN ( SELECT COUNT(1)
FROM XDB.XDB$SIMPLE_TYPE ST
WHERE CT.XMLDATA.BASE_TYPE = REF(ST) ) != 0 THEN ( SELECT S.XMLDATA.TARGET_NAMESPACE
FROM XDB.XDB$SIMPLE_TYPE ST
, XDB.XDB$SCHEMA S
WHERE CT.XMLDATA.BASE_TYPE = REF(ST)
AND SYS_OP_R2O(ST.XMLDATA.PARENT_SCHEMA) = S.SYS_NC_OID$) ELSE ( SELECT S.XMLDATA.TARGET_NAMESPACE
FROM XDB.XDB$COMPLEX_TYPE CTM
, XDB.XDB$COMPLEX_TYPE CTB
, XDB.XDB$SCHEMA S
WHERE REF(CT) = REF(CTM)
AND CTM.XMLDATA.BASE_TYPE = REF(CTB) AND SYS_OP_R2O(CTB.XMLDATA.PARENT_SCHEMA) = S.SYS_NC_OID$ ) END ) BASE_TARGET_NAMESPACE
, CT.XMLDATA.MAINTAIN_DOM MAINTAIN_DOM
, CT.XMLDATA.SQLTYPE SQL_TYPE
, CT.XMLDATA.SQLSCHEMA SQL_SCHEMA
FROM XDB.XDB$SCHEMA S
, XDB.XDB$COMPLEX_TYPE CT
WHERE SYS_OP_R2O(CT.XMLDATA.PARENT_SCHEMA) = S.SYS_NC_OID$