emacs, xml-mode, and namespaces

Steve Harris sharris at primus.com
Mon Jul 19 18:20:49 BST 1999


I ran into the same problem with psgml in XEmacs 21.0 ("20 minute to NIkko"
of Fri Mar 26 1999). psgml manifests as RCS tag of the form:
	;;; psgml.el --- SGML-editing mode with parsing support
	;; $Id: psgml.el,v 2.20 1996/11/20 18:39:14 lenst Exp $

	;; Copyright (C) 1993, 1994, 1995, 1996 Lennart Staflin
	;; Copyright (C) 1992 Free Software Foundation, Inc.

	;; Author: Lennart Staflin <lenst at lysator.liu.se>
	;; 	James Clark <jjc at clark.com>
	;; Maintainer: Lennart Staflin <lenst at lysator.liu.se>

I'm not sure if someone is working on actual namespace support, but it seems
that the problem is in how psgml-parse.el build up its syntax tables. It
doesn't accept the colon character in a name. I modified the appropriate
function so that colons would be tolerated if the document is noted as an
XML document (since I'm not sure if such a character would have been legal
in an SGML document).

Here's a short diff from psgml-parse.el:

==== begin psgml-parse.el.diff
291c291,294
< 	   "-.0123456789" "")
---
> ;; [seh]:modified to include XML Name characters
> 	   (if sgml-xml-p "_:-.0123456789" "-.0123456789") "")
> ;; original line:
> ;;	   "-.0123456789" "")
==== end psgml-parse.el.diff

All that is does is include the colon character in the proper circumstance.
Perhaps it would be better to 'concat' the colon into the default string
rather than duplicating most of it like I did here. Note that the "change"
includes a couple of additional comments noting what I changed and what the
original syntax entry was. Obviously, these comments can be stripped.

I'll copy this message to the noted maintainer of the package, Lennart
Staflin.


Steven Harris
sharris at primus.com


> -----Original Message-----
> From:	mookie at unagi.undef.com [SMTP:mookie at unagi.undef.com]
> Sent:	Saturday, July 17, 1999 10:49 PM
> To:	'XML Dev'
> Subject:	emacs, xml-mode, and namespaces
> 
> I have this in my DTD ...
>  
>   <!ELEMENT verse (verse-headline?,verse-stanza+,verse-attribution?)>
>     <!ATTLIST verse xml:space (default|preserve) "preserve">
> 
> ... which is fine, except that the colon in the attribute really confuses
> emacs.  it tells me:
> 
>   Line 186 in "my-dtd" Name expected; at: :space (defa
> 
> has anyone dealt with this?
> 
> btw, I'm using xemacs-21.0

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)





More information about the Xml-dev mailing list