]> granicus.if.org Git - docbook-dsssl/commitdiff
Added class/otherclass semantics to othercredit
authorNorman Walsh <ndw@nwalsh.com>
Fri, 3 Mar 2006 08:03:41 +0000 (08:03 +0000)
committerNorman Walsh <ndw@nwalsh.com>
Fri, 3 Mar 2006 08:03:41 +0000 (08:03 +0000)
docbook/relaxng/docbook/src/pool.rnc

index 3b325eb9567a9c88f133585769f5cb27c4a44cb9..d1aa8a5b73d050d6bc97ab306e505ec4684447fa 100644 (file)
@@ -4722,6 +4722,10 @@ div {
 ]
 div {
 
+   ctrl:other-attribute [ name="db.othercredit.class.attribute"
+                          enum-name="db.othercredit.class-enum.attribute"
+                          other-name="db.othercredit.class-other.attributes" ]
+
    db.othercredit.class.enumeration =
       ## A copy editor
       "copyeditor"
@@ -4736,11 +4740,31 @@ div {
     | ## A translator
       "translator"
 
-   db.othercredit.class.attribute =
+   db.othercredit.class-enum.attribute =
+      [
+         db:refpurpose [ "Identifies the nature of the contributor" ]
+      ]
+      attribute class { db.othercredit.class.enumeration } ?
+
+   db.othercredit.class-other.attribute =
+      [
+         db:refpurpose [ "Identifies the nature of the non-standard contribution" ]
+      ]
+      attribute otherclass { xsd:NMTOKEN }
+
+   db.othercredit.class-other.attributes =
       [
          db:refpurpose [ "Identifies the nature of the contributor" ]
       ]
-      attribute class { db.othercredit.class.enumeration }
+      attribute class {
+         ## Identifies a non-standard contribution
+         "other"
+      }
+    & db.othercredit.class-other.attribute
+
+   db.othercredit.class.attribute =
+      (db.othercredit.class-enum.attribute
+       | db.othercredit.class-other.attributes)
 
    db.othercredit.role.attribute = attribute role { text }