[8780cbec] | 1 | <?xml version="1.0" encoding="UTF-8"?> |
---|
| 2 | <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Kangshi (Kangshi) --> |
---|
| 3 | <xs:schema targetNamespace="http://crypto.stanford.edu/dc/RTMLv1.0" xmlns="http://crypto.stanford.edu/dc/RTMLv1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified"> |
---|
| 4 | <!--xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd"/--> |
---|
| 5 | <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="file:///var/tomcat4/webapps/demo/WEB-INF/xmldsig-core-schema.xsd"/> |
---|
| 6 | <xs:element name="CredentialStore"> |
---|
| 7 | <xs:complexType> |
---|
| 8 | <xs:sequence> |
---|
| 9 | <xs:element name="DefaultPrincipal" type="Principal" minOccurs="0"/> |
---|
| 10 | <xs:element ref="ApplicationDomainSpecification" minOccurs="0" maxOccurs="unbounded"/> |
---|
| 11 | <xs:element name="PrincipalInfo" type="PrincipalInfo" minOccurs="0" maxOccurs="unbounded"/> |
---|
| 12 | <xs:element ref="Credential" minOccurs="0" maxOccurs="unbounded"/> |
---|
| 13 | </xs:sequence> |
---|
| 14 | </xs:complexType> |
---|
| 15 | </xs:element> |
---|
| 16 | <xs:element name="ApplicationDomainSpecification"> |
---|
| 17 | <xs:annotation> |
---|
| 18 | <xs:documentation>This specifies data types and role names used in one application domain. </xs:documentation> |
---|
| 19 | </xs:annotation> |
---|
| 20 | <xs:complexType> |
---|
| 21 | <xs:sequence> |
---|
| 22 | <xs:element name="ImportDomain" type="ImportDomain" minOccurs="0" maxOccurs="unbounded"/> |
---|
| 23 | <xs:choice minOccurs="0" maxOccurs="unbounded"> |
---|
| 24 | <xs:element name="IntegerType" type="IntegerTypeDeclaration"/> |
---|
| 25 | <xs:element name="DecimalType" type="DecimalTypeDeclaration"/> |
---|
| 26 | <xs:element name="EnumType" type="EnumTypeDeclaration"/> |
---|
| 27 | <xs:element name="StringType" type="StringTypeDeclaration"/> |
---|
| 28 | <xs:element name="RecordType" type="RecordTypeDeclaration"/> |
---|
| 29 | <xs:element name="TreeType" type="TreeTypeDeclaration"/> |
---|
| 30 | </xs:choice> |
---|
| 31 | <xs:element name="PrincipalType" type="PrincipalTypeDeclaration" minOccurs="0"/> |
---|
| 32 | <xs:element name="RoleDeclaration" type="RoleDeclaration" minOccurs="0" maxOccurs="unbounded"/> |
---|
| 33 | </xs:sequence> |
---|
| 34 | <xs:attribute name="uri" type="xs:anyURI" use="required"/> |
---|
| 35 | <xs:attribute name="id" type="HashID"/> |
---|
| 36 | </xs:complexType> |
---|
| 37 | </xs:element> |
---|
| 38 | <xs:complexType name="ImportDomain"> |
---|
| 39 | <xs:sequence> |
---|
| 40 | <xs:element name="Location" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/> |
---|
| 41 | </xs:sequence> |
---|
| 42 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 43 | <xs:attribute name="idref" type="HashID" use="required"/> |
---|
| 44 | <xs:attribute name="uri" type="xs:anyURI"/> |
---|
| 45 | </xs:complexType> |
---|
| 46 | <xs:complexType name="IntegerTypeDeclaration"> |
---|
| 47 | <xs:annotation> |
---|
| 48 | <xs:documentation>It is required that base is between min and max. A legal value is between min and max, and satisfies (v-base) % step = 0.</xs:documentation> |
---|
| 49 | </xs:annotation> |
---|
| 50 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 51 | <xs:attribute name="min" type="xs:long" use="required"/> |
---|
| 52 | <xs:attribute name="includeMin" type="xs:boolean" default="true"/> |
---|
| 53 | <xs:attribute name="max" type="xs:long" use="required"/> |
---|
| 54 | <xs:attribute name="includeMax" type="xs:boolean" default="true"/> |
---|
| 55 | <xs:attribute name="step" type="xs:long" default="1"/> |
---|
| 56 | <xs:attribute name="base" type="xs:long" default="0"/> |
---|
| 57 | </xs:complexType> |
---|
| 58 | <xs:complexType name="DecimalTypeDeclaration"> |
---|
| 59 | <xs:annotation> |
---|
| 60 | <xs:documentation>Similar to IntType.</xs:documentation> |
---|
| 61 | </xs:annotation> |
---|
| 62 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 63 | <xs:attribute name="min" type="xs:decimal" use="required"/> |
---|
| 64 | <xs:attribute name="includeMin" type="xs:boolean"/> |
---|
| 65 | <xs:attribute name="max" type="xs:decimal" use="required"/> |
---|
| 66 | <xs:attribute name="includeMax" type="xs:boolean"/> |
---|
| 67 | <xs:attribute name="step" type="xs:decimal" default="1"/> |
---|
| 68 | <xs:attribute name="base" type="xs:decimal" default="0"/> |
---|
| 69 | </xs:complexType> |
---|
| 70 | <xs:complexType name="EnumTypeDeclaration"> |
---|
| 71 | <xs:sequence> |
---|
| 72 | <xs:element name="EnumValue" type="Enum" maxOccurs="unbounded"/> |
---|
| 73 | </xs:sequence> |
---|
| 74 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 75 | <xs:attribute name="ignoreCase" type="xs:boolean" default="false"/> |
---|
| 76 | <xs:attribute name="ordered" type="xs:boolean" default="false"/> |
---|
| 77 | <xs:attribute name="size" type="xs:int"/> |
---|
| 78 | </xs:complexType> |
---|
| 79 | <xs:complexType name="StringTypeDeclaration"> |
---|
| 80 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 81 | <xs:attribute name="ignoreCase" type="xs:boolean" default="false"/> |
---|
| 82 | <xs:attribute name="ordered" type="xs:boolean" default="false"/> |
---|
| 83 | </xs:complexType> |
---|
| 84 | <xs:complexType name="TreeTypeDeclaration"> |
---|
| 85 | <xs:annotation> |
---|
| 86 | <xs:documentation>The three attributes rootsymbol, separator, and rootFirst determine how a constant of a tree type looks like.</xs:documentation> |
---|
| 87 | </xs:annotation> |
---|
| 88 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 89 | <xs:attribute name="separator" type="xs:string" use="required"/> |
---|
| 90 | <xs:attribute name="order" type="TreeValueOrderType" use="required"/> |
---|
| 91 | </xs:complexType> |
---|
| 92 | <xs:simpleType name="TreeValueOrderType"> |
---|
| 93 | <xs:restriction base="xs:string"> |
---|
| 94 | <xs:enumeration value="rootFirst"/> |
---|
| 95 | <xs:enumeration value="rootLast"/> |
---|
| 96 | </xs:restriction> |
---|
| 97 | </xs:simpleType> |
---|
| 98 | <xs:complexType name="RecordTypeDeclaration"> |
---|
| 99 | <xs:sequence> |
---|
| 100 | <xs:element name="Field" maxOccurs="unbounded"> |
---|
| 101 | <xs:complexType> |
---|
| 102 | <xs:sequence> |
---|
| 103 | <xs:element name="Type" type="NameRef"/> |
---|
| 104 | </xs:sequence> |
---|
| 105 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 106 | </xs:complexType> |
---|
| 107 | </xs:element> |
---|
| 108 | </xs:sequence> |
---|
| 109 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 110 | </xs:complexType> |
---|
| 111 | <xs:attributeGroup name="NameRef"> |
---|
| 112 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 113 | <xs:attribute name="domain" type="Identifier"/> |
---|
| 114 | </xs:attributeGroup> |
---|
| 115 | <xs:complexType name="NameRef"> |
---|
| 116 | <xs:attributeGroup ref="NameRef"/> |
---|
| 117 | </xs:complexType> |
---|
| 118 | <xs:complexType name="PrincipalTypeDeclaration"> |
---|
| 119 | <xs:sequence> |
---|
| 120 | <xs:element name="Type" type="NameRef"/> |
---|
| 121 | </xs:sequence> |
---|
| 122 | </xs:complexType> |
---|
| 123 | <xs:complexType name="RoleDeclaration"> |
---|
| 124 | <xs:sequence> |
---|
| 125 | <xs:element name="Description" minOccurs="0" maxOccurs="unbounded"/> |
---|
| 126 | <xs:choice minOccurs="0"> |
---|
| 127 | <xs:element name="Restriction"> |
---|
| 128 | <xs:complexType> |
---|
| 129 | <xs:sequence> |
---|
| 130 | <xs:element name="BaseRole" type="NameRef"/> |
---|
| 131 | <xs:element name="Parameter" minOccurs="0" maxOccurs="unbounded"> |
---|
| 132 | <xs:complexType> |
---|
| 133 | <xs:sequence> |
---|
| 134 | <xs:element name="Type" type="NameRef"/> |
---|
| 135 | </xs:sequence> |
---|
| 136 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 137 | <xs:attribute name="requireSafety" type="xs:boolean" default="false"/> |
---|
| 138 | </xs:complexType> |
---|
| 139 | </xs:element> |
---|
| 140 | </xs:sequence> |
---|
| 141 | </xs:complexType> |
---|
| 142 | </xs:element> |
---|
| 143 | <xs:element name="Extension"> |
---|
| 144 | <xs:complexType> |
---|
| 145 | <xs:sequence> |
---|
| 146 | <xs:element name="BaseRole" type="NameRef"/> |
---|
| 147 | <xs:element name="Parameter" minOccurs="0" maxOccurs="unbounded"> |
---|
| 148 | <xs:complexType> |
---|
| 149 | <xs:sequence> |
---|
| 150 | <xs:element name="Type" type="NameRef"/> |
---|
| 151 | </xs:sequence> |
---|
| 152 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 153 | <xs:attribute name="requireSafety" type="xs:boolean" default="false"/> |
---|
| 154 | </xs:complexType> |
---|
| 155 | </xs:element> |
---|
| 156 | </xs:sequence> |
---|
| 157 | </xs:complexType> |
---|
| 158 | </xs:element> |
---|
| 159 | <xs:element name="Projection"> |
---|
| 160 | <xs:complexType> |
---|
| 161 | <xs:sequence> |
---|
| 162 | <xs:element name="BaseRole"/> |
---|
| 163 | <xs:element name="Parameter" minOccurs="0" maxOccurs="unbounded"> |
---|
| 164 | <xs:complexType> |
---|
| 165 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 166 | </xs:complexType> |
---|
| 167 | </xs:element> |
---|
| 168 | </xs:sequence> |
---|
| 169 | </xs:complexType> |
---|
| 170 | </xs:element> |
---|
| 171 | <xs:element name="Plain"> |
---|
| 172 | <xs:complexType> |
---|
| 173 | <xs:sequence> |
---|
| 174 | <xs:element name="Identity" minOccurs="0"> |
---|
| 175 | <xs:complexType> |
---|
| 176 | <xs:sequence> |
---|
| 177 | <xs:element name="BaseRole" type="NameRef"/> |
---|
| 178 | </xs:sequence> |
---|
| 179 | </xs:complexType> |
---|
| 180 | </xs:element> |
---|
| 181 | <xs:element name="Parameter" minOccurs="0" maxOccurs="unbounded"> |
---|
| 182 | <xs:complexType> |
---|
| 183 | <xs:sequence> |
---|
| 184 | <xs:element name="Type" type="NameRef"/> |
---|
| 185 | </xs:sequence> |
---|
| 186 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 187 | <xs:attribute name="requireSafety" type="xs:boolean" default="false"/> |
---|
| 188 | </xs:complexType> |
---|
| 189 | </xs:element> |
---|
| 190 | </xs:sequence> |
---|
| 191 | <xs:attribute name="dimension" type="xs:int" default="1"/> |
---|
| 192 | <xs:attribute name="issuerTraces" type="IssuerTracesType" default="rule"/> |
---|
| 193 | <xs:attribute name="subjectTraces" type="SubjectTracesType" default="fact"/> |
---|
| 194 | </xs:complexType> |
---|
| 195 | </xs:element> |
---|
| 196 | </xs:choice> |
---|
| 197 | </xs:sequence> |
---|
| 198 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 199 | <xs:attribute name="isIdentity" type="xs:boolean" default="false"/> |
---|
| 200 | </xs:complexType> |
---|
| 201 | <xs:simpleType name="IssuerTracesType"> |
---|
| 202 | <xs:restriction base="xs:token"> |
---|
| 203 | <xs:enumeration value="all"/> |
---|
| 204 | <xs:enumeration value="def"/> |
---|
| 205 | <xs:enumeration value="rule"/> |
---|
| 206 | <xs:enumeration value="none"/> |
---|
| 207 | </xs:restriction> |
---|
| 208 | </xs:simpleType> |
---|
| 209 | <xs:simpleType name="SubjectTracesType"> |
---|
| 210 | <xs:restriction base="xs:token"> |
---|
| 211 | <xs:enumeration value="all"/> |
---|
| 212 | <xs:enumeration value="fact"/> |
---|
| 213 | <xs:enumeration value="none"/> |
---|
| 214 | </xs:restriction> |
---|
| 215 | </xs:simpleType> |
---|
| 216 | <xs:element name="Credential"> |
---|
| 217 | <xs:complexType> |
---|
| 218 | <xs:sequence> |
---|
| 219 | <xs:element name="Preamble" type="Preamble"/> |
---|
| 220 | <xs:element name="Issuer"> |
---|
| 221 | <xs:complexType> |
---|
| 222 | <xs:sequence> |
---|
| 223 | <xs:group ref="PrincipalValue"/> |
---|
| 224 | </xs:sequence> |
---|
| 225 | </xs:complexType> |
---|
| 226 | </xs:element> |
---|
| 227 | <xs:group ref="Definition" maxOccurs="unbounded"/> |
---|
| 228 | <xs:element name="ValidityTime" type="ValidityTime"/> |
---|
| 229 | <xs:element name="ValidityRule" type="ValidityRule" minOccurs="0" maxOccurs="unbounded"/> |
---|
| 230 | <xs:choice minOccurs="0"> |
---|
| 231 | <xs:element ref="ds:Signature"/> |
---|
| 232 | <xs:element ref="ds:X509Data"/> |
---|
| 233 | </xs:choice> |
---|
| 234 | </xs:sequence> |
---|
| 235 | <xs:attribute name="id" type="HashID"/> |
---|
| 236 | </xs:complexType> |
---|
| 237 | <xs:unique name="principalShortName"> |
---|
| 238 | <xs:selector xpath=".//Principal"/> |
---|
| 239 | <xs:field xpath="@shortName"/> |
---|
| 240 | </xs:unique> |
---|
| 241 | <xs:keyref name="principalShortNameRef" refer="principalShortName"> |
---|
| 242 | <xs:selector xpath=".//PrincipaRef"/> |
---|
| 243 | <xs:field xpath="@shortName"/> |
---|
| 244 | </xs:keyref> |
---|
| 245 | </xs:element> |
---|
| 246 | <xs:element name="LocalStatement"> |
---|
| 247 | <xs:complexType> |
---|
| 248 | <xs:sequence> |
---|
| 249 | <xs:element name="Preamble" type="Preamble"/> |
---|
| 250 | <xs:element name="RuleIdentifier" type="xs:token" minOccurs="0"/> |
---|
| 251 | <xs:group ref="Definition" maxOccurs="unbounded"/> |
---|
| 252 | <xs:element name="ValidityTime" type="ValidityTime"/> |
---|
| 253 | </xs:sequence> |
---|
| 254 | </xs:complexType> |
---|
| 255 | </xs:element> |
---|
| 256 | <xs:complexType name="Preamble"> |
---|
| 257 | <xs:sequence> |
---|
| 258 | <xs:element name="ImportDomain" type="ImportDomain" minOccurs="0" maxOccurs="unbounded"/> |
---|
| 259 | <xs:element name="Principal" type="Principal" minOccurs="0" maxOccurs="unbounded"/> |
---|
| 260 | </xs:sequence> |
---|
| 261 | </xs:complexType> |
---|
| 262 | <xs:complexType name="ValidityTime"> |
---|
| 263 | <xs:sequence> |
---|
| 264 | <xs:element name="IssueTime" type="xs:dateTime"/> |
---|
| 265 | <xs:element name="NotBefore" type="xs:dateTime" minOccurs="0"/> |
---|
| 266 | <xs:element name="NotAfter" type="xs:dateTime" minOccurs="0"/> |
---|
| 267 | <xs:element name="LifeTime" type="xs:duration" minOccurs="0"/> |
---|
| 268 | </xs:sequence> |
---|
| 269 | </xs:complexType> |
---|
| 270 | <xs:complexType name="CRLLocator"> |
---|
| 271 | <xs:sequence> |
---|
| 272 | <xs:group ref="PrincipalValue"/> |
---|
| 273 | </xs:sequence> |
---|
| 274 | <xs:attribute name="frequency" type="xs:duration"/> |
---|
| 275 | <xs:attribute name="uri" type="xs:anyURI"/> |
---|
| 276 | </xs:complexType> |
---|
| 277 | <xs:complexType name="ValidityRule"> |
---|
| 278 | <xs:sequence> |
---|
| 279 | <xs:any/> |
---|
| 280 | </xs:sequence> |
---|
| 281 | </xs:complexType> |
---|
| 282 | <xs:group name="VerificationRecord"> |
---|
| 283 | <xs:sequence/> |
---|
| 284 | </xs:group> |
---|
| 285 | <xs:complexType name="RoleTerm"> |
---|
| 286 | <xs:sequence> |
---|
| 287 | <xs:element name="Parameter" type="Field" minOccurs="0" maxOccurs="unbounded"/> |
---|
| 288 | </xs:sequence> |
---|
| 289 | <xs:attributeGroup ref="NameRef"/> |
---|
| 290 | </xs:complexType> |
---|
| 291 | <xs:group name="Role"> |
---|
| 292 | <xs:choice> |
---|
| 293 | <xs:element name="RoleTerm" type="RoleTerm"/> |
---|
| 294 | <xs:element name="ExternalRole"> |
---|
| 295 | <xs:complexType> |
---|
| 296 | <xs:sequence> |
---|
| 297 | <xs:group ref="PrincipalValue"/> |
---|
| 298 | <xs:element name="RoleTerm" type="RoleTerm"/> |
---|
| 299 | </xs:sequence> |
---|
| 300 | </xs:complexType> |
---|
| 301 | </xs:element> |
---|
| 302 | </xs:choice> |
---|
| 303 | </xs:group> |
---|
| 304 | <xs:complexType name="Field"> |
---|
| 305 | <xs:group ref="Constraint" minOccurs="0"/> |
---|
| 306 | <xs:attribute name="name" type="Identifier" use="required"/> |
---|
| 307 | <xs:attribute name="id" type="xs:ID"/> |
---|
| 308 | </xs:complexType> |
---|
| 309 | <xs:complexType name="Record"> |
---|
| 310 | <xs:sequence> |
---|
| 311 | <xs:element name="Field" type="Field" maxOccurs="unbounded"/> |
---|
| 312 | </xs:sequence> |
---|
| 313 | </xs:complexType> |
---|
| 314 | <xs:simpleType name="SpecialPrincipalType"> |
---|
| 315 | <xs:restriction base="xs:token"> |
---|
| 316 | <xs:enumeration value="this"/> |
---|
| 317 | <xs:enumeration value="issuer"/> |
---|
| 318 | </xs:restriction> |
---|
| 319 | </xs:simpleType> |
---|
| 320 | <xs:group name="Constraint"> |
---|
| 321 | <xs:choice> |
---|
| 322 | <xs:element name="IntegerValue" type="Integer"/> |
---|
| 323 | <xs:element name="DecimalValue" type="Decimal"/> |
---|
| 324 | <xs:element name="StringValue" type="String"/> |
---|
| 325 | <xs:element name="EnumValue" type="Enum"/> |
---|
| 326 | <xs:element name="TimeValue" type="Time"/> |
---|
| 327 | <xs:element name="TreeValue" type="Tree"/> |
---|
| 328 | <xs:element name="Record" type="Record"/> |
---|
| 329 | <xs:group ref="PrincipalValue"/> |
---|
| 330 | <xs:element name="SpecialPrincipal"/> |
---|
| 331 | <xs:element name="Interval" type="Interval"/> |
---|
| 332 | <xs:element name="Set" type="Set"/> |
---|
| 333 | <xs:element name="Equals"> |
---|
| 334 | <xs:complexType> |
---|
| 335 | <xs:attribute name="ref" type="xs:IDREF"/> |
---|
| 336 | </xs:complexType> |
---|
| 337 | </xs:element> |
---|
| 338 | </xs:choice> |
---|
| 339 | </xs:group> |
---|
| 340 | <xs:group name="Definition"> |
---|
| 341 | <xs:choice> |
---|
| 342 | <xs:element name="SimpleMember" type="SimpleMember"/> |
---|
| 343 | <xs:element name="SimpleContainment" type="SimpleContainment"/> |
---|
| 344 | <xs:element name="LinkedContainment" type="LinkingContainment"/> |
---|
| 345 | <xs:element name="IntersectionContainment" type="IntersectionContainment"/> |
---|
| 346 | <xs:element name="ProductContainment" type="ProductContainment"/> |
---|
| 347 | <xs:element name="ExclusiveProductContainment" type="ExclusiveProductContainment"/> |
---|
| 348 | <xs:element name="SimpleDelegation" type="SimpleDelegation"/> |
---|
| 349 | <xs:element name="AdvancedDelegation" type="AdvancedDelegation"/> |
---|
| 350 | </xs:choice> |
---|
| 351 | </xs:group> |
---|
| 352 | <xs:complexType name="RoleSequence"> |
---|
| 353 | <xs:sequence> |
---|
| 354 | <xs:group ref="Role" minOccurs="2" maxOccurs="unbounded"/> |
---|
| 355 | </xs:sequence> |
---|
| 356 | </xs:complexType> |
---|
| 357 | <xs:complexType name="DefinitionBase" abstract="true"> |
---|
| 358 | <xs:sequence> |
---|
| 359 | <xs:element name="HeadRoleTerm" type="RoleTerm"/> |
---|
| 360 | </xs:sequence> |
---|
| 361 | </xs:complexType> |
---|
| 362 | <xs:complexType name="SimpleMember"> |
---|
| 363 | <xs:complexContent> |
---|
| 364 | <xs:extension base="DefinitionBase"> |
---|
| 365 | <xs:sequence> |
---|
| 366 | <xs:group ref="PrincipalValue"/> |
---|
| 367 | </xs:sequence> |
---|
| 368 | </xs:extension> |
---|
| 369 | </xs:complexContent> |
---|
| 370 | </xs:complexType> |
---|
| 371 | <xs:complexType name="SimpleContainment"> |
---|
| 372 | <xs:complexContent> |
---|
| 373 | <xs:extension base="DefinitionBase"> |
---|
| 374 | <xs:sequence> |
---|
| 375 | <xs:group ref="Role"/> |
---|
| 376 | </xs:sequence> |
---|
| 377 | </xs:extension> |
---|
| 378 | </xs:complexContent> |
---|
| 379 | </xs:complexType> |
---|
| 380 | <xs:complexType name="IntersectionContainment"> |
---|
| 381 | <xs:complexContent> |
---|
| 382 | <xs:extension base="DefinitionBase"> |
---|
| 383 | <xs:sequence> |
---|
| 384 | <xs:element name="Intersection" type="RoleSequence"/> |
---|
| 385 | </xs:sequence> |
---|
| 386 | </xs:extension> |
---|
| 387 | </xs:complexContent> |
---|
| 388 | </xs:complexType> |
---|
| 389 | <xs:complexType name="LinkingContainment"> |
---|
| 390 | <xs:complexContent> |
---|
| 391 | <xs:extension base="DefinitionBase"> |
---|
| 392 | <xs:sequence> |
---|
| 393 | <xs:element name="LinkedRole"> |
---|
| 394 | <xs:complexType> |
---|
| 395 | <xs:sequence> |
---|
| 396 | <xs:element name="RoleTerm" type="RoleTerm"/> |
---|
| 397 | <xs:element name="RoleTerm" type="RoleTerm"/> |
---|
| 398 | </xs:sequence> |
---|
| 399 | </xs:complexType> |
---|
| 400 | </xs:element> |
---|
| 401 | </xs:sequence> |
---|
| 402 | </xs:extension> |
---|
| 403 | </xs:complexContent> |
---|
| 404 | </xs:complexType> |
---|
| 405 | <xs:complexType name="ProductContainment"> |
---|
| 406 | <xs:complexContent> |
---|
| 407 | <xs:extension base="DefinitionBase"> |
---|
| 408 | <xs:sequence> |
---|
| 409 | <xs:element name="Product" type="RoleSequence"/> |
---|
| 410 | </xs:sequence> |
---|
| 411 | </xs:extension> |
---|
| 412 | </xs:complexContent> |
---|
| 413 | </xs:complexType> |
---|
| 414 | <xs:complexType name="ExclusiveProductContainment"> |
---|
| 415 | <xs:complexContent> |
---|
| 416 | <xs:extension base="DefinitionBase"> |
---|
| 417 | <xs:sequence> |
---|
| 418 | <xs:element name="ExclusiveProduct" type="RoleSequence"/> |
---|
| 419 | </xs:sequence> |
---|
| 420 | </xs:extension> |
---|
| 421 | </xs:complexContent> |
---|
| 422 | </xs:complexType> |
---|
| 423 | <xs:complexType name="SimpleDelegation"> |
---|
| 424 | <xs:complexContent> |
---|
| 425 | <xs:extension base="DefinitionBase"> |
---|
| 426 | <xs:sequence> |
---|
| 427 | <xs:element name="DelegateTo"> |
---|
| 428 | <xs:complexType> |
---|
| 429 | <xs:sequence> |
---|
| 430 | <xs:group ref="PrincipalValue"/> |
---|
| 431 | </xs:sequence> |
---|
| 432 | </xs:complexType> |
---|
| 433 | </xs:element> |
---|
| 434 | <xs:element name="Control" minOccurs="0"> |
---|
| 435 | <xs:complexType> |
---|
| 436 | <xs:sequence> |
---|
| 437 | <xs:group ref="Role"/> |
---|
| 438 | </xs:sequence> |
---|
| 439 | </xs:complexType> |
---|
| 440 | </xs:element> |
---|
| 441 | </xs:sequence> |
---|
| 442 | </xs:extension> |
---|
| 443 | </xs:complexContent> |
---|
| 444 | </xs:complexType> |
---|
| 445 | <xs:complexType name="AdvancedDelegation"> |
---|
| 446 | <xs:complexContent> |
---|
| 447 | <xs:extension base="DefinitionBase"> |
---|
| 448 | <xs:sequence> |
---|
| 449 | <xs:element name="DelegateTo"> |
---|
| 450 | <xs:complexType> |
---|
| 451 | <xs:sequence> |
---|
| 452 | <xs:element name="RoleTerm" type="RoleTerm"/> |
---|
| 453 | </xs:sequence> |
---|
| 454 | </xs:complexType> |
---|
| 455 | </xs:element> |
---|
| 456 | <xs:element name="Control" minOccurs="0"> |
---|
| 457 | <xs:complexType> |
---|
| 458 | <xs:sequence> |
---|
| 459 | <xs:group ref="Role"/> |
---|
| 460 | </xs:sequence> |
---|
| 461 | </xs:complexType> |
---|
| 462 | </xs:element> |
---|
| 463 | </xs:sequence> |
---|
| 464 | </xs:extension> |
---|
| 465 | </xs:complexContent> |
---|
| 466 | </xs:complexType> |
---|
| 467 | <xs:simpleType name="Identifier"> |
---|
| 468 | <xs:annotation> |
---|
| 469 | <xs:documentation>The schema data type of identifier used for domain names, role names, type names, etc.</xs:documentation> |
---|
| 470 | </xs:annotation> |
---|
| 471 | <xs:restriction base="xs:token"/> |
---|
| 472 | </xs:simpleType> |
---|
| 473 | <xs:simpleType name="HashID"> |
---|
| 474 | <xs:restriction base="xs:base64Binary"/> |
---|
| 475 | </xs:simpleType> |
---|
| 476 | <xs:simpleType name="Integer"> |
---|
| 477 | <xs:annotation> |
---|
| 478 | <xs:documentation>The schema data type for IntegerValue. Although it is xs:long, the current xerces parser only allows int.</xs:documentation> |
---|
| 479 | </xs:annotation> |
---|
| 480 | <xs:restriction base="xs:long"/> |
---|
| 481 | </xs:simpleType> |
---|
| 482 | <xs:simpleType name="Decimal"> |
---|
| 483 | <xs:annotation> |
---|
| 484 | <xs:documentation>The schema data type for DecimalValue.</xs:documentation> |
---|
| 485 | </xs:annotation> |
---|
| 486 | <xs:restriction base="xs:decimal"/> |
---|
| 487 | </xs:simpleType> |
---|
| 488 | <xs:simpleType name="String"> |
---|
| 489 | <xs:annotation> |
---|
| 490 | <xs:documentation>The schema data type for the StringValue element in RTML credentials. Now using token.</xs:documentation> |
---|
| 491 | </xs:annotation> |
---|
| 492 | <xs:restriction base="xs:token"/> |
---|
| 493 | </xs:simpleType> |
---|
| 494 | <xs:simpleType name="Enum"> |
---|
| 495 | <xs:restriction base="xs:token"/> |
---|
| 496 | </xs:simpleType> |
---|
| 497 | <xs:simpleType name="Time"> |
---|
| 498 | <xs:union memberTypes="xs:dateTime xs:date xs:time xs:gYear xs:gYearMonth xs:gMonth xs:gMonthDay xs:gDay"/> |
---|
| 499 | </xs:simpleType> |
---|
| 500 | <xs:complexType name="Tree"> |
---|
| 501 | <xs:annotation> |
---|
| 502 | <xs:documentation>A tree value contains a string which consists of token values separated by a separator symbol, which is declared in TreeType. The attributes determines whether the current node, children, and descendents are included.</xs:documentation> |
---|
| 503 | </xs:annotation> |
---|
| 504 | <xs:simpleContent> |
---|
| 505 | <xs:extension base="xs:string"> |
---|
| 506 | <xs:attribute name="includeCurrent" type="xs:boolean" default="true"/> |
---|
| 507 | <xs:attribute name="includeChildren" type="xs:boolean" default="false"/> |
---|
| 508 | <xs:attribute name="includeDescendents" type="xs:boolean" default="false"/> |
---|
| 509 | </xs:extension> |
---|
| 510 | </xs:simpleContent> |
---|
| 511 | </xs:complexType> |
---|
| 512 | <xs:complexType name="Principal"> |
---|
| 513 | <xs:choice> |
---|
| 514 | <xs:element name="KeyHash" type="HashID"/> |
---|
| 515 | <xs:element name="IntegerValue" type="Integer"/> |
---|
| 516 | <xs:element name="StringValue" type="String"/> |
---|
| 517 | </xs:choice> |
---|
| 518 | <xs:attribute name="shortName" type="Identifier"/> |
---|
| 519 | </xs:complexType> |
---|
| 520 | <xs:complexType name="PrincipalRef"> |
---|
| 521 | <xs:attribute name="shortName" type="Identifier"/> |
---|
| 522 | </xs:complexType> |
---|
| 523 | <xs:complexType name="PrincipalInfo"> |
---|
| 524 | <xs:sequence> |
---|
| 525 | <xs:element ref="ds:KeyValue"/> |
---|
| 526 | </xs:sequence> |
---|
| 527 | </xs:complexType> |
---|
| 528 | <xs:group name="PrincipalValue"> |
---|
| 529 | <xs:choice> |
---|
| 530 | <xs:element name="Principal" type="Principal"/> |
---|
| 531 | <xs:element name="PrincipalRef" type="PrincipalRef"/> |
---|
| 532 | </xs:choice> |
---|
| 533 | </xs:group> |
---|
| 534 | <xs:complexType name="Interval"> |
---|
| 535 | <xs:choice> |
---|
| 536 | <xs:sequence> |
---|
| 537 | <xs:element name="From" minOccurs="0"> |
---|
| 538 | <xs:complexType> |
---|
| 539 | <xs:sequence> |
---|
| 540 | <xs:element name="IntegerValue" type="Integer"/> |
---|
| 541 | </xs:sequence> |
---|
| 542 | <xs:attribute name="included" type="xs:boolean" default="true"/> |
---|
| 543 | </xs:complexType> |
---|
| 544 | </xs:element> |
---|
| 545 | <xs:element name="To" minOccurs="0"> |
---|
| 546 | <xs:complexType> |
---|
| 547 | <xs:sequence> |
---|
| 548 | <xs:element name="IntegerValue" type="Integer"/> |
---|
| 549 | </xs:sequence> |
---|
| 550 | <xs:attribute name="included" type="xs:boolean" default="true"/> |
---|
| 551 | </xs:complexType> |
---|
| 552 | </xs:element> |
---|
| 553 | </xs:sequence> |
---|
| 554 | <xs:sequence> |
---|
| 555 | <xs:element name="From" minOccurs="0"> |
---|
| 556 | <xs:complexType> |
---|
| 557 | <xs:sequence> |
---|
| 558 | <xs:element name="DecimalValue" type="Decimal"/> |
---|
| 559 | </xs:sequence> |
---|
| 560 | <xs:attribute name="included" type="xs:boolean" default="true"/> |
---|
| 561 | </xs:complexType> |
---|
| 562 | </xs:element> |
---|
| 563 | <xs:element name="To" minOccurs="0"> |
---|
| 564 | <xs:complexType> |
---|
| 565 | <xs:sequence> |
---|
| 566 | <xs:element name="DecimalValue" type="Decimal"/> |
---|
| 567 | </xs:sequence> |
---|
| 568 | <xs:attribute name="included" type="xs:boolean" default="true"/> |
---|
| 569 | </xs:complexType> |
---|
| 570 | </xs:element> |
---|
| 571 | </xs:sequence> |
---|
| 572 | <xs:sequence> |
---|
| 573 | <xs:element name="From" minOccurs="0"> |
---|
| 574 | <xs:complexType> |
---|
| 575 | <xs:sequence> |
---|
| 576 | <xs:element name="EnumValue" type="Enum"/> |
---|
| 577 | </xs:sequence> |
---|
| 578 | <xs:attribute name="included" type="xs:boolean" default="true"/> |
---|
| 579 | </xs:complexType> |
---|
| 580 | </xs:element> |
---|
| 581 | <xs:element name="To" minOccurs="0"> |
---|
| 582 | <xs:complexType> |
---|
| 583 | <xs:sequence> |
---|
| 584 | <xs:element name="EnumValue" type="Enum"/> |
---|
| 585 | </xs:sequence> |
---|
| 586 | <xs:attribute name="included" type="xs:boolean" default="true"/> |
---|
| 587 | </xs:complexType> |
---|
| 588 | </xs:element> |
---|
| 589 | </xs:sequence> |
---|
| 590 | <xs:sequence> |
---|
| 591 | <xs:element name="From" minOccurs="0"> |
---|
| 592 | <xs:complexType> |
---|
| 593 | <xs:sequence> |
---|
| 594 | <xs:element name="StringValue" type="String"/> |
---|
| 595 | </xs:sequence> |
---|
| 596 | <xs:attribute name="included" type="xs:boolean" default="true"/> |
---|
| 597 | </xs:complexType> |
---|
| 598 | </xs:element> |
---|
| 599 | <xs:element name="To" minOccurs="0"> |
---|
| 600 | <xs:complexType> |
---|
| 601 | <xs:sequence> |
---|
| 602 | <xs:element name="StringValue" type="String"/> |
---|
| 603 | </xs:sequence> |
---|
| 604 | <xs:attribute name="included" type="xs:boolean" default="true"/> |
---|
| 605 | </xs:complexType> |
---|
| 606 | </xs:element> |
---|
| 607 | </xs:sequence> |
---|
| 608 | <xs:sequence> |
---|
| 609 | <xs:element name="From" minOccurs="0"> |
---|
| 610 | <xs:complexType> |
---|
| 611 | <xs:sequence> |
---|
| 612 | <xs:element name="TimeValue" type="Time"/> |
---|
| 613 | </xs:sequence> |
---|
| 614 | <xs:attribute name="included" type="xs:boolean" default="true"/> |
---|
| 615 | </xs:complexType> |
---|
| 616 | </xs:element> |
---|
| 617 | <xs:element name="To" minOccurs="0"> |
---|
| 618 | <xs:complexType> |
---|
| 619 | <xs:sequence> |
---|
| 620 | <xs:element name="TimeValue" type="Time"/> |
---|
| 621 | </xs:sequence> |
---|
| 622 | <xs:attribute name="included" type="xs:boolean" default="true"/> |
---|
| 623 | </xs:complexType> |
---|
| 624 | </xs:element> |
---|
| 625 | </xs:sequence> |
---|
| 626 | </xs:choice> |
---|
| 627 | </xs:complexType> |
---|
| 628 | <xs:complexType name="Set"> |
---|
| 629 | <xs:choice> |
---|
| 630 | <xs:element name="IntegerValue" type="Integer" maxOccurs="unbounded"/> |
---|
| 631 | <xs:element name="DecimalValue" type="Decimal" maxOccurs="unbounded"/> |
---|
| 632 | <xs:element name="StringValue" type="String" maxOccurs="unbounded"/> |
---|
| 633 | <xs:element name="EnumValue" type="Enum" maxOccurs="unbounded"/> |
---|
| 634 | <xs:group ref="PrincipalValue" maxOccurs="unbounded"/> |
---|
| 635 | </xs:choice> |
---|
| 636 | </xs:complexType> |
---|
| 637 | </xs:schema> |
---|