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

 


Help: OASIS Mailing Lists Help | MarkMail Help

sca-j message

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


Subject: [OASIS Issue Tracker] Created: (SCAJ-19) Problems with the Extension Points in the XSD for binding.ejb


Problems with the Extension Points in the XSD for binding.ejb
-------------------------------------------------------------

                 Key: SCAJ-19
                 URL: http://tools.oasis-open.org/issues/browse/SCAJ-19
             Project: OASIS Service Component Architecture / J (SCA-J) TC
          Issue Type: Bug
          Components: EJB Session Binding Specification
    Affects Versions: 1.1
            Reporter: Anish Karmarkar


Target: sca-ejbbinding-1.1-spec-cd02.doc
Description:

The SCA XSDs mix two different forms of extensibility and this causes significant problems such as UPA errors.

The two forms of extensibility are:

1) The use of substitution groups for the extensibility of:

implementation
interface
binding
wireFormat
operationSelector
importBase
exportBase

2) The use of

<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>

for extensibility in many locations


A UPA problem potentially exists in any place where ONE or MORE of the elements in the list 1) above is declared
to be used within another element in combination with 2) in a sequence or choice where it may occur that one of the
list 1) elements is validly succeeded by an <any/> of the form in 2). IF an extended version of any of the 1) elements
is created, in a non-sca namespace (this is REQUIRED for any non-standard extension), then a UPA error will be
reported whenever such an extension is used.

This occurs in the XSD sca-binding-ejb-1.1-cd02.xsd

    <complexType name="EJBSessionBeanBinding">
        <complexContent>
            <extension base="sca:Binding">
                <sequence>
                    <any namespace="##other" processContents="lax"
                         minOccurs="0" maxOccurs="unbounded"/>
                </sequence>
                <attribute name="homeInterface" type="NCName" use="optional"/>
                <attribute name="ejb-link-name" type="string" use="optional"/>
                <attribute name="ejb-version" type="sca:VersionValue" use="optional" default="EJB3"/>
            </extension>
        </complexContent>
    </complexType>

The sca:Binding base contains both wireFormat and operationSelector elements - these then clash with the <any/> extensibility

Proposal:

Replace the <any/> extensibility with extensibility using the sca:extensions element as follows:

    <complexType name="EJBSessionBeanBinding">
        <complexContent>
            <extension base="sca:Binding">
                <sequence>
                    <element ref="sca:extensions" minOccurs="0" maxOccurs="1" />
                </sequence>
                <attribute name="homeInterface" type="NCName" use="optional"/>
                <attribute name="ejb-link-name" type="string" use="optional"/>
                <attribute name="ejb-version" type="sca:VersionValue" use="optional" default="EJB3"/>
            </extension>
        </complexContent>
    </complexType> 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tools.oasis-open.org/issues/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


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