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


Help: OASIS Mailing Lists Help | MarkMail Help

sca-assembly message

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

Subject: [NEW ISSUE] SCA <anyAttribute.../> declarations should use namespace ##otherrather than ##any

(Issue brought forward from OSOA)

Line numbers all refer to the 1.0 SCA specifications published on www.osoa.org

RAISER:  Mike Edwards


Currently throughout the SCA XSDs, attribute extensibility uses ##any, which means that it is possible to add an attribute on any of the elements defined by SCA irrespective of the namespace that the new extensibility attribute belongs to (i.e. ##other or ##local or ##targetnamespace). This is actually undesirable and it should be replaced with ##other, for the following reasons:

   1. symmetry with <any> extensibility elements in the XSD

   2. seems to be an evolving best practice for extensibility. All the WS-* and related specs that I looked at use ##other. For example SOAP 1.2, WSDL 2.0, WS-RM, WS-Coordination.

   3. preventing arbitrary use of attributes from SCA namepace on SCA elements when not explicitly authorized does not seem right. ie., disallowing <anyAttribute namespace="##targetnamespace"> is important. SCA defines the element, defines the attribute and therefore SCA should say where it can or cannot be used. Implementors of extensibility should get their own attributes.

   4. That leaves the use of ##local. In most cases attributes belong to no namespace as they are considered scoped to a specific element (hence the default value for attributeFormDefault is "unqualified"). I.e., the element QName, to which the attribute is scoped, defines the meaning of attributes with no namespace. For example, the attribute 'local' on sca:Composite element. Since the element is defined by SCA, SCA should control which attributes from no namespace are allowed. Most use of attribute extensibility uses global attribute decl in a foreign NS. For example, xml:lang, xml:id, wsu:id etc. It is not clear why someone would want to extend elements defined by SCA to use an attribute in no namespace.

PROPOSAL:  Use the ##other declaration as defined above

Yours,  Mike.

Strategist - Emerging Technologies, SCA & SDO.
Co Chair OASIS SCA Assembly TC.
IBM Hursley Park, Mail Point 146, Winchester, SO21 2JN, Great Britain.
Phone & FAX: +44-1962-818014    Mobile: +44-7802-467431  
Email:  mike_edwards@uk.ibm.com

Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU

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