]> Git — Sourcephile - haskell/symantic-xml.git/blob - test/Golden/RelaxNG/Commoning.rnc
Rewrite to categorical symantic
[haskell/symantic-xml.git] / test / Golden / RelaxNG / Commoning.rnc
1 default namespace = "2018/commoning.rnc"
2 namespace xsd = "http://www/w3/org/2001/XMLSchema-datatypes"
3 namespace ns1 = "2018/commoning.rnc"
4 commoning = element commoning {persons & opinions & groups & operations & resources}
5 field = element field {attribute name {text}, text}
6 fields = element fields {attribute name {text}, ( field | fields )*}
7 grade = element grade {attribute name {text}, ( attribute abbrev {text} )?, ( attribute color {text} )?}
8 gradeRange = attribute grade {text} | attribute gradeMin {text} | attribute gradeMax {text} | ( attribute gradeMin {text}, attribute gradeMax {text} )
9 grades = element grades {attribute id {xsd:id}, ( attribute name {text} )?, grade*}
10 group = element group {attribute id {xsd:id}, ( attribute name {text} )?, fields*, members, group*}
11 groups = element groups {group*}
12 member = element member {attribute person {xsd:id}}
13 members = member*
14 operation = element operation {attribute id {xsd:id}, operation*}
15 operations = element operations {operation*}
16 opinions = element opinions {grades*}
17 person = element person {attribute id {xsd:id}, fields*}
18 persons = element persons {person*}
19 policy = element policy {attribute operation {text}, attribute by {xsd:id}, ( attribute toward {xsd:id} )?, rule*}
20 resource = element resource {attribute name {text}, policy*, resource*}
21 resources = element resources {resource*}
22 rule = element rule {attribute grades {xsd:id}, gradeRange}