- From: G. Ken Holman <gkholman@CraneSoftwrights.com>
- Date: Sat, 05 Feb 2005 13:09:44 -0500
- To: <xmlschema-dev@w3.org>
Thank you, Henry, for your input on this. At 2005-02-05 11:40 +0000, Henry S. Thompson wrote: >1) From the clause numbers you cite, I conclude you're looking at the >original REC, not the second edition [1], which did clean up this >aspect of things somewhat. However, the changes _don't_ change that >the 'mixed' on the <xs:complex...> of the _derived_ type determines >the mixed of the result. That was what I needed to know, that the derived type use of mixed= dictates the result use of mixed, regardless of the base use of mixed. >2) Even were this not to be the case, you can't get what you want, >because extending a content model _always_ results in a sequence of >the old model and the new. So if the old were e.g. > > (a | b)* But it's not because I'm dealing with mixed content. I'm starting with only: ( #PCDATA ) by a complex type with mixed="true" and no elements, and I need ( #PCDATA | emph )* by using emph* with mixed="true". >and you extend it with (emph), you get > > ((a | b)* , emph) > >which is not what you want anyway. Right, but given that I'm only mixing new elements with PCDATA, I don't think that the extension restrictions are a problem when dealing with this particular situation. >To achieve what your clients appear to want, you have to go around the >houses in the following way: I see where you are going with the redefined group, thanks: >mixed.xsd: > <xs:group name="bits"> >... >ext.xsd: > <xs:redefine schemaLocation="mixed.xsd"> > <xs:group name="bits"> > <xs:choice> >... Unfortunately, the base definition cannot be modified (it is the entryType in the OASIS Exchange XML Table Model) which is declared only as mixed="true" without any elements. We need to treat the fragment as read-only. Rather than involve the entire model and its distractions from the problem in this example I created the mini excerpt. So, based on your (1) above, it looks like I'm still obliged to set mixed="true" in the derived declaration. Which is fine ... the system is now working ... I just needed to tell the client this was the only way to deal with the situation since we are not in a position to change the base declaration. Thanks again, Henry ... I always appreciate your assistance. ...................... Ken -- World-wide on-site corporate, govt. & user group XML/XSL training. G. Ken Holman mailto:gkholman@CraneSoftwrights.com Crane Softwrights Ltd. http://www.CraneSoftwrights.com/x/ Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995) Male Breast Cancer Awareness http://www.CraneSoftwrights.com/x/bc Legal business disclaimers: http://www.CraneSoftwrights.com/legal
Received on Saturday, 5 February 2005 18:10:39 UTC