[jdom-interest] Possible bug in Verifier.checkXMLName

Rick Nucci rick_nucci at boomi.com
Thu Jun 8 09:16:59 PDT 2000


Hello,

Currently, this method only allows '-', '$', and '_'.  Shouldn't '.' also be
allowed?  I am using the 06/05 build.

Rick

______________________________________________

Rick Nucci
Partner, Boomi Inc.
rick_nucci at boomi.com
http://www.boomi.com


Received: from web114.yahoomail.com (web114.yahoomail.com [205.180.60.86])
	by dorothy.denveronline.net (8.9.3/8.9.3) with SMTP id PAA29227
	for <jdom-interest at jdom.org>; Wed, 7 Jun 2000 15:39:02 -0600 (MDT)
Received: (qmail 15705 invoked by uid 60001); 7 Jun 2000 21:39:01 -0000
Message-ID: <20000607213901.15704.qmail at web114.yahoomail.com>
Received: from [128.64.18.13] by web114.yahoomail.com; Wed, 07 Jun 2000 14:39:01 PDT
Date: Wed, 7 Jun 2000 14:39:01 -0700 (PDT)
From: Jason Hunter <servlets at yahoo.com>
Reply-To: jhunter at acm.org
Subject: Re: [jdom-interest] moving elements in the jdom tree
To: Jakob Schwendner <jschwendner at picturesafe.de>, jdom-interest at jdom.org
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Sender: jdom-interest-admin at jdom.org
Errors-To: jdom-interest-admin at jdom.org
X-BeenThere: jdom-interest at jdom.org
X-Mailman-Version: 2.0beta2
Precedence: bulk
List-Id: JDOM Mailing List for General Issues and Updates <jdom-interest.jdom.org>

> I am missing some kind of addChild(index, Element) as a member
> of the
> Element class to allow appending of elements at specified
> positions in the
> list.
> any hints?

elt.getChildren().add(int, Element);

-jh-


__________________________________________________
Do You Yahoo!?
Yahoo! Photos -- now, 100 FREE prints!
http://photos.yahoo.com

Received: from smtp3.libero.it (smtp3.libero.it [193.70.192.53])
	by dorothy.denveronline.net (8.9.3/8.9.3) with ESMTP id BAA14490
	for <jdom-interest at jdom.org>; Thu, 8 Jun 2000 01:39:15 -0600 (MDT)
Received: from libero.it (193.70.192.61) by smtp3.libero.it; 8 Jun 2000 09:39:03 +0200
To: mailto:jdom-interest at jdom.org
From: "crismara at libero.it"<crismara at libero.it>
Date: Thu,  8 Jun 2000 09:39:02 +0200
Message-Id: <FVTRX2$I4SjD2xcKkaBCW_3XYHZie3vMdP5LAc9SGyrbGdxqOL77I at libero.it>
Subject: [jdom-interest] DOMOutputter impl
MIME-Version: 1.0
X-SenderIP: 151.18.63.242
Content-Type: text/plain
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by dorothy.denveronline.net id BAA14491
Sender: jdom-interest-admin at jdom.org
Errors-To: jdom-interest-admin at jdom.org
X-BeenThere: jdom-interest at jdom.org
X-Mailman-Version: 2.0beta2
Precedence: bulk
List-Id: JDOM Mailing List for General Issues and Updates <jdom-interest.jdom.org>

Hi,
I want to know when method :

