=HowTo? process an incoming ebXML message=

Some thoughts:

  • is it HTTP
    • does it have the SOAPAction?
  • get the ebXML message (that is without payloads)
  • check it against a standard ebXML Message
    • is it well formed?
    • is it XML schema valid (time consumig but generally a good task)
    • is it a ebMS signal?
      • is it a known ebMS signal
    • is it a user message?
      • are payloads present?
  • check it against ebXML CPA
    • does the CPA support this message?
      • does the Service/Action exist?
    • are the from and to OK?
    • are the reliable messaging characteristics OK?
    • are the security characteristics OK?

  • if it is signed?
    • validate signature
  • if it is encrypted?
    • decrypt it
  • if it is a ebMS signal
    • if it is a PING
      • create the PONG
    • if it is a Message Status Request
      • create the Message Status Response
    • if it is an ERROR
      • ???
  • is it relialble messaging?
    • is it duplicate elimination?
    • provide reliable messaging
  • if it is a user message
    • creating incoming directive
    • copy payloads
    • copy directive