{"id":618,"date":"2005-01-03T23:26:00","date_gmt":"2005-01-04T03:26:00","guid":{"rendered":"http:\/\/www.markbaker.ca\/wp\/2005\/01\/03\/protocols-connectors-and-operations\/"},"modified":"2005-01-03T23:26:00","modified_gmt":"2005-01-04T03:26:00","slug":"protocols-connectors-and-operations","status":"publish","type":"post","link":"http:\/\/www.markbaker.ca\/blog\/2005\/01\/protocols-connectors-and-operations\/","title":{"rendered":"Protocols, connectors, and operations"},"content":{"rendered":"<p><a href=\"http:\/\/www.innoq.com\/blog\/st\/2005\/01\/03\/versioning_strategies_and_tactics.html\">Stefan asks<\/a>;<\/p>\n\n<blockquote>\nIs it really a <em>protocol<\/em> change if I change e.g. an RPC-style WS operation name? Doesn&#8217;t that very much depend on my point of view, i.e. whether I write (or at least look at) my code as dependent on the lower-level protocol (which is always going to be one level more generic that my high-level protocol) or dependent on the higher-level protocol?\n<\/blockquote>\n\n<p>Urgh, protocols.  There&#8217;s so much\n<a href=\"http:\/\/www.markbaker.ca\/2002\/09\/Blog\/2004\/12\/22#2004-12-wsa-transfer\">confusion around the word<\/a>\nthat I think Stefan would be much better served to ask the question from a\nsoftware architecture POV.  I think the equivalent would be this;<\/p>\n\n<blockquote>\nIs the <em>connector<\/em> changed by a change in an operation name?\n<\/blockquote>\n\n<p>The answer to that is clearly, unequivocally, yes; connector semantics\ninclude application semantics, by definition.<\/p>\n\n<p>No matter how you choose to design your connectors, be it with a single\nspecification (ala Internet based apps like the Web), or be it with more\nthan one (ala Web services, with domain-specific-semantics\/WSDL\/SOAP\/binding),\nyou can&#8217;t escape the fact that a change in operation means a change in\nconnector means an impact to interoperability.<\/p>\n\n<p>I&#8217;ll leave the mapping of this explanation to the use of the word\n&#8220;protocol&#8221; as an exercise for the reader. 8-)<\/p>","protected":false},"excerpt":{"rendered":"Stefan asks; Is it really a protocol change if I change e.g. an RPC-style WS operation name? Doesn&#8217;t that very much depend on my point of view, i.e. whether I write (or at least look at) my code as dependent on the lower-level protocol (which is always going to be one level more generic that [&hellip;]","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[26],"class_list":["post-618","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-soap"],"_links":{"self":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts\/618","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/comments?post=618"}],"version-history":[{"count":0,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts\/618\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/media?parent=618"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/categories?post=618"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/tags?post=618"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}