Web Services Description: Requirements

One of the first activities of the W3C Web Services Description Working
Group is to draft a set of requirements and scenarios for the working
group. Per our first teleconference, below is a draft list of
requirements; the list is an individual contribution -- it does not
reflect any decisions of the working group -- all mistakes are mine.

Please review the list and provide feedback.

--Jeff


WEB SERVICE DESCRIPTION REQUIREMENTS

MESSAGES (TYPES, MESSAGE) (1xx)

Must be able to describe messages independent of specific wire format.

(No requirement to describe semantic content of messages.)

Must be able to describe messages using XML Schema simple and complex
types.

Must be able to describe messages using other info sets.

Must be able to extend message descriptions using mechanisms not
explicitly identified in the spec.

Must be able to describe messages that include arrays and nested arrays.

Must be able to describe XML Protocol messages.

Must provide a normative description for XML Protocol messages.

Must be able to describe XML Protocol Header elements and Body elements.

Must be able to describe XML Protocol Faults.

Must be able to describe messages of other protocols.


PORT TYPE (and OPERATION) (2xx)

Must be able to describe simple one-way messages, i.e., either incoming
or outgoing (event) messages.

Must be able to describe simple request-response-fault message exchange.

(Not a requirement to describe arbitrary message exchanges.)

Must be able to describe sets of messages that form a logical group
(i.e., a port type).

Must be able to derive a port type from another by extension of the
logical group of messages.

Must be able to extend protocol descriptions using mechanisms not
explicitly identified in the spec.


SERVICE TYPE (3xx)

Must be able to describe a logical group of port type instances (i.e., a
service type).

Must be able to name an instance of a port type.

Must be able to derive one service type from another by extension of the
logical group of port instances.

Must be able to extend service descriptions using mechanisms not
explicitly identified in the spec.


TRANSPORT / BINDING (4xx)

Must be able to describe the wire format of messages, whether XML,
ASCII, binary, or some combination.

Must provide a normative description of the binding for XML Protocol.

Must be able to describe bindings to other transports.

Must be able to extend transport binding descriptions using mechanisms
not explicitly identified in the spec.


ENDPOINT (5xx)

Must be able to describe endpoint location using URIs.

Must be able to describe address for specific port instances within a
service.

Must be able to separate design-time from run-time information.


OTHER (9xx)

REUSABLE

Must be able to partition a description across multiple files.

Must be able to use a description fragment in more than one description.

EXTENSIBLE

Must define a set of constructions to indicate which extensions are
optional versus mandatory.

VERSIONING

TODO


GENERAL REQUIREMENTS (0xx)

Coordinate with W3C XML Activity and XML Coordination Group.

Use available XML technologies wherever possible.

Describe constructs using the XML Infoset model.

SIMPLICITY AND STABILITY

Specification shall be as lightweight as possible, keeping parts that
are mandatory to a minimum.

Optional parts of the specification should be orthogonal to each other
allowing non-conflicting configurations  to be implemented.

INTEROPERABLE

Simple to understand and implement correctly; comparable to other
widespread Web solutions.

SECURITY

Compliance must not preclude building implementations that are resistant
to attacks.

TESTING

TODO

EXTERNAL REQUIREMENTS

P3P REQUIREMENTS


EOF

Received on Friday, 8 February 2002 21:15:03 UTC