Change script name following numbering policy
[platform/upstream/fontconfig.git] / fonts.dtd
index cd016d3..479f2c0 100644 (file)
--- a/fonts.dtd
+++ b/fonts.dtd
@@ -1,6 +1,7 @@
 <!-- This is the Document Type Definition for font configuration files -->
 <!ELEMENT fontconfig (dir | 
                      cache | 
+                     cachedir |
                      include | 
                      config |
                      selectfont |
@@ -11,7 +12,9 @@
     Add a directory that provides fonts
 -->
 <!ELEMENT dir (#PCDATA)>
-<!ATTLIST dir xml:space (default|preserve) 'preserve'>
+<!ATTLIST dir
+         prefix    CDATA       "default"
+         xml:space (default|preserve) 'preserve'>
 
 <!--
     Define the per-user file that holds cache font information.
@@ -32,7 +35,9 @@
     home directory path.
 -->
 <!ELEMENT cachedir (#PCDATA)>
-<!ATTLIST cachedir xml:space (default|preserve) 'preserve'>
+<!ATTLIST cachedir
+         prefix    CDATA      "default"
+         xml:space (default|preserve) 'preserve'>
 
 <!--
     Reference another configuration file; note that this
@@ -47,6 +52,8 @@
 <!ELEMENT include (#PCDATA)>
 <!ATTLIST include
          ignore_missing    (no|yes)            "no"
+         prefix            CDATA               "default"
+         deprecated        (yes|no)            "no"
          xml:space         (default|preserve)  "preserve">
 
 <!--
@@ -62,7 +69,7 @@
     the set of valid Unicode chars.  This idea
     was borrowed from Mozilla
  -->
-<!ELEMENT blank (int)*>
+<!ELEMENT blank (int|range)*>
 
 <!--
     Aliases are just a special case for multiple match elements
 
 <!ELEMENT pattern (patelt)*>
 
-<!ELEMENT patelt (constant)*>
+<!ENTITY % constant 'int|double|string|matrix|bool|charset|langset|const'>
+
+<!ELEMENT patelt (%constant;)*>
 <!ATTLIST patelt
          name CDATA    #REQUIRED>
 
-<!ELEMENT constant (int|double|string|matrix|bool|charset|const)>
-
-<!ELEMENT alias (family*, prefer?, accept?, default?)>
+<!ELEMENT alias (test?, family*, prefer?, accept?, default?)>
+<!ATTLIST alias
+         binding (weak|strong|same) "weak">
 <!ELEMENT prefer (family)*>
 <!ELEMENT accept (family)*>
 <!ELEMENT default (family)*>
 <!ELEMENT family (#PCDATA)>
 <!ATTLIST family xml:space (default|preserve) 'preserve'>
 
-<!ENTITY % expr 'int|double|string|matrix|bool|charset
+<!ENTITY % expr 'int|double|string|matrix|bool|charset|langset
                |name|const
                |or|and|eq|not_eq|less|less_eq|more|more_eq|contains|not_contains
                |plus|minus|times|divide|not|if|floor|ceil|round|trunc'>
     if 'target' is 'font', execute the match on the result of a font
     selection.
 -->
-<!ELEMENT match (test*, edit*)>
+<!ELEMENT match (test|edit)+>
 <!ATTLIST match
-         target (pattern|font) "pattern">
+         target (pattern|font|scan) "pattern">
 
 <!--
     Match a field in a pattern
     For match elements with target=font, if test 'target' is 'pattern',
     then the test is applied to the pattern used in matching rather than
     to the resulting font.
+
+    Match elements with target=scan are applied as fonts are scanned.
+    They edit the pattern generated from the scanned font and affect
+    what the fontconfig database contains.
 -->
 <!ELEMENT test (%expr;)*>
 <!ATTLIST test 
          qual (any|all|first|not_first)    "any"
          name CDATA        #REQUIRED
          target (pattern|font|default)         "default"
+         ignore-blanks (true|false)    "false"
          compare (eq|not_eq|less|less_eq|more|more_eq|contains|not_contains)   "eq">
 
 <!--
 <!ELEMENT edit (%expr;)*>
 <!ATTLIST edit
          name CDATA        #REQUIRED
-         mode (assign|assign_replace|prepend|append|prepend_first|append_last) "assign"
+         mode (assign|assign_replace|prepend|append|prepend_first|append_last|delete|delete_all) "assign"
          binding (weak|strong|same) "weak">
 
 <!--
 <!ATTLIST double xml:space (default|preserve) 'preserve'>
 <!ELEMENT string (#PCDATA)>
 <!ATTLIST string xml:space (default|preserve) 'preserve'>
-<!ELEMENT matrix (double,double,double,double)>
+<!ELEMENT matrix ((%expr;), (%expr;), (%expr;), (%expr;))>
 <!ELEMENT bool (#PCDATA)>
-<!ELEMENT charset (#PCDATA)>
-<!ATTLIST charset xml:space (default|preserve) 'preserve'>
+<!ELEMENT charset (int|range)*>
+<!ELEMENT range (int,int)>
+<!ELEMENT langset (string)*>
 <!ELEMENT name (#PCDATA)>
-<!ATTLIST name xml:space (default|preserve) 'preserve'>
+<!ATTLIST name xml:space (default|preserve) 'preserve'
+         target (default|font|pattern) 'default'>
 <!ELEMENT const (#PCDATA)>
 <!ATTLIST const xml:space (default|preserve) 'preserve'>
 <!ELEMENT or (%expr;)*>