cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

ambiguous content models

LynnHales
1-Newbie

ambiguous content models

Epic is one of the few XML applications that still reports 'ambiguous'
content models as an error when parsing a DTD (yes some of us still use
them). I have a DTD that the requirements document is forcing a change to.
The change is causing Epic to report the model as ambiguous. It took me a
while to see where the ambiguity lies, but finding a 'fix' has been elusive.
My boss and I have both looked at this for a couple of hours (took him a bit
longer to see the ambiguous content).

I'm going to continue looking, but here is the model. I'm open to
suggestions if anyone feels like jumping in. 😄

(interconnect | testflow | funcdepend | schematic | comp-locator |
harness-indx)*), proc)*, (sysdesc?, (interconnect | testflow | funcdepend |
schematic | comp-locator | harness-indx)*), (hookup?, tsproc, disconnect?),
followon.maintsk?)>

The group (sysdesc?, (interconnect | testflow | funcdepend | schematic |
comp-locator | harness-indx)*) is declared as a parameter ENTITY in the DTD.


Epic reports the element <interconnect> is used ambiguously. What astounds
me is why the <sysdesc> is not reported as ambiguous as it falls into the
same criteria as the <interconnect>.

Many thanks

Lynn
5 REPLIES 5

Hi Lynn,

I'm wondering about the construction of the element itself since sometimes the first thing reported is not always the issue. For example, I wonder if interconnect were repositioned in the sequence or removed from the model if it would report testflow as ambiguous since it would then be first, something like:

(sysdesc?, ( testflow | interconnect | funcdepend | schematic | comp-locator | harness-indx)*)

Greg

Hi Lynn--

One thing that jumps out at me, is this: if I'm reading this right, it looks like your main content section (the entity refs with "(sysdesc?,...)") can legally be empty. In other words, a document could go straight from <intro> to <hookup> (or even end right after <initial-setup>. Is that what you intend?

--Clay

Well my boss found the solution.



He grouped the <proc> with the second rather than the first group with the
<interconnect>. The proc is then required between the two ambiguous
elements.



Lynn


Clay,



Yes, we tried to clean it up, but the users want to everything, so it was
back to the old way only allow it to repeat. L



Lynn


OK, just checking. (I feel your pain--negotiating structure vs. freedom with authors can be dicey.)
Announcements