/
topic.rnc
78 lines (68 loc) · 2.55 KB
/
topic.rnc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# This file is part of DocBook V5.0
#
# Copyright 1992-2008 HaL Computer Systems, Inc.,
# O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
# Corporation, Norman Walsh, Sun Microsystems, Inc., and the
# Organization for the Advancement of Structured Information
# Standards (OASIS).
#
# Release: $Id: hier.rnc 8569 2010-01-15 00:23:46Z nwalsh $
#
# Permission to use, copy, modify and distribute the DocBook schema
# and its accompanying documentation for any purpose and without fee
# is hereby granted in perpetuity, provided that the above copyright
# notice and this paragraph appear in all copies. The copyright
# holders make no representation about the suitability of the schema
# for any purpose. It is provided "as is" without expressed or implied
# warranty.
#
# If you modify the DocBook schema in any way, label your schema as a
# variant of DocBook. See the reference documentation
# (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
# for more information.
#
# Please direct all questions, bug reports, or suggestions for changes
# to the docbook@lists.oasis-open.org mailing list. For more
# information, see http://www.oasis-open.org/docbook/.
#
# ======================================================================
namespace rng = "http://relaxng.org/ns/structure/1.0"
namespace s = "http://www.ascc.net/xml/schematron"
namespace db = "http://docbook.org/ns/docbook"
namespace dbx = "http://sourceforge.net/projects/docbook/defguide/schema/extra-markup"
default namespace = "http://docbook.org/ns/docbook"
start |= db.topic
db.book.components |= db.topic*
db.part.contentmodel |= db.topic+
db.chapter.contentmodel |= db.topic+
db.appendix.contentmodel |= db.topic+
# ======================================================================
[
db:refname [ "topic" ]
db:refpurpose [ "A modular unit of documentation not part of any particular narrative flow" ]
]
div {
db.topic.status.attribute = db.status.attribute
db.topic.role.attribute = attribute role { text }
db.topic.type.attribute =
[
db:refpurpose [ "Identifies the topic type" ]
]
attribute type { text }
db.topic.attlist =
db.topic.role.attribute?
& db.topic.type.attribute?
& db.common.attributes
& db.common.linking.attributes
& db.label.attribute?
& db.topic.status.attribute?
db.topic.info = db._info.title.req
db.topic =
element topic {
db.topic.attlist,
db.topic.info,
db.navigation.components*,
db.toplevel.blocks.or.sections,
db.navigation.components*
}
}