1*fcf3ce44SJohn Forte<?xml version="1.0" encoding="UTF-8"?> 2*fcf3ce44SJohn Forte 3*fcf3ce44SJohn Forte<!-- 4*fcf3ce44SJohn Forte 5*fcf3ce44SJohn Forte CDDL HEADER START 6*fcf3ce44SJohn Forte 7*fcf3ce44SJohn Forte The contents of this file are subject to the terms of the 8*fcf3ce44SJohn Forte Common Development and Distribution License (the "License"). 9*fcf3ce44SJohn Forte You may not use this file except in compliance with the License. 10*fcf3ce44SJohn Forte 11*fcf3ce44SJohn Forte You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12*fcf3ce44SJohn Forte or http://www.opensolaris.org/os/licensing. 13*fcf3ce44SJohn Forte See the License for the specific language governing permissions 14*fcf3ce44SJohn Forte and limitations under the License. 15*fcf3ce44SJohn Forte 16*fcf3ce44SJohn Forte When distributing Covered Code, include this CDDL HEADER in each 17*fcf3ce44SJohn Forte file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18*fcf3ce44SJohn Forte If applicable, add the following below this CDDL HEADER, with the 19*fcf3ce44SJohn Forte fields enclosed by brackets "[]" replaced with your own identifying 20*fcf3ce44SJohn Forte information: Portions Copyright [yyyy] [name of copyright owner] 21*fcf3ce44SJohn Forte 22*fcf3ce44SJohn Forte CDDL HEADER END 23*fcf3ce44SJohn Forte 24*fcf3ce44SJohn Forte Copyright 2008 Sun Microsystems, Inc. All rights reserved. 25*fcf3ce44SJohn Forte Use is subject to license terms. 26*fcf3ce44SJohn Forte 27*fcf3ce44SJohn Forte 28*fcf3ce44SJohn Forte--> 29*fcf3ce44SJohn Forte 30*fcf3ce44SJohn Forte<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" 31*fcf3ce44SJohn Forte targetNamespace="http://www.sun.com/schema/isnsmanagement" 32*fcf3ce44SJohn Forte xmlns:isns="http://www.sun.com/schema/isnsmanagement" 33*fcf3ce44SJohn Forte elementFormDefault="qualified"> 34*fcf3ce44SJohn Forte 35*fcf3ce44SJohn Forte <!-- 36*fcf3ce44SJohn Forte Object type names that are asspcoated with isns Object, 37*fcf3ce44SJohn Forte Discovery Domain, Discovery Domain Set, Node. 38*fcf3ce44SJohn Forte --> 39*fcf3ce44SJohn Forte <xsd:element name="isnsObjectType"> 40*fcf3ce44SJohn Forte <xsd:simpleType> 41*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 42*fcf3ce44SJohn Forte <xsd:enumeration value="DiscoveryDomainSet"></xsd:enumeration> 43*fcf3ce44SJohn Forte <xsd:enumeration value="DiscoveryDomain"></xsd:enumeration> 44*fcf3ce44SJohn Forte <xsd:enumeration value="Node"></xsd:enumeration> 45*fcf3ce44SJohn Forte </xsd:restriction> 46*fcf3ce44SJohn Forte </xsd:simpleType> 47*fcf3ce44SJohn Forte </xsd:element> 48*fcf3ce44SJohn Forte 49*fcf3ce44SJohn Forte <!-- 50*fcf3ce44SJohn Forte Association type name for Discovery Domain membership and Discovery 51*fcf3ce44SJohn Forte Domain Set membership. 52*fcf3ce44SJohn Forte --> 53*fcf3ce44SJohn Forte <xsd:element name="AssociationType"> 54*fcf3ce44SJohn Forte <xsd:simpleType> 55*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 56*fcf3ce44SJohn Forte <xsd:enumeration value="DiscoveryDomainMember"/> 57*fcf3ce44SJohn Forte <xsd:enumeration value="DiscoveryDomainSetMember"/> 58*fcf3ce44SJohn Forte </xsd:restriction> 59*fcf3ce44SJohn Forte </xsd:simpleType> 60*fcf3ce44SJohn Forte </xsd:element> 61*fcf3ce44SJohn Forte 62*fcf3ce44SJohn Forte <!-- 63*fcf3ce44SJohn Forte Discovery Domain object. 64*fcf3ce44SJohn Forte Attribute name represent DD Symbolic Name defined in the iSNS spec. 65*fcf3ce44SJohn Forte Group isnsDDAttrGroup represents other attrtibutes defined in the 66*fcf3ce44SJohn Forte iSNS spec. 67*fcf3ce44SJohn Forte Note that the existence of isnsDDAttrGroup is made as optional. 68*fcf3ce44SJohn Forte --> 69*fcf3ce44SJohn Forte <xsd:element name="DiscoveryDomain"> 70*fcf3ce44SJohn Forte <xsd:complexType> 71*fcf3ce44SJohn Forte <xsd:group ref="isns:isnsDDAttrGroup" minOccurs="0"/> 72*fcf3ce44SJohn Forte <xsd:attribute name="name" type="xsd:string" use="required"/> 73*fcf3ce44SJohn Forte <xsd:attribute name="id" type="xsd:positiveInteger" use="optional"/> 74*fcf3ce44SJohn Forte <xsd:attribute name="nodeCount" type="xsd:nonNegativeInteger" use="optional"/> 75*fcf3ce44SJohn Forte </xsd:complexType> 76*fcf3ce44SJohn Forte </xsd:element> 77*fcf3ce44SJohn Forte <xsd:group name="isnsDDAttrGroup"> 78*fcf3ce44SJohn Forte <xsd:sequence> 79*fcf3ce44SJohn Forte <xsd:element name="BootList_Enabled" type="xsd:boolean"/> 80*fcf3ce44SJohn Forte </xsd:sequence> 81*fcf3ce44SJohn Forte </xsd:group> 82*fcf3ce44SJohn Forte 83*fcf3ce44SJohn Forte <!-- 84*fcf3ce44SJohn Forte Discovery Domain Set object. 85*fcf3ce44SJohn Forte Attribute name represent DD Set Symbolic Name defined in the iSNS spec. 86*fcf3ce44SJohn Forte Group isnsDDsetAttrGroup represents other attrtibutes defined in the 87*fcf3ce44SJohn Forte iSNS spec. 88*fcf3ce44SJohn Forte Note that the existence of isnsDDsetAttrGroup is made as optional. 89*fcf3ce44SJohn Forte --> 90*fcf3ce44SJohn Forte <xsd:element name="DiscoveryDomainSet"> 91*fcf3ce44SJohn Forte <xsd:complexType> 92*fcf3ce44SJohn Forte <xsd:group ref="isns:isnsDDsetAttrGroup" minOccurs="0"/> 93*fcf3ce44SJohn Forte <xsd:attribute name="name" type="xsd:string" use="required"/> 94*fcf3ce44SJohn Forte <xsd:attribute name="id" type="xsd:positiveInteger" use="optional"/> 95*fcf3ce44SJohn Forte </xsd:complexType> 96*fcf3ce44SJohn Forte </xsd:element> 97*fcf3ce44SJohn Forte <xsd:group name="isnsDDsetAttrGroup"> 98*fcf3ce44SJohn Forte <xsd:sequence> 99*fcf3ce44SJohn Forte <xsd:element name="Enabled" type="xsd:boolean"/> 100*fcf3ce44SJohn Forte </xsd:sequence> 101*fcf3ce44SJohn Forte </xsd:group> 102*fcf3ce44SJohn Forte 103*fcf3ce44SJohn Forte <!-- 104*fcf3ce44SJohn Forte isnsServer object for administratively configurable setting. 105*fcf3ce44SJohn Forte --> 106*fcf3ce44SJohn Forte <xsd:element name="isnsServer"> 107*fcf3ce44SJohn Forte <xsd:complexType> 108*fcf3ce44SJohn Forte <xsd:group ref="isns:isnsServerAttrGroup" minOccurs="0"/> 109*fcf3ce44SJohn Forte </xsd:complexType> 110*fcf3ce44SJohn Forte </xsd:element> 111*fcf3ce44SJohn Forte 112*fcf3ce44SJohn Forte <xsd:group name="isnsServerAttrGroup"> 113*fcf3ce44SJohn Forte <xsd:sequence> 114*fcf3ce44SJohn Forte <xsd:element name="datastoreLocation" type="xsd:string"></xsd:element> 115*fcf3ce44SJohn Forte <xsd:element name="esiRetryThreshold" type="xsd:nonNegativeInteger"></xsd:element> 116*fcf3ce44SJohn Forte <xsd:element name="managementSCNEnabled" type="xsd:boolean"></xsd:element> 117*fcf3ce44SJohn Forte <xsd:element name="controlNodeName" type="xsd:string" nillable="true"></xsd:element> 118*fcf3ce44SJohn Forte </xsd:sequence> 119*fcf3ce44SJohn Forte </xsd:group> 120*fcf3ce44SJohn Forte 121*fcf3ce44SJohn Forte <!-- 122*fcf3ce44SJohn Forte Node object. Attribute name represent iSCSI name for a node 123*fcf3ce44SJohn Forte defined in the iSNS spec. 124*fcf3ce44SJohn Forte Group isnsNodeAttrGroup represents other attrtibutes including 125*fcf3ce44SJohn Forte Network Entity, Portal and Portal Group Tag. 126*fcf3ce44SJohn Forte Note that the existence of isnsNodeAttrGroup is made as optional. 127*fcf3ce44SJohn Forte --> 128*fcf3ce44SJohn Forte <xsd:element name="Node"> 129*fcf3ce44SJohn Forte <xsd:complexType> 130*fcf3ce44SJohn Forte <xsd:group ref="isns:isnsNodeAttrGroup" minOccurs="0"/> 131*fcf3ce44SJohn Forte <xsd:attributeGroup ref="isns:nodeAttrs"/> 132*fcf3ce44SJohn Forte </xsd:complexType> 133*fcf3ce44SJohn Forte </xsd:element> 134*fcf3ce44SJohn Forte 135*fcf3ce44SJohn Forte <!-- 136*fcf3ce44SJohn Forte Attributes for Node object. 137*fcf3ce44SJohn Forte name and nodeType are specified. 138*fcf3ce44SJohn Forte Both attributes are required. 139*fcf3ce44SJohn Forte --> 140*fcf3ce44SJohn Forte <xsd:attributeGroup name="nodeAttrs"> 141*fcf3ce44SJohn Forte <xsd:attribute name="name" type="xsd:string" use="required"/> 142*fcf3ce44SJohn Forte <xsd:attribute name="alias" type="xsd:string"/> 143*fcf3ce44SJohn Forte <!-- 144*fcf3ce44SJohn Forte Add support for management clients needing XML documents 145*fcf3ce44SJohn Forte with properties representing whether or not the given node is 146*fcf3ce44SJohn Forte assigned or not, is registered or not, and a status timestamp stating 147*fcf3ce44SJohn Forte when the last time this information was determined. 148*fcf3ce44SJohn Forte 149*fcf3ce44SJohn Forte @todo Since these properties are client-specific, we want to factor 150*fcf3ce44SJohn Forte them out into a separate schema that includes and extends this one. 151*fcf3ce44SJohn Forte Since this task has proven difficult in the short term, we defer this 152*fcf3ce44SJohn Forte until a future product cycle. 153*fcf3ce44SJohn Forte --> 154*fcf3ce44SJohn Forte <xsd:attribute name="assigned" type="xsd:boolean" use="optional"/> 155*fcf3ce44SJohn Forte <xsd:attribute name="registered" type="xsd:boolean" use="optional"/> 156*fcf3ce44SJohn Forte <xsd:attribute name="timestamp" type="xsd:string" use="optional"/> 157*fcf3ce44SJohn Forte <xsd:attribute name="type"> 158*fcf3ce44SJohn Forte <xsd:simpleType> 159*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 160*fcf3ce44SJohn Forte <xsd:enumeration value="Target"/> 161*fcf3ce44SJohn Forte <xsd:enumeration value="Initiator"/> 162*fcf3ce44SJohn Forte <xsd:enumeration value="Control"/> 163*fcf3ce44SJohn Forte <xsd:enumeration value="Unknown"/> 164*fcf3ce44SJohn Forte <xsd:enumeration value="Control/Target"/> 165*fcf3ce44SJohn Forte <xsd:enumeration value="Control/Initiator"/> 166*fcf3ce44SJohn Forte </xsd:restriction> 167*fcf3ce44SJohn Forte </xsd:simpleType> 168*fcf3ce44SJohn Forte </xsd:attribute> 169*fcf3ce44SJohn Forte </xsd:attributeGroup> 170*fcf3ce44SJohn Forte 171*fcf3ce44SJohn Forte <!-- 172*fcf3ce44SJohn Forte Child elements for Node object. 173*fcf3ce44SJohn Forte --> 174*fcf3ce44SJohn Forte <xsd:group name="isnsNodeAttrGroup"> 175*fcf3ce44SJohn Forte <xsd:sequence> 176*fcf3ce44SJohn Forte <xsd:element name="SCN_Subscription" minOccurs="0" maxOccurs="8"> 177*fcf3ce44SJohn Forte <xsd:simpleType> 178*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 179*fcf3ce44SJohn Forte <xsd:enumeration value="Initiator and Self information only"/> 180*fcf3ce44SJohn Forte <xsd:enumeration value="Target and Self information only"/> 181*fcf3ce44SJohn Forte <xsd:enumeration value="Management Registration/SCN"/> 182*fcf3ce44SJohn Forte <xsd:enumeration value="Object Removed"/> 183*fcf3ce44SJohn Forte <xsd:enumeration value="Object Added"/> 184*fcf3ce44SJohn Forte <xsd:enumeration value="Object Updated"/> 185*fcf3ce44SJohn Forte <xsd:enumeration value="DD/DD-Set Member Removed"/> 186*fcf3ce44SJohn Forte <xsd:enumeration value="DD/DD-Set Member Added"/> 187*fcf3ce44SJohn Forte </xsd:restriction> 188*fcf3ce44SJohn Forte </xsd:simpleType> 189*fcf3ce44SJohn Forte </xsd:element> 190*fcf3ce44SJohn Forte <!-- 191*fcf3ce44SJohn Forte Network Entity attributes 192*fcf3ce44SJohn Forte --> 193*fcf3ce44SJohn Forte <xsd:element name="Network_Entity"> 194*fcf3ce44SJohn Forte <xsd:complexType> 195*fcf3ce44SJohn Forte <xsd:sequence> 196*fcf3ce44SJohn Forte <xsd:element name="Entity_ID"> 197*fcf3ce44SJohn Forte <xsd:simpleType> 198*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 199*fcf3ce44SJohn Forte <xsd:minLength value="4"/> 200*fcf3ce44SJohn Forte <xsd:maxLength value="256"/> 201*fcf3ce44SJohn Forte </xsd:restriction> 202*fcf3ce44SJohn Forte </xsd:simpleType> 203*fcf3ce44SJohn Forte </xsd:element> 204*fcf3ce44SJohn Forte <xsd:element name="Entity_Protocol" type="xsd:integer" minOccurs="0"></xsd:element> 205*fcf3ce44SJohn Forte <xsd:element name="Management_IP_Addr" minOccurs="0"> 206*fcf3ce44SJohn Forte <xsd:simpleType> 207*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 208*fcf3ce44SJohn Forte <xsd:maxLength value="46"/> 209*fcf3ce44SJohn Forte </xsd:restriction> 210*fcf3ce44SJohn Forte </xsd:simpleType> 211*fcf3ce44SJohn Forte </xsd:element> 212*fcf3ce44SJohn Forte <xsd:element name="Entity_Reg_Timestamp" type="xsd:unsignedLong" minOccurs="0"/> 213*fcf3ce44SJohn Forte <xsd:element name="Protocol_Version_Range" minOccurs="0"> 214*fcf3ce44SJohn Forte <xsd:complexType> 215*fcf3ce44SJohn Forte <xsd:sequence> 216*fcf3ce44SJohn Forte <xsd:element name="minVersion" type="xsd:unsignedShort"/> 217*fcf3ce44SJohn Forte <xsd:element name="maxVersion" type="xsd:unsignedShort"/> 218*fcf3ce44SJohn Forte </xsd:sequence> 219*fcf3ce44SJohn Forte </xsd:complexType> 220*fcf3ce44SJohn Forte </xsd:element> 221*fcf3ce44SJohn Forte <xsd:element name="Registration_Period" type="xsd:unsignedInt" minOccurs="0"/> 222*fcf3ce44SJohn Forte </xsd:sequence> 223*fcf3ce44SJohn Forte </xsd:complexType> 224*fcf3ce44SJohn Forte </xsd:element> 225*fcf3ce44SJohn Forte 226*fcf3ce44SJohn Forte <!-- 227*fcf3ce44SJohn Forte Portal attributes including Portal Group Tag 228*fcf3ce44SJohn Forte --> 229*fcf3ce44SJohn Forte 230*fcf3ce44SJohn Forte <xsd:element name="Portal" maxOccurs="unbounded" > 231*fcf3ce44SJohn Forte <xsd:complexType> 232*fcf3ce44SJohn Forte <xsd:sequence> 233*fcf3ce44SJohn Forte <xsd:element name="IP_Addr"> 234*fcf3ce44SJohn Forte <xsd:simpleType> 235*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 236*fcf3ce44SJohn Forte <xsd:maxLength value="46"/> 237*fcf3ce44SJohn Forte </xsd:restriction> 238*fcf3ce44SJohn Forte </xsd:simpleType> 239*fcf3ce44SJohn Forte </xsd:element> 240*fcf3ce44SJohn Forte <xsd:element name="UDP_TCP_port"> 241*fcf3ce44SJohn Forte <xsd:complexType> 242*fcf3ce44SJohn Forte <xsd:sequence> 243*fcf3ce44SJohn Forte <xsd:element name="Port_Type"> 244*fcf3ce44SJohn Forte <xsd:simpleType> 245*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 246*fcf3ce44SJohn Forte <xsd:enumeration value="TCP"/> 247*fcf3ce44SJohn Forte <xsd:enumeration value="UDP"/> 248*fcf3ce44SJohn Forte </xsd:restriction> 249*fcf3ce44SJohn Forte </xsd:simpleType> 250*fcf3ce44SJohn Forte </xsd:element> 251*fcf3ce44SJohn Forte <xsd:element name="Port_Number" type="xsd:unsignedShort"/> 252*fcf3ce44SJohn Forte </xsd:sequence> 253*fcf3ce44SJohn Forte </xsd:complexType> 254*fcf3ce44SJohn Forte </xsd:element> 255*fcf3ce44SJohn Forte <xsd:element name="Group_Tag"> 256*fcf3ce44SJohn Forte <xsd:simpleType> 257*fcf3ce44SJohn Forte <xsd:restriction base="xsd:nonNegativeInteger"> 258*fcf3ce44SJohn Forte <xsd:maxInclusive value="65535"/> 259*fcf3ce44SJohn Forte </xsd:restriction> 260*fcf3ce44SJohn Forte </xsd:simpleType> 261*fcf3ce44SJohn Forte </xsd:element> 262*fcf3ce44SJohn Forte <xsd:element name="Symbolic_Name" minOccurs="0"> 263*fcf3ce44SJohn Forte <xsd:simpleType> 264*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 265*fcf3ce44SJohn Forte <xsd:maxLength value="256"/> 266*fcf3ce44SJohn Forte </xsd:restriction> 267*fcf3ce44SJohn Forte </xsd:simpleType> 268*fcf3ce44SJohn Forte </xsd:element> 269*fcf3ce44SJohn Forte <xsd:element name="ESI_Interval" type="xsd:positiveInteger" minOccurs="0"/> 270*fcf3ce44SJohn Forte <xsd:element name="ESI_Port" minOccurs="0"> 271*fcf3ce44SJohn Forte <xsd:complexType> 272*fcf3ce44SJohn Forte <xsd:sequence> 273*fcf3ce44SJohn Forte <xsd:element name="Port_Type"> 274*fcf3ce44SJohn Forte <xsd:simpleType> 275*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 276*fcf3ce44SJohn Forte <xsd:enumeration value="TCP"/> 277*fcf3ce44SJohn Forte <xsd:enumeration value="UDP"/> 278*fcf3ce44SJohn Forte </xsd:restriction> 279*fcf3ce44SJohn Forte </xsd:simpleType> 280*fcf3ce44SJohn Forte </xsd:element> 281*fcf3ce44SJohn Forte <xsd:element name="Port_Number" type="xsd:unsignedShort"/> 282*fcf3ce44SJohn Forte </xsd:sequence> 283*fcf3ce44SJohn Forte </xsd:complexType> 284*fcf3ce44SJohn Forte </xsd:element> 285*fcf3ce44SJohn Forte <xsd:element name="SCN_Port" minOccurs="0"> 286*fcf3ce44SJohn Forte <xsd:complexType> 287*fcf3ce44SJohn Forte <xsd:sequence> 288*fcf3ce44SJohn Forte <xsd:element name="Port_Type"> 289*fcf3ce44SJohn Forte <xsd:simpleType> 290*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 291*fcf3ce44SJohn Forte <xsd:enumeration value="TCP"/> 292*fcf3ce44SJohn Forte <xsd:enumeration value="UDP"/> 293*fcf3ce44SJohn Forte </xsd:restriction> 294*fcf3ce44SJohn Forte </xsd:simpleType> 295*fcf3ce44SJohn Forte </xsd:element> 296*fcf3ce44SJohn Forte <xsd:element name="Port_Number" type="xsd:unsignedShort"/> 297*fcf3ce44SJohn Forte </xsd:sequence> 298*fcf3ce44SJohn Forte </xsd:complexType> 299*fcf3ce44SJohn Forte </xsd:element> 300*fcf3ce44SJohn Forte </xsd:sequence> 301*fcf3ce44SJohn Forte </xsd:complexType> 302*fcf3ce44SJohn Forte </xsd:element> 303*fcf3ce44SJohn Forte </xsd:sequence> 304*fcf3ce44SJohn Forte </xsd:group> 305*fcf3ce44SJohn Forte 306*fcf3ce44SJohn Forte <!-- 307*fcf3ce44SJohn Forte Discovery Domain Membership Association. 308*fcf3ce44SJohn Forte Attribute DDName represents Discovery Domain name and NodeName 309*fcf3ce44SJohn Forte a node name to indicate the association pair. 310*fcf3ce44SJohn Forte Note that the element has only attributes. 311*fcf3ce44SJohn Forte --> 312*fcf3ce44SJohn Forte <xsd:element name="DiscoveryDomainMember"> 313*fcf3ce44SJohn Forte <xsd:complexType> 314*fcf3ce44SJohn Forte <xsd:attribute name="DDName" type="xsd:string" use="required"/> 315*fcf3ce44SJohn Forte <xsd:attribute name="NodeName" type="xsd:string" use="required"/> 316*fcf3ce44SJohn Forte </xsd:complexType> 317*fcf3ce44SJohn Forte </xsd:element> 318*fcf3ce44SJohn Forte 319*fcf3ce44SJohn Forte <!-- 320*fcf3ce44SJohn Forte Discovery Domain Set Membership Association. 321*fcf3ce44SJohn Forte Attribute DDName represents Discovery Domain name and DDsetName 322*fcf3ce44SJohn Forte Discovery Domain Set name to indicate the association pair. 323*fcf3ce44SJohn Forte Note that the element has only attributes. 324*fcf3ce44SJohn Forte --> 325*fcf3ce44SJohn Forte <xsd:element name="DiscoveryDomainSetMember"> 326*fcf3ce44SJohn Forte <xsd:complexType> 327*fcf3ce44SJohn Forte <xsd:attribute name="DDName" type="xsd:string" use="required"/> 328*fcf3ce44SJohn Forte <xsd:attribute name="DDsetName" type="xsd:string" use="required"/> 329*fcf3ce44SJohn Forte </xsd:complexType> 330*fcf3ce44SJohn Forte </xsd:element> 331*fcf3ce44SJohn Forte <xsd:element name="Association"> 332*fcf3ce44SJohn Forte <xsd:complexType> 333*fcf3ce44SJohn Forte <xsd:choice> 334*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomainMember"/> 335*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomainSetMember"/> 336*fcf3ce44SJohn Forte </xsd:choice> 337*fcf3ce44SJohn Forte </xsd:complexType> 338*fcf3ce44SJohn Forte </xsd:element> 339*fcf3ce44SJohn Forte 340*fcf3ce44SJohn Forte <!-- 341*fcf3ce44SJohn Forte Super element for iSNS object, Discovery Domain, Disocvery Domain 342*fcf3ce44SJohn Forte set and Node. 343*fcf3ce44SJohn Forte --> 344*fcf3ce44SJohn Forte <xsd:element name="isnsObject"> 345*fcf3ce44SJohn Forte <xsd:complexType> 346*fcf3ce44SJohn Forte <xsd:choice> 347*fcf3ce44SJohn Forte <xsd:element ref="isns:Node"/> 348*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomain"/> 349*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomainSet"/> 350*fcf3ce44SJohn Forte </xsd:choice> 351*fcf3ce44SJohn Forte </xsd:complexType> 352*fcf3ce44SJohn Forte </xsd:element> 353*fcf3ce44SJohn Forte 354*fcf3ce44SJohn Forte 355*fcf3ce44SJohn Forte <!-- 356*fcf3ce44SJohn Forte Result element represent the response value for an isns request 357*fcf3ce44SJohn Forte operation including status and error information. 358*fcf3ce44SJohn Forte --> 359*fcf3ce44SJohn Forte <xsd:element name="result"> 360*fcf3ce44SJohn Forte <xsd:complexType> 361*fcf3ce44SJohn Forte <xsd:sequence> 362*fcf3ce44SJohn Forte <xsd:element name="status" type="xsd:integer" minOccurs="1"/> 363*fcf3ce44SJohn Forte <xsd:element name="message" minOccurs="0" nillable="false"> 364*fcf3ce44SJohn Forte <xsd:simpleType> 365*fcf3ce44SJohn Forte <xsd:restriction base="xsd:string"> 366*fcf3ce44SJohn Forte <xsd:whiteSpace value="preserve"/> 367*fcf3ce44SJohn Forte </xsd:restriction> 368*fcf3ce44SJohn Forte </xsd:simpleType> 369*fcf3ce44SJohn Forte </xsd:element> 370*fcf3ce44SJohn Forte </xsd:sequence> 371*fcf3ce44SJohn Forte </xsd:complexType> 372*fcf3ce44SJohn Forte </xsd:element> 373*fcf3ce44SJohn Forte 374*fcf3ce44SJohn Forte <!-- 375*fcf3ce44SJohn Forte Request operations for iSNS management applicatioin. 376*fcf3ce44SJohn Forte Any of request can be included multiple times. 377*fcf3ce44SJohn Forte --> 378*fcf3ce44SJohn Forte <xsd:element name="isnsRequest"> 379*fcf3ce44SJohn Forte <xsd:complexType> 380*fcf3ce44SJohn Forte <xsd:sequence> 381*fcf3ce44SJohn Forte <xsd:element name="description" type="xsd:string" minOccurs="0"/> 382*fcf3ce44SJohn Forte <xsd:choice maxOccurs="1"> 383*fcf3ce44SJohn Forte 384*fcf3ce44SJohn Forte <!-- 385*fcf3ce44SJohn Forte get operation returns details of a given iSNS object instance. 386*fcf3ce44SJohn Forte 387*fcf3ce44SJohn Forte input: an object instance. Specifying only the name 388*fcf3ce44SJohn Forte attribute of an isnsObject insance will be sufficient 389*fcf3ce44SJohn Forte for the server to serve the request. 390*fcf3ce44SJohn Forte Ex) <get 391*fcf3ce44SJohn Forte output: an object instance with fully populated 392*fcf3ce44SJohn Forte isns{Node|Discveroy_Domain|Discovery_Domain_Set]AttrGroup 393*fcf3ce44SJohn Forte or error info when there is failure. 394*fcf3ce44SJohn Forte --> 395*fcf3ce44SJohn Forte <xsd:element name="get"> 396*fcf3ce44SJohn Forte <xsd:complexType> 397*fcf3ce44SJohn Forte <xsd:choice> 398*fcf3ce44SJohn Forte <xsd:element ref="isns:isnsObject" maxOccurs="unbounded"/> 399*fcf3ce44SJohn Forte <xsd:element ref="isns:isnsServer" maxOccurs="1"/> 400*fcf3ce44SJohn Forte </xsd:choice> 401*fcf3ce44SJohn Forte </xsd:complexType> 402*fcf3ce44SJohn Forte </xsd:element> 403*fcf3ce44SJohn Forte 404*fcf3ce44SJohn Forte <!-- 405*fcf3ce44SJohn Forte getAssociated operation returns a list of object 406*fcf3ce44SJohn Forte instances that are asscoiated with the given Association 407*fcf3ce44SJohn Forte type name and a given object instance. 408*fcf3ce44SJohn Forte 409*fcf3ce44SJohn Forte input: an Association type name and an object instance. 410*fcf3ce44SJohn Forte Specifying the name attribute is sufficient for 411*fcf3ce44SJohn Forte the request. 412*fcf3ce44SJohn Forte Ex) <get 413*fcf3ce44SJohn Forte output: a list of object instances which is assciated with 414*fcf3ce44SJohn Forte the given object instance through the given association. 415*fcf3ce44SJohn Forte 416*fcf3ce44SJohn Forte When there is failure for the request, error info will 417*fcf3ce44SJohn Forte be returned. 418*fcf3ce44SJohn Forte --> 419*fcf3ce44SJohn Forte <xsd:element name="getAssociated"> 420*fcf3ce44SJohn Forte <xsd:complexType> 421*fcf3ce44SJohn Forte <xsd:sequence maxOccurs="unbounded"> 422*fcf3ce44SJohn Forte <xsd:element ref="isns:AssociationType"/> 423*fcf3ce44SJohn Forte <xsd:element ref="isns:isnsObject"/> 424*fcf3ce44SJohn Forte </xsd:sequence> 425*fcf3ce44SJohn Forte </xsd:complexType> 426*fcf3ce44SJohn Forte </xsd:element> 427*fcf3ce44SJohn Forte 428*fcf3ce44SJohn Forte <!-- 429*fcf3ce44SJohn Forte create operation either creates a new object instance 430*fcf3ce44SJohn Forte or modify an object instance if the name of the given object 431*fcf3ce44SJohn Forte instance already exists. 432*fcf3ce44SJohn Forte 433*fcf3ce44SJohn Forte input: an object instance with fully populated 434*fcf3ce44SJohn Forte isns{Node|Discveroy_Domain|Discovery_Domain_Set]AttrGroup 435*fcf3ce44SJohn Forte 436*fcf3ce44SJohn Forte output: status 437*fcf3ce44SJohn Forte --> 438*fcf3ce44SJohn Forte <xsd:element name="createModify"> 439*fcf3ce44SJohn Forte <xsd:complexType> 440*fcf3ce44SJohn Forte <xsd:choice> 441*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomainMember" maxOccurs="unbounded" /> 442*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomain" maxOccurs="unbounded"/> 443*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomainSetMember" maxOccurs="unbounded"/> 444*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomainSet" maxOccurs="unbounded"/> 445*fcf3ce44SJohn Forte </xsd:choice> 446*fcf3ce44SJohn Forte </xsd:complexType> 447*fcf3ce44SJohn Forte </xsd:element> 448*fcf3ce44SJohn Forte 449*fcf3ce44SJohn Forte 450*fcf3ce44SJohn Forte <!-- 451*fcf3ce44SJohn Forte delete operation delete the given object instance. 452*fcf3ce44SJohn Forte 453*fcf3ce44SJohn Forte input: an object instance. Specifying only the name 454*fcf3ce44SJohn Forte attribute of an isnsObject insance will be sufficient 455*fcf3ce44SJohn Forte for the server to serve the request. 456*fcf3ce44SJohn Forte Ex) <get 457*fcf3ce44SJohn Forte output: status 458*fcf3ce44SJohn Forte --> 459*fcf3ce44SJohn Forte <xsd:element name="delete"> 460*fcf3ce44SJohn Forte <xsd:complexType> 461*fcf3ce44SJohn Forte <xsd:choice> 462*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomain" maxOccurs="unbounded"/> 463*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomainSet" maxOccurs="unbounded"/> 464*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomainMember" maxOccurs="unbounded"/> 465*fcf3ce44SJohn Forte <xsd:element ref="isns:DiscoveryDomainSetMember" maxOccurs="unbounded"/> 466*fcf3ce44SJohn Forte </xsd:choice> 467*fcf3ce44SJohn Forte </xsd:complexType> 468*fcf3ce44SJohn Forte </xsd:element> 469*fcf3ce44SJohn Forte 470*fcf3ce44SJohn Forte <!-- 471*fcf3ce44SJohn Forte enumerate operation returns a list of object instances for the 472*fcf3ce44SJohn Forte given object type. 473*fcf3ce44SJohn Forte 474*fcf3ce44SJohn Forte input: an object type name. 475*fcf3ce44SJohn Forte Ex) <get 476*fcf3ce44SJohn Forte output: a list of object instances for the given obect type 477*fcf3ce44SJohn Forte or error info when there is failure. 478*fcf3ce44SJohn Forte --> 479*fcf3ce44SJohn Forte <xsd:element name="enumerate"> 480*fcf3ce44SJohn Forte <xsd:complexType> 481*fcf3ce44SJohn Forte <xsd:sequence> 482*fcf3ce44SJohn Forte <xsd:element ref="isns:isnsObjectType"/> 483*fcf3ce44SJohn Forte </xsd:sequence> 484*fcf3ce44SJohn Forte </xsd:complexType> 485*fcf3ce44SJohn Forte </xsd:element> 486*fcf3ce44SJohn Forte </xsd:choice> 487*fcf3ce44SJohn Forte </xsd:sequence> 488*fcf3ce44SJohn Forte </xsd:complexType> 489*fcf3ce44SJohn Forte </xsd:element> 490*fcf3ce44SJohn Forte 491*fcf3ce44SJohn Forte 492*fcf3ce44SJohn Forte <!-- 493*fcf3ce44SJohn Forte isnsResponse returns either object instance information or 494*fcf3ce44SJohn Forte status. 495*fcf3ce44SJohn Forte 496*fcf3ce44SJohn Forte When the request is 'get' 497*fcf3ce44SJohn Forte the response should be fully populated an obejct instance. 498*fcf3ce44SJohn Forte When the request is createModify or delete 499*fcf3ce44SJohn Forte the response should be status. 500*fcf3ce44SJohn Forte When the request is getAssociated or enumerate 501*fcf3ce44SJohn Forte the response should be a list of an object instance 502*fcf3ce44SJohn Forte with name attribute set. 503*fcf3ce44SJohn Forte --> 504*fcf3ce44SJohn Forte 505*fcf3ce44SJohn Forte <xsd:element name="isnsResponse"> 506*fcf3ce44SJohn Forte <xsd:complexType> 507*fcf3ce44SJohn Forte <xsd:sequence> 508*fcf3ce44SJohn Forte <xsd:element name="description" type="xsd:string" minOccurs="0"/> 509*fcf3ce44SJohn Forte <xsd:element ref="isns:result" maxOccurs="1" minOccurs="1"/> 510*fcf3ce44SJohn Forte <xsd:choice minOccurs="0"> 511*fcf3ce44SJohn Forte <xsd:element ref="isns:isnsObject" maxOccurs="unbounded" minOccurs="0"/> 512*fcf3ce44SJohn Forte <xsd:element ref="isns:isnsServer" maxOccurs="1" minOccurs="0"/> 513*fcf3ce44SJohn Forte <xsd:element ref="isns:Association" maxOccurs="unbounded" minOccurs="0"/> 514*fcf3ce44SJohn Forte </xsd:choice> 515*fcf3ce44SJohn Forte </xsd:sequence> 516*fcf3ce44SJohn Forte </xsd:complexType> 517*fcf3ce44SJohn Forte </xsd:element> 518*fcf3ce44SJohn Forte</xsd:schema> 519