XML roundtripping - attributes with more than one value
Daniel Osborn
Daniel.Osborn at tomtom.com
Tue Nov 7 01:05:47 PST 2006
Hi Lynne,
Thanks for spending so much time on this and I'm sorry to bug you again.
I'm afraid I'm still a bit lost though. All my 'other' attributes are
already #IMPLIED. I tried changing the NMTOKENS attribute to #REQUIRED
(from #IMPLIED) but this didn't make any difference.
Any suggestions?
Thanks,
Daniel
Daniel Osborn | Usability Engineer - Technical Writer | TomTom |
daniel.osborn at tomtom.com | +31 (0) 20 8500 934 office
-----Original Message-----
From: Lynne A. Price [mailto:lprice at txstruct.com]
Sent: Wednesday, November 01, 2006 9:50 PM
To: Daniel Osborn; framers at lists.frameusers.com
Subject: RE: XML roundtripping - attributes with more than one value
Daniel,
You seem to have stumbled on a rather bizarre FM bug. Consider the
following XML document:
<!DOCTYPE test [
<!ELEMENT test (bug)>
<!ATTLIST test test NMTOKENS #REQUIRED>
<!ELEMENT bug EMPTY>
<!ATTLIST bug
test NMTOKENS #REQUIRED
other NMTOKENS "xxx"
>
]>
<test test="cat dog">
<bug test="rose daisy"/>
</test>
It is reasonable to expect the test attribute of the test element to be
treated the same way as the test attribute of the bug element. However,
the
attribute on test is interpreted as two strings while that on bug as
only one.
Furthermore, the significant difference seems to be the definition of
the
other attribute. If the definition of that attribute is removed, bug's
test
attribute is processed correctly. The order of the two attribute
definitions in the declaration does not matter. If the default value of
other is changed to #IMPLIED or #REQUIRED, then test imports correctly.
I've tested on Windows in FM 7.2p158 and 7.1b023.
--Lynne
At 06:33 AM 10/26/2006, Daniel Osborn wrote:
>Does this mean that I should change the attribute type in the DTD to
>NMTOKENS? (At the moment it's CDATA.) I tried this but nothing changed.
>Have I done the wrong thing?
Daniel,
Yes, you want the attribute type in the DTD to be NMTOKENS. And,I
have
no idea if you've done the wrong thing!
--Lynne
Lynne A. Price
Text Structure Consulting, Inc.
Specializing in structured FrameMaker consulting, application
development,
and training
lprice at txstruct.com http://www.txstruct.com
voice/fax: (510) 583-1505 cell phone: (510) 421-2284
More information about the framers
mailing list