Re: Is markup allowed in attribute values?

Murray Altheim (
Fri, 28 Jun 1996 19:02:42 -0500

Message-Id: <v02110103adfa1df85051@[]>
Date: Fri, 28 Jun 1996 19:02:42 -0500
To: "Eve L. Maler" <>
From: (Murray Altheim)
Subject: Re: Is markup allowed in attribute values?
Cc: Arnoud "Galactus" Engelfriet <>,

"Eve L. Maler" <> writes:
>At 08:01 PM 6/26/96 -0500, Murray Altheim wrote:
>>Here's a few types of attribute declarations you might find in a DTD:
>>    RCDATA  Similar to CDATA except that general and character entity
>>            replacements should occur.
>>    PCDATA  Parsed Character Data, allowing all valid SGML characters.
>>            Within PCDATA, all markup (including start and end tags,
>>            character and entity references, comments) is recognized
>>            and processed accordingly.
>This isn't quite correct.  You can specify NAME, NAMES, ID, and CDATA
>(among others) as "declared values" for an attribute, but RCDATA and
>PCDATA aren't allowed here; RCDATA can be used for element "declared
>content" (as can CDATA), and #PCDATA is used in element content models.
>(The # must be used to distinguish the keyword from any element called
>This is naturally confusing, because in attribute list declarations,
>CDATA as a declared value has the effect of  "replaceable character
>data" if the value has been put in quotes!

Yes, you're correct. I tried correcting this in a subsequent note, but even
there I think I neglected to make it quite as clear as you have. As you
mention, the confusion in the meaning of CDATA (as I understand it and
tried explaining it in my later note) is that one must differentiate
between "attribute value literal" and the derived "attribute value".

Ooops! I just realized I'd not queued that message, so I'll send it now (as
a reply to Paul's message).



     Murray Altheim, Program Manager
     Spyglass, Inc., Cambridge, Massachusetts
     email: <>
     http:  <>