~launchpad-pqm/launchpad/devel

3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
1
default namespace = "https://launchpad.net/xmlns/2006/bugs"
2
3
start = lpbugs
4
5
# Data types
6
7
boolean = "True" | "False"
8
lpname = xsd:string { pattern = "[a-z0-9][a-z0-9\+\.\-]*" }
14273.1.4 by Gavin Panella
A bug nickname is not permitted a leading digit.
9
lpbugname = xsd:string { pattern = "[a-z][a-z0-9\+\.\-]*" }
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
10
cvename = xsd:string { pattern = "(19|20)[0-9][0-9]-[0-9][0-9][0-9][0-9]" }
14273.1.3 by Gavin Panella
Rename text1 to non_empty_text as suggested by jtv.
11
non_empty_text = xsd:string { minLength = "1" }
3691.440.21 by James Henstridge
add some new coments in response to Bjorn's review
12
4664.1.1 by Curtis Hovey
Normalized comments for bug 3732.
13
# XXX: jamesh 2006-04-11 bug=105401:
3691.440.21 by James Henstridge
add some new coments in response to Bjorn's review
14
# These status and importance values need to be kept in sync with the
15
# rest of Launchpad.  However, there are not yet any tests for this.
16
#     https://bugs.launchpad.net/bugs/105401
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
17
status = (
4864.1.1 by James Henstridge
Add support for creating bug watches as part of a bug import.
18
  "NEW"          |
19
  "INCOMPLETE"   |
20
  "INVALID"      |
21
  "WONTFIX"      |
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
22
  "CONFIRMED"    |
4864.1.1 by James Henstridge
Add support for creating bug watches as part of a bug import.
23
  "TRIAGED"      |
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
24
  "INPROGRESS"   |
25
  "FIXCOMMITTED" |
26
  "FIXRELEASED"  |
27
  "UNKNOWN")
28
importance = (
29
  "UNKNOWN"   |
30
  "CRITICAL"  |
31
  "HIGH"      |
32
  "MEDIUM"    |
33
  "LOW"       |
34
  "WISHLIST"  |
35
  "UNDECIDED")
36
37
# Content model for a person element.  The element content is the
38
# person's name.  For successful bug import, an email address must be
39
# provided.
14273.1.2 by Gavin Panella
Improve schema for person elements.
40
person_nobody = (
41
  attribute name { string "nobody" })
42
person_normal = (
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
43
  attribute name { lpname }?,
14273.1.3 by Gavin Panella
Rename text1 to non_empty_text as suggested by jtv.
44
  attribute email { non_empty_text },
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
45
  text)
14273.1.2 by Gavin Panella
Improve schema for person elements.
46
person = (
47
  person_nobody |
48
  person_normal)
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
49
50
lpbugs = element launchpad-bugs { bug* }
51
52
bug = element bug {
3691.440.14 by James Henstridge
changes and extra tests suggested in BjornT's review
53
  attribute id { xsd:integer } &
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
54
  element private { boolean }? &
55
  element security_related { boolean }? &
3691.440.14 by James Henstridge
changes and extra tests suggested in BjornT's review
56
  element duplicateof { xsd:integer }? &
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
57
  element datecreated { xsd:dateTime } &
14273.1.4 by Gavin Panella
A bug nickname is not permitted a leading digit.
58
  element nickname { lpbugname }? &
3691.440.21 by James Henstridge
add some new coments in response to Bjorn's review
59
  # The following will likely be renamed summary in a future version.
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
60
  element title { text } &
61
  element description { text } &
62
  element reporter { person } &
63
  element status { status } &
64
  element importance { importance } &
65
  element milestone { lpname }? &
66
  element assignee { person }? &
67
  element urls {
68
    element url { attribute href { xsd:anyURI }, text }*
69
  }? &
70
  element cves {
71
    element cve { cvename }*
72
  }? &
73
  element tags {
74
    element tag { lpname }*
75
  }? &
4864.1.1 by James Henstridge
Add support for creating bug watches as part of a bug import.
76
  element bugwatches {
77
    element bugwatch { attribute href { xsd:anyURI } }*
78
  }? &
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
79
  element subscriptions {
80
    element subscriber { person }*
81
  }? &
82
  comment+
83
}
84
85
# A bug has one or more comments.  The first comment duplicates the
86
# reporter, datecreated, title, description of the bug.
87
comment = element comment {
88
  element sender { person } &
89
  element date { xsd:dateTime } &
90
  element title { text }? &
91
  element text { text } &
92
  attachment*
93
}
94
95
# A bug attachment.  Attachments are associated with a bug comment.
96
attachment = element attachment {
97
  attribute href { xsd:anyURI }? &
98
  element type { "PATCH" | "UNSPECIFIED" }? &
14273.1.3 by Gavin Panella
Rename text1 to non_empty_text as suggested by jtv.
99
  element filename { non_empty_text }? &
3691.440.21 by James Henstridge
add some new coments in response to Bjorn's review
100
  # The following will likely be renamed summary in a future version.
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
101
  element title { text }? &
102
  element mimetype { text }? &
14273.1.1 by Gavin Panella
Ensure that attachment filename and contents are at least 1 unit long.
103
  element contents { xsd:base64Binary { minLength = "1" } }
3691.440.1 by James Henstridge
rebase bug-import stuff on latest rocketfuel
104
}