]> git.wh0rd.org - fontconfig.git/blobdiff - fonts.dtd
Fix unary operator parsing. Add floor, ceil, trunc and round unary
[fontconfig.git] / fonts.dtd
index 1e0e34c7fb2d07ef71bf42d9096d3713c025e3d1..b89ffe31a26ffb2c7cfb7a733891981e826c9ca1 100644 (file)
--- a/fonts.dtd
+++ b/fonts.dtd
@@ -39,7 +39,7 @@
 <!--
     Global library configuration data
  -->
-<!ELEMENT config (blanks|rescan)*>
+<!ELEMENT config (blank|rescan)*>
 
 <!--
     Specify the set of Unicode encoding values which
@@ -49,7 +49,7 @@
     the set of valid Unicode chars.  This idea
     was borrowed from Mozilla
  -->
-<!ELEMENT blanks (int)*>
+<!ELEMENT blank (int)*>
 
 <!--
     Aliases are just a special case for multiple match elements
@@ -90,8 +90,8 @@
 
 <!ENTITY % expr 'int|double|string|matrix|bool|charset
                |name|const
-               |or|and|eq|not_eq|less|less_eq|more|more_eq
-               |plus|minus|times|divide|not|if'>
+               |or|and|eq|not_eq|less|less_eq|more|more_eq|contains|not_contains
+               |plus|minus|times|divide|not|if|floor|ceil|round|trunc'>
 
 <!--
     Match and edit patterns.
 
     if 'qual' is 'any', then the match succeeds if any value in the field matches.
     if 'qual' is 'all', then the match succeeds only if all values match.
+    if 'qual' is 'first', then the match succeeds only if the first value matches.
+    if 'qual' is 'not_first', then the match succeeds only if any value other than
+       the first matches.
+    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.
 -->
 <!ELEMENT test (%expr;)*>
 <!ATTLIST test 
-         qual (any|all)    "any"
+         qual (any|all|first|not_first)    "any"
          name CDATA        #REQUIRED
-         compare (eq|not_eq|less|less_eq|more|more_eq) "eq">
+         target (pattern|font|default)         "default"
+         compare (eq|not_eq|less|less_eq|more|more_eq|contains|not_contains)   "eq">
 
 <!--
     Edit a field in a pattern
 <!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) "assign"
+         binding (weak|strong|same) "weak">
 
 <!--
     Elements of expressions follow
 <!ELEMENT less_eq ((%expr;), (%expr;))>
 <!ELEMENT more ((%expr;), (%expr;))>
 <!ELEMENT more_eq ((%expr;), (%expr;))>
+<!ELEMENT contains ((%expr;), (%expr;))>
+<!ELEMENT not_contains ((%expr;), (%expr;))>
 <!ELEMENT plus (%expr;)*>
 <!ELEMENT minus (%expr;)*>
 <!ELEMENT times (%expr;)*>
 <!ELEMENT divide (%expr;)*>
 <!ELEMENT not (%expr;)>
 <!ELEMENT if ((%expr;), (%expr;), (%expr;))>
+<!ELEMENT floor (%expr;)>
+<!ELEMENT ceil (%expr;)>
+<!ELEMENT round (%expr;)>
+<!ELEMENT trunc (%expr;)>