WBMM> Posted - Schedule XML Schema v0.30 (27 Oct 2003)
    McDonald, Ira 
    imcdonald at sharplabs.com
       
    Mon Oct 27 18:35:41 EST 2003
    
    
  
Hi folks,                                           Monday (27 Oct 2003)
[for review at this week's WBMM telecon]
In response to NYC face-to-face review comments, I revised my prototype
Schedule XML Schema.
The Schedule XML Schema v0.30 validates without warnings using XML SPY
2004 and XSV 2.5 (the free XML Schema Validator) and is posted at:
    ftp://ftp.pwg.org/pub/pwg/wbmm/schemas/schedule-20031027.xsd
Below are: (a) change log; (b) use models; (c) defined actions; and
(d) excerpted definitions of 'Schedule' and 'Plan' (row in schedule).
Cheers,
- Ira McDonald
Ira McDonald (Musician / Software Architect)
Blue Roof Music / High North Inc
PO Box 221  Grand Marais, MI  49839
phone: +1-906-494-2434
email: imcdonald at sharplabs.com
------------------------------------------------------------------------
[changes from v0.20 to v0.30]
(1) Major rewrite of schema to introduce element groups, per NYC
    - 'Schedule' now contains metadata and a sequence of 'Plan'
    - 'Plan' now contains 'PlanStatus', 'PlanDescription', 'PlanAction',
      and 'PlanTimetable' element groups
(2) Major rewrite of actions to support 'PlanAction' group (a choice
    between actions, each w/ fully specified parameters), per NYC;
(3) Added 'ActionPauseMode' (after page, document, or job), to capture
    IPP Admin Operations semantics;
(4) Added 'ActionRestartMode' (current cold, current warm, previous
    cold, or factory cold) to capture Printer MIB 'prtGeneralReset'
    semantics;
(5) Added 'PurgeElements' and 'PurgeResources' operations, to remove
    unwanted elements or resource objects;
(6) Defined simple 'Subcribe' action containing only 'TargetURIs',
    'Parameters' (only used for vendor extensions), 'NotifyURIs',
    'NotifyEvents', and 'NotifyElements', per Bill Wagner's request for
    lightweight subscriptions.
------------------------------------------------------------------------
[use models]
Use Model 1 (Passive - Required):
A WBMM managed device (or service) creates an HTTP connection (OUTBOUND
across the enterprise network's firewall) to a WBMM management station.
The WBMM managed device (or service) immediately sends a Get-Schedule
request (packaged in a SOAP/1.1 envelope).  The WBMM management station
sends a Get-Schedule response containing an XML Schedule object (a list
of scheduled operations and times/intervals).
Later, as each scheduled operation is performed, the WBMM managed device
(or service) may create another HTTP connection to the WBMM management
station and send Send-Report (normal) and/or Send-Alert (exception)
requests, as needed.
Use Model 2 (Active - Optional):
A WBMM management station sends an Execute (or SetSchedule) request
(containing a Schedule object) directly to a WBMM managed device (or
service), for example, by sending a SOAP/1.1 request over email (SMTP).
Later, each scheduled operation is performed by the WBMM managed device
(as described in Use Model 1 above).
------------------------------------------------------------------------
[defined actions]
None - no operation
Other - vendor extension with parameter named 'Action'
Disable
Enable
Pause
Resume
PauseAndDisable
ResumeAndEnable
PurgeJobs
Restart - reset to same, previous, or factory configuration
Shutdown - stop instance of service/device entirely
Startup - start new instance of service/device
GetElements
PurgeElements
SetElements
GetResource
PurgeResources
SetResource
Subscribe - for notifications
Unsubscribe
Wakeup - wakeup service/device, which then performs Get-Schedule
------------------------------------------------------------------------
[excerpted definition of 'Plan' (row in a schedule)]
<xsd:element name="Plan">
  <!-- Plan - one planned action -->
  <!-- see individual element descriptions for their cardinality -->
  <!-- and REQUIRED versus OPTIONAL presence in a plan -->
  <!-- see schedEntry - section 4 [RFC3231] -->
  <xsd:complexType>
    <xsd:sequence>
      <xsd:element ref="PlanStatus"
        minOccurs="1" maxOccurs="1"/>
      <xsd:element ref="PlanDescription"
        minOccurs="0" maxOccurs="1"/>
      <xsd:element ref="PlanAction"
        minOccurs="1" maxOccurs="1"/>
      <xsd:element ref="PlanTimetable"
        minOccurs="1" maxOccurs="1"/>
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>
------------------------------------------------------------------------
[excerpted definition of 'Schedule' (top-level object)]
<xsd:element name="Schedule">
  <!-- Schedule - schedule metadata and set of planned actions -->
  <!-- see schedTable - section 4 [RFC3231] -->
  <xsd:complexType>
    <xsd:sequence>
      <xsd:element ref="ScheduleState"
        minOccurs="1" maxOccurs="1"/>
      <xsd:element ref="ScheduleInfo"
        minOccurs="0" maxOccurs="1"/>
      <xsd:element ref="ScheduleSourceURI"
        minOccurs="0" maxOccurs="1"/>
      <xsd:element ref="ScheduleTriggerCount"
        minOccurs="0" maxOccurs="1"/>
      <xsd:element ref="ScheduleFailureCount"
        minOccurs="0" maxOccurs="1"/>
      <xsd:element ref="Plan"
        minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>
    
    
More information about the Wims
mailing list