ietf-mxcomp
[Top] [All Lists]

Re: Working toward unity on XML

2004-06-16 08:00:01


On Jun 16, 2004, at 1:14 AM, Greg Connor wrote:
Position 3. Implement both, let domain owners decide:

Plain SPF and XML MUST be supported by all implementations.
Domain owners are free to publish in either format. People can vote with their feet. If there is no extension really needed, plain text will probably be preferred because it is more readable. If there is some extension that people end up needing, the XML may be preferred in the future. If there is a clear winner in terms of market adoption, perhaps a later version of our standard will deprecate one or the other.



Position 4. Leave it up to the MTA:

Plain SPF MUST be supported.  XML SHOULD be supported.
Those implementing MTA and mail filters can start with SPF as it is written today, and are encouraged to support XML also, but reading and acting on only the Plain SPF format is also allowed. Software vendors that don't support XML do so at their own risk. Users who feel they need XML support may complain. The software not supporting XML may get negative reviews later, or have a checkmark missing on the feature grid. Patches later might be needed.
Software that understand SPF now will be pretty much ready-to-go as is.
Domain owners may choose XML but might be faced with less support among receivers. Assuming the XML may be extended and the plain format might not be, when both are present, the XML should be used, falling back to SPF plain only if the MTA doesn't support XML. Allows people to vote with their feet, sort of. Software vendors have some freedom to choose, but are ultimately accountable to the customers.

The one thing that a standards specification must do, above getting past the standards process and finding community adoption, is to be interoperable. Quite simply, with a two syntax system, one of two things must be done for interoperability: 1) the publisher needs to publish both syntaxes, or 2) the receiver needs to implement both syntaxes.

Additionally, a two syntax specification is many times more implementation work than a two record type system. To support two record types with the same syntax, the necessary code is simply "lookup type Y; if no records then lookup type X". For two separate syntaxes, the code paths are not nearly so similar. In fact, they are dissimilar enough that semantic interpretation will yield different results (leading toward interoperability problems).

Finally, we must realize that any work put forward by the MARID working group will receive broader community review (IESG review and an IETF-wide last call). To any outsider looking at a MARID draft specifying two syntaxes, it could easily appear that the working group did not come to consensus on a syntax and is attempting to route around that fact.

Both the SPF and XML syntaxes do the job at hand. Both are workable. And both are extensible. But we need to pick ONE. So the question should be, which one has the extensibility we desire.

-andy