public void output(Document document, org.w3c.dom.Document...
{
 // To be implemented
}
 
will be implemented.
 
 Thank you, bye
 
 Eugenio Marasco






Received: from mail.barak.net.il (mail.barak.net.il [206.49.94.213])
	by dorothy.denveronline.net (8.9.3/8.9.3) with ESMTP id BAA14582
	for <jdom-interest at jdom.org>; Thu, 8 Jun 2000 01:44:00 -0600 (MDT)
Received: from uxsrvc.tti-telecom.com ([212.150.211.130])
	by mail.barak.net.il (8.9.3/8.9.1) with SMTP id KAA18549
	for <jdom-interest at jdom.org>; Thu, 8 Jun 2000 10:43:40 +0300 (IDT)
Received: from oleg by uxsrvc.tti-telecom.com (8.6.13/200.15.1.2)
	id KAA19449; Thu, 8 Jun 2000 10:47:12 +0400
From: "Oleg Ananiev" <olega at uxsrvc.tti-telecom.com>
To: <jdom-interest at jdom.org>
Date: Thu, 8 Jun 2000 10:44:54 +0200
Message-ID: <NDBBJLPMBDMNDJDKEDHMEEAACDAA.olega at tti.co.il>
MIME-Version: 1.0
Content-Type: multipart/mixed;
	boundary="----=_NextPart_000_0006_01BFD136.9524F690"
X-Priority: 3 (Normal)
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0)
Importance: Normal
X-MS-TNEF-Correlator: <NDBBJLPMBDMNDJDKEDHMEEAACDAA.olega at tti.co.il>
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300
Subject: [jdom-interest] Building JDOM tree from a DOM sub-tree
Sender: jdom-interest-admin at jdom.org
Errors-To: jdom-interest-admin at jdom.org
X-BeenThere: jdom-interest at jdom.org
X-Mailman-Version: 2.0beta2
Precedence: bulk
List-Id: JDOM Mailing List for General Issues and Updates <jdom-interest.jdom.org>

This is a multi-part message in MIME format.

------=_NextPart_000_0006_01BFD136.9524F690
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

I have found it quite useful to be able to build a JDOM tree based on a DOM
sub-tree, identified by its root node (it is also possible to build a tree
from a DocumentFragment). In my scenario, I am building a DOM tree in memory
and then let the consumer query it with Xpath expressions. Since JDOM does
not support XPath at the moment, I use some 3rd party package, which
requires DOM as an input. However, when the result nodes are returned to the
consumer, they are converted to JDOM.

In order to enable this, I added a new method to  DOMBuilder:

    public Document build(org.w3c.dom.Node rootNode) {
        Document doc = new Document(null);

        buildTree(rootNode, doc, null, true);

        return doc;
    }

I think such support may also be useful in other, less twisted scenarios.

Oleg Ananiev
TTI Telecom Ltd.
oananiev at yahoo.com

