diff options
author | Shaun McCance <shaunm@src.gnome.org> | 2008-02-22 23:10:15 +0000 |
---|---|---|
committer | Shaun McCance <shaunm@src.gnome.org> | 2008-02-22 23:10:15 +0000 |
commit | c2a3d6fed752a721a1d3deff6414449ed8930398 (patch) | |
tree | 605e3c52314dc3a5d95f8ba449ed0fa59b629624 | |
parent | e71438cd3c101fa995d7a4e007aee245f30f2a98 (diff) | |
download | gnome-doc-utils-c2a3d6fed752a721a1d3deff6414449ed8930398.tar.gz |
Finally working on the Mallard spec again
svn path=/trunk/; revision=1083
60 files changed, 1363 insertions, 299 deletions
diff --git a/sandbox/mallard/rng/Makefile b/sandbox/mallard/rng/Makefile index 06b55d6..ae68c57 100644 --- a/sandbox/mallard/rng/Makefile +++ b/sandbox/mallard/rng/Makefile @@ -1,10 +1,23 @@ all: mallard.rnc mallard.rng +specs1=../spec/spec_pages.xml \ + ../spec/mal_page.xml \ + ../spec/mal_block.xml $(wildcard ../spec/mal_block_*.xml) \ + ../spec/mal_inline.xml $(wildcard ../spec/mal_inline_*.xml) +specs=$(specs1) $(filter-out $(specs1), $(wildcard ../spec/*.xml)) + mallard.rnc: $(wildcard ../spec/*.xml) - for file in ../spec/*.xml; do \ + for file in $(specs); do \ xsltproc ../xslt/mal2rnc.xsl $$file; \ done > mallard.rnc mallard.rng: mallard.rnc rnc2rng.awk awk -f rnc2rng.awk mallard.rnc > $@.tmp || ( rm -f $@.tmp && exit 1 ) - xmllint --format $@.tmp > $@ || ( rm -f $@.tmp && exit 1 ) + xmllint --format $@.tmp | \ + sed -e 's/^ //' \ + -e 's/ xmlns/\n xmlns/g' \ + -e 's/" ns=/"\n ns=/' \ + -e 's/^<s/\n<s/' \ + -e 's/^<d/\n<d/' \ + > $@ || ( rm -f $@.tmp && exit 1 ) + diff --git a/sandbox/mallard/rng/rnc2rng.awk b/sandbox/mallard/rng/rnc2rng.awk index 40f8e6e..41546cd 100644 --- a/sandbox/mallard/rng/rnc2rng.awk +++ b/sandbox/mallard/rng/rnc2rng.awk @@ -1,4 +1,5 @@ #!/bin/awk +# -*- indent-tabs-mode: nil -*- # rnc2rng.awk - Convert RELAX NG Compact Syntax to XML Syntax # Copyright (C) 2007 Shaun McCance <shaunm@gnome.org> # @@ -31,13 +32,13 @@ # you atone for your actions. A good atonement would be contributing to # free software. -function runline (line) { +function parse_pattern (line) { sub(/^ */, "", line) c = substr(line, 1, 1); if (c == "(" || c == "{") { stack[++stack_i] = substr(line, 1, 1); paren[++paren_i] = stack_i; - runline(substr(line, 2)); + parse_pattern(substr(line, 2)); } else if (c == ")" || c == "}") { open = stack[paren[paren_i]]; @@ -75,28 +76,42 @@ function runline (line) { if (oc == "{}") { if (substr(stack[stack_i - 1], 1, 8) == "<element") { - tmp = stack[stack_i - 1] "\n"; - tmp = tmp stack[stack_i] "\n"; - tmp = tmp "</element>"; - stack[--stack_i] = tmp; + tmp = stack[stack_i - 1] "\n"; + if (stack[stack_i] != "") { + tmp = tmp stack[stack_i] "\n"; + } else { + tmp = tmp "<empty/>\n"; + } + tmp = tmp "</element>"; + stack[--stack_i] = tmp; } else if (substr(stack[stack_i - 1], 1, 10) == "<attribute") { - tmp = stack[stack_i - 1] "\n"; - tmp = tmp stack[stack_i] "\n"; - tmp = tmp "</attribute>"; - stack[--stack_i] = tmp; + tmp = stack[stack_i - 1] "\n"; + if (stack[stack_i] != "") { + tmp = tmp stack[stack_i] "\n"; + } else { + tmp = tmp "<empty/>\n"; + } + tmp = tmp "</attribute>"; + stack[--stack_i] = tmp; } else if (stack[stack_i - 1] == "<list>") { - tmp = stack[stack_i - 1] "\n"; - tmp = tmp stack[stack_i] "\n"; - tmp = tmp "</list>"; - stack[--stack_i] = tmp; + tmp = stack[stack_i - 1] "\n"; + tmp = tmp stack[stack_i] "\n"; + tmp = tmp "</list>"; + stack[--stack_i] = tmp; + } + else if (stack[stack_i - 1] == "<mixed>") { + tmp = stack[stack_i - 1] "\n"; + tmp = tmp stack[stack_i] "\n"; + tmp = tmp "</mixed>"; + stack[--stack_i] = tmp; } } if (paren_i == 0) { - mode = "top"; + mode = "grammar"; } - runline(substr(line, 2)); + parse_pattern(substr(line, 2)); } else if (c == "|" || c == "&" || c == ",") { if (length(stack[paren[paren_i]]) == 1) { @@ -107,59 +122,72 @@ function runline (line) { error = 1; exit 1 } - runline(substr(line, 2)); + parse_pattern(substr(line, 2)); } else if (c == "?") { stack[stack_i] = "<optional>" stack[stack_i] "</optional>" - runline(substr(line, 2)); + parse_pattern(substr(line, 2)); } else if (c == "*") { stack[stack_i] = "<zeroOrMore>" stack[stack_i] "</zeroOrMore>" - runline(substr(line, 2)); + parse_pattern(substr(line, 2)); } else if (c == "+") { stack[stack_i] = "<oneOrMore>" stack[stack_i] "</oneOrMore>" - runline(substr(line, 2)); + parse_pattern(substr(line, 2)); } else if (c == "\"") { txt = substr(line, 2); sub(/".*/, "", txt) stack[++stack_i] = "<value>" txt "</value>"; - runline(substr(line, length(txt) + 3)); + parse_pattern(substr(line, length(txt) + 3)); } else if (substr(line, 1, 8) == "element ") { aft = substr(line, 8); sub(/^ */, "", aft); name = aft; - sub(/[^A-Za-z_]+.*/, "", name); - aft = substr(aft, length(name) + 1); - stack[++stack_i] = sprintf("<element name=\"%s\">", name); - runline(aft); + stack[++stack_i] = "<element" + mode = "name_class"; + name_class_i = stack_i; + parse_name_class(name); } else if (substr(line, 1, 10) == "attribute ") { aft = substr(line, 10); sub(/^ */, "", aft); name = aft; - sub(/[^A-Za-z_]+.*/, "", name); - aft = substr(aft, length(name) + 1); - stack[++stack_i] = sprintf("<attribute name=\"%s\">", name); - runline(aft); + stack[++stack_i] = "<attribute" + mode = "name_class"; + name_class_i = stack_i; + parse_name_class(name); } else if (substr(line, 1, 5) == "list ") { aft = substr(line, 5); sub(/^ */, "", aft); stack[++stack_i] = "<list>"; - runline(aft); + if (aft != "") { parse_pattern(aft); } + } + else if (substr(line, 1, 6) == "mixed ") { + aft = substr(line, 6); + sub(/^ */, "", aft); + stack[++stack_i] = "<mixed>"; + if (aft != "") { parse_pattern(aft); } } - else if (match(line, /^text[^A-Za-z]/)) { + else if (match(line, /^text[^A-Za-z]/) || match(line, /^text$/)) { stack[++stack_i] = "<text/>"; - runline(substr(line, 5)); + aft = substr(line, 5); + sub(/^ */, "", aft); + if (aft != "") { parse_pattern(aft); } } else if (substr(line, 1, 18) == "default namespace ") { print "default namespace appeared out of context on line " FNR | "cat 1>&2"; error = 1; exit 1 } + else if (substr(line, 1, 10) == "namespace ") { + print "namespace appeared out of context on line " FNR | "cat 1>&2"; + error = 1; + exit 1 + } else if (substr(line, 1, 6) == "start ") { print "start appeared out of context on line " FNR | "cat 1>&2"; error = 1; @@ -170,72 +198,207 @@ function runline (line) { sub(/^xsd:/, "", name); sub(/[^A-Za-z_]+.*/, "", name); aft = substr(line, length(name) + 5); - stack[++stack_i] = sprintf("<data type=\"%s\" datatypeLibrary=\"http://www.w3.org/2001/XMLSchema-datatypes\"/>", - name); - runline(aft); + stack[++stack_i] = sprintf("<data type='%s' datatypeLibrary='http://www.w3.org/2001/XMLSchema-datatypes'/>", + name); + parse_pattern(aft); } else if (match(line, /^[A-Za-z_]/)) { name = substr(line, 1); sub(/[^A-Za-z_]+.*/, "", name); aft = substr(line, length(name) + 1); - stack[++stack_i] = sprintf("<ref name=\"%s\"/>", name); - runline(aft); + stack[++stack_i] = sprintf("<ref name='%s'/>", name); + parse_pattern(aft); + } +} + +function parse_name_class (line) { + sub(/^ */, "", line) + c = substr(line, 1, 1); + if (c == "{") { + if (stack_i != name_class_i) { + tmp = ""; + for (i = stack_i; i >= name_class_i; i--) { + if (stack[i] == "<except>") { + tmp = "<except>" tmp "</except>"; + } + else if (stack[i] == "<anyName>") { + tmp = "<anyName>" tmp "</anyName>"; + } + else { + tmp = stack[i] tmp + } + } + stack[name_class_i] = tmp; + stack_i = name_class_i; + } + mode = "pattern"; + parse_pattern(line); + } + else if (c == "*") { + if (stack[stack_i] == "<element" || stack[stack_i] == "<attribute") { + stack[stack_i] = stack[stack_i] ">"; + } + stack[++stack_i] = "<anyName>"; + parse_name_class(substr(line, 2)); + } + else if (c == "-") { + stack[++stack_i] = "<except>" + parse_name_class(substr(line, 2)); + } + else if (c == "|") { + if (length(stack[paren[paren_i]]) == 1) { + stack[paren[paren_i]] = stack[paren[paren_i]] c; + } + else if (substr(stack[paren[paren_i]], 2) != "|") { + print "Mismatched infix operators on line " FNR | "cat 1>&2"; + error = 1; + exit 1 + } + parse_name_class(substr(line, 2)); + } + else if (c == "(") { + stack[++stack_i] = "("; + paren[++paren_i] = stack_i; + parse_name_class(substr(line, 2)); + } + else if (c == ")") { + open = stack[paren[paren_i]]; + if (substr(open, 1, 1) != "(") { + print "Mismatched parentheses on line " FNR | "cat 1>&2"; + error = 1; + exit 1 + } + if (length(open) == 1 || substr(open, 2, 1) != "|") { + print "Unknown name class pattern on line " FNR | "cat 1>&2"; + error = 1; + exit 1 + } + tmp = "" + for (i = paren[paren_i] + 1; i <= stack_i; i++) { + tmp = tmp stack[i] "\n"; + } + stack_i = paren[paren_i]; + stack[stack_i] = tmp; + paren_i--; + parse_name_class(substr(line, 2)); + } + else if (match(line, /^[A-Za-z_]/)) { + name = substr(line, 1); + sub(/[^A-Za-z_]+.*/, "", name); + aft = substr(line, length(name) + 1); + if (substr(aft, 1, 2) == ":*") { + for (i = 1; i <= namespaces_i; i++) { + if (nsnames[i] == name) { + stack[++stack_i] = sprintf("<nsName ns='%s'/>", namespaces[i]) + break; + } + } + aft = substr(aft, 3); + } + else if (stack[stack_i] == "<element" || stack[stack_i] == "<attribute") { + stack[stack_i] = stack[stack_i] sprintf(" name='%s'>", name); + } + else { + stack[++stack_i] = sprintf("<name>%s</name>", name); + } + parse_name_class(aft); } } function printstack () { + pos = 1; + while (pos <= stack_i) { + printstackone(); + } +} +function printstackone () { if (substr(stack[pos], 1, 6) == "<start") { - print stack[pos++]; - printstack(); + print stack[pos]; + pos++; + printstackone(); print "</start>" } else if (substr(stack[pos], 1, 7) == "<define") { - print stack[pos++]; - printstack(); + print stack[pos]; + pos++; + printstackone(); print "</define>" } else { - print stack[pos++]; + print stack[pos]; + pos++; } } BEGIN { - mode = "top"; + mode = "grammar"; stack_i = 0; paren_i = 0; + namespaces_i = 0; } END { if (!error) { - printf "<grammar xmlns='http://relaxng.org/ns/structure/1.0' ns='%s'>\n", namespace; - tab = 1; + print "<grammar xmlns='http://relaxng.org/ns/structure/1.0'"; pos = 1; - while (pos <= stack_i) { - printstack() + while (pos <= namespaces_i) { + if (namespaces[pos] != "") { + printf " xmlns:%s='%s'", nsnames[pos], namespaces[pos]; + } + pos++; } + printf " ns='%s'>\n", default_namespace; + printstack() print "</grammar>" } } -mode != "top" { - runline($0); -} -mode == "top" && /.*=/ { +mode == "pattern" && paren_i == 0 && /.*=/ { mode = "grammar"; } +mode == "grammar" && /.*=/ { name = substr($0, 1, index($0, "=") - 1); sub(/ /, "", name); - if (substr($0, 1, 17) == "default namespace") { + if (substr($0, 1, 18) == "default namespace ") { namespace = substr($0, index($0, "=") + 1); + nsname = substr($0, 19, index($0, "=") - 19); + sub(/^ */, "", nsname); + sub(/ *$/, "", nsname); sub(/^ *"/, "", namespace); sub(/" *$/, "", namespace); + if (nsname != "") { + nsnames[++namespaces_i] = nsname; + namespaces[namespaces_i] = namespace; + } + default_namespace = namespace + } + else if (substr($0, 1, 10) == "namespace ") { + namespace = substr($0, index($0, "=") + 1); + nsname = substr($0, 11, index($0, "=") - 11); + sub(/^ */, "", nsname); + sub(/ *$/, "", nsname); + sub(/^ *"/, "", namespace); + sub(/" *$/, "", namespace); + if (nsname != "") { + nsnames[++namespaces_i] = nsname; + namespaces[namespaces_i] = namespace; + } } else if (name == "start") { stack[++stack_i] = "<start>" - mode = "blank"; - runline(substr($0, index($0, "=") + 1)) + mode = "pattern"; + parse_pattern(substr($0, index($0, "=") + 1)) } else { - stack[++stack_i] = sprintf("<define name=\"%s\">", name); - mode = "blank"; - runline(substr($0, index($0, "=") + 1)) + stack[++stack_i] = sprintf("<define name='%s'>", name); + mode = "pattern"; + parse_pattern(substr($0, index($0, "=") + 1)) } + next; +} +mode == "pattern" { + parse_pattern($0); + next; +} +mode == "name_class" { + parse_name_class($0); + next; } diff --git a/sandbox/mallard/spec/10minutes.xml b/sandbox/mallard/spec/10minutes.xml index abc87d2..37a9ffa 100644 --- a/sandbox/mallard/spec/10minutes.xml +++ b/sandbox/mallard/spec/10minutes.xml @@ -1,14 +1,27 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" id="10minutes"> + <info> - <version number="0.1" date="2007-02-21" status="stub"/> <desc>Create a multiple-page document in only ten minutes</desc> + + <link type="guide" xref="spec" weight="1"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2007-02-21" status="stub"/> </info> <title>Ten Minute Tour</title> <comment> - <cite name="Shaun McCance" date="2007-01-30"/> + <cite date="2007-01-30"><name>Shaun McCance</name></cite> <p>Add content</p> </comment> diff --git a/sandbox/mallard/spec/Makefile b/sandbox/mallard/spec/Makefile index 72908b4..26747d0 100644 --- a/sandbox/mallard/spec/Makefile +++ b/sandbox/mallard/spec/Makefile @@ -4,7 +4,7 @@ pages=$(filter-out legal.xml, $(wildcard *.xml)) check-validate: @(cd ../rng/ && $(MAKE) mallard.rnc) - xmllint --noout --relaxng ../rng/mallard.rng $(pages) + xmllint --xinclude --noout --relaxng ../rng/mallard.rng $(pages) check-links: @files=$$(for page in $(pages); do \ diff --git a/sandbox/mallard/spec/explore.xml b/sandbox/mallard/spec/explore.xml index 67313ef..91a84f6 100644 --- a/sandbox/mallard/spec/explore.xml +++ b/sandbox/mallard/spec/explore.xml @@ -1,14 +1,26 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" id="explore"> <info> - <version number="0.1" date="2007-02-21" status="stub"/> <desc>Explore more of what Mallard has to offer</desc> + + <link type="guide" xref="spec" weight="1"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2007-02-21" status="stub"/> </info> <title>Explore Mallard</title> <comment> - <cite name="Shaun McCance" date="2007-02-22"/> + <cite date="2007-02-22"><name>Shaun McCance</name></cite> <p>Add content</p> </comment> diff --git a/sandbox/mallard/spec/legal.xml b/sandbox/mallard/spec/legal.xml index 0d974a8..1760c72 100644 --- a/sandbox/mallard/spec/legal.xml +++ b/sandbox/mallard/spec/legal.xml @@ -1,4 +1,5 @@ -<license href="http://www.gnu.org/licenses/fdl.txt"> +<license xmlns="http://www.gnome.org/~shaunm/mallard" + href="http://www.gnu.org/licenses/fdl.txt"> <p>Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/sandbox/mallard/spec/mal_attr_link.xml b/sandbox/mallard/spec/mal_attr_link.xml new file mode 100644 index 0000000..5398221 --- /dev/null +++ b/sandbox/mallard/spec/mal_attr_link.xml @@ -0,0 +1,36 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_attr_link"> + +<info> + <link type="guide" xref="mal_inline" weight="1"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2008-02-19" status="incomplete"/> +</info> + +<title>Ubiquitous Linking</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_attr_link = + ( attribute xref { text } ? + | { attribute dref { text } ?, attribute href { text } ? } + ) +</code></synopsis> + +<comment> + <cite date="2006-11-16"><name>Shaun McCance</name></cite> + <p>The content model is perhaps not as clearly expressed as it could be. + The <code>ref</code> attribute may need to be renamed. The idea is that + we can have a reference to a document within a help system, with a defined + fallback to something on the web with <code>href</code>.</p> +</comment> + +</page> diff --git a/sandbox/mallard/spec/mal_block.xml b/sandbox/mallard/spec/mal_block.xml index 5ca6c8e..569a11a 100644 --- a/sandbox/mallard/spec/mal_block.xml +++ b/sandbox/mallard/spec/mal_block.xml @@ -1,24 +1,39 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_block" type="guide" status="incomplete"> + type="guide" + id="mal_block"> + <info> <link type="guide" xref="spec"/> - <version number="0.1" date="2007-02-21"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2007-02-21" status="incomplete"/> </info> <title>Block Elements</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_block = ( - <link xref="mal_block_comment">mal_block_comment</link> | - <link xref="mal_block_figure">mal_block_figure</link> | - <link xref="mal_block_list">mal_block_list</link> | - <link xref="mal_block_note">mal_block_note</link> | - <link xref="mal_block_synopsis">mal_block_synopsis</link> | - <link xref="#simple">mal_block_simple</link> ) +mal_block = + ( <link xref="mal_block_comment">mal_block_comment</link> + | <link xref="mal_block_figure">mal_block_figure</link> + | <link xref="mal_block_media">mal_block_media</link> + | <link xref="mal_block_note">mal_block_note</link> + | <link xref="mal_block_synopsis">mal_block_synopsis</link> + | <link xref="mal_list">mal_list</link> + | <link xref="mal_table">mal_table</link> + | <link xref="#simple">mal_block__simple</link> + ) </code></synopsis> <comment> - <cite name="Shaun McCance" date="2006-11-16"/> + <cite date="2006-11-16"><name>Shaun McCance</name></cite> <p>Add some intro text</p> </comment> @@ -27,10 +42,12 @@ mal_block = ( <section id="simple"> <title>Simple Block Elements</title> -<synopsis><code>mal_block_simple = ( - <link xref="mal_block_code">mal_block_code</link> | - <link xref="mal_block_p">mal_block_p</link> | - <link xref="mal_block_screen">mal_block_screen</link> ) +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_block__simple = + ( <link xref="mal_block_code">mal_block_code</link> + | <link xref="mal_block_p">mal_block_p</link> + | <link xref="mal_block_screen">mal_block_screen</link> + ) </code></synopsis> </section> diff --git a/sandbox/mallard/spec/mal_block_code.xml b/sandbox/mallard/spec/mal_block_code.xml index 13a0ff2..3b80a55 100644 --- a/sandbox/mallard/spec/mal_block_code.xml +++ b/sandbox/mallard/spec/mal_block_code.xml @@ -1,30 +1,40 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_block_code" - status="stub"> + id="mal_block_code"> + <info> <link type="guide" xref="mal_block#simple"/> - <version number="0.1" date="2007-02-21"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2007-02-21" status="stub"/> </info> <title>Code Blocks</title> <synopsis><code mime="application/relax-ng-compact-syntax"> mal_block_code = element code { - attribute mime { text }, - <link xref="mal_inline">mal_inline</link>+ + attribute mime { text } ?, + <link xref="mal_inline">mal_inline</link> }</code></synopsis> <comment> - <cite name="Shaun McCance" date="2006-12-08"/> + <cite date="2006-12-08"><name>Shaun McCance</name></cite> <p>Add intro material.</p> </comment> <!-- BEGIN examples --> -<section id="examples" status="tentative"> +<section id="examples"> <title>Examples</title> <comment> - <cite name="Shaun McCance" date="2007-01-25"/> + <cite date="2007-01-25"><name>Shaun McCance</name></cite> <p>Add examples.</p> </comment> </section> @@ -32,10 +42,10 @@ mal_block_code = element code { <!-- BEGIN processing --> -<section id="processing" status="tentative"> +<section id="processing"> <title>Processing Expectations</title> <comment> - <cite name="Shaun McCance" date="2007-01-25"/> + <cite date="2007-01-25"><name>Shaun McCance</name></cite> <p>Add processing expectations. For block, strip leading/trailing newline. Do not strip leading indentation.</p> </comment> @@ -44,10 +54,10 @@ mal_block_code = element code { <!-- BEGIN docbook --> -<section id="docbook" status="tentative"> +<section id="docbook"> <title>Comparison to DocBook</title> <comment> - <cite name="Shaun McCance" date="2007-01-25"/> + <cite date="2007-01-25"><name>Shaun McCance</name></cite> <p>Add: code, class*, func*, programlisting</p> </comment> </section> diff --git a/sandbox/mallard/spec/mal_block_comment.xml b/sandbox/mallard/spec/mal_block_comment.xml index 99089b7..d4799f6 100644 --- a/sandbox/mallard/spec/mal_block_comment.xml +++ b/sandbox/mallard/spec/mal_block_comment.xml @@ -1,19 +1,31 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_comment"> + id="mal_block_comment"> + <info> - <version number="0.1" date="2007-02-21" status="incomplete"/> <link type="guide" xref="mal_block#containers"/> <link type="seealso" xref="mal_cite"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2007</year> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2007-02-21" status="incomplete"/> </info> <title>Editorial Comments</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_comment = element comment { - <link xref="mal_title">mal_title</link>?, +mal_block_comment = element comment { + <link xref="mal_title">mal_title</link> ?, <link xref="mal_cite">mal_cite</link>, - <link xref="mal_block#simple">mal_block_simple</link>+, - mal_comment* + <link xref="mal_block#simple">mal_block__simple</link> +, + mal_block_comment* } </code></synopsis> @@ -38,11 +50,11 @@ attribute. Writers are highly encouraged to provide a <code xref="mal_date">mal --> <comment> - <cite name="Shaun McCance" date="2006-11-16"/> + <cite date="2006-11-16"><name>Shaun McCance</name></cite> <p>Add examples, processing expectations</p> <comment> - <cite name="Shaun McCance" date="2007-01-23"/> + <cite date="2007-01-23"><name>Shaun McCance</name></cite> <p>This is a test of nested comments.</p> </comment> </comment> diff --git a/sandbox/mallard/spec/mal_block_figure.xml b/sandbox/mallard/spec/mal_block_figure.xml index d075ab8..5fd7edd 100644 --- a/sandbox/mallard/spec/mal_block_figure.xml +++ b/sandbox/mallard/spec/mal_block_figure.xml @@ -1,5 +1,5 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_figure"> + id="mal_block_figure"> <info> <link type="guide" xref="mal_block#containers"/> <version number="0.1" date="2007-02-21" status="stub"/> @@ -8,15 +8,16 @@ <title>Figures</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_figure = element figure { - <link xref="mal_attr">mal_attr_common</link>, - <link xref="mal_title">mal_title</link>?, - <link xref="mal_block#simple">mal_block_simple</link>+, - <link xref="mal_caption">mal_caption</link>? -}</code></synopsis> +mal_block_figure = element figure { + <link xref="mal_title">mal_title</link> ?, + <link xref="mal_block#simple">mal_block__simple</link> *, + <link xref="mal_block_media">mal_block_media</link> *, + <link xref="mal_caption">mal_caption</link> ? +} +</code></synopsis> <comment> - <cite><name>Shaun McCance</name><date>2006-11-16</date></cite> + <cite date="2006-11-16"><name>Shaun McCance</name></cite> <p>Add explanation, examples, processing expectations</p> <p>A way to float right, a'la wikipedia?</p> </comment> diff --git a/sandbox/mallard/spec/mal_block_media.xml b/sandbox/mallard/spec/mal_block_media.xml new file mode 100644 index 0000000..06b28e5 --- /dev/null +++ b/sandbox/mallard/spec/mal_block_media.xml @@ -0,0 +1,18 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_block_media"> +<info> + <link type="guide" xref="mal_block"/> + <version number="0.1" date="2007-02-21" status="stub"/> +</info> + +<title>Multimedia Objects</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_block_media = element media { + attribute type { text } ?, + attribute mime { text } ?, + attribute href { text } +} +</code></synopsis> + +</page> diff --git a/sandbox/mallard/spec/mal_block_note.xml b/sandbox/mallard/spec/mal_block_note.xml index 64abb4c..90fd8cc 100644 --- a/sandbox/mallard/spec/mal_block_note.xml +++ b/sandbox/mallard/spec/mal_block_note.xml @@ -1,5 +1,5 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_note"> + id="mal_block_note"> <info> <link type="guide" xref="mal_block#containers"/> <version number="0.1" date="2007-02-21" status="stub"/> @@ -7,4 +7,11 @@ <title>Notes</title> +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_block_note = element note { + <link xref="mal_title">mal_title</link> ?, + <link xref="mal_block#simple">mal_block__simple</link> + +} +</code></synopsis> + </page> diff --git a/sandbox/mallard/spec/mal_block_p.xml b/sandbox/mallard/spec/mal_block_p.xml index 4630392..b37400d 100644 --- a/sandbox/mallard/spec/mal_block_p.xml +++ b/sandbox/mallard/spec/mal_block_p.xml @@ -1,5 +1,5 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_p"> + id="mal_block_p"> <info> <link type="guide" xref="mal_block#simple"/> <version number="0.1" date="2007-02-21" status="stub"/> @@ -8,26 +8,26 @@ <title>Paragraphs</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_p = element p { - <link xref="mal_attr">mal_attr_common</link>, - <link xref="mal_inline">mal_inline</link>+ -}</code></synopsis> +mal_block_p = element p { + <link xref="mal_inline">mal_inline</link> +} +</code></synopsis> <p>The most basic block-level element in Mallard is the <code>p</code> element. The <code>p</code> element creates a paragraph in the formatted outout.</p> <comment> - <cite name="Shaun McCance" date="2007-01-25"/> + <cite date="2007-01-25"><name>Shaun McCance</name></cite> <p>Add some more description.</p> </comment> <!-- BEGIN examples --> -<section id="examples" status="tentative"> +<section id="examples"> <title>Examples</title> <comment> - <cite name="Shaun McCance" date="2007-01-25"/> + <cite date="2007-01-25"><name>Shaun McCance</name></cite> <p>Add examples.</p> </comment> </section> @@ -35,10 +35,10 @@ outout.</p> <!-- BEGIN processing --> -<section id="processing" status="tentative"> +<section id="processing"> <title>Processing Expectations</title> <comment> - <cite name="Shaun McCance" date="2007-01-25"/> + <cite date="2007-01-25"><name>Shaun McCance</name></cite> <p>Add processing expectations. Very basic. Mention margins and indentation as means of demarkating paragraphs. Explicitly mention the no-block-nesting thing.</p> @@ -48,7 +48,7 @@ outout.</p> <!-- BEGIN docbook --> -<section id="docbook" status="tentative"> +<section id="docbook"> <title>Comparison to DocBook</title> <p>The <code>p</code> element in Mallard appears to be equivalent to to the <code href="http://www.docbook.org/tdg/en/html/para.html">para</code> element diff --git a/sandbox/mallard/spec/mal_block_quote.xml b/sandbox/mallard/spec/mal_block_quote.xml new file mode 100644 index 0000000..06d4701 --- /dev/null +++ b/sandbox/mallard/spec/mal_block_quote.xml @@ -0,0 +1,24 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_quote"> +<info> + <link type="guide" xref="mal_block"/> + <version number="0.1" date="2007-02-21" status="stub"/> +</info> + +<title>Quotes</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_block_quote = element quote { + <link xref="mal_title">mal_title</link> ?, + <link xref="mal_block#simple">mal_block__simple</link> +, + <link xref="mal_caption">mal_caption</link> ? +} +</code></synopsis> + +<comment> + <cite date="2007-02-21"><name>Shaun McCance</name></cite> + <p>render quotes around inline</p> + <p>style="epipgraph"</p> +</comment> + +</page> diff --git a/sandbox/mallard/spec/mal_block_screen.xml b/sandbox/mallard/spec/mal_block_screen.xml index 77b43ba..a89e757 100644 --- a/sandbox/mallard/spec/mal_block_screen.xml +++ b/sandbox/mallard/spec/mal_block_screen.xml @@ -1,21 +1,22 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_screen"> + id="mal_block_screen"> + <info> <link type="guide" xref="mal_block#simple"/> + <version number="0.1" date="2007-02-21" status="stub"/> </info> <title>Screens</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_screen = element screen { - <link xref="mal_attr">mal_attr_common</link>, - <link xref="mal_inline">mal_inline</link>+ +mal_block_screen = element screen { + <link xref="mal_inline">mal_inline</link> + } </code></synopsis> <comment> - <cite><name>Shaun McCance</name><date>2006-12-08</date></cite> + <cite date="2006-11-08"><name>Shaun McCance</name></cite> <p>Add intro, examples, and processing expectations.</p> </comment> diff --git a/sandbox/mallard/spec/mal_block_synopsis.xml b/sandbox/mallard/spec/mal_block_synopsis.xml new file mode 100644 index 0000000..e7460ee --- /dev/null +++ b/sandbox/mallard/spec/mal_block_synopsis.xml @@ -0,0 +1,44 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_block_synopsis"> + +<info> + <link type="guide" xref="mal_block#containers"/> + <version number="0.1" date="2007-02-21" status="incomplete"/> +</info> + +<title>Synopses</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_block_synopsis = element synopsis { + <link xref="mal_title">mal_title</link> ?, + <link xref="mal_block#simple">mal_block__simple</link> + +} +</code></synopsis> + +<p>The <code>synopsis</code> element allows you to mark up a block as +providing an overview of the material being presented. It is useful +for providing a listing of functions, commands, or options in reference +material, or for enumerating the items in a menu or other graphical +control element.</p> + +<comment> + <cite date="2006-11-16"><name>Shaun McCance</name></cite> + <p>Add explanation, examples</p> +</comment> + +<section> + <title>Processing Expectations</title> + + <p>A <code>synopsis</code> element is rendered as a displayed block, + with each of its child elements interpreted as block elements. Since + a <code>synopsis</code> element often contains large blocks, and is + generally offset from the running text, processing tools may opt to + render it inside a colored or screened box, with a border, or + otherwise differently from the surrounding text.</p> + + <p>If a <code xref="mal_title">title</code> element is provided, it + should appear at the top of the block and be clearly marked as the + title using font variations or other stylistic means.</p> +</section> + +</page> diff --git a/sandbox/mallard/spec/mal_caption.xml b/sandbox/mallard/spec/mal_caption.xml index 590b8ce..968b8f3 100644 --- a/sandbox/mallard/spec/mal_caption.xml +++ b/sandbox/mallard/spec/mal_caption.xml @@ -1,18 +1,27 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" id="mal_caption"> <info> - <version number="0.1" date="2007-02-05" status="draft"/> - <credit type="author" name="Shaun McCance" email="shaunm@gnome.org"/> - <copyright year="2007" name="Shaun McCance"/> - <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude" /> <link type="guide" xref="mal_block"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2007</year> + <name>Shaun McCance</name> + </copyright> + + <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude" /> + + <version number="0.1" date="2007-02-05" status="draft"/> </info> <title>Captions</title> <synopsis><code mime="application/relax-ng-compact-syntax"> mal_caption = element caption { - <link xref="mal_inline">mal_inline</link>+ + <link xref="mal_inline">mal_inline</link> + } </code></synopsis> @@ -23,7 +32,7 @@ image. Captions are simple block elements that can contain all general <link xref="mal_inline">inline content</link>.</p> <comment> - <cite name="Shaun McCance" date="2007-02-02"/> + <cite date="2007-02-02"><name>Shaun McCance</name></cite> <p>also appears in table</p> </comment> @@ -46,7 +55,7 @@ general <link xref="mal_inline">inline content</link>.</p> </figure> <comment> - <cite name="Shaun McCance" date="2007-02-06"/> + <cite date="2007-02-06"><name>Shaun McCance</name></cite> <p>Maybe add an example with a non-image figure? Should we even allow these?</p> </comment> </section> diff --git a/sandbox/mallard/spec/mal_cite.xml b/sandbox/mallard/spec/mal_cite.xml index 886bd90..04e351b 100644 --- a/sandbox/mallard/spec/mal_cite.xml +++ b/sandbox/mallard/spec/mal_cite.xml @@ -1,33 +1,42 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" id="mal_cite"> <info> + <link type="guide" xref="mal_block"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + <version number="0.1" date="2007-02-08" status="draft"/> - <credit type="author" name="Shaun McCance" email="shaunm@gnome.org"/> - <copyright year="2007" name="Shaun McCance"/> <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude" /> - <link type="guide" xref="mal_block"/> </info> <title>Citations</title> <synopsis><code mime="application/relax-ng-compact-syntax"> mal_cite = element cite { - attribute name { text }, - attribute date { xsd:date }? + attribute date { xsd:date } ?, + element name { <link xref="mal_inline">mal_inline__text</link> + }, + element email { <link xref="mal_inline">mal_inline__text</link> + } ? } </code></synopsis> <comment> - <cite name="Shaun McCance" date="2007-02-08"/> + <cite date="2007-02-08"><name>Shaun McCance</name></cite> <p>Possibly add source for block quote citations.</p> </comment> <p>The <code>cite</code> element provides information about the source of a -<code xref="mal_quote">quote</code> or a <code xref="mal_comment">comment</code> +<code xref="mal_quote">quote</code> or a <code xref="mal_block_comment">comment</code> element.</p> <comment> - <cite name="Shaun McCance" date="2007-02-08"/> + <cite date="2007-02-08"><name>Shaun McCance</name></cite> <p>Add examples, processing expectations.</p> </comment> diff --git a/sandbox/mallard/spec/mal_info.xml b/sandbox/mallard/spec/mal_info.xml index e6321b1..11c83fe 100644 --- a/sandbox/mallard/spec/mal_info.xml +++ b/sandbox/mallard/spec/mal_info.xml @@ -1,4 +1,28 @@ -<page xmlns="http://www.gnome.org/~shaunm/mallard"> +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_info"> + +<info> + <link type="guide" xref="spec_pages"/> + <version number="0.1" date="2008-02-21" status="stub"/> +</info> + +<title>Page Information</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_info = element info { + element title { + attribute type { text }, + attribute role { text } ?, + <link xref="mal_inline">mal_inline</link> + } * +& <link xref="mal_info_desc">mal_info_desc</link> ? +& <link xref="mal_info_link">mal_info_link</link> * +& <link xref="mal_info_credit">mal_info_credit</link> * +& <link xref="mal_info_copyright">mal_info_copyright</link> * +& <link xref="mal_info_license">mal_info_license</link> * +& <link xref="mal_info_version">mal_info_version</link> * +} +</code></synopsis> <!-- credit (type) credit/date diff --git a/sandbox/mallard/spec/mal_info_copyright.xml b/sandbox/mallard/spec/mal_info_copyright.xml new file mode 100644 index 0000000..8ac5905 --- /dev/null +++ b/sandbox/mallard/spec/mal_info_copyright.xml @@ -0,0 +1,31 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_info_copyright"> + +<info> + <link type="guide" xref="spec_info"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude" /> + + <version number="0.1" date="2007-02-23" status="stub"/> +</info> + +<title>Copyright Information</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_info_copyright = element copyright { + element year { text } +, + element name { <link xref="mal_inline">mal_inline__text</link> + }, + element email { <link xref="mal_inline">mal_inline__text</link> + } ? +} +</code></synopsis> + +</page> diff --git a/sandbox/mallard/spec/mal_info_credit.xml b/sandbox/mallard/spec/mal_info_credit.xml new file mode 100644 index 0000000..2966aa8 --- /dev/null +++ b/sandbox/mallard/spec/mal_info_credit.xml @@ -0,0 +1,27 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_info_credit"> +<info> + <link type="guide" xref="spec_info"/> + <version number="0.1" date="2007-02-22" status="stub"/> +</info> + +<title>Credits</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_info_credit = element credit { + attribute type { + "author" | "editor" | + "maintainer" | "collaborator" | + "translator" | "publisher" }, + attribute date { xsd:date } ?, + element name { <link xref="mal_inline">mal_inline__text</link> + }, + element email { <link xref="mal_inline">mal_inline__text</link> + } ? +} +</code></synopsis> + +<comment> + <cite date="2007-01-22"><name>Shaun McCance</name></cite> + <p>Add examples, processing expectations</p> +</comment> + +</page> diff --git a/sandbox/mallard/spec/mal_info_desc.xml b/sandbox/mallard/spec/mal_info_desc.xml new file mode 100644 index 0000000..0db0644 --- /dev/null +++ b/sandbox/mallard/spec/mal_info_desc.xml @@ -0,0 +1,17 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_info_desc"> +<info> + <version number="0.1" date="2007-02-23" status="stub"/> + <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude" /> + <link type="guide" xref="spec_info"/> +</info> + +<title>FIXME</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_info_desc = element desc { + <link xref="mal_inline">mal_inline</link> + +} +</code></synopsis> + +</page> diff --git a/sandbox/mallard/spec/mal_info_license.xml b/sandbox/mallard/spec/mal_info_license.xml new file mode 100644 index 0000000..d47004e --- /dev/null +++ b/sandbox/mallard/spec/mal_info_license.xml @@ -0,0 +1,17 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_license"> +<info> + <link type="guide" xref="spec_info"/> + <version number="0.1" date="2007-02-22" status="stub"/> +</info> + +<title>License Information</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_info_license = element license { + attribute href { text } ?, + <link xref="mal_block#simple">mal_block__simple</link> + +} +</code></synopsis> + +</page> diff --git a/sandbox/mallard/spec/mal_info_link.xml b/sandbox/mallard/spec/mal_info_link.xml new file mode 100644 index 0000000..cc15bc7 --- /dev/null +++ b/sandbox/mallard/spec/mal_info_link.xml @@ -0,0 +1,31 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_info_link"> +<info> + <link type="guide" xref="mal_inline"/> + <version number="0.1" date="2007-02-21" status="stub"/> +</info> + +<title>Hyperlinks</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_info_link = element link { + attribute type { "guide" | "topic" | "seealso" }, + attribute xref { text }, + attribute weight { text } ? +} +</code></synopsis> + +<!-- BEGIN ubiquitous --> +<section id="ubiquitous"> + <title>Ubiquitous Linking</title> + + <synopsis><code mime="application/relax-ng-compact-syntax"> +mal_link_attr = ( + attribute xref { text } | + attribute href { text } ) +</code></synopsis> + +</section> +<!-- END ubiquitous --> + +</page> diff --git a/sandbox/mallard/spec/mal_info_version.xml b/sandbox/mallard/spec/mal_info_version.xml new file mode 100644 index 0000000..5617909 --- /dev/null +++ b/sandbox/mallard/spec/mal_info_version.xml @@ -0,0 +1,20 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_info_version"> +<info> + <link type="guide" xref="spec_info"/> + <version number="0.1" date="2007-02-22" status="stub"/> +</info> + +<title>Version Information</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_info_version = element version { + attribute number { text } ?, + attribute date { xsd:date } ?, + attribute status { "stub" | "incomplete" | "draft" | "review" | "final" } ?, + <link xref="mal_title">mal_title</link> ?, + <link xref="mal_info_desc">mal_info_desc</link> ? +} +</code></synopsis> + +</page> diff --git a/sandbox/mallard/spec/mal_inline.xml b/sandbox/mallard/spec/mal_inline.xml index 404de62..1804d31 100644 --- a/sandbox/mallard/spec/mal_inline.xml +++ b/sandbox/mallard/spec/mal_inline.xml @@ -1,35 +1,46 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" type="guide" id="mal_inline"> + <info> <link type="guide" xref="spec"/> + <version number="0.1" date="2007-02-21" status="incomplete"/> </info> <title>Inline Elements</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_inline = ( - <link xref="mal_app">mal_app</link> | - <link xref="mal_cmd">mal_cmd</link> | - <link xref="mal_code">mal_code_inline</link> | - <link xref="mal_em">mal_em</link> | - <link xref="mal_file">mal_file</link> | - <link xref="mal_gui">mal_gui</link> | - <link xref="mal_input">mal_input</link> | - <link xref="mal_key">mal_key</link> | - <link xref="mal_link">mal_link</link> | - <link xref="mal_media">mal_media</link> | - <link xref="mal_output">mal_output</link> | - <link xref="mal_quote">mal_quote_inline</link> | - <link xref="mal_sys">mal_sys</link> | - mal_inline_simple ) -mal_inline_simple = ( <link xref="mal_var">mal_var</link> | text ) +mal_inline = mixed { + <link xref="mal_inline_app">mal_inline_app</link> *, + <link xref="mal_inline_cmd">mal_inline_cmd</link> *, + <link xref="mal_inline_code">mal_inline_code</link> *, + <link xref="mal_inline_em">mal_inline_em</link> *, + <link xref="mal_inline_file">mal_inline_file</link> *, + <link xref="mal_inline_gui">mal_inline_gui</link> *, + <link xref="mal_inline_guiseq">mal_inline_guiseq</link> *, + <link xref="mal_inline_input">mal_inline_input</link> *, + <link xref="mal_inline_key">mal_inline_key</link> *, + <link xref="mal_inline_keyseq">mal_inline_keyseq</link> *, + <link xref="mal_inline_link">mal_inline_link</link> *, + <link xref="mal_inline_media">mal_inline_media</link> *, + <link xref="mal_inline_output">mal_inline_output</link> *, + <link xref="mal_inline_quote">mal_inline_quote</link> *, + <link xref="mal_inline_span">mal_inline_span</link> *, + <link xref="mal_inline_sys">mal_inline_sys</link> *, + <link xref="mal_inline_var">mal_inline_var</link> *, + element * - (mal:* | local:*) { text } * +} +mal_inline__simple = mixed { + <link xref="mal_inline_var">mal_inline_var</link> *, + element * - (mal:* | local:*) { text } * +} +mal_inline__text = mixed { element * - (mal:* | local:*) { text } * } </code></synopsis> <comment> - <cite name="Shaun McCance" date="2006-11-16"/> - <p>Add some intro text</p> + <cite date="2008-02-19"><name>Shaun McCance</name></cite> + <p>Add some intro text and general processing expectations</p> </comment> </page> diff --git a/sandbox/mallard/spec/mal_inline_app.xml b/sandbox/mallard/spec/mal_inline_app.xml index 3601156..3e1a99f 100644 --- a/sandbox/mallard/spec/mal_inline_app.xml +++ b/sandbox/mallard/spec/mal_inline_app.xml @@ -1,50 +1,59 @@ +<?xml version="1.0" encoding="utf-8"?> <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_app"> + id="mal_inline_app"> + <info> <link type="guide" xref="mal_inline"/> - <link type="seealso" xref="mal_link#ubiquitous"/> + <link type="seealso" xref="mal_attr_link"/> + <version number="0.1" date="2007-02-08" status="review"/> - <credit type="author" name="Shaun McCance" email="shaunm@gnome.org"/> - <copyright year="2007" name="Shaun McCance"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2007</year> + <name>Shaun McCance</name> + </copyright> + <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude" /> </info> <title>Application Names</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_app = element app { - <link xref="mal_link#ubiquitous">mal_link_attr</link>?, - <link xref="mal_inline#simple">mal_inline_simple</link>+ -} +mal_inline_app = element app + { <link xref="mal_attr_link">mal_attr_link</link>?, + <link xref="mal_inline#simple">mal_inline__simple</link>+ + } </code></synopsis> -<p>The <code>app</code> element marks the human-readable name of an -application. It should not be used to mark the name of the command -used to run an application; use <code xref="mal_cmd">cmd</code> for -this purpose instead.</p> - +<p>The <code>app</code> element marks the human-readable name of an application +or the title of a window within an application. It should not be used to mark +the name of the command used to run an application; use +<code xref="mal_inline_cmd">cmd</code> for this purpose instead.</p> <!-- BEGIN processing --> <section id="processing"> <title>Processing Expectations</title> - <p>Application names are usually nouns, and are often a common word - or phrase that are indicative of their functionality. Frequently, - they are simply the name of what the application is. In English and - many other languages, the use of an application name in a sentence - may sound like the author has simply mistakenly omitted an article - if the application name is not understood to be a title.</p> - - <p>For example, the calculator application that comes with GNOME is - called <app>Calculator</app>. If an author were to write <quote>To - start <app>Calculator</app>…</quote>, then a reader may confuse this - for <quote>To start the calculator…</quote> with an error. This is - even more pronounced in languages like German, where nouns are always - capitalized.</p> - - <p>For this reason, it is recommended that application names marked - with the <code>app</code> element are rendered in italics are using - some other font variation.</p> + <p>Application names are usually nouns, and are often common words or phrases + that are indicative of their functionality. Frequently, they are simply the + name of what the application is. In English and many other languages, the + use of an application name in a sentence may sound like the author has simply + mistakenly omitted an article, if the application name is not understood to + be a title.</p> + + <p>For example, the calculator application that comes with Gnome is called + <app>Calculator</app>. If an author were to write <quote>To start + <app>Calculator</app>…</quote>, then a reader may confuse this for <quote>To + start the calculator…</quote> with an error. This is even more pronounced + in languages such as German where nouns are always capitalized.</p> + + <p>For this reason, it is recommended that application names marked with the + <code>app</code> element are rendered in italics or using some other font + variation.</p> </section> <!-- END processing --> diff --git a/sandbox/mallard/spec/mal_inline_cmd.xml b/sandbox/mallard/spec/mal_inline_cmd.xml index f820085..9077488 100644 --- a/sandbox/mallard/spec/mal_inline_cmd.xml +++ b/sandbox/mallard/spec/mal_inline_cmd.xml @@ -1,34 +1,48 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_cmd"> + id="mal_inline_cmd"> + <info> <link type="guide" xref="mal_inline"/> <link type="seealso" xref="mal_screen"/> - <link type="seealso" xref="mal_link#ubiquitous"/> + <link type="seealso" xref="mal_attr_link"/> + <version number="0.1" date="2007-02-05" status="incomplete"/> - <credit type="author" name="Shaun McCance" email="shaunm@gnome.org"/> - <copyright year="2007" name="Shaun McCance"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2007</year> + <name>Shaun McCance</name> + </copyright> + <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude" /> </info> <title>Commands</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_cmd = element cmd { - <link xref="mal_link#ubiquitous">mal_link_attr</link>?, - <link xref="mal_inline#simple">mal_inline_simple</link>+ +mal_inline_cmd = element cmd { + <link xref="mal_attr_link">mal_attr_link</link>?, + <link xref="mal_inline#simple">mal_inline__simple</link> } </code></synopsis> -<p>The <code>cmd</code> element marks the command used to run a program. -It should not be used to mark the human-readable name of an application; -use <code xref="mal_app">app</code> for this purpose instead.</p> +<p>The <code>cmd</code> element marks a command or a portion of a command run +in a shell. It is frequently used to mark the command to run an application. +It should not be used to mark the human-readable name of an application; use +<code xref="mal_inline_app">app</code> for this purpose instead.</p> <p>The <code>cmd</code> element may be used to mark the entire command, including all arguments. Mallard does not contain elements to mark the -arguments specifically, as there is rarely a need to distinguish them -typographically. The <code xref="mal_var">var</code> element may be -used inside a <code>cmd</code> element to indicate text that should be -replaced by the user.</p> +arguments specifically, as there is rarely a need to distinguish them. +The <code>cmd</code> element may also be used to mark parts of a command, +such as options and arguments, when these need to be referenced alone.</p> + +<p>The <code xref="mal_inline_var">var</code> element may be used inside a +<code>cmd</code> element to indicate text that should be replaced +by the user.</p> <!-- BEGIN examples --> @@ -55,6 +69,17 @@ with the name of the file.</p> <p>To view a file in <app>Totem Movie Player</app>, enter <cmd>totem <var>file</var></cmd> at the command line, replacing <var>file</var> with the name of the file.</p> </section> + + <section> + <title>For Options</title> + <code><![CDATA[ +<p>The <cmd>-mtime</cmd> option for the <cmd>find</cmd> command allows +you to filter files based on their modification times.</p> +]]></code> + <p>The <cmd>-mtime</cmd> option for the <cmd>find</cmd> command allows you to + filter files based on their modification times.</p> + </section> + </section> <!-- END examples --> @@ -63,10 +88,26 @@ with the name of the file.</p> <section id="processing"> <title>Processing Expectations</title> <comment> - <cite name="Shaun McCance" date="2007-02-06"/> + <cite date="2007-02-06"><name>Shaun McCance</name></cite> <p>Add processing expectations.</p> </comment> </section> <!-- END processing --> + +<!-- BEGIN docbook --> +<section id="docbook"> + <title>Comparison to DocBook</title> + <p>The <code>cmd</code> element is functionally similar to DocBook's + <code href="http://www.docbook.org/tdg/en/html/command.html">command</code> + element. In DocBook, writers frequently use the + <code href="http://www.docbook.org/tdg/en/html/option.html">option</code> + element inside <code>command</code>. Mallard does not provide an element + for this purpose.</p> + <p>In DocBook, the <code>option</code> element is also used outside the + <code>command</code> element. In Mallard, simply use the <code>cmd</code> + element for options outside of an entire command.</p> +</section> +<!-- END docbook --> + </page> diff --git a/sandbox/mallard/spec/mal_inline_code.xml b/sandbox/mallard/spec/mal_inline_code.xml index d378b05..0702413 100644 --- a/sandbox/mallard/spec/mal_inline_code.xml +++ b/sandbox/mallard/spec/mal_inline_code.xml @@ -1,38 +1,42 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_inline_code" - status="stub"> + id="mal_inline_code"> + <info> <link type="guide" xref="mal_inline"/> - <link type="seealso" xref="mal_link#ubiquitous"/> - <version number="0.1" date="2007-02-21"/> + <link type="seealso" xref="mal_attr_link"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2008-02-19" status="incomplete"/> </info> <title>Code Snippets</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_code_block = element code { - attribute mime { text }, - <link xref="mal_inline">mal_inline</link>+ -}</code></synopsis> - -<synopsis><code> -mal_code_inline = element code { - attribute mime { text }, - <link xref="mal_link#ubiquitous">mal_link_attr</link>?, - <link xref="mal_inline">mal_inline_simple</link>+ -}</code></synopsis> +mal_inline_code = element code { + <link xref="mal_attr_link">mal_attr_link</link> ?, + <link xref="mal_inline#simple">mal_inline__simple</link> +} +</code></synopsis> <comment> - <cite name="Shaun McCance" date="2006-12-08"/> + <cite date="2006-12-08"><name>Shaun McCance</name></cite> <p>Add intro material.</p> </comment> <!-- BEGIN examples --> -<section id="examples" status="tentative"> +<section id="examples"> <title>Examples</title> <comment> - <cite name="Shaun McCance" date="2007-01-25"/> + <cite date="2007-01-25"><name>Shaun McCance</name></cite> <p>Add examples.</p> </comment> </section> @@ -40,10 +44,10 @@ mal_code_inline = element code { <!-- BEGIN processing --> -<section id="processing" status="tentative"> +<section id="processing"> <title>Processing Expectations</title> <comment> - <cite name="Shaun McCance" date="2007-01-25"/> + <cite date="2007-01-25"><name>Shaun McCance</name></cite> <p>Add processing expectations. For block, strip leading/trailing newline. Do not strip leading indentation.</p> </comment> @@ -52,10 +56,10 @@ mal_code_inline = element code { <!-- BEGIN docbook --> -<section id="docbook" status="tentative"> +<section id="docbook"> <title>Comparison to DocBook</title> <comment> - <cite name="Shaun McCance" date="2007-01-25"/> + <cite date="2007-01-25"><name>Shaun McCance</name></cite> <p>Add: code, class*, func*, programlisting</p> </comment> </section> diff --git a/sandbox/mallard/spec/mal_inline_em.xml b/sandbox/mallard/spec/mal_inline_em.xml index a761ca3..44fac3c 100644 --- a/sandbox/mallard/spec/mal_inline_em.xml +++ b/sandbox/mallard/spec/mal_inline_em.xml @@ -2,22 +2,74 @@ id="mal_em"> <info> <link type="guide" xref="mal_inline"/> - <link type="seealso" xref="mal_link#ubiquitous"/> - <version number="0.1" date="2007-02-21" status="stub"/> + <link type="seealso" xref="mal_attr_link"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2008-02-19" status="incomplete"/> </info> <title>Emphasis</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_em = element em { - <link xref="mal_link#ubiquitous">mal_link_attr</link>?, - <link xref="mal_inline#simple">mal_inline_simple</link>+ +mal_inline_em = element em { + <link xref="mal_attr_link">mal_attr_link</link> ?, + <link xref="mal_inline#simple">mal_inline__simple</link> } </code></synopsis> -<comment> - <cite><name>Shaun McCance</name><date>2007-01-30</date></cite> - <p>Add examples, processing expectations</p> -</comment> +<p>The <code>em</code> element indicates that its enclosed text should be +emphasized. You may use <code>em</code> to stress certain words in a sentence. +Do not use <code>em</code> to effect a particular typographic style, since it +may be rendered differently by different processing tools.</p> + + +<!-- BEGIN examples --> +<section id="examples"> + <title>Examples</title> + <comment> + <cite date="2008-02-19"><name>Shaun McCance</name></cite> + <p>Add examples.</p> + </comment> +</section> +<!-- END examples --> + + +<!-- BEGIN processing --> +<section id="processing"> + <title>Processing Expectations</title> + <p>Emphasized text is traditionally presented in an italic or oblique font. + Italic and oblique fonts stress a portion of text without making it stand + out. By contrast, bold text tends to draw the eye, which can be distracting + when reading long passages of text. In scripts without a distinction between + roman and italic type styles, it may still be possible to use an oblique font + or some other font variation. Bold text may be used if necessary.</p> + <p>Underlining should be avoided completely, since it hurts the legibility + of the text. This problem is especially pronounced in scripts which place + diacritical marks below the text. In these scripts, underlining can render + the text completely illegible.</p> +</section> +<!-- END processing --> + + +<!-- BEGIN docbook --> +<section id="docbook"> + <title>Comparison to DocBook</title> + <p>The <code>em</code> element is functionally similar to the + <code href="http://www.docbook.org/tdg/en/html/emphasis.html">emphasis</code> + element in DocBook. Athough DocBook does not normatively specify a means of + controlling the presentation, most DocBook processing tools allow writers to + set the <code>role</code> attribute to <code>bold</code> or <code>strong</code> + to specify bold text. We explicitly recommend against doing this in Mallard + documents and processing tools.</p> +</section> +<!-- END docbook --> </page> diff --git a/sandbox/mallard/spec/mal_inline_file.xml b/sandbox/mallard/spec/mal_inline_file.xml index c6bf3ec..fd5c398 100644 --- a/sandbox/mallard/spec/mal_inline_file.xml +++ b/sandbox/mallard/spec/mal_inline_file.xml @@ -1,22 +1,33 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" id="mal_file"> + <info> <link type="guide" xref="mal_inline"/> - <link type="seealso" xref="mal_link#ubiquitous"/> - <version number="0.1" date="2007-02-21" status="stub"/> + <link type="seealso" xref="mal_attr_link"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2008-02-19" status="incomplete"/> </info> -<title>File Names</title> +<title>Filenames</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_file = element file { - <link xref="mal_link#ubiquitous">mal_link_attr</link>?, - <link xref="mal_inline#simple">mal_inline_simple</link>+ +mal_inline_file = element file { + <link xref="mal_attr_link">mal_attr_link</link> ?, + <link xref="mal_inline#simple">mal_inline__simple</link> + } </code></synopsis> <comment> - <cite><name>Shaun McCance</name><date>2007-01-30</date></cite> + <cite date="2007-01-30"><name>Shaun McCance</name></cite> <p>Add examples, processing expectations</p> </comment> diff --git a/sandbox/mallard/spec/mal_inline_gui.xml b/sandbox/mallard/spec/mal_inline_gui.xml index 3643bf0..bdab285 100644 --- a/sandbox/mallard/spec/mal_inline_gui.xml +++ b/sandbox/mallard/spec/mal_inline_gui.xml @@ -1,30 +1,30 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_gui"> + id="mal_inline_gui"> + <info> <link type="guide" xref="mal_inline"/> - <link type="seealso" xref="mal_link#ubiquitous"/> - <version number="0.1" date="2007-02-21" status="stub"/> + <link type="seealso" xref="mal_attr_link"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2008-02-19" status="incomplete"/> </info> <title>GUI Labels</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_gui = element gui { - attribute type { "check" | "radio" | "menuitem" }?, - <link xref="mal_link#ubiquitous">mal_link_attr</link>?, - ( mal_gui + | - <link xref="mal_inline#simple">mal_inline_simple</link> + ) -} +mal_inline_gui = element gui + { <link xref="mal_attr_link">mal_attr_link</link>?, + <link xref="mal_inline#simple">mal_inline__simple</link>+ + } </code></synopsis> -<comment> - <cite name="Shaun McCance" date="2007-01-30"/> - <p>Add examples, processing expectations</p> -</comment> - -<comment> - <cite name="Shaun McCance" date="2007-02-07"/> - <p>Fix the content model, make type correspond to gui/inline content.</p> -</comment> </page> diff --git a/sandbox/mallard/spec/mal_inline_guiseq.xml b/sandbox/mallard/spec/mal_inline_guiseq.xml new file mode 100644 index 0000000..0d98bba --- /dev/null +++ b/sandbox/mallard/spec/mal_inline_guiseq.xml @@ -0,0 +1,30 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_inline_guiseq"> + +<info> + <link type="guide" xref="mal_inline"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2008-02-19" status="incomplete"/> +</info> + +<title>GUI Labels</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_inline_guiseq = element guiseq { + mixed { <link xref="mal_inline_gui">mal_inline_gui</link> + } +} +</code></synopsis> + +<p>The <code>guiseq</code> element marks a sequence of graphical interface +elements. This is typically used to to present a sequence of menu items.</p> + +</page> diff --git a/sandbox/mallard/spec/mal_inline_input.xml b/sandbox/mallard/spec/mal_inline_input.xml index 32619fe..44f986f 100644 --- a/sandbox/mallard/spec/mal_inline_input.xml +++ b/sandbox/mallard/spec/mal_inline_input.xml @@ -2,10 +2,28 @@ id="mal_input"> <info> <link type="guide" xref="mal_inline"/> - <link type="seealso" xref="mal_link#ubiquitous"/> - <version number="0.1" date="2007-02-21" status="stub"/> + <link type="seealso" xref="mal_attr_link"/> + <link type="seealso" xref="mal_inline_output"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2008-02-19" status="stub"/> </info> <title>User Input</title> +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_inline_input = element input + { <link xref="mal_attr_link">mal_attr_link</link>?, + <link xref="mal_inline#simple">mal_inline__simple</link>+ + } +</code></synopsis> + </page> diff --git a/sandbox/mallard/spec/mal_inline_key.xml b/sandbox/mallard/spec/mal_inline_key.xml index 00819a7..d874088 100644 --- a/sandbox/mallard/spec/mal_inline_key.xml +++ b/sandbox/mallard/spec/mal_inline_key.xml @@ -8,4 +8,11 @@ <title>Key Strokes</title> +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_inline_key = element key { + <link xref="mal_attr_link">mal_attr_link</link> ?, + <link xref="mal_inline#simple">mal_inline__simple</link> + +} +</code></synopsis> + </page> diff --git a/sandbox/mallard/spec/mal_inline_keyseq.xml b/sandbox/mallard/spec/mal_inline_keyseq.xml new file mode 100644 index 0000000..4f70373 --- /dev/null +++ b/sandbox/mallard/spec/mal_inline_keyseq.xml @@ -0,0 +1,28 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_inline_keyseq"> + +<info> + <link type="guide" xref="mal_inline"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2008-02-19" status="incomplete"/> +</info> + +<title>GUI Labels</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_inline_keyseq = element keyseq { + mixed { <link xref="mal_inline_gui">mal_inline_key</link> + } +} +</code></synopsis> + + +</page> diff --git a/sandbox/mallard/spec/mal_inline_link.xml b/sandbox/mallard/spec/mal_inline_link.xml new file mode 100644 index 0000000..1a3e3af --- /dev/null +++ b/sandbox/mallard/spec/mal_inline_link.xml @@ -0,0 +1,38 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_inline_link"> + +<info> + <link type="guide" xref="mal_inline"/> + + <version number="0.1" date="2007-02-05" status="incomplete"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2007</year> + <name>Shaun McCance</name> + </copyright> + + <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude" /> +</info> + +<title>Hyperlinks</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_inline_link = element link + { ( attribute xref { text } + , <link xref="mal_inline">mal_inline__simple</link> ? + ) + | ( attribute dref { text } + , attribute href { text }? + , <link xref="mal_inline">mal_inline__text</link> + ) + | ( attribute href { text } + , <link xref="mal_inline">mal_inline__text</link> + ) + } +</code></synopsis> + +</page> diff --git a/sandbox/mallard/spec/mal_inline_media.xml b/sandbox/mallard/spec/mal_inline_media.xml new file mode 100644 index 0000000..ffd3b9d --- /dev/null +++ b/sandbox/mallard/spec/mal_inline_media.xml @@ -0,0 +1,18 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_inline_media"> +<info> + <link type="guide" xref="mal_inline"/> + <version number="0.1" date="2007-02-21" status="stub"/> +</info> + +<title>Multimedia Objects</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_inline_media = element media { + attribute type { text } ?, + attribute mime { text } ?, + attribute href { text } +} +</code></synopsis> + +</page> diff --git a/sandbox/mallard/spec/mal_inline_output.xml b/sandbox/mallard/spec/mal_inline_output.xml new file mode 100644 index 0000000..957efa7 --- /dev/null +++ b/sandbox/mallard/spec/mal_inline_output.xml @@ -0,0 +1,29 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_inline_output"> + +<info> + <link type="guide" xref="mal_inline"/> + <link type="seealso" xref="mal_attr_link"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2008-02-19" status="stub"/> +</info> + +<title>Computer Output</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_inline_output = element output { + <link xref="mal_attr_link">mal_attr_link</link> ?, + <link xref="mal_inline#simple">mal_inline__simple</link> + +} +</code></synopsis> + +</page> diff --git a/sandbox/mallard/spec/mal_inline_quote.xml b/sandbox/mallard/spec/mal_inline_quote.xml new file mode 100644 index 0000000..6b2d4af --- /dev/null +++ b/sandbox/mallard/spec/mal_inline_quote.xml @@ -0,0 +1,38 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_inline_quote"> + +<info> + <link type="guide" xref="mal_inline"/> + <link type="seealso" xref="mal_block_quote"/> + <link type="seealso" xref="mal_attr_link"/> + + <version number="0.1" date="2007-02-08" status="stub"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2007</year> + <name>Shaun McCance</name> + </copyright> + + <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude" /> +</info> + +<title>Quotes</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_inline_quote = element quote { + <link xref="mal_attr_link">mal_attr_link</link> ?, + <link xref="mal_inline">mal_inline</link> + +} +</code></synopsis> + +<comment> + <cite date="2007-02-21"><name>Shaun McCance</name></cite> + <p>render quotes around inline</p> + <p>style="epipgraph"</p> +</comment> + +</page> diff --git a/sandbox/mallard/spec/mal_inline_span.xml b/sandbox/mallard/spec/mal_inline_span.xml new file mode 100644 index 0000000..e24dcb4 --- /dev/null +++ b/sandbox/mallard/spec/mal_inline_span.xml @@ -0,0 +1,19 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_inline_span"> + +<info> + <link type="guide" xref="mal_inline"/> + <link type="seealso" xref="mal_link#ubiquitous"/> + <version number="0.1" date="2007-02-21" status="stub"/> +</info> + +<title>Variable Text</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_inline_span = element em { + <link xref="mal_attr_link">mal_attr_link</link> ?, + <link xref="mal_inline#simple">mal_inline__simple</link> + +} +</code></synopsis> + +</page> diff --git a/sandbox/mallard/spec/mal_inline_sys.xml b/sandbox/mallard/spec/mal_inline_sys.xml index 8547167..dd6b1a5 100644 --- a/sandbox/mallard/spec/mal_inline_sys.xml +++ b/sandbox/mallard/spec/mal_inline_sys.xml @@ -8,4 +8,11 @@ <title>System Items</title> +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_inline_sys = element sys { + <link xref="mal_attr_link">mal_attr_link</link> ?, + <link xref="mal_inline#simple">mal_inline__simple</link> + +} +</code></synopsis> + </page> diff --git a/sandbox/mallard/spec/mal_inline_var.xml b/sandbox/mallard/spec/mal_inline_var.xml index bc94f0f..895c38b 100644 --- a/sandbox/mallard/spec/mal_inline_var.xml +++ b/sandbox/mallard/spec/mal_inline_var.xml @@ -1,5 +1,5 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" - id="mal_var"> + id="mal_inline_var"> <info> <link type="guide" xref="mal_inline"/> <link type="seealso" xref="mal_link#ubiquitous"/> @@ -8,4 +8,11 @@ <title>Variable Text</title> +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_inline_var = element var { + <link xref="mal_attr_link">mal_attr_link</link> ?, + <link xref="mal_inline#simple">mal_inline__simple</link> + +} +</code></synopsis> + </page> diff --git a/sandbox/mallard/spec/mal_list.xml b/sandbox/mallard/spec/mal_list.xml index 9559356..2191254 100644 --- a/sandbox/mallard/spec/mal_list.xml +++ b/sandbox/mallard/spec/mal_list.xml @@ -17,12 +17,12 @@ mal_list = ( </code></synopsis> <comment> - <cite><name>Shaun McCance</name><date>2007-01-30</date></cite> + <cite date="2007-01-30"><name>Shaun McCance</name></cite> <p>Add explanation, examples, processing expectations</p> </comment> <comment> - <cite><name>Shaun McCance</name><date>2007-02-09</date></cite> + <cite date="2007-02-09"><name>Shaun McCance</name></cite> <p>Unmarked lists and segmented lists</p> </comment> diff --git a/sandbox/mallard/spec/mal_list_bullet.xml b/sandbox/mallard/spec/mal_list_bullet.xml index 0d5a4d8..49ffb4c 100644 --- a/sandbox/mallard/spec/mal_list_bullet.xml +++ b/sandbox/mallard/spec/mal_list_bullet.xml @@ -8,14 +8,15 @@ <title>Bullet Lists</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_list_bullet = element_list { +mal_list_bullet = element list { attribute type { "bullet" } ?, attribute style { text } ?, <link xref="mal_title">mal_title</link> ?, element item { - <link xref="mal_block#simple">mal_block_simple</link> +, + <link xref="mal_block#simple">mal_block__simple</link> +, <link xref="mal_list">mal_list</link> ? } + -}</code></synopsis> +} +</code></synopsis> </page> diff --git a/sandbox/mallard/spec/mal_list_definition.xml b/sandbox/mallard/spec/mal_list_definition.xml index fed0c32..8bc7d92 100644 --- a/sandbox/mallard/spec/mal_list_definition.xml +++ b/sandbox/mallard/spec/mal_list_definition.xml @@ -8,14 +8,15 @@ <title>Definition Lists</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_list_definition = element_list { +mal_list_definition = element list { attribute type { "definition" }, attribute style { text } ?, element item { <link xref="mal_title">mal_title</link> +, - <link xref="mal_block#simple">mal_block_simple</link> +, + <link xref="mal_block#simple">mal_block__simple</link> +, <link xref="mal_list">mal_list</link> ? } + -}</code></synopsis> +} +</code></synopsis> </page> diff --git a/sandbox/mallard/spec/mal_list_numbered.xml b/sandbox/mallard/spec/mal_list_numbered.xml index 20f1e52..d9564f0 100644 --- a/sandbox/mallard/spec/mal_list_numbered.xml +++ b/sandbox/mallard/spec/mal_list_numbered.xml @@ -8,14 +8,15 @@ <title>Numbered Lists</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -mal_list_numbered = element_list { +mal_list_numbered = element list { attribute type { "numbered" }, attribute style { text } ?, <link xref="mal_title">mal_title</link> ?, element item { - <link xref="mal_block#simple">mal_block_simple</link> +, + <link xref="mal_block#simple">mal_block__simple</link> +, <link xref="mal_list">mal_list</link> ? } +, -}</code></synopsis> +} +</code></synopsis> </page> diff --git a/sandbox/mallard/spec/mal_page.xml b/sandbox/mallard/spec/mal_page.xml new file mode 100644 index 0000000..081984f --- /dev/null +++ b/sandbox/mallard/spec/mal_page.xml @@ -0,0 +1,22 @@ +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_page"> + +<info> + <link type="guide" xref="spec_pages"/> + <version number="0.1" date="2008-02-21" status="stub"/> +</info> + +<title>Pages</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_page = element page { + attribute id { text }, + attribute type { "topic" | "guide" } ?, + <link xref="mal_info">mal_info</link>, + <link xref="mal_title">mal_title</link>, + <link xref="mal_block">mal_block</link> *, + <link xref="mal_section">mal_section</link> * +} +</code></synopsis> + +</page> diff --git a/sandbox/mallard/spec/mal_section.xml b/sandbox/mallard/spec/mal_section.xml index 1af10c1..2868b85 100644 --- a/sandbox/mallard/spec/mal_section.xml +++ b/sandbox/mallard/spec/mal_section.xml @@ -6,4 +6,14 @@ <title>Sections</title> +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_section = element section { + attribute id { text } ?, + <link xref="mal_info">mal_info</link> ?, + <link xref="mal_title">mal_title</link>, + <link xref="mal_block">mal_block</link> *, + <link xref="mal_section">mal_section</link> * +} +</code></synopsis> + </page> diff --git a/sandbox/mallard/spec/mal_subtitle.xml b/sandbox/mallard/spec/mal_subtitle.xml index 5a92922..afeea37 100644 --- a/sandbox/mallard/spec/mal_subtitle.xml +++ b/sandbox/mallard/spec/mal_subtitle.xml @@ -1,2 +1,17 @@ -<page xmlns="http://www.gnome.org/~shaunm/mallard"> +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_subtitle"> + +<info> + <link type="guide" xref="mal_block#simple"/> + <version number="0.1" date="2007-02-21" status="stub"/> +</info> + +<title>Subtitles</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_subtitle = element subtitle { + <link xref="mal_inline">mal_inline</link> +} +</code></synopsis> + </page> diff --git a/sandbox/mallard/spec/mal_table.xml b/sandbox/mallard/spec/mal_table.xml index c5bef12..bf2d422 100644 --- a/sandbox/mallard/spec/mal_table.xml +++ b/sandbox/mallard/spec/mal_table.xml @@ -8,23 +8,41 @@ <synopsis><code mime="application/relax-ng-compact-syntax"> mal_table = element table { - attribute frame { "all" | "none" | - list { "top"? & "bottom"? & "left"? & "right"? } - } ?, - attribute rules { "all" | "groups" | "none" | - list { ("rows" | "rowgroups")? & ("cols" | "colgroups")? } - } ?, - attribute shade { "all" | "groups" | "none | - list { ("rows" | "rowgroups")? & ("cols" | "colgroups")? } - } ?, + attribute frame { + "all" | "none" | + list { ("top" | "bottom" | "left" | "right") * } + } ?, + attribute rules { + "all" | "groups" | "none" | + list { ("rows" | "rowgroups" | "cols" | "colgroups") * } + } ?, + attribute shade { + "all" | "groups" | "none" | + list { ("rows" | "rowgroups" | "cols" | "colgroups") * } + } ?, + <link xref="mal_title">mal_title</link> ?, - ( <link xref="mal_col">mal_col</link> + | <link xref="mal_colgroup">mal_colgroup</link> + ) ?, - ( <link xref="mal_tr">mal_tr</link> + | - ( <link xref="mal_thead">mal_thead</link> ?, - <link xref="mal_tbody">mal_tbody</link> +, - <link xref="mal_tfoot">mal_tfoot</link> ?) ), + + ( <link xref="mal_table_col">mal_table_col</link> + + | <link xref="mal_table_colgroup">mal_table_colgroup</link> + + ) ?, + + ( <link xref="mal_table_tr">mal_table_tr</link> + + | ( <link xref="mal_table_thead">mal_table_thead</link> ?, + <link xref="mal_table_tbody">mal_table_tbody</link> +, + <link xref="mal_table_tfoot">mal_table_tfoot</link> ? + ) + ), + <link xref="mal_caption">mal_caption</link> ? } +mal_table_col = element col {} +mal_table_colgroup = element colgroup { mal_table_col * } +mal_table_thead = element thead { mal_table_tr + } +mal_table_tbody = element tbody { mal_table_tr + } +mal_table_tfoot = element tfoot { mal_table_tr + } +mal_table_tr = element tr { mal_table_td * } +mal_table_td = element td { <link xref="mal_block#simple">mal_block__simple</link> + } </code></synopsis> diff --git a/sandbox/mallard/spec/mal_title.xml b/sandbox/mallard/spec/mal_title.xml index 5a92922..603eb9c 100644 --- a/sandbox/mallard/spec/mal_title.xml +++ b/sandbox/mallard/spec/mal_title.xml @@ -1,2 +1,17 @@ -<page xmlns="http://www.gnome.org/~shaunm/mallard"> +<page xmlns="http://www.gnome.org/~shaunm/mallard" + id="mal_title"> + +<info> + <link type="guide" xref="mal_block#simple"/> + <version number="0.1" date="2007-02-21" status="stub"/> +</info> + +<title>Titles</title> + +<synopsis><code mime="application/relax-ng-compact-syntax"> +mal_title = element title { + <link xref="mal_inline">mal_inline</link> +} +</code></synopsis> + </page> diff --git a/sandbox/mallard/spec/mallard.xml b/sandbox/mallard/spec/mallard.xml index ae8995c..85799c5 100644 --- a/sandbox/mallard/spec/mallard.xml +++ b/sandbox/mallard/spec/mallard.xml @@ -6,14 +6,23 @@ <link type="topic" xref="explore"/> <link type="topic" xref="principles"/> <link type="topic" xref="spec"/> - <copyright year="2007" name="Shaun McCance"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2007</year> + <name>Shaun McCance</name> + </copyright> + <version number="0.1" date="2007-02-22" status="stub"/> </info> <title>Mallard</title> <comment> - <cite name="Shaun McCance" date="2007-02-20"/> + <cite date="2007-02-20"><name>Shaun McCance</name></cite> <p>Add some intro text</p> </comment> diff --git a/sandbox/mallard/spec/principle-guide.xml b/sandbox/mallard/spec/principle-guide.xml index a2010a5..99a655e 100644 --- a/sandbox/mallard/spec/principle-guide.xml +++ b/sandbox/mallard/spec/principle-guide.xml @@ -1,9 +1,12 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" id="principle-guide"> + <info> - <version number="0.1" date="2007-02-26" status="stub"/> - <link type="guide" xref="principles#reader"/> <desc>Ensure the reader doesn't get lost in a link swarm</desc> + + <link type="guide" xref="principles#reader"/> + + <version number="0.1" date="2007-02-26" status="stub"/> </info> <title>Guide the Reader</title> diff --git a/sandbox/mallard/spec/principles.xml b/sandbox/mallard/spec/principles.xml index a9e83d5..44c3eb6 100644 --- a/sandbox/mallard/spec/principles.xml +++ b/sandbox/mallard/spec/principles.xml @@ -1,15 +1,26 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" type="guide" id="principles"> + <info> - <version number="0.1" date="2007-02-21" status="stub"/> <desc>The guiding principles behind the design of Mallard</desc> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + + <version number="0.1" date="2007-02-21" status="stub"/> </info> <title>Design Principles</title> <comment> - <cite name="Shaun McCance" date="2007-02-27"/> + <cite date="2007-02-27"><name>Shaun McCance</name></cite> <p>Add intro content</p> <p>Add principles: pluggability, implementation speed, l10n</p> </comment> @@ -32,6 +43,10 @@ <title type="link">Principles for the Writer</title> </info> <title>For the Writer</title> + <comment> + <cite date="2007-02-27"><name>Shaun McCance</name></cite> + <p>Add</p> + </comment> </section> <section id="hacker"> diff --git a/sandbox/mallard/spec/spec.xml b/sandbox/mallard/spec/spec.xml index bade53d..087f55f 100644 --- a/sandbox/mallard/spec/spec.xml +++ b/sandbox/mallard/spec/spec.xml @@ -10,7 +10,7 @@ <title>Specification</title> <comment> - <cite name="Shaun McCance" date="2007-02-20"/> + <cite date="2007-02-20"><name>Shaun McCance</name></cite> <p>Add some intro text</p> </comment> diff --git a/sandbox/mallard/spec/spec_info.xml b/sandbox/mallard/spec/spec_info.xml index 0c8a209..3904aad 100644 --- a/sandbox/mallard/spec/spec_info.xml +++ b/sandbox/mallard/spec/spec_info.xml @@ -1,11 +1,27 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" type="guide" id="spec_info"> + <info> <link type="guide" xref="spec" weight="-1"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + <version number="0.1" date="2007-02-22" status="stub"/> </info> <title>Information Elements</title> +<comment> + <cite date="2008-02-22"><name>Shaun McCance</name></cite> + <p>Add</p> +</comment> + </page> diff --git a/sandbox/mallard/spec/spec_pages.xml b/sandbox/mallard/spec/spec_pages.xml index 752ffc8..97eb15f 100644 --- a/sandbox/mallard/spec/spec_pages.xml +++ b/sandbox/mallard/spec/spec_pages.xml @@ -1,16 +1,28 @@ <page xmlns="http://www.gnome.org/~shaunm/mallard" type="guide" id="spec_pages"> + <info> <link type="guide" xref="spec" weight="1"/> + + <credit type="author"> + <name>Shaun McCance</name> + <email>shaunm@gnome.org</email> + </credit> + <copyright> + <year>2008</year> + <name>Shaun McCance</name> + </copyright> + <version number="0.1" date="2007-02-22" status="stub"/> </info> <title>Page Elements</title> <synopsis><code mime="application/relax-ng-compact-syntax"> -default namespace = "http://www.gnome.org/~shaunm/mallard" -start = (mal_guide | mal_topic) +namespace local = "" +default namespace mal = "http://www.gnome.org/~shaunm/mallard" +start = <link xref="mal_page">mal_page</link> </code></synopsis> </page> diff --git a/sandbox/mallard/xslt/mal2html-inline.xsl b/sandbox/mallard/xslt/mal2html-inline.xsl index c4c8151..5edcd00 100644 --- a/sandbox/mallard/xslt/mal2html-inline.xsl +++ b/sandbox/mallard/xslt/mal2html-inline.xsl @@ -220,8 +220,10 @@ span.var { font-style: italic; } <!-- = quote = --> <xsl:template mode="mal2html.inline.mode" match="mal:quote"> - <!-- FIXME: auto-quote --> + <!-- FIXME: do smart quoting --> + <xsl:text>"</xsl:text> <xsl:call-template name="mal2html.span"/> + <xsl:text>"</xsl:text> </xsl:template> <!-- = sys = --> |