Web Based Monitoring and Management: WBMM> Posted - Schedule

WBMM> Posted - Schedule XML Schema v0.30 (27 Oct 2003)

From: McDonald, Ira (imcdonald@sharplabs.com)
Date: Mon Oct 27 2003 - 18:35:41 EST

  • Next message: Wagner,William: "WBMM> Oct 29 Phone Conference"

    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@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>



    This archive was generated by hypermail 2b29 : Mon Oct 27 2003 - 18:35:47 EST