- From: John Cowan <cowan@ccil.org>
- Date: Sat, 18 Jul 2009 15:41:50 -0400
- To: Norman Walsh <ndw@nwalsh.com>
- Cc: public-xml-core-wg@w3.org
Norman Walsh scripsit: > I've published the latest editor's draft of XLink 1.1: > > http://www.w3.org/XML/Group/2004/xmlcore/xlink11/ [snip] > John, can you verify that I got the right RNC? No, that's the one used prior to the introduction of simple conformance. Here's what you should have: The following RELAX NG grammar files, expressed in the compact syntax, validate XLink 1.1. Validating against xlink-simple.rnc checks for simple conformance; validating against xlink.rnc (which depends on xlink-simple.rnc) checks for full conformance. These files are provided only as a convenience for application developers; they have no normative status. xlink.rnc: namespace xlink = "http://www.w3.org/1999/xlink" include "xlink-simple.rnc" { anyElement = simple | extended | foreignElement } label.att = attribute xlink:label {xsd:NCName} from.att = attribute xlink:from {xsd:NCName} to.att = attribute xlink:to {xsd:NCName} extended = element * { attribute xlink:type {"extended"}, foreign.att*, role.att?, title.att?, (title | resource | locator | arc | anyElement | text)* } title = element * { attribute xlink:type {"title"}, foreign.att*, (anyElement | text)* } resource = element * { attribute xlink:type {"resource"}, foreign.att*, role.att?, title.att?, label.att?, (anyElement | text)* } locator = element * { attribute xlink:type {"locator"}, foreign.att*, href.att, role.att?, title.att?, label.att?, (title | anyElement | text)* } arc = element * { attribute xlink:type {"arc"}, foreign.att*, arcrole.att?, title.att?, from.att?, to.att?, show.att?, actuate.att?, (title | anyElement | text)* } xlink-simple.rnc: namespace xlink = "http://www.w3.org/1999/xlink" start = anyElement anyElement = simple | foreignElement foreignElement = element * - xlink:* { foreign.att*, (anyElement | text)* } simple.type = attribute xlink:type {"simple"} href.att = attribute xlink:href {xsd:anyURI} role.att = attribute xlink:role {xsd:anyURI} arcrole.att = attribute xlink:arcrole {xsd:anyURI} title.att = attribute xlink:title {text} show.att = attribute xlink:show {"new"|"replace"|"embed"|"other"|"none"} actuate.att = attribute xlink:actuate {"onLoad"|"onRequest"|"other"|"none"} foreign.att = attribute * - xlink:* {text} simple = element * { (simple.type | href.att | (simple.type, href.att)), foreign.att*, role.att?, arcrole.att?, title.att?, show.att?, actuate.att?, (anyElement | text)* } > Everyone, why are we not including a DTD? What is Appendix B, chopped liver? That said, I think we should remove the word "sample" from Apps C and D. The DTD validates one possible set of conventions for using XLink; the XML Schema (I think) and the RNG (for sure) validate any XLink-using document. -- Unless it was by accident that I had John Cowan offended someone, I never apologized. cowan@ccil.org --Quentin Crisp http://www.ccil.org/~cowan
Received on Saturday, 18 July 2009 19:42:26 UTC