On Thu, 17 Jul 2003, Eve L. Maler wrote:
>>Actually, I believe naming does equate with being global. A
>>topLevelComplexType requires its name attribute, and a localComplexType
>>prohibits its name attribute from being used. Roughly the same is true
>>for simple types. (See http://www.w3.org/2001/XMLSchema.xsd )
No, without loss of generality, let's just look at complexType.
A complexType definition is global if and only if it is located
as one of the immediate children under <xsd:schema>.
A complexType is named if and only if the name attribute exists
in the definition.
I refer you to XML Schema Part 1: Structures, Section 4.2.2
example "v2.xsd" part of which is illustrated:
<xs:redefine schemaLocation="v1.xsd">
<xs:complexType name="personName">
<xs:complexContent>
<xs:extension base="personName">
.....
By definition, this <xs:complexType> definition is not global
(not necessarily local), AND named.
Best Regards,
Chin Chee-Kai
SoftML
Tel: +65-6820-2979
Fax: +65-6743-7875
Email: cheekai@SoftML.Net
http://SoftML.Net/
>>
>>So probably the rule could be shortened to:
>>
>>[R 91] All types MUST be named.
>>
>>Explanatory text could then mention that the purpose is for reuse and
>>extension, and that the syntactic consequence of the rule is that the
>>types must all be declared as top-level.
>>
>> Eve
>>
>>Chin Chee-Kai wrote:
>>
>>> On Mon, 14 Jul 2003, Dan Vint wrote:
>>>
>>>
>>>>>I would modify this rule to be:
>>>>>
>>>>>
>>>>>>[R 91] For reuse and extension, all types MUST be named, which then
>>>>>>requires their declarations be globally defined.
>>>
>>>
>>> Naming does not equate with being global.
>>--
>>Eve Maler +1 781 442 3190
>>Sun Microsystems cell +1 781 354 9441
>>Web Technologies and Standards eve.maler @ sun.com
>>
>>