Subject: proposed status messages text

From: Michael Mealling <[email-masked]>
Date: Thu, 27 Apr 2000 10:14:06 -0400

Hi folx,
  Here is some text on the current proposal for status messages. The
two main questions I have are:

1) Does this scheme sound ok?
2) Do we need to have IANA register new status messages?

My take on the second (the first is obvious) is that this sounds like
overkill for a problem that probably won't exist for some time. I'd
much rather punt on it and possibly revisit it when it does appear to be
a problem...

Anyway, enjoy:

 4.1.5 Status Messages

    4.1.5.1 Status of CNRP, Not the Transport

       The status messaged defined here are only applicable to
       operations defined by CNRP itself. If some feature or operation
       is defined by the transport (security via HTTP, mail failure via
       SMTP, etc) then any status messages about that operation MUST be
       sent in accordance with that transports reporting mechanism and
       not via CNRP.

    4.1.5.2 Codes and Description

       A Status object indicates a message to the client in the results
       set. The object encapsulates two values: a status code and a
       description. The description can contain a textual description
       of the status being communicated. In many cases, additional
       diagnostic information can also be included. No attempt is made
       to standardize the description of a given status code since the
       only programmatic element that matters is the actual code.

       <results>
            <status code="x.y.z">
                 The CNRP foo.com database is temporarily unreachable&lt
            </status>
       </results>

    4.1.5.3 Status Codes

       The organization of status codes is taken from RFC 1893[8] which
       structures its codes in the form of x.yyy.zzz. Taken directly
       from the RFC 1893 is the ABNF for the codes:

             status-code = class "." subject "." detail
             class = "2"/"4"/"5"
             subject = 1*3digit
             detail = 1*3digit

       The top level codes denote levels of severity of the status:

          2.X.X Success

             The request was processed and results were returned. In
             most cases this status won't be sent since actual results
             themselves denote success. In other cases results were
             returned but some information needs to be returned to the
             client.

          3.X.X Partial Success

             The request was processed and results were returned. In
             this case though, some values sent with the request were
             non-fataly invalid (ignored) or were interpreted in ways
             that the client may not be aware of.

          4.X.X Persistent Transient Failure

             The rquest was valid as sent, but some temporary even
             prevents the successful sending of the results. Sending in
             the future may be possible.

          5.X.X Permanent Failure

             A permenent failure is one which is not likely to be
             resolved by resending the request in its current form.
             Some change to the request or the destination must be made
             for successful request.

       The second level codes denote the subject of the status
       messages. This value applies to each of the three
       classifications.  The subject sub-code, if recognized, must be
       reported even if the additional detail provided by the detail
       sub-code is not recognized.  The enumerated values for the
       subject sub-code are:

          X.0.X Other or Undefined Status

             No specific information is available about what subject
             class this message belongs to

          X.1.X Query Related

             Any status related to some specific way in which the query
             was encoded or its values with the exception of
             properties.

          X.2.X Property Related

             Any status related to properties and their values.

          X.3.X Service Related

             Any status related to the service in which this server is
             cooperating in providing.

          X.4.X Server Related

             Any status related to this particular server.

          X.5.X XML Related

             Any status related to actual XML encoding of the request

       Appendix B contains a list of all predefined status codes

--
--------------------------------------------------------------------------------
Michael Mealling        |      Vote Libertarian!       | www.rwhois.net/michael
Sr. Research Engineer   |   www.ga.lp.org/gwinnett     | ICQ#:         14198821
Network Solutions       |          www.lp.org          |  [email-masked]

---

From: Leslie Daigle <[email-masked]>
Date: Thu, 27 Apr 2000 10:55:43 -0400

A couple of quick comments:

> 2) Do we need to have IANA register new status messages?

I'm currently in favour of not requiring IANA registrations here --
as there doesn't seem to be the need.  So, if anyone _does_ see
the need, please speak up now!

>              status-code = class "." subject "." detail

You've also used "3".

I think we also need another category  (was that "1" in the SMTP
scheme?) that is neutral -- i.e., information passed along
irrespective of whether the transaction was successful or failed.

A peek at Appendix B would probably make it more concrete for all
of us... ;-)

Leslie.

--

-------------------------------------------------------------------
"My body obeys Aristotelian laws of physics."
   -- ThinkingCat

Leslie Daigle
[email-masked]
-------------------------------------------------------------------

---

From: Michael Mealling <[email-masked]>
Date: Thu, 27 Apr 2000 11:10:35 -0400

> >              status-code = class "." subject "." detail

I noticed that and fixed it. Thanks...

> irrespective of whether the transaction was successful or failed.

I figured 3 might handle that but I guess I wasn't clear about it.
I'll clarify 3 and create a 1...

> A peek at Appendix B would probably make it more concrete for all

I gotta get the classifications right first! ;-)

-MM