annotate mercurial-tests/testData/bin/contrib/xml.rnc @ 1063:4b6661db8a8a Lakhnau-2020.2.x

TW-70509 prohibit creating VCS root with either repo name or branch name containing suspicicios options (grafted from 04407dc0f4967d24d53fe2a983afa4d11531684b)
author victory.bedrosova
date Thu, 11 Mar 2021 15:32:03 +0100
parents 2e52f00a3c94
children
rev   line source
294
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
1 # RelaxNG schema for "xml" log style
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
2 # Inspired by Subversion's XML log format.
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
3
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
4 start = log
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
5 node.type = xsd:string {minLength = "40" maxLength = "40"}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
6
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
7 log = element log { logentry+ }
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
8 logentry = element logentry {
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
9 logentry.attlist,
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
10 branch*, tag*, hgparent*,
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
11 author, date,
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
12 msg, paths?, copies?, extra*
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
13 }
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
14 logentry.attlist =
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
15 attribute revision {xsd:nonNegativeInteger}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
16 & attribute node {node.type}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
17 branch = element branch { text }
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
18 tag = element tag { text }
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
19 hgparent = element parent {hgparent.attlist, text}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
20 hgparent.attlist =
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
21 attribute revision {xsd:integer {minInclusive = "-1"} }
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
22 & attribute node {node.type}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
23 author = element author { author.attlist, text }
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
24 author.attlist =
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
25 attribute email {text}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
26 date = element date {xsd:dateTime}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
27 msg = element msg {msg.attlist, text}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
28 msg.attlist =
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
29 attribute xml:space {"preserve"}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
30 paths = element paths { path* }
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
31 path = element path { path.attlist, text }
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
32 path.attlist =
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
33 # Action: (A)dd, (M)odify, (R)emove
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
34 attribute action {"A"|"M"|"R"}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
35 copies = element copies { copy+ }
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
36 copy = element copy { copy.attlist, text }
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
37 copy.attlist =
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
38 attribute source {text}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
39 extra = element extra {extra.attlist, text}
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
40 extra.attlist =
2e52f00a3c94 Update whole hg distribution to 1.5.2
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
41 attribute key {text}