| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 | 
							-                       Schema for Validation of XRC files
 
-                       ==================================
 
- 0. Overview
 
- -----------
 
- The files in this directory allow you to check correctness of the XRC files by
 
- verifying that their contents conforms to wxWidgets XRC schema. Doing this is a
 
- good way to detect some common errors in manually-written XRC files, even
 
- though it doesn't currently detect all the possible errors.
 
- 1. Installation
 
- ---------------
 
- To use them, you need to install Jing, a RELAX NG validator, on your system.
 
- Jing is available from http://www.thaiopensource.com/relaxng/jing.html and is a
 
- Java program, so it requires a working Java Runtime Environment installation.
 
- If you are using Windows and already have a working JRE, you can download Jing
 
- packaged as a Windows executable from
 
-     http://sourceforge.net/projects/wxwindows/files/tools/jing.zip/download
 
- 2. Usage
 
- --------
 
- Once you have a working version of Jing, you can use it directly as following:
 
-     jing -c http://www.wxwidgets.org/wxxrc your-file.xrc
 
- Alternatively, you can also use wxrc --validate or --validate-only options:
 
-     wxrc --validate-only your-file.xrc
 
- (notice that this still requires jing to be installed).
 
- 3. Customization
 
- ----------------
 
- Using xrc_schema.rnc only validates the standard wxWidgets classes and skips
 
- any custom ones, for which you might have your own XRC handlers defined. If
 
- you don't use any custom XRC handlers at all, you may prefer to use
 
- xrc_schema_builtin_only.rnc schema instead of xrc_schema.rnc which won't accept
 
- any non-standard classes at all -- this is useful for detecting any typos.
 
- If you do use your own custom classes, then you need to define your own
 
- validations rules for them. Please see comments in xrc_schema.rnc for more
 
- details about how to do it, but here is a motivating example showing that it is
 
- not too difficult to validate your own classes:
 
-     #
 
-     # RELAX NG schema for extended XRC with support for custom handlers.
 
-     #
 
-     default namespace = "http://www.wxwidgets.org/wxxrc"
 
-     namespace xrc = "http://www.wxwidgets.org/wxxrc"
 
-     include "http://www.wxwidgets.org/wxxrc" {
 
-         customClasses = RoundingButtons | InputSequenceEntry
 
-     }
 
-     # Simplest possible example: no special properties for this handler.
 
-     RoundingButtons =
 
-         element object {
 
-             attribute class { "RoundingButtons" } &
 
-             stdObjectNodeAttributes &
 
-             stdWindowProperties
 
-         }
 
-     # This handler has an optional property called "title" containing text.
 
-     InputSequenceEntry =
 
-         element object {
 
-             attribute class { "InputSequenceEntry" } &
 
-             stdObjectNodeAttributes &
 
-             stdWindowProperties &
 
-             [xrc:p="o"] element title {_, t_text }*
 
-         }
 
- To use a custom schema, you need to pass the full path to the local file
 
- containing it to Jing or use wxrc --xrc-schema command line option, so you
 
- could do, for example:
 
-     jing -c $(WXWIN)/misc/schema/xrc_schema_builtin_only.rnc your-file.xrc
 
- or
 
-     wxrc --validate-only --xrc-schema=my_custom.rnc your-file.xrc
 
 
  |