Subject: [xml2rfc] NCName?

From: Robert Moskowitz <[email-masked]>
Date: Mon, 09 Jul 2012 12:51:10 -0400

More progress in implementing Strict checking.  I have the following errors:

[Error] INPUT:749:36: Attribute value "fig:bex-simple" of type IDREF must be an NCName when namespaces are enabled.
[Error] INPUT:755:40: Attribute value "fig:bex-simple" of type ID must be an NCName when namespaces are enabled.
[Error] INPUT:1971:63: Attribute value "fig:states" of type IDREF must be an NCName when namespaces are enabled.
[Error] INPUT:1976:38: Attribute value "fig:states" of type ID must be an NCName when namespaces are enabled.

What is an NCName?  for the first error the line in question is:

          The base exchange is illustrated below in<xref
          target="fig:bex-simple" />.  The term "key"

Further down is:

        <figure anchor="fig:bex-simple">

And finally, what does:

[Error] INPUT:2475:10: The content of element type "t" must match "(list|figure|xref|eref|iref|cref|spanx|vspace)".

mean?  Lines are:

      <t>
        The process for defining new parameters is described in<xref
        target="newparameter"/>  of this document.
      </t>

---

From: Julian Reschke <[email-masked]>
Date: Mon, 09 Jul 2012 18:59:29 +0200

On 2012-07-09 18:51, Robert Moskowitz wrote:
> [Error] INPUT:749:36: Attribute value "fig:bex-simple" of type IDREF
> must be an NCName when namespaces are enabled.
> [Error] INPUT:755:40: Attribute value "fig:bex-simple" of type ID must
> be an NCName when namespaces are enabled.
> [Error] INPUT:1971:63: Attribute value "fig:states" of type IDREF must
> be an NCName when namespaces are enabled.

<http://www.w3.org/TR/REC-xml-names/#NT-NCName>:

'An XML Name, minus the ":"'

> [Error] INPUT:2475:10: The content of element type "t" must match
> "(list|figure|xref|eref|iref|cref|spanx|vspace)".
>
>
> mean?  Lines are:
>
>       <t>

That looks ok to me; the problem is likely somewhere else.

(feel free to send me the complete document in private mail for checking)

Best regards, Julian

---

From: "Worley, Dale R (Dale)" <[email-masked]>
Date: Mon, 9 Jul 2012 17:36:47 -0400

>         target="newparameter"/>  of this document.

The "(list|figure|xref|eref|iref|cref|spanx|vspace)" part is a regexp
describing what can appear inside the <t> element.  I'm not certain of
the syntax and semantics of these regexps, but the notation is fairly
conventional.  I suspect that this regexp notation is derived from a
similar notation used in DTD declarations of permissible element
content.  In this case, it means that <t> can contain <list>, <figure>,
<xref>, etc.  I'm not sure how the syntax specifies that character
content is allowed (or whether the syntax specifies whether or not
character content is allowed).

In your extract, nothing useful is revealed:  the <t> only contains an
<xref>, and the message says that is valid.  So I am left to guess that
the <t> element you show is immediately contained in *another* <t>
element, and the message is saying that the <t> at line 2475 is not
valid content for the outer <t>.

Dale