[Fontconfig] DTD

Peter Flynn peter at silmaril.ie
Tue Apr 3 21:45:21 UTC 2018

On 03/04/18 22:27, Lawrence D'Oliveiro wrote:
> On Tue, 3 Apr 2018 22:05:31 +0100, Peter Flynn wrote:
>> On 03/04/18 10:13, Lawrence D'Oliveiro wrote:
>>> Fontconfig’s config parser does everything we need it to do: accept
>>> exactly that set of valid config files and reject everything else.
>> So the problem is *what* exactly?
> “Problem” meaning “lack of a DTD”? I have no idea. Somebody said that
> the lack of one being provided for Fontconfig in common Linux distros
> is a bug, 

That was probably me. Any application that ships or uses XML files for
which there is a custom DTD, ought to ship the DTD so people can use it
to see what the contents of the XML files means.

But as it doesn't have that information in it, its only use is to govern
the presence or absence of the element types when creating a new file.
If it is the case that so few such files are created, and by so few
people — all of whom know this stuff backwards — having a DTD is
possibly rather pointless if they don't use an XML editor to do the job.

As you/someone pointed out, the DTD *is* apparently shipped with some
distro packages, just not the Ubuntu one my Mint is based on :-)

> I took issue with that given the uselessness of the DTD, and
> then you in turn took issue with that. So you are saying it was all a
> misunderstanding on your part?

No, but someone obviously thought it was a good idea to use XML for the
config files. Having made that choice, and decided it needed a custom
DTD, I was surprised that you believed it to be useless. Until I saw it :-)

If Fontconfig is just using XML to convey the semantics of the tags, and
not using the content validation provided by W3C Schema and its
libraries, then the current DTD is indeed fairly useless as a way to
constrain the data content of the elements, because DTDs were not
designed to do that. Which is why I said that someone had misunderstood
what DTDs were for...

Moot anyway: I've seen it and tested it. Thank you for your patience.


More information about the Fontconfig mailing list