------=_NextPart_000_0006_01BFD136.9524F690
Content-Type: application/ms-tnef;
	name="winmail.dat"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
	filename="winmail.dat"

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
k9VmwQVA37GxWHJnQVjzhOBzZ6PpkPdasSqAnKB3aXFqMF2QWHJveq+Pj+vFWzFCWXLG4Dr/k9xG
tEd/SI9Jn0qv85yX7r+sEJkPolWj8oaAEtFj5/gFWWMoBUBnLnczY3EZ8W0uTl2RXSOmYik9nPB7
k9Wn1ugHAXEgPQuW0+gGKJ7wbGwpO9eT3KfWWWNUWkEoprZb8P8BcVvwqiKSAQTwpyCqf6fU/44E
qOKuJpvvnP+eD58foC/noT+iT6NdXH2wRpfvt0//6rOURpXS/wBbYboBc+b9IP9c0Lmvur95JWDS
vi+/P1/k/1ixWBVHUQ7wHHFb8BdRXRD/D2BgkJMSZyaLL8H/68WTzfZPaoBogEHtYA+A/oCT1XRU
VFawVBIQ/+BiwUwbGwCTxm8LgMnzQHlh+QXQby7twcYfxy+7y/9wAgDQYAAAAwAAgAggBgAAAAAA
wAAAAAAAAEYAAAAAEIUAAAAAAAALAAmACCAGAAAAAADAAAAAAAAARgAAAAADhQAAAAAAAAMACoAI
IAYAAAAAAMAAAAAAAABGAAAAAFKFAAAnagEAHgALgAggBgAAAAAAwAAAAAAAAEYAAAAAVIUAAAEA
AAAEAAAAOS4wAAMADIAIIAYAAAAAAMAAAAAAAABGAAAAAAGFAAAAAAAACwANgAggBgAAAAAAwAAA
AAAAAEYAAAAADoUAAAAAAAADAA6ACCAGAAAAAADAAAAAAAAARgAAAAARhQAAAAAAAAMAD4AIIAYA
AAAAAMAAAAAAAABGAAAAABiFAAAAAAAACwApgAggBgAAAAAAwAAAAAAAAEYAAAAABoUAAAAAAAAe
AGSACCAGAAAAAADAAAAAAAAARgAAAAA2hQAAAQAAAAEAAAAAAAAAHgBlgAggBgAAAAAAwAAAAAAA
AEYAAAAAN4UAAAEAAAABAAAAAAAAAB4AZoAIIAYAAAAAAMAAAAAAAABGAAAAADiFAAABAAAAAQAA
AAAAAAALAG6ACCAGAAAAAADAAAAAAAAARgAAAACChQAAAQAAAAIB+A8BAAAAEAAAABNtHchkgdMR
m/wAoCTyJ/0CAfoPAQAAABAAAAATbR3IZIHTEZv8AKAk8if9AgH7DwEAAABTAAAAAAAAADihuxAF
5RAaobsIACsqVsIAAFBTVFBSWC5ETEwAAAAAAAAAAE5JVEH5v7gBAKoAN9luAAAARDpcRG9jc1xF
eGNoYW5nZVxtYWlsLnBzdAAAAwD+DwUAAAADAA00/TcAAAIBfwABAAAALwAAADxOREJCSkxQTUJE
TU5ESkRLRURITUVFQUFDREFBLm9sZWdhQHR0aS5jby5pbD4AAAMABhC89GumAwAHEJECAAADABAQ
AAAAAAMAERAAAAAAHgAIEAEAAABlAAAASUhBVkVGT1VORElUUVVJVEVVU0VGVUxUT0JFQUJMRVRP
QlVJTERBSkRPTVRSRUVCQVNFRE9OQURPTVNVQi1UUkVFLElERU5USUZJRURCWUlUU1JPT1ROT0RF
KElUSVNBTFNPUAAAAAAKeg==

------=_NextPart_000_0006_01BFD136.9524F690--


Received: from edamame.stinky.com (IDENT:qmailr at w153.z209031224.sjc-ca.dsl.cnc.net [209.31.224.153])
	by dorothy.denveronline.net (8.9.3/8.9.3) with SMTP id MAA07988
	for <jdom-interest at jdom.org>; Thu, 8 Jun 2000 12:17:10 -0600 (MDT)
Received: (qmail 31711 invoked by uid 510); 8 Jun 2000 11:10:59 -0000
Date: Thu, 8 Jun 2000 04:10:57 -0700
From: Alex Chaffee <guru at edamame.stinky.com>
To: jdom-interest at jdom.org
Message-ID: <20000608041057.J967 at edamame.stinky.com>
Reply-To: alex at jguru.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Mailer: Mutt 1.0.1i
Subject: [jdom-interest] Re: First impressions and some suggestions
Sender: jdom-interest-admin at jdom.org
Errors-To: jdom-interest-admin at jdom.org
X-BeenThere: jdom-interest at jdom.org
X-Mailman-Version: 2.0beta2
Precedence: bulk
List-Id: JDOM Mailing List for General Issues and Updates <jdom-interest.jdom.org>

If I may leap in to the whitespace fray, on my very first post...

Jason:
>I like that this lets you call whichever you prefer, and lets the same
>document easily use both.  I lean toward getContent() returning trimmed
>because I believe that to be more common, more helpful to the beginner,
>and because it's nicely backward compat.
>

Elliotte:
>The default should be to do what the XML spec requires. That's
>preserving white space. Brett's argues that we can call JDOM an
>application rather than a parser, and that therefore it can do
>whatever it feels like, but that seems a little sophistic to me.
>Programmers will use JDOM in place of the parser's own API, not as a
>separate application like they might use an RSS reader. They'll
>expect it to behave like a parser should behave.


As I understand it, Elliotte, people will want to use JDOM because it
*doesn't* act like a (typical) XML parser.  Meaning that the DWIM
button ("Do What I Mean") should, by default, be switched on. Since,
as Jason pointed out, most programmers feel that

 <name>
   Alex
 </name>

