After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 636167 - RelaxNG broken when two "define"s with the same name in difft rng files
RelaxNG broken when two "define"s with the same name in difft rng files
Status: RESOLVED OBSOLETE
Product: libxml2
Classification: Platform
Component: relaxng
2.7.5
Other Linux
: Normal normal
: ---
Assigned To: Daniel Veillard
libxml QA maintainers
Depends on:
Blocks:
 
 
Reported: 2010-11-30 20:51 UTC by James Knight
Modified: 2021-07-05 13:27 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description James Knight 2010-11-30 20:51:15 UTC
This bug is new in 2.7.4 or 2.7.5 and still exists in 2.7.8. It did not appear in 2.7.3.

Running:
echo "<A><B>AAA</B></A>" | xmllint --relaxng test.rng -

with the following two trivial RNG documents should validate. But it does not. 
It says:
-:1: element B: Relax-NG validity error : Did not expect element B there
- fails to validate

If you rename "myself" (in both define and ref) in one of the documents, it then works again.

-- test.rng:
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
         datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">

  <start>
    <ref name="myself"/>
  </start>

  <define name="myself">
    <element name="A">
      <externalRef href="test2.rng"/>
    </element>
  </define>
</grammar>

-- test2.rng:

<grammar xmlns="http://relaxng.org/ns/structure/1.0"
         datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">

  <start>
    <ref name="myself"/>
  </start>

  <define name="myself">
    <element name="B">
      <data type="NMTOKEN">
        <param name="pattern">[A-Z0-9]*</param>
      </data>
    </element>
  </define>
</grammar>
Comment 1 GNOME Infrastructure Team 2021-07-05 13:27:14 UTC
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org.
As part of that, we are mass-closing older open tickets in bugzilla.gnome.org
which have not seen updates for a longer time (resources are unfortunately
quite limited so not every ticket can get handled).

If you can still reproduce the situation described in this ticket in a recent
and supported software version, then please follow
  https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines
and create a new ticket at
  https://gitlab.gnome.org/GNOME/libxml2/-/issues/

Thank you for your understanding and your help.