[oXygen-user] regression of oxygen 12.2: validation against rnc schema without .rnc extension on URL [RETRACTION]

George Cristian Bina
Mon Jun 20 07:06:29 CDT 2011

Hi Florent,

The xml-model spec says:

     Specifies the location of the referenced schema. Documents must 
specify this pseudo-attribute. Documents must set the *value* to a 
string that matches the grammar for <IRI-reference> given in RFC 3987 

and *value* above points to


[Definition: The string matched by PseudoAttValue in the PseudoAtt 
production — after any CharRefs and PredefEntityRefs are replaced with 
the characters they represent — constitutes the value of the 
corresponding pseudo-attribute.] Each CharRef in PseudoAttValue is 
replaced with the character it represents according to XML. [XML] Each 
PredefEntityRef in PseudoAttValue is replaced with with U+0026 (&) if it 
is "&amp;", U+003C (<) if it is "&lt;", U+003E (>) if it is "&gt;", 
U+0022 (") if it is "&quot;" and U+0027 (') if it is "&apos;".

which defines the value as a string matching the PseudoAttValue 
production that is further processed to replace some entity references 
with characters.

The important thing is the PseudoAttValue production that the string 
needs to match, and that does not allow & directly, only as part of an 
entity reference:

[3]   	PseudoAttValue	   ::=   	('"' ([^"<&] | CharRef | 
PredefEntityRef)* '"' | "'" ([^'<&] | CharRef | PredefEntityRef)* "'")

Please let me know if you still think that & should be allowed.

Best Regards,
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger

On 6/20/11 2:50 PM, Florent Georges wrote:
> Radu Coravu wrote:
>    Hi,
>> Actually the specs state that the pseudo-attributes for the
>> xml-model  must have the "&" escaped to"&amp;". Here is a
>> page linked from the  xml-model specs:
>> http://www.w3.org/XML/2009/12/xml-stylesheet/#dt-value
>    What I understand from there is that PredefEntityRef must be analyzed as such (and thus decoded) but the characters they represent do not have to be be escaped.  That is: "a&amp;b" must be parsed as "a&b", but you can also have "a&b" directly in the PI's data.
>    But I might have missed something, of course.
>    Regards,

More information about the oXygen-user mailing list