should map to the string "Alex", not the string "\n   Alex\n ", I'm with
Jason.  The extra 7 keystrokes for ".trim()" may not seem like a big
deal, but it's just that sort of infuriating gotcha that drives
people away from standard APIs in order to do it themselves.

I also feel that the content of a node should be determined at a lower
level, like the underlying parser. If the SAX parser can strip the
whitespace by default, then the JDOM API doesn't need to worry about
it one way or the other. Instead, it could merely allow a way to tell
the underlying parser, at slurp time, whether to preserve or destroy
whitespace.

And the default should be "DESTROY".

 - A

---
Alex Chaffee                       mailto:alex at jguru.com
jGuru - Java News and FAQs         http://www.jguru.com/alex/
Creator of Gamelan                 http://www.gamelan.com/
Founder of Purple Technology       http://www.purpletech.com/
Curator of Stinky Art Collective   http://www.stinky.com/

Received: from edamame.stinky.com (IDENT:qmailr at w153.z209031224.sjc-ca.dsl.cnc.net [209.31.224.153])
	by dorothy.denveronline.net (8.9.3/8.9.3) with SMTP id MAA09317
	for <jdom-interest at jdom.org>; Thu, 8 Jun 2000 12:40:42 -0600 (MDT)
Received: (qmail 1235 invoked by uid 510); 8 Jun 2000 11:34:22 -0000
Date: Thu, 8 Jun 2000 04:34:21 -0700
From: Alex Chaffee <guru at edamame.stinky.com>
To: jdom-interest at jdom.org
Message-ID: <20000608043421.K967 at edamame.stinky.com>
Reply-To: alex at jguru.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Mailer: Mutt 1.0.1i
Subject: [jdom-interest] Re: jdom-b4.zip line termination
Sender: jdom-interest-admin at jdom.org
Errors-To: jdom-interest-admin at jdom.org
X-BeenThere: jdom-interest at jdom.org
X-Mailman-Version: 2.0beta2
Precedence: bulk
List-Id: JDOM Mailing List for General Issues and Updates <jdom-interest.jdom.org>

> The source files in jdom-b4.zip are terminated with '\r \r \n' (two
> carriage returns), which results in double-spacing in many Java editors.
> 
> Looks like a translate problem.
> 
> The source files in jdom-b4-src.tar.gz, on the other hand, are
> terminated in one of the standard ways: '\r \n'

Actually, for me, the .tar.gz build.sh contains DOS-style line
endings, which means that sh won't execute it properly on Unix. (It's
looking for an executable file called "/bin/sh\r", not "/bin/sh", so
it dies with "bash: ./build.sh: No such file or directory".) Also,
that file is not flagged executable (chmod +x).

On the other hand, if a .bat file contains Unix-style line endings,
then *it* won't work right.

Perhaps the build script should run a program to convert line endings
correctly prior to tarring build.sh and build.bat, no matter what
platform the files were edited on, version-controlled on, and built
on.  It would be fun to write an Ant task class that does that, if
there isn't one already, so if you want me to do that, let me know.

Also, strangely, the build.bat file doesn't work on Windows 98. It
fails with Command not found or some such. It's probably some subtle
difference between NT and 98 BAT syntax.

Also, I'd like it if the .jar file were just called "jdom.jar"
regardless of which version of JDOM it contains. It means I can just
unzip to upgradge, rather than unzip and rename, or unzip and
relink. Note that's just for the JAR; the tarball should definitely be
named per version.

 - A

P.S. Is there a difference between jdom-b4.zip and jdom-b4-src.tar.gz?
If not, you might want to rename it jdom-b4-src.zip.


---
Alex Chaffee                       mailto:alex at jguru.com
jGuru - Java News and FAQs         http://www.jguru.com/alex/
Creator of Gamelan                 http://www.gamelan.com/
Founder of Purple Technology       http://www.purpletech.com/
Curator of Stinky Art Collective   http://www.stinky.com/



More information about the jdom-interest mailing list