summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/stex/schema/rnc/omdoc/creativecommons.rnc
blob: 078d80e4a3ba71860c678722aeab91497d983a5d (plain)
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
# A RelaxNG for Creative Commons License Specifications
# $Id: creativecommons.rnc 8550 2009-11-07 06:38:23Z kohlhase $
# $HeadURL: https://svn.omdoc.org/repos/omdoc/trunk/schema/rnc/pragmatic/creativecommons.rnc $
# Copyright (c) 2008 Michael Kohlhase, released under the GNU Public License (GPL) 

default namespace cc = "http://creativecommons.org/ns"

iana.tld = ("ac"|"ad"|"ae"|"af"|"ag"|"ai"|"al"|"am"|"an"|"ao"|"aq"|"ar"|"as"|"at"|"au"|"aw"|"ax"|"az"|
            "ba"|"bb"|"bd"|"be"|"bf"|"bg"|"bh"|"bi"|"bj"|"bm"|"bn"|"bo"|"br"|"bs"|"bt"|"bv"|"bw"|"by"|"bz"|
            "ca"|"cc"|"cd"|"cf"|"cg"|"ch"|"ci"|"ck"|"cl"|"cm"|"cn"|"co"|"cr"|"cs"|"cu"|"cv"|"cx"|"cy"|"cz"|
            "de"|"dj"|"dk"|"dm"|"do"|"dz"|"ec"|"ee"|"eg"|"eh"|"er"|"es"|"et"|"fi"|"fj"|"fk"|"fm"|"fo"|"fr"|
            "ga"|"gb"|"gd"|"ge"|"gf"|"gg"|"gh"|"gi"|"gl"|"gm"|"gn"|"gp"|"gq"|"gr"|"gs"|"gt"|"gu"|"gw"|"gy"|
            "hk"|"hm"|"hn"|"hr"|"ht"|"hu"|"id"|"ie"|"il"|"im"|"in"|"io"|"iq"|"ir"|"is"|"it"|"je"|"jm"|"jo"|"jp"|
            "ke"|"kg"|"kh"|"ki"|"km"|"kn"|"kp"|"kr"|"kw"|"ky"|"kz"|"la"|"lb"|
	    "lc"|"li"|"lk"|"lr"|"ls"|"lt"|"lu"|"lv"|"ly"|
            "ma"|"mc"|"md"|"mg"|"mh"|"mk"|"ml"|"mm"|"mn"|"mo"|"mp"|"mq"|"mr"|"ms"|"mt"|"mu"|"mv"|"mw"|"mx"|"my"|"mz"|
            "na"|"nc"|"ne"|"nf"|"ng"|"ni"|"nl"|"no"|"np"|"nr"|"nu"|"nz"|"om"|
            "pa"|"pe"|"pf"|"pg"|"ph"|"pk"|"pl"|"pm"|"pn"|"pr"|"ps"|"pt"|"pw"|"py"|"qa"|"re"|"ro"|"ru"|"rw"|
            "sa"|"sb"|"sc"|"sd"|"se"|"sg"|"sh"|"si"|"sj"|"sk"|"sl"|"sm"|"sn"|"so"|"sr"|"st"|"sv"|"sy"|"sz"|
            "tc"|"td"|"tf"|"tg"|"th"|"tj"|"tk"|"tl"|"tm"|"tn"|"to"|"tp"|"tr"|"tt"|"tv"|"tw"|"tz"|"ua"|
            "ug"|"uk"|"um"|"us"|"uy"|"uz"|"va"|"vc"|"ve"|"vg"|"vi"|"vn"|"vu"|"wf"|"ws"|"ye"|"yt"|"yu"|"za"|"zm"|"zw")

license.attribs = attribute jurisdiction {iana.tld}? & 
			   attribute version {xsd:string}?
license.model = permissions,prohibitions,requirements,description
license = element license {license.attribs& license.model}

permissions.attribs= attribute reproduction {"permitted" |" prohibited"} & 
		                   attribute distribution {"permitted" |" prohibited"} & 
		                   attribute derivative_works {"permitted" | "prohibited"}
permissions.model = description
permissions = element permissions {permissions.attribs & permissions.model}

prohibitions.attribs = attribute commercial_use {"prohibited" | "permitted"}
prohibitions.model = description
prohibitions = element prohibitions {prohibitions.attribs & prohibitions.model}

requirements.attribs = attribute notice {"required" | "not_required"} &      
        	                    attribute attribution {"required" | "not_required"} & 
          	                    attribute copyleft {"required" | "not_required"}
requirements.model = description
requirements = element requirements {requirements.attribs & requirements.model}

description.attribs = empty
description.model = text
description = element description {description.attribs & description.model}

start = license