From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: James Clark Newsgroups: gmane.emacs.devel Subject: Re: emacs and libxml2 (for emacs w3) Date: Wed, 24 Sep 2003 18:14:14 +0700 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: <3F717C86.7030600@jclark.com> References: <87oexex7iv.fsf@kanga.tapsellferrier.co.uk> <87y8wfwys0.fsf@kanga.tapsellferrier.co.uk> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1064404720 18751 80.91.224.253 (24 Sep 2003 11:58:40 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 24 Sep 2003 11:58:40 +0000 (UTC) Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Wed Sep 24 13:58:38 2003 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1A28I2-0002Dd-00 for ; Wed, 24 Sep 2003 13:58:38 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1A28Ok-0004Hr-00 for ; Wed, 24 Sep 2003 14:05:34 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.22) id 1A287S-0000HY-Hb for emacs-devel@quimby.gnus.org; Wed, 24 Sep 2003 07:47:42 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.22) id 1A27zM-00075K-Lh for emacs-devel@gnu.org; Wed, 24 Sep 2003 07:39:20 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.22) id 1A27gu-0003Lg-V2 for emacs-devel@gnu.org; Wed, 24 Sep 2003 07:20:17 -0400 Original-Received: from [203.130.150.186] (helo=server.bkk.thaiopensource.com) by monty-python.gnu.org with esmtp (Exim 4.22) id 1A27do-000359-8B for emacs-devel@gnu.org; Wed, 24 Sep 2003 07:17:04 -0400 Original-Received: from jclark.com ([203.130.150.187]) by server.bkk.thaiopensource.com (8.11.6/8.11.6) with ESMTP id h8OBGmY15767 for ; Wed, 24 Sep 2003 18:16:51 +0700 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20030225 X-Accept-Language: en-us, en Original-To: emacs-devel@gnu.org In-Reply-To: X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.2 Precedence: list List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:16595 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:16595 Richard Stallman wrote: > We could make Emacs link with it if that is technically a good idea. It does not seem a technically good idea to me. I think it's much better to have a XML library designed specifically to work with Emacs from the start and I see no compelling reason for it to be in C. Using a general-purpose XML parser like libxml2 would be very limiting. For example, an Emacs-specific parser can be designed to take advantage of the after-change-functions hook and do incremental parsing and validation. A typical general-purpose parser like libxml2 is not designed to do this sort of thing. For the last few months, I've been working on new XML support for Emacs. There's a user-oriented overview of the initial release at: http://www.xmlhack.com/read.php?item=2061 It's built on top of a low-level XML parsing layer that's designed to support a broad range of different kinds of XML processing that are useful in Emacs, such as - font lock - XML syntax aware editing (functionality like parse-partial-sexp for XML) - incremental validation to support context/schema-sensitive completion (like PSGML) - doing what xml.el does (i.e. parsing XML into a list form that is convenient for further processing in Lisp) It's still early days, but I think this is technically a better direction that linking to a general-purpose XML library like libxml2. James