OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

sca-bindings message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: [sca-bindings] Revised proposal to resolve issues 57, 58, and 59


As I go through this attempt at establishing a naming convention, I'm still suspicious that our approach to acronyms is flawed.  I tend to agree with sentiment expressed in our call - I think by Simon H. - that acronyms should be treated as if they were words.  Which means we get @uri, or @jndiUrl, and a "jms" and "soap" intent.  For example, I note the Assembly Binding complex type, which has an @uri element.  The naming conventions expressed in the Assembly specification do not speak to how this one should be treated, since the "CamelCase" convention usually applies to words, and of course, "URI" is not a word.  Following naming convention I proposed in an earlier email, this attribute would instead be @URI.  So here's a few examples of the problem (current state listed first, options following):

(Assembly) @uri vs. @URI
(binding.jca) @jndiURL vs. @jndiUrl or @JNDIURL
(binding.jms) @JMSType vs. @jmsType
(binding.jms) @JMSDeliveryMode vs. @jmsDeliveryMode
(policy - value) SOAP vs. soap
(policy - value) JMS vs. jms

To fit with the current state of both the assembly and policy specification, I think we have to treat element and attribute names with acronyms as if the acronyms were words.  However, policy intents need to treat acronyms as all caps items.  An annoying inconsistency, to be sure, but that's how I proceeded below.  The alternative would be to have Assembly state a position with regards to acronyms in element and attribute names, and policy change its position with regards to the intents "JMS", and "SOAP".

Proposed resolution for issues 57, 58, 59:

Each specification (ws, jms, jca) adds a section 1.4 - Naming Conventions.

The text of that section as follows (between the two line breaks):

This specification follows some naming conventions for artifacts defined by the specification.  In addition to the conventions defined by section 1.3 of the Assembly [SCA-Assembly] specification, this specification adds two additional conventions:
  • Where the names of elements and attributes consist partially or wholly of acronyms, those acronyms will be treated as if they are words, and use the CamelCase conventions outlined in the Assembly specification.  For example, an attribute might be named "uri", or "jndiUrl".
  • For the values of XML Schema elements or attributes defined in this specification, the values follow the same convention as the names of intents in the Assembly specification.  If the value is of type QName, the local part of the QName value follows the same convention as names of intents.

For resolution of http://www.osoa.org/jira/browse/BINDINGS-58, also apply the following changes to the binding.jca specification:

(In document sca-binding-jca-1.1-spec-cd01-rev4.pdf)

Rename element "jca.outbound.connection" to "outboundConnection", all occurrences.
Rename element "jca.inbound.connection" to "inboundConnection", all occurrences.
Rename element "jca.outbound.interaction" to "outboundInteraction", all occurrences.
Rename element "jca.inbound.interaction" to inboundInteraction", all occurrences.
Rename attribute "binding.jca/@jndiURL" to "jndiUrl", all occurrences.
The value "ifnotexist" (multiple attributes) should everywhere be changed to "ifNotExist".
The values of the "resAuth" element, "Container" and "Application" should be renamed to "container" and "application".

For resolution of http://www.osoa.org/jira/browse/BINDINGS-59, also apply the following changes to the binding.jms specification:

(In document sca-binding-jms-1.1-spec-cd01-rev4.pdf)

Rename attribute "binding.jms/jndiURL" to "jndiUrl" for all occurrences
The value "ifnotexist" should everywhere be changed to "ifNotExist".
The attributes "JMSType", "JMSDeliveryMode", "JMSTimeToLive", "JMSPriority", and "JMSSelector" are renamed to "type", "deliveryMode", "timeToLive", "priority", and "selector", respectively.
Change "PERSISTENT" value to "persistent"
Change "NON_PERSISTENT" value to "nonpersistent"
Change "sca:MessageId" value to "sca:messageId"
Change "sca:CorrelationID" value to "sca:correlationId"
Rename jndiURL attribute to "jndiUrl"
Rename the element "wireformat.jmsdefault" to "wireFormat.jmsDefault"

The "jms" intent referenced in section 5 of this specification needs to be capitalized as "JMS" to correspond to the Policy specification.

For resolution of http://www.osoa.org/jira/browse/BINDINGS-57, also apply the following changes to the binding.ws specification:

Rename the intents (section #4) from "soap", "soap.1_1" and "soap.1_2" to "SOAP", "SOAP.1_1", and "SOAP.1_2", respectively.

Hopefully, this wraps it up.


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]