RelaxNG/publidoc.rnc
changeset 156 29405a66e77b
parent 155 1568fa18df9e
child 157 cad0deff68cd
--- a/RelaxNG/publidoc.rnc	lun. janv. 14 19:19:33 2013 +0100
+++ b/RelaxNG/publidoc.rnc	dim. janv. 20 10:13:22 2013 +0100
@@ -27,13 +27,13 @@
 
 top.head.content =
    (title, shorttitle?, subtitle?)?
- & identifier*
+ & (identifier, identifier?)?
  & copyright?
  & collection?
  & contributors?
  & date?
  & place?
- & source*
+ & (source, source?)?
  & keywordset?
  & subjectset?
  & abstract?
@@ -417,15 +417,18 @@
 
 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ identifier ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-identifier.uri = element identifier {
-   attribute type { "uri" }, xsd:anyURI
+identifier = element identifier {
+   (attribute type { "ean" }, xsd:token {pattern = "\d{13}"})
+ | (attribute type { "uri" }, xsd:anyURI)
 }
 
 identifier.ean = element identifier {
    attribute type { "ean" }, xsd:token {pattern = "\d{13}"}
 }
 
-identifier = identifier.uri | identifier.ean
+identifier.uri = element identifier {
+   attribute type { "uri" }, xsd:anyURI
+}
 
 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ copyright ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~