servlib/routing/router.xsd
changeset 0 2b3e5ec03512
equal deleted inserted replaced
-1:000000000000 0:2b3e5ec03512
       
     1 <?xml version="1.0" encoding="UTF-8"?> 
       
     2 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
       
     3 
       
     4 <xs:annotation>
       
     5     <xs:documentation xml:lang="en">
       
     6     Copyright 2006-2007 The MITRE Corporation
       
     7 
       
     8     Licensed under the Apache License, Version 2.0 (the "License");
       
     9     you may not use this file except in compliance with the License.
       
    10     You may obtain a copy of the License at
       
    11 
       
    12         http://www.apache.org/licenses/LICENSE-2.0
       
    13 
       
    14     Unless required by applicable law or agreed to in writing, software
       
    15     distributed under the License is distributed on an "AS IS" BASIS,
       
    16     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       
    17     See the License for the specific language governing permissions and
       
    18     limitations under the License.
       
    19 
       
    20     The US Government will not be charged any license fee and/or royalties
       
    21     related to this software. Neither name of The MITRE Corporation; nor the
       
    22     names of its contributors may be used to endorse or promote products
       
    23     derived from this software without specific prior written permission.
       
    24     </xs:documentation>
       
    25 </xs:annotation>
       
    26 
       
    27 <!-- TYPES -->
       
    28 
       
    29     <!-- Simple types -->
       
    30 
       
    31     <xs:simpleType name="dtnStatusType">
       
    32         <xs:restriction base="xs:string">
       
    33             <xs:enumeration value="justBooted"/>
       
    34             <xs:enumeration value="shuttingDown"/>
       
    35         </xs:restriction>
       
    36     </xs:simpleType>
       
    37 
       
    38     <xs:simpleType name="bundlePriorityType">
       
    39         <xs:restriction base="xs:string">
       
    40             <xs:enumeration value="bulk"/>
       
    41             <xs:enumeration value="normal"/>
       
    42             <xs:enumeration value="expedited"/>
       
    43             <xs:enumeration value="_unknown_priority_"/>
       
    44         </xs:restriction>
       
    45     </xs:simpleType>
       
    46     
       
    47     <xs:simpleType name="eventSourceType">
       
    48         <xs:restriction base="xs:string">
       
    49             <xs:enumeration value="peer"/>
       
    50             <xs:enumeration value="application"/>
       
    51             <xs:enumeration value="dataStore"/>
       
    52             <xs:enumeration value="admin"/>
       
    53             <xs:enumeration value="fragmentation"/>
       
    54         </xs:restriction>
       
    55     </xs:simpleType>
       
    56     
       
    57     <xs:simpleType name="bundleForwardActionType">
       
    58         <xs:restriction base="xs:string">
       
    59             <xs:enumeration value="forward"/>
       
    60             <xs:enumeration value="copy"/>
       
    61         </xs:restriction>
       
    62     </xs:simpleType>
       
    63     
       
    64     <xs:simpleType name="contactReasonType">
       
    65         <xs:restriction base="xs:string">
       
    66             <xs:enumeration value="no_info"/>
       
    67             <xs:enumeration value="user"/>
       
    68             <xs:enumeration value="broken"/>
       
    69             <xs:enumeration value="cl_error"/>
       
    70             <xs:enumeration value="cl_version"/>
       
    71             <xs:enumeration value="shutdown"/>
       
    72             <xs:enumeration value="reconnect"/>
       
    73             <xs:enumeration value="idle"/>
       
    74             <xs:enumeration value="timeout"/>
       
    75             <xs:enumeration value="blocked"/>
       
    76             <xs:enumeration value="unblocked"/>
       
    77         </xs:restriction>
       
    78     </xs:simpleType>
       
    79     
       
    80     <xs:simpleType name="linkTypeType">
       
    81         <xs:restriction base="xs:string">
       
    82             <xs:enumeration value="alwayson"/>
       
    83             <xs:enumeration value="ondemand"/>
       
    84             <xs:enumeration value="scheduled"/>
       
    85             <xs:enumeration value="opportunistic"/>
       
    86         </xs:restriction>
       
    87     </xs:simpleType>
       
    88 
       
    89     <xs:simpleType name="linkStateType">
       
    90         <xs:restriction base="xs:string">
       
    91             <xs:enumeration value="unavailable"/>
       
    92             <xs:enumeration value="available"/>
       
    93             <xs:enumeration value="opening"/>
       
    94             <xs:enumeration value="open"/>
       
    95             <xs:enumeration value="busy"/>
       
    96         </xs:restriction>
       
    97     </xs:simpleType>
       
    98 
       
    99     <xs:simpleType name="eidTypeType">
       
   100         <xs:union>
       
   101             <xs:simpleType>
       
   102                 <xs:restriction base="xs:string">
       
   103                    <xs:enumeration value="*:*"/>
       
   104                    <xs:enumeration value="dtn:none"/>
       
   105                 </xs:restriction>
       
   106             </xs:simpleType>
       
   107             <xs:simpleType>
       
   108                 <xs:restriction base="xs:string">
       
   109                     <xs:pattern value="\S+://(\S|/)+/\*"/>
       
   110                 </xs:restriction>
       
   111             </xs:simpleType>
       
   112             <xs:simpleType>
       
   113                 <xs:restriction base="xs:anyURI"/>
       
   114             </xs:simpleType>
       
   115         </xs:union>
       
   116     </xs:simpleType>
       
   117 
       
   118     <xs:simpleType name="percentType">
       
   119 	<xs:restriction base="xs:integer">
       
   120 	    <xs:minInclusive value="0"/>
       
   121 	    <xs:maxInclusive value="100"/>
       
   122 	</xs:restriction>
       
   123     </xs:simpleType>
       
   124 
       
   125     <xs:simpleType name="failureActionType">
       
   126         <xs:restriction base="xs:string">
       
   127             <xs:enumeration value="drop"/>
       
   128             <xs:enumeration value="defer"/>
       
   129             <xs:enumeration value="exec"/>
       
   130         </xs:restriction>
       
   131     </xs:simpleType>
       
   132 
       
   133     <xs:simpleType name="bundleLocationType">
       
   134         <xs:restriction base="xs:string">
       
   135             <xs:enumeration value="memory"/>
       
   136             <xs:enumeration value="disk"/>
       
   137             <xs:enumeration value="nodata"/>
       
   138         </xs:restriction>
       
   139     </xs:simpleType>
       
   140 
       
   141     <!-- Bundle Type -->
       
   142     
       
   143     <xs:attributeGroup name="bundleAttributes">
       
   144         <xs:attribute name="bundleid" type="xs:unsignedInt" use="required">
       
   145             <xs:annotation>
       
   146                 <xs:documentation xml:lang="en">
       
   147 Local bundle identifier.
       
   148                 </xs:documentation>
       
   149             </xs:annotation>
       
   150         </xs:attribute>
       
   151         <xs:attribute name="is_fragment" type="xs:boolean" use="required">
       
   152             <xs:annotation>
       
   153                 <xs:documentation xml:lang="en">
       
   154 Whether the bundle is a fragment.
       
   155                 </xs:documentation>
       
   156             </xs:annotation>
       
   157         </xs:attribute>
       
   158         <xs:attribute name="is_admin" type="xs:boolean" use="required">
       
   159             <xs:annotation>
       
   160                 <xs:documentation xml:lang="en">
       
   161 Whether the bundle is an administrative record.
       
   162                 </xs:documentation>
       
   163             </xs:annotation>
       
   164         </xs:attribute>
       
   165         <xs:attribute name="do_not_fragment" type="xs:boolean" use="required">
       
   166             <xs:annotation>
       
   167                 <xs:documentation xml:lang="en">
       
   168 Whether the bundle may be fragmented.
       
   169                 </xs:documentation>
       
   170             </xs:annotation>
       
   171         </xs:attribute>
       
   172         <xs:attribute name="priority" type="bundlePriorityType" use="required">
       
   173             <xs:annotation>
       
   174                 <xs:documentation xml:lang="en">
       
   175 Bundle priority or class of service.
       
   176                 </xs:documentation>
       
   177             </xs:annotation>
       
   178         </xs:attribute>
       
   179         <xs:attribute name="custody_requested" type="xs:boolean" use="required">
       
   180             <xs:annotation>
       
   181                 <xs:documentation xml:lang="en">
       
   182 Whether bundle custody is requested.
       
   183                 </xs:documentation>
       
   184             </xs:annotation>
       
   185         </xs:attribute>
       
   186         <xs:attribute name="local_custody" type="xs:boolean" use="required">
       
   187             <xs:annotation>
       
   188                 <xs:documentation xml:lang="en">
       
   189 Whether the local node has custody of the bundle.
       
   190                 </xs:documentation>
       
   191             </xs:annotation>
       
   192         </xs:attribute>
       
   193         <xs:attribute name="singleton_dest" type="xs:boolean" use="required">
       
   194             <xs:annotation>
       
   195                 <xs:documentation xml:lang="en">
       
   196 Whether the destination is exactly one endpoint.
       
   197                 </xs:documentation>
       
   198             </xs:annotation>
       
   199         </xs:attribute>
       
   200         <xs:attribute name="custody_rcpt" type="xs:boolean" use="required">
       
   201             <xs:annotation>
       
   202                 <xs:documentation xml:lang="en">
       
   203 Whether custody receipts are requested.
       
   204                 </xs:documentation>
       
   205             </xs:annotation>
       
   206         </xs:attribute>
       
   207         <xs:attribute name="receive_rcpt" type="xs:boolean" use="required">
       
   208             <xs:annotation>
       
   209                 <xs:documentation xml:lang="en">
       
   210 Whether hop-by-hop reception receipts are requested.
       
   211                 </xs:documentation>
       
   212             </xs:annotation>
       
   213         </xs:attribute>
       
   214         <xs:attribute name="forward_rcpt" type="xs:boolean" use="required">
       
   215             <xs:annotation>
       
   216                 <xs:documentation xml:lang="en">
       
   217 Whether hop-by-hop forwarding reports are requested.
       
   218                 </xs:documentation>
       
   219             </xs:annotation>
       
   220         </xs:attribute>
       
   221         <xs:attribute name="delivery_rcpt" type="xs:boolean" use="required">
       
   222             <xs:annotation>
       
   223                 <xs:documentation xml:lang="en">
       
   224 Whether end-to-end delivery receipts are requested.
       
   225                 </xs:documentation>
       
   226             </xs:annotation>
       
   227         </xs:attribute>
       
   228         <xs:attribute name="deletion_rcpt" type="xs:boolean" use="required">
       
   229             <xs:annotation>
       
   230                 <xs:documentation xml:lang="en">
       
   231 Whether bundle deletion reports are requested.
       
   232                 </xs:documentation>
       
   233             </xs:annotation>
       
   234         </xs:attribute>
       
   235         <xs:attribute name="app_acked_rcpt" type="xs:boolean" use="required">
       
   236             <xs:annotation>
       
   237                 <xs:documentation xml:lang="en">
       
   238 Whether application acknowlegements are requested.
       
   239                 </xs:documentation>
       
   240             </xs:annotation>
       
   241         </xs:attribute>
       
   242         <xs:attribute name="creation_ts_seconds" type="xs:unsignedInt" use="required">
       
   243             <xs:annotation>
       
   244                 <xs:documentation xml:lang="en">
       
   245 Seconds since 1/1/2000.
       
   246                 </xs:documentation>
       
   247             </xs:annotation>
       
   248         </xs:attribute>
       
   249         <xs:attribute name="creation_ts_seqno" type="xs:unsignedInt" use="required">
       
   250             <xs:annotation>
       
   251                 <xs:documentation xml:lang="en">
       
   252 Subsecond sequence number.
       
   253                 </xs:documentation>
       
   254             </xs:annotation>
       
   255         </xs:attribute>
       
   256         <xs:attribute name="expiration" type="xs:unsignedInt" use="required">
       
   257             <xs:annotation>
       
   258                 <xs:documentation xml:lang="en">
       
   259 Bundle expiration time.
       
   260                 </xs:documentation>
       
   261             </xs:annotation>
       
   262         </xs:attribute>
       
   263         <xs:attribute name="orig_length" type="xs:unsignedInt" use="required">
       
   264             <xs:annotation>
       
   265                 <xs:documentation xml:lang="en">
       
   266 Length of original bundle.
       
   267                 </xs:documentation>
       
   268             </xs:annotation>
       
   269         </xs:attribute>
       
   270         <xs:attribute name="frag_offset" type="xs:unsignedInt" use="required">
       
   271             <xs:annotation>
       
   272                 <xs:documentation xml:lang="en">
       
   273 Offset of fragment in the original bundle.
       
   274                 </xs:documentation>
       
   275             </xs:annotation>
       
   276         </xs:attribute>
       
   277         <xs:attribute name="owner" type="xs:string" use="required">
       
   278             <xs:annotation>
       
   279                 <xs:documentation xml:lang="en">
       
   280 Declared DTN node that "owns" the bundle (could be empty).
       
   281                 </xs:documentation>
       
   282             </xs:annotation>
       
   283         </xs:attribute>
       
   284     </xs:attributeGroup>
       
   285 
       
   286     <xs:complexType name="eidType">
       
   287         <xs:attribute name="uri" type="eidTypeType" use="required"/>
       
   288     </xs:complexType>
       
   289 
       
   290     <xs:attributeGroup name="payloadAttributes">
       
   291         <xs:attribute name="length" type="xs:unsignedInt" use="required">
       
   292             <xs:annotation>
       
   293                 <xs:documentation xml:lang="en">
       
   294 Payload length.
       
   295                 </xs:documentation>
       
   296             </xs:annotation>
       
   297         </xs:attribute>
       
   298         <xs:attribute name="rcvd_length" type="xs:unsignedInt" use="required">
       
   299             <xs:annotation>
       
   300                 <xs:documentation xml:lang="en">
       
   301 Actual length of payload available.
       
   302                 </xs:documentation>
       
   303             </xs:annotation>
       
   304         </xs:attribute>
       
   305         <xs:attribute name="base_offset" type="xs:unsignedInt" use="required">
       
   306             <xs:annotation>
       
   307                 <xs:documentation xml:lang="en">
       
   308 For bundle fragments, offset into the file (todo)
       
   309                 </xs:documentation>
       
   310             </xs:annotation>
       
   311         </xs:attribute>
       
   312     </xs:attributeGroup>
       
   313 
       
   314     <xs:complexType name="gbofIdType">
       
   315         <xs:sequence>
       
   316             <xs:element name="source" type="eidType"/>
       
   317         </xs:sequence>
       
   318 
       
   319         <xs:attribute name="creation_ts" type="xs:long" use="required">
       
   320             <xs:annotation><xs:documentation xml:lang="en">
       
   321                 Seconds (and subsecond sequence number) since 1/1/2000.
       
   322             </xs:documentation></xs:annotation>
       
   323 	</xs:attribute>
       
   324         <xs:attribute name="is_fragment" type="xs:boolean" use="required">
       
   325             <xs:annotation><xs:documentation xml:lang="en">
       
   326                 Whether the bundle is a fragment.
       
   327             </xs:documentation></xs:annotation>
       
   328         </xs:attribute>
       
   329         <xs:attribute name="frag_length" type="xs:unsignedInt" use="required">
       
   330             <xs:annotation><xs:documentation xml:lang="en">
       
   331                 Fragment length.
       
   332             </xs:documentation></xs:annotation>
       
   333 	</xs:attribute>
       
   334         <xs:attribute name="frag_offset" type="xs:unsignedInt" use="required">
       
   335             <xs:annotation><xs:documentation xml:lang="en">
       
   336                 Offset of fragment in the original bundle.
       
   337             </xs:documentation></xs:annotation>
       
   338         </xs:attribute>
       
   339     </xs:complexType>
       
   340 
       
   341     <xs:complexType name="bundleType">
       
   342         <xs:sequence>
       
   343             <xs:element name="source" type="eidType"/>
       
   344             <xs:element name="dest" type="eidType"/>
       
   345             <xs:element name="custodian" type="eidType"/>
       
   346             <xs:element name="replyto" type="eidType"/>
       
   347             <xs:element name="prevhop" type="eidType"/>
       
   348             <xs:element name="length" type="xs:unsignedInt"/>
       
   349             <xs:element name="location" type="bundleLocationType"/>
       
   350             <xs:element name="payload_file" type="xs:string" minOccurs="0" maxOccurs="1"/>
       
   351         </xs:sequence>
       
   352         <xs:attributeGroup ref="bundleAttributes"/>
       
   353     </xs:complexType>
       
   354     
       
   355     <!-- Contact Type -->
       
   356     
       
   357     <xs:attributeGroup name="contactAttributes">
       
   358         <xs:attribute name="start_time_sec" type="xs:unsignedInt" use="required">
       
   359             <xs:annotation>
       
   360                 <xs:documentation xml:lang="en">
       
   361 Time when the contact began (seconds and subsecond sequence number since 1/1/2000).
       
   362                 </xs:documentation>
       
   363             </xs:annotation>
       
   364         </xs:attribute>
       
   365         <xs:attribute name="start_time_usec" type="xs:unsignedInt" use="required"/>
       
   366         <xs:attribute name="duration" type="xs:unsignedInt" use="required">
       
   367             <xs:annotation>
       
   368                 <xs:documentation xml:lang="en">
       
   369 Contact duration (0 if unknown).
       
   370                 </xs:documentation>
       
   371             </xs:annotation>
       
   372         </xs:attribute>
       
   373         <xs:attribute name="bps" type="xs:unsignedInt" use="required">
       
   374             <xs:annotation>
       
   375                 <xs:documentation xml:lang="en">
       
   376 Approximate bandwidth available.
       
   377                 </xs:documentation>
       
   378             </xs:annotation>
       
   379         </xs:attribute>
       
   380         <xs:attribute name="latency" type="xs:unsignedInt" use="required">
       
   381             <xs:annotation>
       
   382                 <xs:documentation xml:lang="en">
       
   383 Approximate latency.
       
   384                 </xs:documentation>
       
   385             </xs:annotation>
       
   386         </xs:attribute>
       
   387         <xs:attribute name="pkt_loss_prob" type="percentType" use="required">
       
   388             <xs:annotation>
       
   389                 <xs:documentation xml:lang="en">
       
   390 Packet loss probability.
       
   391                 </xs:documentation>
       
   392             </xs:annotation>
       
   393         </xs:attribute>
       
   394     </xs:attributeGroup>
       
   395     
       
   396     <xs:complexType name="contactType">
       
   397         <xs:sequence>
       
   398             <xs:element name="link_attr" type="linkType"/>
       
   399         </xs:sequence>
       
   400         <xs:attributeGroup ref="contactAttributes"/>
       
   401     </xs:complexType>
       
   402         
       
   403     <!-- Convergence Layer Info Type -->
       
   404     
       
   405     <xs:attributeGroup name="clInfoAttributes">
       
   406         <xs:attribute name="local_addr" type="xs:string">
       
   407             <xs:annotation>
       
   408                 <xs:documentation xml:lang="en">
       
   409 Local address.
       
   410                 </xs:documentation>
       
   411             </xs:annotation>
       
   412         </xs:attribute>
       
   413         <xs:attribute name="remote_addr" type="xs:string">
       
   414             <xs:annotation>
       
   415                 <xs:documentation xml:lang="en">
       
   416 Remote address.
       
   417                 </xs:documentation>
       
   418             </xs:annotation>
       
   419         </xs:attribute>
       
   420         <xs:attribute name="local_port" type="xs:unsignedShort">
       
   421             <xs:annotation>
       
   422                 <xs:documentation xml:lang="en">
       
   423 Local port.
       
   424                 </xs:documentation>
       
   425             </xs:annotation>
       
   426         </xs:attribute>
       
   427         <xs:attribute name="remote_port" type="xs:unsignedShort">
       
   428             <xs:annotation>
       
   429                 <xs:documentation xml:lang="en">
       
   430 Remote port.
       
   431                 </xs:documentation>
       
   432             </xs:annotation>
       
   433         </xs:attribute>
       
   434         <xs:attribute name="segment_ack_enabled" type="xs:boolean">
       
   435             <xs:annotation>
       
   436                 <xs:documentation xml:lang="en">
       
   437 Use per segment acks.
       
   438                 </xs:documentation>
       
   439             </xs:annotation>
       
   440         </xs:attribute>
       
   441         <xs:attribute name="negative_ack_enabled" type="xs:boolean">
       
   442             <xs:annotation>
       
   443                 <xs:documentation xml:lang="en">
       
   444 Use negative acks.
       
   445                 </xs:documentation>
       
   446             </xs:annotation>
       
   447         </xs:attribute>
       
   448         <xs:attribute name="keepalive_interval" type="xs:unsignedInt">
       
   449             <xs:annotation>
       
   450                 <xs:documentation xml:lang="en">
       
   451 Seconds between keepalive packets.
       
   452                 </xs:documentation>
       
   453             </xs:annotation>
       
   454         </xs:attribute>
       
   455         <xs:attribute name="segment_length" type="xs:unsignedInt">
       
   456             <xs:annotation>
       
   457                 <xs:documentation xml:lang="en">
       
   458 Maximum size of transmitted segments.
       
   459                 </xs:documentation>
       
   460             </xs:annotation>
       
   461         </xs:attribute>
       
   462         <xs:attribute name="busy_queue_depth" type="xs:unsignedInt">
       
   463             <xs:annotation>
       
   464                 <xs:documentation xml:lang="en">
       
   465 Maximum number of bundles allowed in connection queue.
       
   466                 </xs:documentation>
       
   467             </xs:annotation>
       
   468         </xs:attribute>
       
   469         <xs:attribute name="reactive_frag_enabled" type="xs:boolean">
       
   470             <xs:annotation>
       
   471                 <xs:documentation xml:lang="en">
       
   472 Whether reactive fragmentation is enabled.
       
   473                 </xs:documentation>
       
   474             </xs:annotation>
       
   475         </xs:attribute>
       
   476         <xs:attribute name="sendbuf_length" type="xs:unsignedInt">
       
   477             <xs:annotation>
       
   478                 <xs:documentation xml:lang="en">
       
   479 Buffer size for sending data (bytes).
       
   480                 </xs:documentation>
       
   481             </xs:annotation>
       
   482         </xs:attribute>
       
   483         <xs:attribute name="recvbuf_length" type="xs:unsignedInt">
       
   484             <xs:annotation>
       
   485                 <xs:documentation xml:lang="en">
       
   486 Buffer size for receiving data (bytes).
       
   487                 </xs:documentation>
       
   488             </xs:annotation>
       
   489         </xs:attribute>
       
   490         <xs:attribute name="data_timeout" type="xs:unsignedInt">
       
   491             <xs:annotation>
       
   492                 <xs:documentation xml:lang="en">
       
   493 Milliseconds to wait for data arrival.
       
   494                 </xs:documentation>
       
   495             </xs:annotation>
       
   496         </xs:attribute>
       
   497         <xs:attribute name="rate" type="xs:unsignedByte">
       
   498             <xs:annotation>
       
   499                 <xs:documentation xml:lang="en">
       
   500 Rate (in bps)
       
   501                 </xs:documentation>
       
   502             </xs:annotation>
       
   503         </xs:attribute>
       
   504         <xs:attribute name="bucket_depth" type="xs:unsignedInt">
       
   505             <xs:annotation>
       
   506                 <xs:documentation xml:lang="en">
       
   507 Token bucket depth (in bits)
       
   508                 </xs:documentation>
       
   509             </xs:annotation>
       
   510         </xs:attribute>
       
   511         <xs:attribute name="channel" type="xs:unsignedInt">
       
   512             <xs:annotation>
       
   513                 <xs:documentation xml:lang="en">
       
   514 Default channel.
       
   515                 </xs:documentation>
       
   516             </xs:annotation>
       
   517         </xs:attribute>
       
   518     </xs:attributeGroup>
       
   519 
       
   520     <xs:complexType name="clInfoType">
       
   521         <xs:attributeGroup ref="clInfoAttributes"/>
       
   522     </xs:complexType>
       
   523         
       
   524     <!-- Link Type -->
       
   525     
       
   526     <xs:attributeGroup name="linkAttributes">
       
   527         <xs:attribute name="type" type="linkTypeType" use="required">
       
   528             <xs:annotation>
       
   529                 <xs:documentation xml:lang="en">
       
   530 Type of the link.
       
   531                 </xs:documentation>
       
   532             </xs:annotation>
       
   533         </xs:attribute>
       
   534         <xs:attribute name="nexthop" type="xs:string" use="required">
       
   535             <xs:annotation>
       
   536                 <xs:documentation xml:lang="en">
       
   537 Next hop (ie, underlay) address.
       
   538                 </xs:documentation>
       
   539             </xs:annotation>
       
   540         </xs:attribute>
       
   541         <xs:attribute name="state" type="linkStateType" use="required">
       
   542             <xs:annotation>
       
   543                 <xs:documentation xml:lang="en">
       
   544 State of the link.
       
   545                 </xs:documentation>
       
   546             </xs:annotation>
       
   547         </xs:attribute>
       
   548         <xs:attribute name="is_reachable" type="xs:boolean" use="required">
       
   549             <xs:annotation>
       
   550                 <xs:documentation xml:lang="en">
       
   551 Whether the link is reachable.
       
   552                 </xs:documentation>
       
   553             </xs:annotation>
       
   554         </xs:attribute>
       
   555         <xs:attribute name="is_usable" type="xs:boolean" use="required">
       
   556             <xs:annotation>
       
   557                 <xs:documentation xml:lang="en">
       
   558 Whether the link is usable.
       
   559                 </xs:documentation>
       
   560             </xs:annotation>
       
   561         </xs:attribute>
       
   562         <xs:attribute name="how_reliable" type="percentType" use="required">
       
   563             <xs:annotation>
       
   564                 <xs:documentation xml:lang="en">
       
   565 How reliable the link is.
       
   566                 </xs:documentation>
       
   567             </xs:annotation>
       
   568         </xs:attribute>
       
   569         <xs:attribute name="how_available" type="percentType" use="required">
       
   570             <xs:annotation>
       
   571                 <xs:documentation xml:lang="en">
       
   572 How available the link is.
       
   573                 </xs:documentation>
       
   574             </xs:annotation>
       
   575         </xs:attribute>
       
   576 <!-- @@@ should this be here?
       
   577         <xs:attribute name="reactive_frag_enabled" type="xs:boolean" use="required">
       
   578             <xs:annotation>
       
   579                 <xs:documentation xml:lang="en">
       
   580 Whether reactive fragmentation is enabled.
       
   581                 </xs:documentation>
       
   582             </xs:annotation>
       
   583         </xs:attribute>
       
   584 -->
       
   585         <xs:attribute name="clayer" type="xs:string" use="required">
       
   586             <xs:annotation>
       
   587                 <xs:documentation xml:lang="en">
       
   588 Name of the convergence layer.
       
   589                 </xs:documentation>
       
   590             </xs:annotation>
       
   591         </xs:attribute>
       
   592         <xs:attribute name="min_retry_interval" type="xs:unsignedInt" use="required">
       
   593             <xs:annotation>
       
   594                 <xs:documentation xml:lang="en">
       
   595 Minimum amount to wait between attempts to re-open the link (seconds).
       
   596                 </xs:documentation>
       
   597             </xs:annotation>
       
   598         </xs:attribute>
       
   599         <xs:attribute name="max_retry_interval" type="xs:unsignedInt" use="required">
       
   600             <xs:annotation>
       
   601                 <xs:documentation xml:lang="en">
       
   602 Maximum amount to wait between attempts to re-open the link (seconds).
       
   603                 </xs:documentation>
       
   604             </xs:annotation>
       
   605         </xs:attribute>
       
   606         <xs:attribute name="idle_close_time" type="xs:unsignedInt" use="required">
       
   607             <xs:annotation>
       
   608                 <xs:documentation xml:lang="en">
       
   609 Seconds of idle time before the link is closed. Zero for always on links (i.e. they are never closed).
       
   610                 </xs:documentation>
       
   611             </xs:annotation>
       
   612         </xs:attribute>
       
   613     </xs:attributeGroup>
       
   614     
       
   615     <xs:complexType name="linkType">
       
   616         <xs:sequence>
       
   617             <xs:element name="clinfo" type="clInfoType" minOccurs="0"/>
       
   618             <xs:element name="remote_eid" type="eidType"/>
       
   619         </xs:sequence>
       
   620         <xs:attributeGroup ref="linkAttributes"/>
       
   621     </xs:complexType>
       
   622 
       
   623     <!-- Route Entry Type -->
       
   624     
       
   625     <xs:attributeGroup name="routeEntryAttributes">
       
   626         <xs:attribute name="route_priority" type="xs:integer" use="required">
       
   627             <xs:annotation>
       
   628                 <xs:documentation xml:lang="en">
       
   629 Route priority.
       
   630                 </xs:documentation>
       
   631             </xs:annotation>
       
   632         </xs:attribute>
       
   633         <xs:attribute name="action" type="bundleForwardActionType" use="required">
       
   634             <xs:annotation>
       
   635                 <xs:documentation xml:lang="en">
       
   636 Forwarding behavior.
       
   637                 </xs:documentation>
       
   638             </xs:annotation>
       
   639         </xs:attribute>
       
   640         <xs:attribute name="link" type="xs:string" use="required">
       
   641             <xs:annotation>
       
   642                 <xs:documentation xml:lang="en">
       
   643 Next hop link.
       
   644                 </xs:documentation>
       
   645             </xs:annotation>
       
   646         </xs:attribute>
       
   647     </xs:attributeGroup>
       
   648     
       
   649     <xs:complexType name="routeEntryType">
       
   650         <xs:sequence>
       
   651             <xs:element name="dest_pattern" type="eidType"/>
       
   652             <xs:element name="source_pattern" type="eidType"/>
       
   653         </xs:sequence>
       
   654         <xs:attributeGroup ref="routeEntryAttributes"/>
       
   655     </xs:complexType>
       
   656     
       
   657     <!-- Custody Signal Type -->
       
   658     
       
   659     <xs:attributeGroup name="custodySignalAttributes">
       
   660         <xs:attribute name="admin_type" type="xs:unsignedByte" use="required"/>
       
   661         <xs:attribute name="admin_flags" type="xs:unsignedByte" use="required"/>
       
   662         <xs:attribute name="succeeded" type="xs:boolean" use="required"/>
       
   663         <xs:attribute name="reason" type="xs:unsignedByte" use="required"/>
       
   664         <xs:attribute name="orig_frag_offset" type="xs:unsignedLong" use="required"/>
       
   665         <xs:attribute name="orig_frag_length" type="xs:unsignedLong" use="required"/>
       
   666         <xs:attribute name="custody_signal_seconds" type="xs:unsignedInt" use="required"/>
       
   667         <xs:attribute name="custody_signal_seqno" type="xs:unsignedInt" use="required"/>
       
   668         <xs:attribute name="orig_creation_seconds" type="xs:unsignedInt" use="required"/>
       
   669         <xs:attribute name="orig_creation_seqno" type="xs:unsignedInt" use="required"/>
       
   670     </xs:attributeGroup>
       
   671 
       
   672     <xs:complexType name="custodySignalType">
       
   673         <xs:attributeGroup ref="custodySignalAttributes"/>
       
   674     </xs:complexType>
       
   675 
       
   676     <!-- Registration Type -->
       
   677 
       
   678     <xs:attributeGroup name="registrationAttributes">
       
   679         <xs:attribute name="regid" type="xs:unsignedInt" use="required"/>
       
   680         <xs:attribute name="action" type="failureActionType" use="required"/>
       
   681         <xs:attribute name="script" type="xs:string" use="required"/>
       
   682         <xs:attribute name="expiration" type="xs:unsignedInt" use="required"/>
       
   683     </xs:attributeGroup>
       
   684 
       
   685     <xs:complexType name="registrationType">
       
   686         <xs:sequence>
       
   687             <xs:element name="endpoint" type="eidType"/>
       
   688         </xs:sequence>
       
   689         <xs:attributeGroup ref="registrationAttributes"/>
       
   690     </xs:complexType>
       
   691 
       
   692     <!-- Link Configuration Parameters -->
       
   693 
       
   694     <xs:attributeGroup name="linkConfigParams">
       
   695         <xs:attribute name="is_usable" type="xs:boolean">
       
   696             <xs:annotation>
       
   697                 <xs:documentation xml:lang="en">
       
   698 Whether the link is allowed to be used to transmit bundles.
       
   699                 </xs:documentation>
       
   700             </xs:annotation>
       
   701         </xs:attribute>
       
   702         <xs:attribute name="reactive_frag_enabled" type="xs:boolean">
       
   703             <xs:annotation>
       
   704                 <xs:documentation xml:lang="en">
       
   705 Whether reactive fragmentation is enabled.
       
   706                 </xs:documentation>
       
   707             </xs:annotation>
       
   708         </xs:attribute>
       
   709         <xs:attribute name="nexthop" type="xs:string">
       
   710             <xs:annotation>
       
   711                 <xs:documentation xml:lang="en">
       
   712 Next hop address.
       
   713                 </xs:documentation>
       
   714             </xs:annotation>
       
   715         </xs:attribute>
       
   716         <!-- Following are DTN2 parameters not listed in the DP interface -->
       
   717         <xs:attribute name="min_retry_interval" type="xs:unsignedInt">
       
   718             <xs:annotation>
       
   719                 <xs:documentation xml:lang="en">
       
   720 Minimum amount to wait between attempts to re-open the link (seconds).
       
   721                 </xs:documentation>
       
   722             </xs:annotation>
       
   723         </xs:attribute>
       
   724         <xs:attribute name="max_retry_interval" type="xs:unsignedInt">
       
   725             <xs:annotation>
       
   726                 <xs:documentation xml:lang="en">
       
   727 Maximum amount to wait between attempts to re-open the link (seconds).
       
   728                 </xs:documentation>
       
   729             </xs:annotation>
       
   730         </xs:attribute>
       
   731         <xs:attribute name="idle_close_time" type="xs:unsignedInt">
       
   732             <xs:annotation>
       
   733                 <xs:documentation xml:lang="en">
       
   734 Seconds of idle time before the link is closed. Zero for always on links (i.e. they are never closed).
       
   735                 </xs:documentation>
       
   736             </xs:annotation>
       
   737         </xs:attribute>
       
   738     </xs:attributeGroup>
       
   739     
       
   740     <xs:complexType name="linkConfigType">
       
   741         <xs:sequence>
       
   742             <xs:element name="cl_params" type="key_value_pair" minOccurs="0" maxOccurs="unbounded"/>
       
   743         </xs:sequence>
       
   744         <xs:attributeGroup ref="linkConfigParams"/>
       
   745     </xs:complexType>
       
   746         
       
   747     <!-- Generic parameters -->
       
   748 
       
   749     <xs:complexType name="key_value_pair">
       
   750         <xs:sequence>
       
   751 	    <xs:element name="name" type="xs:string"/>
       
   752 	    <xs:choice minOccurs="1" maxOccurs="1">
       
   753 		<xs:element name="bool_value" type="xs:boolean"/> 
       
   754 		<xs:element name="u_int_value" type="xs:unsignedInt"/>
       
   755 		<xs:element name="int_value" type="xs:int"/>
       
   756 		<xs:element name="str_value" type="xs:string"/>
       
   757 	    </xs:choice> 
       
   758         </xs:sequence>
       
   759     </xs:complexType>
       
   760 
       
   761     <!-- Bundle Attributes Query types -->
       
   762 
       
   763     <xs:simpleType name="bundleAttributesSimpleQueryType">
       
   764         <xs:restriction base="xs:string">
       
   765             <xs:enumeration value="bundleid"/>
       
   766             <xs:enumeration value="is_admin"/>
       
   767             <xs:enumeration value="do_not_fragment"/>
       
   768             <xs:enumeration value="priority"/>
       
   769             <xs:enumeration value="custody_requested"/>
       
   770             <xs:enumeration value="local_custody"/>
       
   771             <xs:enumeration value="singleton_dest"/>
       
   772             <xs:enumeration value="custody_rcpt"/>
       
   773             <xs:enumeration value="receive_rcpt"/>
       
   774             <xs:enumeration value="forward_rcpt"/>
       
   775             <xs:enumeration value="delivery_rcpt"/>
       
   776             <xs:enumeration value="deletion_rcpt"/>
       
   777             <xs:enumeration value="app_acked_rcpt"/>
       
   778             <xs:enumeration value="expiration"/>
       
   779             <xs:enumeration value="orig_length"/>
       
   780             <xs:enumeration value="owner"/>
       
   781             <xs:enumeration value="source"/>
       
   782             <xs:enumeration value="dest"/>
       
   783             <xs:enumeration value="custodian"/>
       
   784             <xs:enumeration value="replyto"/>
       
   785             <xs:enumeration value="prevhop"/>
       
   786             <xs:enumeration value="location"/>
       
   787             <xs:enumeration value="payload_file"/>
       
   788             <xs:enumeration value="meta_block_list"/>
       
   789         </xs:restriction>
       
   790     </xs:simpleType>
       
   791 
       
   792 <!--    <xs:simpleType name="bundleMetaBlockTypeType">
       
   793         <xs:restriction base="xs:unsignedByte">
       
   794             <xs:minInclusive value="2"/>
       
   795         </xs:restriction>
       
   796     </xs:simpleType>
       
   797 -->
       
   798 
       
   799     <xs:complexType name="bundleMetaBlockQueryType">
       
   800         <xs:choice>
       
   801             <xs:element name="type" type="xs:long"/>
       
   802             <xs:element name="identifier" type="xs:unsignedInt"/>
       
   803         </xs:choice>
       
   804     </xs:complexType>
       
   805 
       
   806     <xs:complexType name="bundleAttributesQueryType">
       
   807         <xs:choice>
       
   808             <xs:element name="query" type="bundleAttributesSimpleQueryType"/>
       
   809             <xs:element name="meta_blocks" type="bundleMetaBlockQueryType"/>
       
   810         </xs:choice>
       
   811     </xs:complexType>
       
   812 
       
   813     <xs:attributeGroup name="bundleQueriedAttributes">
       
   814         <xs:attribute name="bundleid" type="xs:unsignedInt" use="optional"/>
       
   815         <xs:attribute name="is_admin" type="xs:boolean" use="optional"/>
       
   816         <xs:attribute name="do_not_fragment" type="xs:boolean" use="optional"/>
       
   817         <xs:attribute name="priority" type="bundlePriorityType" use="optional"/>
       
   818         <xs:attribute name="custody_requested" type="xs:boolean" use="optional"/>
       
   819         <xs:attribute name="local_custody" type="xs:boolean" use="optional"/>
       
   820         <xs:attribute name="singleton_dest" type="xs:boolean" use="optional"/>
       
   821         <xs:attribute name="custody_rcpt" type="xs:boolean" use="optional"/>
       
   822         <xs:attribute name="receive_rcpt" type="xs:boolean" use="optional"/>
       
   823         <xs:attribute name="forward_rcpt" type="xs:boolean" use="optional"/>
       
   824         <xs:attribute name="delivery_rcpt" type="xs:boolean" use="optional"/>
       
   825         <xs:attribute name="deletion_rcpt" type="xs:boolean" use="optional"/>
       
   826         <xs:attribute name="app_acked_rcpt" type="xs:boolean" use="optional"/>
       
   827         <xs:attribute name="expiration" type="xs:unsignedInt" use="optional"/>
       
   828         <xs:attribute name="orig_length" type="xs:unsignedInt" use="optional"/>
       
   829         <xs:attribute name="owner" type="xs:string" use="optional"/>
       
   830         <xs:attribute name="location" type="bundleLocationType" use="optional"/>
       
   831         <xs:attribute name="payload_file" type="xs:string" use="optional"/>
       
   832     </xs:attributeGroup>
       
   833 
       
   834     <xs:complexType name="metadataBlockType">
       
   835         <xs:attribute name="identifier" type="xs:unsignedInt" use="required"/>
       
   836         <xs:attribute name="generated" type="xs:boolean" use="required"/>
       
   837         <xs:attribute name="type" type="xs:unsignedInt" use="required"/>
       
   838         <xs:attribute name="contents" type="xs:base64Binary" use="required"/>
       
   839     </xs:complexType>
       
   840 
       
   841     <xs:complexType name="bundleAttributesReportType">
       
   842         <xs:sequence>
       
   843             <xs:element name="dest" type="eidType" minOccurs="0" maxOccurs="1"/>
       
   844             <xs:element name="custodian" type="eidType" minOccurs="0" maxOccurs="1"/>
       
   845             <xs:element name="replyto" type="eidType" minOccurs="0" maxOccurs="1"/>
       
   846             <xs:element name="prevhop" type="eidType" minOccurs="0" maxOccurs="1"/>
       
   847             <xs:element name="meta_blocks" type="metadataBlockType" minOccurs="0" maxOccurs="unbounded"/>
       
   848         </xs:sequence>
       
   849         <xs:attributeGroup ref="bundleQueriedAttributes"/>
       
   850     </xs:complexType>
       
   851 
       
   852     
       
   853     
       
   854 <!-- EVENTS -->
       
   855 
       
   856     <!-- Bundle Received Event -->
       
   857 
       
   858     <xs:element name="bundle_received_event">
       
   859         <xs:annotation>
       
   860             <xs:documentation xml:lang="en">
       
   861 Signals a new bundle arrival.
       
   862             </xs:documentation>
       
   863         </xs:annotation>
       
   864         <xs:complexType>
       
   865             <xs:sequence>
       
   866                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
   867                 <xs:element name="dest" type="eidType"/>
       
   868                 <xs:element name="custodian" type="eidType"/>
       
   869                 <xs:element name="replyto" type="eidType"/>
       
   870                 <xs:element name="prevhop" type="eidType" minOccurs="0"/>
       
   871             </xs:sequence>
       
   872             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
   873             <xs:attribute name="expiration" type="xs:unsignedInt" use="required"/>
       
   874             <xs:attribute name="bytes_received" type="xs:unsignedInt" use="required"/>
       
   875             <xs:attribute name="num_meta_blocks" type="xs:unsignedInt" use="optional"/>
       
   876         </xs:complexType>
       
   877     </xs:element>
       
   878 
       
   879     <!-- Data Transmitted Event -->
       
   880     
       
   881     <xs:element name="data_transmitted_event">
       
   882         <xs:annotation>
       
   883             <xs:documentation xml:lang="en">
       
   884 Signals a bundle or bundle fragment transmission.
       
   885             </xs:documentation>
       
   886         </xs:annotation>
       
   887         <xs:complexType>
       
   888             <xs:sequence>
       
   889                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
   890             </xs:sequence>
       
   891             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
   892             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
   893             <xs:attribute name="bytes_sent" type="xs:unsignedInt" use="required"/>
       
   894             <xs:attribute name="reliably_sent" type="xs:unsignedInt" use="required"/>
       
   895         </xs:complexType>
       
   896     </xs:element>
       
   897     
       
   898     <!-- Bundle Delivered Event -->
       
   899 
       
   900     <xs:element name="bundle_delivered_event">
       
   901         <xs:annotation>
       
   902             <xs:documentation xml:lang="en">
       
   903 Signals a new bundle arrival that is destined for this node.
       
   904             </xs:documentation>
       
   905         </xs:annotation>
       
   906         <xs:complexType>
       
   907             <xs:sequence>
       
   908                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
   909             </xs:sequence>
       
   910             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
   911         </xs:complexType>
       
   912     </xs:element>
       
   913 
       
   914     <!-- Bundle Delivery Event -->
       
   915 
       
   916     <xs:element name="bundle_delivery_event">
       
   917         <xs:annotation>
       
   918             <xs:documentation xml:lang="en">
       
   919 Signals a new bundle arrival that is destined for an external router.  External routers access the bundle using the payload filename attribute.
       
   920             </xs:documentation>
       
   921         </xs:annotation>
       
   922         <xs:complexType>
       
   923             <xs:sequence>
       
   924                 <xs:element name="gbof_id" type="gbofIdType"/>
       
   925                 <xs:element name="bundle" type="bundleType"/>
       
   926             </xs:sequence>
       
   927             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
   928         </xs:complexType>
       
   929     </xs:element>
       
   930 
       
   931     <!-- Bundle Send Cancelled Event -->
       
   932 
       
   933     <xs:element name="bundle_send_cancelled_event">
       
   934         <xs:annotation>
       
   935             <xs:documentation xml:lang="en">
       
   936 Signals when a bundle that was previously requested to be sent using RequestSendBundle is cancelled upon a subsequent request of RequestCancelBundleSend.
       
   937             </xs:documentation>
       
   938         </xs:annotation>
       
   939         <xs:complexType>
       
   940             <xs:sequence>
       
   941                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
   942                 <xs:element name="link_id" type="xs:string"/>
       
   943             </xs:sequence>
       
   944             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
   945         </xs:complexType>
       
   946     </xs:element>
       
   947 
       
   948     <!-- Bundle Expired Event -->
       
   949     
       
   950     <xs:element name="bundle_expired_event">
       
   951         <xs:annotation>
       
   952             <xs:documentation xml:lang="en">
       
   953 Signals bundle expiration.
       
   954             </xs:documentation>
       
   955         </xs:annotation>
       
   956         <xs:complexType>
       
   957             <xs:sequence>
       
   958                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
   959             </xs:sequence>
       
   960             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
   961         </xs:complexType>
       
   962     </xs:element>
       
   963 
       
   964     <!-- Bundle Injected Event -->
       
   965 
       
   966     <xs:element name="bundle_injected_event">
       
   967         <xs:annotation>
       
   968             <xs:documentation xml:lang="en">
       
   969 Signals that a Inject Bundle Request was successful, and correlates the newly generated GBOF_ID with the Request ID. This event does NOT signal that the bundle was transmitted, because a Send Bundle Request is required for that.
       
   970             </xs:documentation>
       
   971         </xs:annotation>
       
   972         <xs:complexType>
       
   973             <xs:sequence>
       
   974                 <xs:element name="request_id" type="xs:string"/>
       
   975                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
   976             </xs:sequence>
       
   977             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
   978         </xs:complexType>
       
   979     </xs:element>
       
   980 
       
   981     <!-- Link Opened Event -->
       
   982     
       
   983     <xs:element name="link_opened_event">
       
   984         <xs:annotation>
       
   985             <xs:documentation xml:lang="en">
       
   986 Signals when a link is opened.
       
   987             </xs:documentation>
       
   988         </xs:annotation>
       
   989         <xs:complexType>
       
   990             <xs:sequence>
       
   991                 <xs:element name="contact_attr" type="contactType"/>
       
   992             </xs:sequence>
       
   993             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
   994         </xs:complexType>
       
   995     </xs:element>
       
   996     
       
   997     <!-- Link Closed Event -->
       
   998 
       
   999     <xs:element name="link_closed_event">
       
  1000         <xs:annotation>
       
  1001             <xs:documentation xml:lang="en">
       
  1002 Signals when a link has closed.
       
  1003             </xs:documentation>
       
  1004         </xs:annotation>
       
  1005         <xs:complexType>
       
  1006             <xs:sequence>
       
  1007                 <xs:element name="contact_attr" type="contactType"/>
       
  1008             </xs:sequence>
       
  1009             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1010             <xs:attribute name="reason" type="contactReasonType" use="required"/>
       
  1011         </xs:complexType>
       
  1012     </xs:element>
       
  1013 
       
  1014     <!-- Link Created Event -->
       
  1015     
       
  1016     <xs:element name="link_created_event">
       
  1017         <xs:annotation>
       
  1018             <xs:documentation xml:lang="en">
       
  1019 Signals the creation of a new link.
       
  1020             </xs:documentation>
       
  1021         </xs:annotation>
       
  1022         <xs:complexType>
       
  1023             <xs:sequence>
       
  1024                 <xs:element name="link_attr" type="linkType"/>
       
  1025             </xs:sequence>
       
  1026             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1027             <xs:attribute name="reason" type="contactReasonType" use="required"/>
       
  1028         </xs:complexType>
       
  1029     </xs:element>
       
  1030     
       
  1031     <!-- Link Deleted Event -->
       
  1032 
       
  1033     <xs:element name="link_deleted_event">
       
  1034         <xs:annotation>
       
  1035             <xs:documentation xml:lang="en">
       
  1036 Signals a link deletion.
       
  1037             </xs:documentation>
       
  1038         </xs:annotation>
       
  1039         <xs:complexType>
       
  1040             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1041             <xs:attribute name="reason" type="contactReasonType" use="required"/>
       
  1042         </xs:complexType>
       
  1043     </xs:element>
       
  1044     
       
  1045     <!-- Link Available Event -->
       
  1046 
       
  1047     <xs:element name="link_available_event">
       
  1048         <xs:annotation>
       
  1049             <xs:documentation xml:lang="en">
       
  1050 Signals availability of a link.  ONDEMAND links still need to be opened (open_link_request) before they can be used.
       
  1051             </xs:documentation>
       
  1052         </xs:annotation>
       
  1053         <xs:complexType>
       
  1054             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1055             <xs:attribute name="reason" type="contactReasonType" use="required"/>
       
  1056         </xs:complexType>
       
  1057     </xs:element>
       
  1058 
       
  1059     <!-- Link Unavailable Event -->
       
  1060     
       
  1061     <xs:element name="link_unavailable_event">
       
  1062         <xs:annotation>
       
  1063             <xs:documentation xml:lang="en">
       
  1064 Signals a link as unavailable.
       
  1065             </xs:documentation>
       
  1066         </xs:annotation>
       
  1067         <xs:complexType>
       
  1068             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1069             <xs:attribute name="reason" type="contactReasonType" use="required"/>
       
  1070         </xs:complexType>
       
  1071     </xs:element>
       
  1072 
       
  1073     <!-- Link Attribute Change Event -->
       
  1074     
       
  1075     <xs:element name="link_attribute_changed_event">
       
  1076         <xs:annotation>
       
  1077             <xs:documentation xml:lang="en">
       
  1078 Signals a link attribute has changed.
       
  1079             </xs:documentation>
       
  1080         </xs:annotation>
       
  1081         <xs:complexType>
       
  1082             <xs:sequence>
       
  1083                 <xs:element name="link_attr" type="linkType"/>
       
  1084             </xs:sequence>
       
  1085             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1086             <xs:attribute name="reason" type="contactReasonType" use="required"/>
       
  1087         </xs:complexType>
       
  1088     </xs:element>
       
  1089 
       
  1090     <!-- Contact Attribute Change Event -->
       
  1091 
       
  1092     <xs:element name="contact_attribute_changed_event">
       
  1093         <xs:annotation>
       
  1094             <xs:documentation xml:lang="en">
       
  1095 Signals when a contact attribute has changed.
       
  1096             </xs:documentation>
       
  1097         </xs:annotation>
       
  1098         <xs:complexType>
       
  1099             <xs:sequence>
       
  1100                 <xs:element name="contact_eid" type="eidType"/>
       
  1101                 <xs:element name="contact_attr" type="contactType"/>
       
  1102             </xs:sequence>
       
  1103             <xs:attribute name="reason" type="contactReasonType" use="required"/>
       
  1104         </xs:complexType>
       
  1105     </xs:element>
       
  1106 
       
  1107     <!-- Link Busy Event -->
       
  1108     
       
  1109     <xs:element name="link_busy_event">
       
  1110         <xs:annotation>
       
  1111             <xs:documentation xml:lang="en">
       
  1112 Signals a link as busy.
       
  1113             </xs:documentation>
       
  1114         </xs:annotation>
       
  1115         <xs:complexType>
       
  1116             <xs:sequence>
       
  1117                 <xs:element name="link" type="linkType"/>
       
  1118             </xs:sequence>
       
  1119         </xs:complexType>
       
  1120     </xs:element>
       
  1121     
       
  1122     <!-- EID Reachable Event -->
       
  1123 
       
  1124     <xs:element name="eid_reachable_event">
       
  1125         <xs:annotation>
       
  1126             <xs:documentation xml:lang="en">
       
  1127 Signals discovery of a new EID.
       
  1128             </xs:documentation>
       
  1129         </xs:annotation>
       
  1130         <xs:complexType>
       
  1131             <xs:sequence>
       
  1132                 <xs:element name="peer_eid" type="eidType"/>
       
  1133             </xs:sequence>
       
  1134             <xs:attribute name="interface_name" type="xs:string" use="required"/>
       
  1135         </xs:complexType>
       
  1136     </xs:element>
       
  1137 
       
  1138     <!-- Route Add Event -->
       
  1139     
       
  1140     <xs:element name="route_add_event">
       
  1141         <xs:annotation>
       
  1142             <xs:documentation xml:lang="en">
       
  1143 Signals a new static route added from the DTN console.
       
  1144             </xs:documentation>
       
  1145         </xs:annotation>
       
  1146         <xs:complexType>
       
  1147             <xs:sequence>
       
  1148                 <xs:element name="route_entry" type="routeEntryType"/>
       
  1149             </xs:sequence>
       
  1150         </xs:complexType>
       
  1151     </xs:element>
       
  1152     
       
  1153     <!-- Route Delete Event -->
       
  1154 
       
  1155     <xs:element name="route_delete_event">
       
  1156         <xs:annotation>
       
  1157             <xs:documentation xml:lang="en">
       
  1158 Signals a static route was deleted from the DTN console.
       
  1159             </xs:documentation>
       
  1160         </xs:annotation>
       
  1161         <xs:complexType>
       
  1162             <xs:sequence>
       
  1163                 <xs:element name="dest" type="eidType"/>
       
  1164             </xs:sequence>
       
  1165         </xs:complexType>
       
  1166     </xs:element>
       
  1167 
       
  1168     <!-- Custody Signal Event -->
       
  1169     
       
  1170     <xs:element name="custody_signal_event">
       
  1171         <xs:annotation>
       
  1172             <xs:documentation xml:lang="en">
       
  1173 Signals a bundle custody transfer.
       
  1174             </xs:documentation>
       
  1175         </xs:annotation>
       
  1176         <xs:complexType>
       
  1177             <xs:sequence>
       
  1178                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
  1179                 <xs:element name="custody_signal_attr" type="custodySignalType"/>
       
  1180             </xs:sequence>
       
  1181             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
  1182         </xs:complexType>
       
  1183     </xs:element>
       
  1184     
       
  1185     <!-- Custody Timeout Event -->
       
  1186 
       
  1187     <xs:element name="custody_timeout_event">
       
  1188         <xs:annotation>
       
  1189             <xs:documentation xml:lang="en">
       
  1190 Signals a bundle custody transfer timeout.
       
  1191             </xs:documentation>
       
  1192         </xs:annotation>
       
  1193         <xs:complexType>
       
  1194             <xs:sequence>
       
  1195                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
  1196             </xs:sequence>
       
  1197             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
  1198         </xs:complexType>
       
  1199     </xs:element>
       
  1200 
       
  1201     <!-- Intentional Name Resolved Event -->
       
  1202     
       
  1203     <xs:element name="intentional_name_resolved_event">
       
  1204         <xs:annotation>
       
  1205             <xs:documentation xml:lang="en">
       
  1206 Pass-through response to intentional name resolver.
       
  1207             </xs:documentation>
       
  1208         </xs:annotation>
       
  1209         <xs:complexType>
       
  1210         <xs:sequence>
       
  1211             <xs:element name="request_id" type="xs:string" minOccurs="1" maxOccurs="1"/>
       
  1212             <xs:element name="response_id" type="xs:string" minOccurs="1" maxOccurs="1"/>
       
  1213             <xs:element name="router_eid" type="eidType" minOccurs="1" maxOccurs="1"/>
       
  1214             <xs:element name="lb_dp_eid" type="eidType" minOccurs="0" maxOccurs="1"/>
       
  1215             <xs:element name="intentional_name" type="eidType" minOccurs="1" maxOccurs="1"/>
       
  1216             <xs:element name="grain_state" type="xs:string" minOccurs="1" maxOccurs="1"/>
       
  1217             <xs:element name="canonical_eids" type="eidType" minOccurs="0" maxOccurs="unbounded"/>
       
  1218             <xs:element name="app_eids" type="eidType" minOccurs="0" maxOccurs="unbounded"/>
       
  1219         </xs:sequence>
       
  1220         </xs:complexType>
       
  1221     </xs:element>
       
  1222 
       
  1223     <!-- Registration Added Event -->
       
  1224 
       
  1225     <xs:element name="registration_added_event">
       
  1226         <xs:annotation>
       
  1227             <xs:documentation xml:lang="en">
       
  1228 Signals a new application registration
       
  1229             </xs:documentation>
       
  1230         </xs:annotation>
       
  1231         <xs:complexType>
       
  1232             <xs:sequence>
       
  1233                 <xs:element name="registration" type="registrationType"/>
       
  1234             </xs:sequence>
       
  1235             <xs:attribute name="source" type="eventSourceType" use="required"/>
       
  1236         </xs:complexType>
       
  1237     </xs:element>
       
  1238 
       
  1239     <!-- Registration Removed Event -->
       
  1240 
       
  1241     <xs:element name="registration_removed_event">
       
  1242         <xs:annotation>
       
  1243             <xs:documentation xml:lang="en">
       
  1244 Signals a registration removal
       
  1245             </xs:documentation>
       
  1246         </xs:annotation>
       
  1247         <xs:complexType>
       
  1248             <xs:sequence>
       
  1249                 <xs:element name="registration" type="registrationType"/>
       
  1250             </xs:sequence>
       
  1251         </xs:complexType>
       
  1252     </xs:element>
       
  1253 
       
  1254     <!-- Registration Expired Event -->
       
  1255 
       
  1256     <xs:element name="registration_expired_event">
       
  1257         <xs:annotation>
       
  1258             <xs:documentation xml:lang="en">
       
  1259 Signals a registration expiration
       
  1260             </xs:documentation>
       
  1261         </xs:annotation>
       
  1262         <xs:complexType>
       
  1263             <xs:attribute name="regid" type="xs:unsignedInt" use="required"/>
       
  1264         </xs:complexType>
       
  1265     </xs:element>
       
  1266 
       
  1267 
       
  1268 
       
  1269 <!-- REQUESTS --> 
       
  1270 
       
  1271     <!-- Open Link Request -->
       
  1272 
       
  1273     <xs:element name="open_link_request">
       
  1274         <xs:annotation>
       
  1275             <xs:documentation xml:lang="en">
       
  1276 Request that a link be opened.
       
  1277             </xs:documentation>
       
  1278         </xs:annotation>
       
  1279         <xs:complexType>
       
  1280             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1281         </xs:complexType>
       
  1282     </xs:element>
       
  1283     
       
  1284     <!-- Close Link Request -->
       
  1285 
       
  1286     <xs:element name="close_link_request">
       
  1287         <xs:annotation>
       
  1288             <xs:documentation xml:lang="en">
       
  1289 Request that a link be closed.
       
  1290             </xs:documentation>
       
  1291         </xs:annotation>
       
  1292         <xs:complexType>
       
  1293             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1294         </xs:complexType>
       
  1295     </xs:element>
       
  1296 
       
  1297     <!-- Add Link Request -->
       
  1298     
       
  1299     <xs:element name="add_link_request">
       
  1300         <xs:annotation>
       
  1301             <xs:documentation xml:lang="en">
       
  1302 Request that a link be added.
       
  1303             </xs:documentation>
       
  1304         </xs:annotation>
       
  1305         <xs:complexType>
       
  1306 	    <xs:sequence>
       
  1307 	        <xs:element name="link_config_params" type="linkConfigType" minOccurs="0"/>
       
  1308                 <xs:element name="remote_eid" type="eidType"/>
       
  1309 	    </xs:sequence>
       
  1310 	    <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1311             <xs:attribute name="link_type" type="linkTypeType" use="required"/>
       
  1312             <xs:attribute name="clayer" type="xs:string" use="required"/>
       
  1313         </xs:complexType>
       
  1314     </xs:element>
       
  1315 
       
  1316     <!-- Delete Link Request -->
       
  1317     
       
  1318     <xs:element name="delete_link_request">
       
  1319         <xs:annotation>
       
  1320             <xs:documentation xml:lang="en">
       
  1321 Request that a link be deleted.
       
  1322             </xs:documentation>
       
  1323         </xs:annotation>
       
  1324         <xs:complexType>
       
  1325             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1326         </xs:complexType>
       
  1327     </xs:element>
       
  1328 
       
  1329     <!-- Reconfigure Link Request -->
       
  1330 
       
  1331     <xs:element name="reconfigure_link_request">
       
  1332         <xs:annotation>
       
  1333             <xs:documentation xml:lang="en">
       
  1334 Request that a link be reconfigured.
       
  1335             </xs:documentation>
       
  1336         </xs:annotation>
       
  1337         <xs:complexType>
       
  1338 	    <xs:sequence>
       
  1339 	        <xs:element name="link_config_params" type="linkConfigType"/>
       
  1340 	    </xs:sequence>
       
  1341             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1342         </xs:complexType>
       
  1343     </xs:element>
       
  1344     
       
  1345     <!-- Send Bundle Request -->
       
  1346 
       
  1347     <xs:element name="send_bundle_request">
       
  1348         <xs:annotation>
       
  1349             <xs:documentation xml:lang="en">
       
  1350 Request that a bundle with "gbof_id" and "local_id" be sent on "link_id" with a particular "fwd_action". See bundleForwardActionType.
       
  1351             </xs:documentation>
       
  1352         </xs:annotation>
       
  1353         <xs:complexType>
       
  1354 	    <xs:sequence>
       
  1355                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
  1356                 <xs:element name="metadata_block" type="metadataBlockType"
       
  1357                             minOccurs="0" maxOccurs="unbounded"/>
       
  1358             </xs:sequence>
       
  1359 
       
  1360             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
  1361 	    <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1362 	    <xs:attribute name="fwd_action" type="bundleForwardActionType" use="required"/>
       
  1363 	    <xs:attribute name="frag_size" type="xs:unsignedLong" use="optional"/>
       
  1364 	    <xs:attribute name="frag_offset" type="xs:unsignedLong" use="optional"/>
       
  1365         </xs:complexType>
       
  1366     </xs:element>
       
  1367 
       
  1368     <!-- Send Bundle Broadcast Request -->
       
  1369 
       
  1370     <xs:element name="send_bundle_broadcast_request">
       
  1371         <xs:annotation>
       
  1372             <xs:documentation xml:lang="en">
       
  1373 Request that a bundle with "gbof_id" and "local_id" be broadcasted with a particular "fwd_action". See bundleForwardActionType.
       
  1374             </xs:documentation>
       
  1375         </xs:annotation>
       
  1376         <xs:complexType>
       
  1377 	    <xs:sequence>
       
  1378                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
  1379 	        <xs:element name="metadata_block" type="metadataBlockType"
       
  1380                             minOccurs="0" maxOccurs="unbounded"/>
       
  1381 	    </xs:sequence>
       
  1382 
       
  1383             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
  1384 	    <xs:attribute name="fwd_action" type="bundleForwardActionType" use="required"/>
       
  1385 	    <xs:attribute name="frag_size" type="xs:unsignedLong" use="optional"/>
       
  1386 	    <xs:attribute name="frag_offset" type="xs:unsignedLong" use="optional"/>
       
  1387         </xs:complexType>
       
  1388     </xs:element>
       
  1389 
       
  1390     <!-- Cancel Bundle Request -->
       
  1391     
       
  1392     <xs:element name="cancel_bundle_request">
       
  1393         <xs:annotation>
       
  1394             <xs:documentation xml:lang="en">
       
  1395 Request that a bundle transmission be cancelled.
       
  1396             </xs:documentation>
       
  1397         </xs:annotation>
       
  1398         <xs:complexType>
       
  1399 	    <xs:sequence>
       
  1400                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
  1401 	    </xs:sequence>
       
  1402 
       
  1403             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
  1404             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1405         </xs:complexType>
       
  1406     </xs:element>
       
  1407 
       
  1408     <!-- Inject Bundle Request -->
       
  1409 
       
  1410     <xs:element name="inject_bundle_request">
       
  1411         <xs:annotation>
       
  1412             <xs:documentation xml:lang="en">
       
  1413 Request that a router generated bundle be sent.  Pay special attention to required and optional attributes.  This message type requires that the bundle payload be base64 encoded.
       
  1414             </xs:documentation>
       
  1415         </xs:annotation>
       
  1416         <xs:complexType>
       
  1417 	    <xs:sequence>
       
  1418 		<xs:element name="source" type="eidType"/>
       
  1419 		<xs:element name="dest" type="eidType"/>
       
  1420 		<xs:element name="replyto" type="eidType" minOccurs="0"/>
       
  1421 		<xs:element name="custodian" type="eidType" minOccurs="0"/>
       
  1422 	    </xs:sequence>
       
  1423             <xs:attribute name="request_id" type="xs:string" use="required"/>
       
  1424             <xs:attribute name="link_id" type="xs:string" use="required"/>
       
  1425             <xs:attribute name="fwd_action" type="bundleForwardActionType" use="optional"/>
       
  1426             <xs:attribute name="priority" type="bundlePriorityType" use="optional"/>
       
  1427             <xs:attribute name="expiration" type="xs:unsignedInt" use="optional"/>
       
  1428             <xs:attribute name="payload_file" type="xs:string" use="required"/>
       
  1429         </xs:complexType>
       
  1430     </xs:element>
       
  1431 
       
  1432     <!-- Delete Bundle Request -->
       
  1433     
       
  1434     <xs:element name="delete_bundle_request">
       
  1435         <xs:annotation>
       
  1436             <xs:documentation xml:lang="en">
       
  1437 Request that a stored bundle be deleted.
       
  1438             </xs:documentation>
       
  1439         </xs:annotation>
       
  1440         <xs:complexType>
       
  1441 	    <xs:sequence>
       
  1442                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
  1443 	    </xs:sequence>
       
  1444             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
  1445         </xs:complexType>
       
  1446     </xs:element>
       
  1447 
       
  1448     <!-- Set CL Params Request -->
       
  1449     
       
  1450     <xs:element name="set_cl_params_request">
       
  1451         <xs:annotation>
       
  1452             <xs:documentation xml:lang="en">
       
  1453 Pass-through request to BPA to set convergence layer adapter params.
       
  1454             </xs:documentation>
       
  1455         </xs:annotation>
       
  1456         <xs:complexType>
       
  1457         <xs:sequence>
       
  1458             <xs:element name="cl_params" type="key_value_pair" minOccurs="1" maxOccurs="unbounded"/>
       
  1459         </xs:sequence>
       
  1460 	<xs:attribute name="clayer" type="xs:string" use="required"/>
       
  1461         </xs:complexType>
       
  1462     </xs:element>
       
  1463 
       
  1464     <!-- Intentional Name Resolution Request -->
       
  1465     
       
  1466     <xs:element name="intentional_name_resolution_request">
       
  1467         <xs:annotation>
       
  1468             <xs:documentation xml:lang="en">
       
  1469 Pass-through request to intentional name resolver.
       
  1470             </xs:documentation>
       
  1471         </xs:annotation>
       
  1472         <xs:complexType>
       
  1473         <xs:sequence>
       
  1474             <xs:element name="gbof_id" type="gbofIdType" minOccurs="1" maxOccurs="1"/>
       
  1475             <xs:element name="request_id" type="xs:string" minOccurs="1" maxOccurs="1"/>
       
  1476             <xs:element name="router_eid" type="eidType" minOccurs="1" maxOccurs="1"/>
       
  1477             <xs:element name="intentional_name" type="eidType" minOccurs="1" maxOccurs="1"/>
       
  1478             <xs:element name="grain_state" type="xs:string" minOccurs="1" maxOccurs="1"/>
       
  1479         </xs:sequence>
       
  1480         </xs:complexType>
       
  1481     </xs:element>
       
  1482 
       
  1483     <!-- Deliver Bundle To Application Request -->
       
  1484 
       
  1485     <xs:element name="deliver_bundle_to_app_request">
       
  1486         <xs:annotation>
       
  1487             <xs:documentation xml:lang="en">
       
  1488 Requests delivery of a specific bundle to a specific registration on this node.
       
  1489             </xs:documentation>
       
  1490         </xs:annotation>
       
  1491         <xs:complexType>
       
  1492             <xs:sequence>
       
  1493                 <xs:element name="endpoint" type="eidType"/>
       
  1494                 <xs:element name="gbof_id" type="gbofIdType"/>
       
  1495             </xs:sequence>
       
  1496             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
  1497         </xs:complexType>
       
  1498     </xs:element>
       
  1499 
       
  1500 
       
  1501 <!-- QUERIES / REPORTS -->
       
  1502 
       
  1503     <!-- Links -->
       
  1504 
       
  1505     <xs:element name="link_query" type="xs:anyType">
       
  1506         <xs:annotation>
       
  1507             <xs:documentation xml:lang="en">
       
  1508 Query for information on links.
       
  1509             </xs:documentation>
       
  1510         </xs:annotation>
       
  1511     </xs:element>
       
  1512 
       
  1513     <xs:element name="link_report">
       
  1514         <xs:annotation>
       
  1515             <xs:documentation xml:lang="en">
       
  1516 Meta-information on links.
       
  1517             </xs:documentation>
       
  1518         </xs:annotation>
       
  1519         <xs:complexType>
       
  1520             <xs:sequence>
       
  1521                 <xs:element name="link" type="linkType" minOccurs="0" maxOccurs="unbounded"/>
       
  1522             </xs:sequence>
       
  1523         </xs:complexType>
       
  1524     </xs:element>
       
  1525 
       
  1526     <xs:element name="link_attributes_query">
       
  1527         <xs:annotation>
       
  1528             <xs:documentation xml:lang="en">
       
  1529 Query for information on links.
       
  1530             </xs:documentation>
       
  1531         </xs:annotation>
       
  1532         <xs:complexType>
       
  1533             <xs:sequence>
       
  1534                 <xs:element name="query_id" type="xs:string"/>
       
  1535                 <xs:element name="link_id" type="xs:string"/>
       
  1536                 <xs:element name="query_params" type="xs:string" minOccurs="1" maxOccurs="unbounded"/>
       
  1537             </xs:sequence>
       
  1538         </xs:complexType>
       
  1539     </xs:element>
       
  1540 
       
  1541     <xs:element name="link_attributes_report">
       
  1542         <xs:annotation>
       
  1543             <xs:documentation xml:lang="en">
       
  1544 Meta-information on links.
       
  1545             </xs:documentation>
       
  1546         </xs:annotation>
       
  1547         <xs:complexType>
       
  1548             <xs:sequence>
       
  1549                 <xs:element name="query_id" type="xs:string"/>
       
  1550 
       
  1551                 <xs:element name="report_params" type="key_value_pair" minOccurs="1" maxOccurs="unbounded"/>
       
  1552             </xs:sequence>
       
  1553         </xs:complexType>
       
  1554     </xs:element>
       
  1555 
       
  1556     <!-- Contacts -->
       
  1557 
       
  1558     <xs:element name="contact_query" type="xs:anyType">
       
  1559         <xs:annotation>
       
  1560             <xs:documentation xml:lang="en">
       
  1561 Query for information on contacts.
       
  1562             </xs:documentation>
       
  1563         </xs:annotation>
       
  1564     </xs:element>
       
  1565 
       
  1566     <xs:element name="contact_report">
       
  1567         <xs:annotation>
       
  1568             <xs:documentation xml:lang="en">
       
  1569 Meta-information on contacts.
       
  1570             </xs:documentation>
       
  1571         </xs:annotation>
       
  1572         <xs:complexType>
       
  1573             <xs:sequence>
       
  1574                 <xs:element name="contact" type="contactType" minOccurs="0" maxOccurs="unbounded"/>
       
  1575             </xs:sequence>
       
  1576         </xs:complexType>
       
  1577     </xs:element>
       
  1578     
       
  1579     <!-- Static Routes -->
       
  1580 
       
  1581     <xs:element name="route_query" type="xs:anyType">
       
  1582         <xs:annotation>
       
  1583             <xs:documentation xml:lang="en">
       
  1584 Query for information on static routes.
       
  1585             </xs:documentation>
       
  1586         </xs:annotation>
       
  1587     </xs:element>
       
  1588 
       
  1589     <xs:element name="route_report">
       
  1590         <xs:annotation>
       
  1591             <xs:documentation xml:lang="en">
       
  1592 Meta-information on static routes.
       
  1593             </xs:documentation>
       
  1594         </xs:annotation>
       
  1595         <xs:complexType>
       
  1596             <xs:sequence>
       
  1597                 <xs:element name="route_entry" type="routeEntryType" minOccurs="0" maxOccurs="unbounded"/>
       
  1598             </xs:sequence>
       
  1599         </xs:complexType>
       
  1600     </xs:element>
       
  1601     
       
  1602     <!-- Bundles -->
       
  1603     
       
  1604     <xs:element name="bundle_query" type="xs:anyType">
       
  1605         <xs:annotation>
       
  1606             <xs:documentation xml:lang="en">
       
  1607 Query for information on bundles (incl. custody bundles).
       
  1608             </xs:documentation>
       
  1609         </xs:annotation>
       
  1610     </xs:element>
       
  1611 
       
  1612     <xs:element name="bundle_report">
       
  1613         <xs:annotation>
       
  1614             <xs:documentation xml:lang="en">
       
  1615 Meta-information on bundles.
       
  1616             </xs:documentation>
       
  1617         </xs:annotation>
       
  1618         <xs:complexType>
       
  1619             <xs:sequence>
       
  1620                 <xs:element name="bundle" type="bundleType"  minOccurs="0" maxOccurs="unbounded"/>
       
  1621             </xs:sequence>
       
  1622         </xs:complexType>
       
  1623     </xs:element>
       
  1624 
       
  1625     <xs:element name="bundle_attributes_query">
       
  1626         <xs:annotation>
       
  1627             <xs:documentation xml:lang="en">
       
  1628 Query for information on bundles (incl. custody bundles).
       
  1629             </xs:documentation>
       
  1630         </xs:annotation>
       
  1631         <xs:complexType>
       
  1632             <xs:sequence>
       
  1633                 <xs:element name="query_id" type="xs:string"/>
       
  1634                 <xs:element name="gbof_id" type="gbofIdType"/> 
       
  1635                 <xs:element name="query_params" type="bundleAttributesQueryType" minOccurs="1" maxOccurs="unbounded"/>
       
  1636             </xs:sequence>
       
  1637             <xs:attribute name="local_id" type="xs:long" use="required"/>
       
  1638         </xs:complexType>
       
  1639     </xs:element>
       
  1640 
       
  1641     <xs:element name="bundle_attributes_report">
       
  1642         <xs:annotation>
       
  1643             <xs:documentation xml:lang="en">
       
  1644 Meta-information on bundles.
       
  1645             </xs:documentation>
       
  1646         </xs:annotation>
       
  1647         <xs:complexType>
       
  1648             <xs:sequence>
       
  1649                 <xs:element name="query_id" type="xs:string"/>
       
  1650                 <xs:element name="report_params" type="bundleAttributesReportType"/>
       
  1651             </xs:sequence>
       
  1652         </xs:complexType>
       
  1653     </xs:element>
       
  1654 
       
  1655     <xs:element name="bpa">
       
  1656     <xs:annotation>
       
  1657         <xs:documentation xml:lang="en">
       
  1658 Carry two or more router message on a single packet.
       
  1659         </xs:documentation>
       
  1660     </xs:annotation>
       
  1661     <xs:complexType>
       
  1662         <xs:all>
       
  1663             <xs:element ref="bundle_received_event" minOccurs="0"/>
       
  1664             <xs:element ref="data_transmitted_event" minOccurs="0"/>
       
  1665             <xs:element ref="bundle_delivered_event" minOccurs="0"/>
       
  1666             <xs:element ref="bundle_delivery_event" minOccurs="0"/>
       
  1667             <xs:element ref="bundle_expired_event" minOccurs="0"/>
       
  1668             <xs:element ref="bundle_send_cancelled_event" minOccurs="0"/>
       
  1669             <xs:element ref="bundle_injected_event" minOccurs="0"/>
       
  1670             <xs:element ref="link_opened_event" minOccurs="0"/>
       
  1671             <xs:element ref="link_closed_event" minOccurs="0"/>
       
  1672             <xs:element ref="link_created_event" minOccurs="0"/>
       
  1673             <xs:element ref="link_deleted_event" minOccurs="0"/>
       
  1674             <xs:element ref="link_available_event" minOccurs="0"/>
       
  1675             <xs:element ref="link_unavailable_event" minOccurs="0"/>
       
  1676             <xs:element ref="link_attribute_changed_event" minOccurs="0"/>
       
  1677             <xs:element ref="contact_attribute_changed_event" minOccurs="0"/>
       
  1678             <xs:element ref="link_busy_event" minOccurs="0"/>
       
  1679             <xs:element ref="eid_reachable_event" minOccurs="0"/>
       
  1680             <xs:element ref="route_add_event" minOccurs="0"/>
       
  1681             <xs:element ref="route_delete_event" minOccurs="0"/>
       
  1682             <xs:element ref="custody_signal_event" minOccurs="0"/>
       
  1683             <xs:element ref="custody_timeout_event" minOccurs="0"/>
       
  1684             <xs:element ref="intentional_name_resolved_event" minOccurs="0"/>
       
  1685             <xs:element ref="registration_added_event" minOccurs="0"/>
       
  1686             <xs:element ref="registration_removed_event" minOccurs="0"/>
       
  1687             <xs:element ref="registration_expired_event" minOccurs="0"/>
       
  1688             <xs:element ref="open_link_request" minOccurs="0"/>
       
  1689             <xs:element ref="close_link_request" minOccurs="0"/>
       
  1690             <xs:element ref="add_link_request" minOccurs="0"/>
       
  1691             <xs:element ref="delete_link_request" minOccurs="0"/>
       
  1692             <xs:element ref="reconfigure_link_request" minOccurs="0"/>
       
  1693             <xs:element ref="send_bundle_request" minOccurs="0"/>
       
  1694             <xs:element ref="send_bundle_broadcast_request" minOccurs="0"/>
       
  1695             <xs:element ref="cancel_bundle_request" minOccurs="0"/>
       
  1696             <xs:element ref="inject_bundle_request" minOccurs="0"/>
       
  1697             <xs:element ref="delete_bundle_request" minOccurs="0"/>
       
  1698             <xs:element ref="set_cl_params_request" minOccurs="0"/>
       
  1699             <xs:element ref="intentional_name_resolution_request" minOccurs="0"/>
       
  1700             <xs:element ref="deliver_bundle_to_app_request" minOccurs="0"/>
       
  1701             <xs:element ref="link_query" minOccurs="0"/>
       
  1702             <xs:element ref="link_report" minOccurs="0"/>
       
  1703             <xs:element ref="link_attributes_query" minOccurs="0"/>
       
  1704             <xs:element ref="link_attributes_report" minOccurs="0"/>
       
  1705             <xs:element ref="contact_query" minOccurs="0"/>
       
  1706             <xs:element ref="contact_report" minOccurs="0"/>
       
  1707             <xs:element ref="route_query" minOccurs="0"/>
       
  1708             <xs:element ref="route_report" minOccurs="0"/>
       
  1709             <xs:element ref="bundle_query" minOccurs="0"/>
       
  1710             <xs:element ref="bundle_report" minOccurs="0"/>
       
  1711             <xs:element ref="bundle_attributes_query" minOccurs="0"/>
       
  1712             <xs:element ref="bundle_attributes_report" minOccurs="0"/>
       
  1713         </xs:all>
       
  1714         <xs:attribute name="eid" type="xs:string" use="optional"/>
       
  1715         <xs:attribute name="hello_interval" type="xs:unsignedShort" use="optional"/>
       
  1716         <xs:attribute name="alert" type="dtnStatusType" use="optional"/>
       
  1717     </xs:complexType>
       
  1718 </xs:element>
       
  1719 
       
  1720 </xs:schema>