OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

docbook message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [docbook] Q: How do I use entities like – in DocBook V5.0?


Steven T. Hatton wrote:

> http://kosek.cz/temp/dbng-howto.html#d5e446

Correct URL is http://docbook.org/docs/howto/

> I'm having some trouble understanding exactly why these "modern" schema 
> languages don't support character entity references. 

It is a long story. The main reason for this is that overall XML 
architecture is badly layered. Things like entites which form physical 
structure of document probably should not be defined in the same layer 
as schema language (in this case DTD) which operates on a logical 
structure of document that is produced by combining physical pieces 
(entities) together. XML inherited this approach from SGML. There are 
several xml-dev permathreads about this topic, if you are interested.

> It seems the 
> expressiveness of XML should make providing that functionality easier.  In 
> the case of MathML, it makes a lot of sens to use named characters entities.  
> To some (significant) extent working with MathML by hand,

I'm not MathML expert, but I don't suppose that MathML was designed to 
be crafted by hand. It is just too verbose for this purpose. You can 
write math very fastly in some compact syntax like TeX, but MathML 
should be produced by equation editor or by some transliteration tool 
that turns TeX (or something similar) to MathML.

> and reading the XML 
> adds to the intellectual value of the document model.  In addition, it is 
> always a good idea to be able to fall back to a human readable form, and it's 
> even helpful to have names for symbols such as 
> LeftRighDoublArrow==hArr==biconditional.  

Why? Once MathML is read through XML parser by some mathematical 
symbolic application this distinction is loss. If the human is supposed 
to read MathML directly, be sure that for 99% percent of people seeing 
--> will be much better then seeing ⇔ or &biconditional;. There is 
no need to lookup symbol in an entity table stored in your head.

> most sense to call it a biconditional.  If you were just using it to be using 
> it in a webpage, hArr, might make the most sense, and when trying to describe 
> the symbol in terms of the category of symbols it belongs to according to 
> shape and style, the longer name is useful.  People created these names for a 
> reason.  I do not believe they are obsolete.

In the link you citet above there is presented solution which allow you 
to use any entity even if you are working with RELAX NG or W3C XML Schema.

>  I hope we can find a way to 
> port that aspect of the traditional DTD/SGML technology to the newer encoding 
> languages.

The problem is not in schema languages. Schema language should not 
modify content of a document. Many of problems you are describing can be 
quite easily solved directly in an editor. It should be aim of editing 
application to allow you use symbolic names instead of raw characters if 
this is convenient for you.

I don't think that we can expect fix at the XML core level. Such fix 
would break compatibility, so fixing it on application level is way to 
go for now.

					Jirka

-- 
------------------------------------------------------------------
   Jirka Kosek     e-mail: jirka@kosek.cz     http://www.kosek.cz
------------------------------------------------------------------
   Profesionální školení a poradenství v oblasti technologií XML.
      Podívejte se na náš nově spuštěný web http://DocBook.cz
        Podrobný přehled školení http://xmlguru.cz/skoleni/
------------------------------------------------------------------
Nejbližší termíny školení: XML schémata (včetně RELAX NG) 7.-9.11.
          *** DocBook 5.-7.12. *** XSL-FO 19.-20.12. ***
------------------------------------------------------------------

S/MIME Cryptographic Signature



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]