MINI MINI MANI MO
<?xml version="1.0"?>
<!--
NAME
xsprin.xsd
DESCRIPTION
Register XS Principal Schema
MODIFIED MM/DD/YY
pknaggs 11/07/06 - Remove principal targetNamespace (bug 5632273)
jsamuel 11/12/06 - merge sqlusertype with rootusertype
pknaggs 11/07/06 - Make targetNamespace optional (bug 5632273)
pthornto 09/14/06 - Initial version
-->
<schema targetNamespace="http://xmlns.oracle.com/xs"
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:xdb="http://xmlns.oracle.com/xdb"
xmlns:xdbprin="http://xmlns.oracle.com/xs"
xmlns:xlink="http://www.w3.org/1999/xlink"
elementFormDefault="qualified" version="1.0">
<annotation>
<documentation>
Schema describes the structure of Principal, User, and Role documents.
</documentation>
</annotation>
<import
namespace="http://www.w3.org/1999/xlink"
schemaLocation="http://www.w3.org/1999/csx.xlink.xsd"/>
<complexType name="effectiveDatesType">
<attribute name="start_date" type="dateTime" use="required"/>
<attribute name="end_date" type="dateTime" use="required"/>
</complexType>
<complexType name="roleGrantType">
<sequence>
<element name="effectiveDates" type="xdbprin:effectiveDatesType"
minOccurs="0" maxOccurs="1"/>
</sequence>
<attribute ref="xlink:type" use="required"/>
<attribute ref="xlink:href" use="required"/>
<attribute name="justification" type="string" use="optional"/>
</complexType>
<complexType name="principalType">
<sequence>
<element name="title" minOccurs="0"/>
<element name="description" minOccurs="0"/>
<element name="UID" type="integer" minOccurs="0" maxOccurs="1"/>
<element name="GUID" type="hexBinary" minOccurs="0" maxOccurs="1"/>
<element name="externalSource" type="string" minOccurs="0"/>
<element name="roleGrant" type="xdbprin:roleGrantType" minOccurs="0"
maxOccurs="unbounded"/>
</sequence>
</complexType>
<complexType name="proxyUserType">
<sequence maxOccurs="unbounded">
<element name="proxyRole" type="string"/>
</sequence>
<attribute name="user" type="anyURI" use="required"/>
</complexType>
<complexType name="userType">
<complexContent>
<extension base="xdbprin:principalType">
<sequence>
<element name="userName" type="string" minOccurs="1"/>
<element name="proxyUser" type="xdbprin:proxyUserType" minOccurs="0" maxOccurs="unbounded"/>
<element name="effectiveDates" type="xdbprin:effectiveDatesType"
minOccurs="0" maxOccurs="1"/>
<element name="schema" type="string" minOccurs="0" maxOccurs="1"/>
<element name="tableSpace" type="string" minOccurs="0" maxOccurs="1"/>
<element name="profile" type="string" minOccurs="0" maxOccurs="1"/>
<element name="credential" type="string" minOccurs="0" maxOccurs="1"/>
<element name="failedlogins" type="hexBinary" minOccurs="0" maxOccurs="1"/>
<any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="surName" type="string" use="optional"/>
<attribute name="commonName" type="string" use="optional"/>
<attribute name="DistinguishedName" type="string" use="optional"/>
<attribute name="KerberosPrincipalName" type="string" use="optional"/>
<attribute name="email" type="string" use="optional"/>
<attribute name="audio" type="hexBinary" use="optional"/>
<attribute name="businessCategory" type="string" use="optional"/>
<attribute name="carLicense" type="string" use="optional"/>
<attribute name="departmentNumber" type="string" use="optional"/>
<attribute name="displayName" type="string" use="optional"/>
<attribute name="employeeNumber" type="string" use="optional"/>
<attribute name="employeeType" type="string" use="optional"/>
<attribute name="givenName" type="string" use="optional"/>
<attribute name="homePhone" type="string" use="optional"/>
<attribute name="homePostalAddress" type="string" use="optional"/>
<attribute name="initials" type="string" use="optional"/>
<attribute name="jpegPhoto" type="hexBinary" use="optional"/>
<attribute name="labeledURI" type="string" use="optional"/>
<attribute name="mail" type="string" use="optional"/>
<attribute name="manager" type="string" use="optional"/>
<attribute name="mobile" type="string" use="optional"/>
<attribute name="organization" type="string" use="optional"/>
<attribute name="pager" type="string" use="optional"/>
<attribute name="photo" type="string" use="optional"/>
<attribute name="roomNumber" type="string" use="optional"/>
<attribute name="secretary" type="string" use="optional"/>
<attribute name="userCertificate" type="string" use="optional"/>
<attribute name="x500uniqueIdentifier" type="string" use="optional"/>
<attribute name="preferredLanguage" type="string" use="optional"/>
<attribute name="userSMIMECertificate" type="string" use="optional"/>
<attribute name="userPKCS12" type="string" use="optional"/>
<attribute name="description" type="string" use="optional"/>
<attribute name="destinationIndicator" type="string" use="optional"/>
<attribute name="facsimileTelephoneNumber" type="string" use="optional"/>
<attribute name="internationaliSDNNumber" type="string" use="optional"/>
<attribute name="locality" type="string" use="optional"/>
<attribute name="organizationalUnit" type="string" use="optional"/>
<attribute name="physicalDeliveryOfficeName" type="string" use="optional"/>
<attribute name="postalAddress" type="string" use="optional"/>
<attribute name="postalCode" type="string" use="optional"/>
<attribute name="postOfficeBox" type="string" use="optional"/>
<attribute name="preferredDeliveryMethod" type="string" use="optional"/>
<attribute name="registeredAddress" type="string" use="optional"/>
<attribute name="seeAlso" type="string" use="optional"/>
<attribute name="state" type="string" use="optional"/>
<attribute name="street" type="string" use="optional"/>
<attribute name="telephoneNumber" type="string" use="optional"/>
<attribute name="teletexTerminalIdentifier" type="string" use="optional"/>
<attribute name="telexNumber" type="string" use="optional"/>
<attribute name="title" type="string" use="optional"/>
<attribute name="x121Address" type="string" use="optional"/>
</extension>
</complexContent>
</complexType>
<complexType name="roleType">
<complexContent>
<extension base="xdbprin:principalType">
<sequence>
<element name="name" type="string"/>
<choice>
<element name="effectiveDates" type="xdbprin:effectiveDatesType"
minOccurs="0"/>
<element name="duration" type="integer" minOccurs="0"/>
</choice>
<any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="enable" type="boolean" default="false"/>
</extension>
</complexContent>
</complexType>
<complexType name="dynamicRoleType">
<complexContent>
<extension base="xdbprin:roleType">
<attribute name="system" type="boolean" default="false"/>
</extension>
</complexContent>
</complexType>
<complexType name="functionRoleType">
<complexContent>
<extension base="xdbprin:roleType">
<sequence>
<element name="owner" type="string"/>
<element name="packageName" type="string"/>
<element name="functionName" type="string"/>
<any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<element name="principal" type="xdbprin:principalType" abstract="true" xdb:defaultTable="XS$PRINCIPALS"/>
<element name="user" type="xdbprin:userType" substitutionGroup="xdbprin:principal" xdb:defaultTable="XS$PRINCIPALS"/>
<element name="role" type="xdbprin:roleType" substitutionGroup="xdbprin:principal" xdb:defaultTable="XS$PRINCIPALS"/>
<element name="functionRole" type="xdbprin:functionRoleType" substitutionGroup="xdbprin:role" xdb:defaultTable="XS$PRINCIPALS"/>
<element name="dynamicRole" type="xdbprin:dynamicRoleType" substitutionGroup="xdbprin:role" xdb:defaultTable="XS$PRINCIPALS"/>
</schema>
OHA YOOOO