> Sandy wrote...
>
> Consider this:
>
> <attribute name="att" type="string"/>
>
> <attributeGroup name="ag1">
> <attribute ref="ns:att" use="required"/>
> </attributeGroup>
>
> <attributeGroup name="ag2">
> <attribute ref="ns:att" use="prohibited"/>
> </attributeGroup>
>
> Then where do you store the "type" information for "att", and where do you
> store "use" information for the references to "att"?
>
> One choice could be that whenever you see a reference to "att", you create
> a new attribute declaration, copy all information from the global one, and
> set "use" and "value constraint" on the new decl. Apparently, you are
> wasting a lot of space. And this is what we've done in Xerces1.
>
> In the new schema design, we want to avoid "information cloning" as much as
> possible. So we store attribute decl and attribute use in separate places.
> In attribute use, it only contains "use" "value constraint" and a pointer
> to the attribute decl.
You have a point here. I agree with you.
+1 for XSAttributeUseDecl.
>
> If you agree with me on the above point, then
> XSDAttributeTraverser.traverseLocal should return a XSAtributeUse index.
You are right!.
Sorry Sandy for overlooking this point of attribute use.
>
> I didn't have much time to work on the attribute/attributeGroup stuff these
> two days. I'll try to do something this week.
>
> I just put in some other changes. I'll write another message explaining
> them.
Today I will re-submit the AttributeGroupTraverser class.
Cheers,
Rahul.
Sun Microsystems Inc.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]