Subject: Re: underscores in XML tags From: Chuck Darney <cdarney@xxxxxxxxxxxxxxxx> Date: Tue, 08 Dec 1998 08:47:30 -0500 |
Linda van den Brink wrote: > > Hi all, > > I ( - still a newbie) am using Jade + DSSSL to convert a large number of > well-formed XML files to HTML format. I'm having a problem with some of the > tags I use because they contain the underscore ('_') character. I get > parsing errors saying that this character is not allowed in start tags or > end tags. > > However, according to the XML specification (sec 2.3) this character is > allowed in XML tag names. Can I get Jade to accept it? I don't know how to > configure Jade for XML input, but until I started using underscores I didn't > have any problems... > This is the response I got from Tony Graham when I asked the same question. ...Chuck Darney At 12 Feb 1998 09:34 -0500, Chuck Darney wrote: > Within my SGML instance I have several Text Entities referenced. In the > header I have an Entity: > > <!ENTITY QUOTE_EXPIRE_DT "June 25, 1997"> > > Later in the instance I reference "QUOTE_EXPIRE_DT". > > The underscores are not valid characters in the entity name. Is this a > limitation with SGML or DSSSL? Is there a way around it? I'm passing > these entity references from a Powerbuilder program and a SQL database > (which doesn't care for dashes). It's controlled by your SGML Declaration, and, if you don't supply one when you're parsing, an SGML system will infer one for you. The specific portion of the SGML Declaration of interest here is the "naming rules". Jade's default inferred SGML Declaration uses the same naming rules as SGML's "Reference Concrete Syntax". To allow underscores in entity names (and other SGML names), you need to supply an SGML Declaration that includes the underscore character. Using the DocBook SGML Declaration as an example, you need to add "_" to the LCNMSTRT and UCNMSTRT parameters: NAMING LCNMSTRT "_" UCNMSTRT "_" LCNMCHAR ".-" UCNMCHAR ".-" NAMECASE GENERAL YES ENTITY NO This will allow underscores anywhere in names, including as the first character. You need to add it in two places because you are declaring the uppercase and lowercase forms, which just happen to be the same. You can reference your SGML Declaration by including it in the Jade command line before the filename for your SGML file (or before your DTD if also including the DTD filename in the command line). You can also reference an SGML Declaration to infer by using the "SGMLDECL" keyword in your catalog file. (See "charset.htm" from the nsgmls distribution for more information on the catalog format.) However, I'm not sure what would happen if you referenced an SGML Declaration that used name characters and quantities, etc., that conflicted with the requirements for processing the DSSSL stylesheet DTD. Regards, Tony Graham DSSSList info and archive: http://www.mulberrytech.com/dsssl/dssslist
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: underscores in XML tags, Sebastian Rahtz | Thread | Re: underscores in XML tags, Tony Graham |
Re: converting multiple files with , Toby Speight | Date | Re: underscores in XML tags, Norman Walsh |
Month |