From W3C XForms Group Wiki (Public)
xforms-20.rnc
# -*- rnc -*-
# Namespaced XForms 2.0 schema in RELAX NG
#
# Copyright (C) 2009-2011 W3C (R); (MIT, ERCIM, Keio), All Rights Reserved.
#
#
# Permission to use, copy, modify and distribute this RELAX NG schema
# for XForms 2.0 and its accompanying documentation for any purpose and
# without fee is hereby granted in perpetuity, provided that the above
# copyright notice and this paragraph appear in all copies. The copyright
# holders make no representation about the suitability of this RELAX NG
# schema for any purpose.
#
# It is provided "as is" without expressed or implied warranty.
# For details, please refer to the W3C software license at:
#
# http://www.w3.org/Consortium/Legal/copyright-software
namespace xf = "http://www.w3.org/2002/xforms"
include "xforms-nons-20.rnc" inherit = xf {
xforms.anyForeignElement = element (* - xf:*) {
(attribute * { text }
| text
| xforms.anyForeignElement)*
}
}
# repeat attributes in xf namespace
xforms.repeat-nodeset.attr = attribute xf:repeat-nodeset { XPathExpression } # deprecated
xforms.repeat-ref.attr = attribute xf:repeat-ref { XPathExpression }
xforms.repeat-indexref.attr = attribute xf:repeat-indexref { XPathExpression }
xforms.repeat-bind.attr = attribute xf:repeat-bind { xsd:IDREF }
xforms.repeat-model.attr = attribute xf:repeat-mode { xsd:IDREF }
xforms.repeat-startindex.attr = attribute xf:repeat-startindex { xsd:positiveInteger }
xforms.repeat-number.attr = attribute xf:repeat-number { xsd:nonNegativeInteger }
xforms.repeat-various.attrs = xforms.repeat-ref.attr?,
xforms.repeat-nodeset.attr?, xforms.repeat-bind.attr?,
xforms.repeat-model.attr?, xforms.repeat-startindex.attr?, xforms.repeat-number.attr?,
xforms.repeat-indexref?
# xforms elements
xforms.group.attrib &= xforms.repeat-various.attrs
# bind and ref attributes in xf namespace
xforms.bind.attr = attribute xf:bind { xsd:IDRef }
xforms.ref.attr = attribute xf:ref { XPathExpression }