[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: [sca-assembly] [NEW ISSUE] Duplicated atributes in sca-binding-sca.xsd and sca-implementation-composite.xsd
Raiser: Plamen Pavlov
Target: SCA Assembly Specification
Description:
When SchemaFactory is created, based on the on the SCA XSD documents
e.g.
SchemaFactory schemaFactory = SchemaFactory.newInstance( XMLConstants.W3C_XML_SCHEMA_NS_URI );
return schemaFactory.newSchema( docs );
several exceptions are thrown
…./sca-binding-sca.xsd:
• ct-props-correct.4: Error for type 'SCABinding'. Duplicate attribute uses with the same name and target namespace are specified. Name of duplicate attribute use is 'uri'.
• e-props-correct.4: The {type definition} of element 'binding.sca' is not validly derived from the {type definition} of the substitutionHead 'sca:binding', or the {substitution group exclusions} property of 'sca:binding' does not allow this derivation.
…./sca-implementation-composite.xsd:
• ct-props-correct.4: Error for type 'SCAImplementation'. Duplicate attribute uses with the same name and target namespace are specified. Name of duplicate attribute use is 'requires'.
• e-props-correct.4: The {type definition} of element 'implementation.composite' is not validly derived from the {type definition} of the substitutionHead 'sca:implementation', or the {substitution group exclusions} property of 'sca:implementation' does not allow this derivation.
The problem is duplication of some attributes in the base and in the extension types.
Here are the XSD snippets which caused these problems:
<complexType name="Binding" abstract="true">
<sequence>
<element name="operation" type="sca:Operation" minOccurs="0" maxOccurs="unbounded" />
</sequence>
<attribute name="uri" type="anyURI" use="optional"/>
<attribute name="name" type="NCName" use="optional"/>
<attribute name="requires" type="sca:listOfQNames" use="optional"/>
<attribute name="policySets" type="sca:listOfQNames" use="optional"/>
</complexType>
<complexType name="SCABinding">
<complexContent>
<extension base="sca:Binding">
<sequence>
<element name="operation" type="sca:Operation" minOccurs="0" maxOccurs="unbounded" />
</sequence>
<attribute name="uri" type="anyURI" use="optional"/>
<attribute name="name" type="QName" use="optional"/>
<attribute name="requires" type="sca:listOfQNames" use="optional"/>
<attribute name="policySets" type="sca:listOfQNames" use="optional"/>
<anyAttribute namespace="##any" processContents="lax"/>
</extension>
</complexContent>
</complexType>
<complexType name="Implementation" abstract="true">
<attribute name="requires" type="sca:listOfQNames" use="optional"/>
<attribute name="policySets" type="sca:listOfQNames" use="optional"/>
</complexType>
<complexType name="SCAImplementation">
<complexContent>
<extension base="sca:Implementation">
<sequence>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="name" type="QName" use="required"/>
<attribute name="requires" type="sca:listOfQNames" use="optional"/>
<attribute name="policySets" type="sca:listOfQNames" use="optional"/>
<anyAttribute namespace="##any" processContents="lax"/>
</extension>
</complexContent>
</complexType>
Proposal: Remove the duplicated attributes from the extension complex types.
Best Regards,
Plamen
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]