commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 33001] - [digester] Make <set-nested-properties-rule> available
Date Wed, 12 Jan 2005 04:29:08 GMT
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=33001>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=33001





------- Additional Comments From skitching@apache.org  2005-01-12 05:29 -------
<!ENTITY ...> declares stuff that can be referenced from the XML.

<!ENTITY % ...> declares stuff that can be referenced from the DTD. This is
called a "Parameter Entity". It can then be referred to from within the DTD
using "%name;" (aka a "Parameter Entity Reference" or PEReference).

It should therefore be possible to define the list of available rule elements
just once using <!ENTITY % rule-elements ...> then reference this entity instead
of duplicating the list everywhere it is needed in the dtd. For some reason the
original author of the dtd declared the appropriate Parameter Entity, but then
used copy-and-paste rather than referencing the entity.

Personally I would prefer to use this entity correctly rather than remove it -
unless someone can suggest a reason to avoid using <!ENTITY % ...>.

I have attached a modified DTD with this change and your (Wendy's) changes;
Wendy, are you happy with this?

BTW, thanks for the pointer to the jEdit ErrorList window. 

Re changing xmlrules to validate the rules file against the DTD: well, it
certainly wouldn't be a good idea to validate against a remote version of the
dtd, but it would be possible to define an EntityResolver so that it validates
against a local version of the dtd found in the digester jar file. We would also
need a way for people to disable this, eg if they add their own tags - I guess
people could just leave out the PUBLIC/SYSTEM id in their xmlrules file? I have
no real objection to this if you wish to provide a patch. Anyone else got a
comment on this?
 
Re the part of your patch to change the recommended doctype declaration in
xmlrules config files from:
       <!DOCTYPE digester-rules PUBLIC
         "-//Jakarta Apache //DTD digester-rules XML V1.0//EN"
         "digester-rules.dtd">
to:
       <!DOCTYPE digester-rules PUBLIC
         "-//Jakarta Apache //DTD digester-rules XML V1.0//EN"
         "http://jakarta.apache.org/commons/digester/dtds/digester-rules.dtd">
I'm not really keen on this. I think people should be using a Catalog to map the
public id to a local copy of the DTD.

We should definitely update the file at
"http://jakarta.apache.org/commons/digester/dtds/digester-rules.dtd" though. I
will do this once we have finished with changes to the dtd (and add this task to
the release procedure). As all the proposed changes are backwards-compatibile, I
don't see any particular reason to change the dtd name to include a version
number (though I'm open to arguments).

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


Mime
View raw message