Bug 1281

Summary: Use a public identifier for fonts.conf
Product: fontconfig Reporter: Owen Taylor <otaylor>
Component: libraryAssignee: fontconfig-bugs
Status: RESOLVED MOVED QA Contact: Behdad Esfahbod <freedesktop>
Severity: normal    
Priority: high CC: akira, fonts-bugs
Version: 2.2   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Owen Taylor 2004-09-02 14:02:17 UTC
We have an open bug for Red Hat that the fonts.conf DTD should
be registered in the system catlog so that, e.g., psgml mode can
find it:

https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=91968

Sounds reasonable to me. But fontconfig currently uses:

<!DOCTYPE fontconfig SYSTEM "fonts.dtd">

Using something along the lines of:

<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Would make it possible. (You don't really need both the public identifier
and the URL. I think you can omit either one, but I don't know the
syntax for omitting the public identifier offhand.)
Comment 1 Keith Packard 2004-09-02 14:42:36 UTC
You're way beyond my understanding of DTDs.  Is there some formal body to
register public DTDs with?
Comment 2 Keith Packard 2005-01-28 15:56:31 UTC
I still have no idea how to make this work; can you present a more complete
recipe for this change?
Comment 3 Patrick Lam 2006-04-12 14:37:29 UTC
This seems to be a useful link:

http://www.tldp.org/LDP/LDP-Author-Guide/html/tools-validate.html
Comment 4 Nicolas Mailhot 2006-10-29 11:54:45 UTC
As far as I know 80% of the DTDs found on the web use whatever ID their author
cooked by itself. xsd is a bit saner, you can use URIs and DNS warrants they're
unique
Comment 5 Behdad Esfahbod 2008-08-12 16:20:55 UTC
I read the XML 1.1 spec, both the identifier and the URL are required.

Regarding public-id's, the second part of this has a formal definition of the syntax: http://xml.coverpages.org/tauber-fpi.html

There are also examples in section 1.2 of this: http://www.faqs.org/rfcs/rfc3151.html

So I suggest one of these:

-//FDO//DTD Fontconfig Font Configuration Language @DTD_VER@//EN//

+//IDN freedesktop.org//DTD Fontconfig Font Configuration Language @DTD_VER@//EN//

+//IDN fontconfig.org//DTD Font Configuration Language @DTD_VER@//EN//

Where @DTD_VER@@ is incremented everytime the DTD changes.  Copies of all versions should be available online.
Comment 6 Nicolas Mailhot 2008-12-15 11:25:39 UTC
I don't really know DTD, it is old, but I feel it does not require a resolvable URL anywhere

Fow xsds this is even more clear, take a look at "Should the targetNamespace be a URL or a URN?" on http://www.xfront.com/BestPracticesHomepage.html

When in doubt ask xml-dev on
http://www.xml.org/xml-dev

The people here are nice and knowledgeable (they wrote the specs)
Comment 7 Nicolas Mailhot 2009-11-18 08:59:52 UTC
Looking at the catalog spec I'm not so sure it needs a different identifier. This question is probably best to ask on the xml list where people that write reference books can answer

 http://www.xml.org/xml-dev/
Comment 8 GitLab Migration User 2018-08-20 21:43:16 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/4.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.