text:   {}
  See blockNamespace()
  See addHook(). Adds one HOOK (HASH).
  See addHooks().
  (WRITER) Usually, a
  mistake warning"
  Translate XML element local-names into different Perl keys. See "Key rewrite".
  HASH of Schema type to Perl object or Perl class. See "Typemaps", the serialization of objects.
  HOOKDATA is a LIST of options as key-value pairs, HOOK is a HASH with the same data.
  undef is ignored. See addHooks() and "Schema hooks" below.
  Add multiple hooks at once. These must all be HASHes. See "Schema hooks" and addHook().
  undef values are ignored.".
  See "Accessors" in XML::Compile
  Collect all the schemas defined in the XML data. The XML parameter must be a XML::LibXML node, therefore it is advised to use importDefinitions(), which has a much more flexible way to specify the data.
  -Option --Default attribute_form_default <undef> element_form_default <undef> filename undef source undef target_namespace <undef>
  Overrule the default as found in the schema. Many old schemas (like WSDL11 and SOAP11) do not specify the correct default element form in the schema but only in the text.
  Explicitly state from which file the data is coming.
  An indication where this schema data was found. If you use dataToXML() in LIST context, you get such an indication.
  Overrule (or set) the target namespace in the schema.
  Synonym for addTypemap().
  Add new XML-Perl type relations. See "Typemaps".
  Block all references to a NAMESPACE).
  Returns the LIST of defined hooks (as HASHes). format, there the url is the name-space. An alternative is the
  url#id which refers to an element or type with the specific
  id attribute> key_rewrite [] mixed_elements 'ATTRIBUTES' namespace_reset <false> output_namespaces undef path <expanded name of type> permit_href <false> prefixes {} sloppy_floats <false> sloppy_integers <false> typemap {} use_default_namespace <false> validation <true> xsi_type {}.
  [0.89] In general,
  anyAttribute schema components cannot be handled automatically. If you need to create or process anyAttribute information, then read about wildcards in the DETAILS chapter of the manual-page for the specific back-end. [pre-0.89] this option was named
  anyElement, which will still work.
  [0.89] In general,
  any schema components cannot be handled automatically. If you need to create or process any information, then read about wildcards in the DETAILS chapter of the manual-page for the specific back-end. [pre-0.89] this option was named
  anyElement, which will still work.
  [1.07] how to handle "anyType" type elements. Depends on the backend.
  When defined, this will overrule the
  attributeFormDefault flags in all schemas. When not qualified, the xml will not produce nor process prefixes on attributes.
  See blockNamespace()..".
  TOP|
  ALL|
  NONE|BOOLEAN
  When defined, this will overrule the namespace use on elements in all schemas. When
  TOP is specified, at least the top-element will be name-space qualified. When
  ALL or a true value is given, then all elements will be used qualified. When
  NONE or a false value is given, the XML will not produce or process prefixes on the elements.
  The
  form attributes will be respected, except on the top element when
  TOP is specified. Use hooks when you need to fix name-space use in more subtile ways.
  With
  element_form_default, you can correct whole schema's about their name-space behavior.
  Define one or more processing hooks. See "Schema hooks" below. These hooks are only active for this compiled entity, where addHook() and addHooks() can be used to define hooks which are used for all results of compile(). The hooks specified with the
  hook or
  hooks option are run before the global definitions.
  Alternative for option
  hook..
  Overrules what is set with new(ignore_unused_tags).
  Indicates whether the WRITER should include the prefix to namespace translation on the top-level element of the returned tree..
  Found in the schema wild-life: people who think that nillable means optional. Not too hard to fix. For the WRITER, you still have to state NIL explicitly, but the elements are not constructed. The READER will output NIL when the nillable elements are missing.
  Add key rewrite rules to the front of the list of rules, as set by new(key_rewrite) and addKeyRewrite(). See "Key rewrite"
  What to do when mixed schema elements are to be processed. Read more in the "DETAILS" section below.
  Use the same prefixes in
  prefixes as with some other compiled piece, but reset the counts to zero first.
  [Pre-0.87] name for the
  prefixes option. Deprecated.
  Prepended to each error report, to indicate the location of the error in the XML-Scheme tree.
  When parsing SOAP-RPC encoded messages, the elements may have a
  href attribute, pointing to an object with
  id. The READER will return the unparsed, unresolved node when the attribute is detected, and the SOAP-RPC decoder will have to discover and resolve it.
  Can be used to pre-define prefixes for namespaces (for 'WRITER' or key rewrite) for instance to reserve common abbreviations like
  soap for external use. Each entry in the hash has as key the namespace uri. The value is a hash which contains
  uri,
  prefix, and
  used fields.. are nearly but not fully transparently mimicing.
  Add this typemap to the relations defined by new(typemap) or addTypemaps()
  [0.91] When mixing qualified and unqualified namespaces, then the use of a default namespace can be quite confusing: a name-space without prefix. Therefore, by default, all qualified elements will have an explicit prefix.
  XML message must be validated, to lower the chance on abuse. However, of course, it costs performance which is only partially compensated by fewer checks in your code. This flag overrules the
  check_values,
  check_occurs, and
  ignore_facets.
  See "Handling xsi:type". The HASH maps types as mentioned in the schema, to extensions of those types which are addressed via the horrible
  xsi:type construct. When you specify
  AUTO as value, the translator tries to auto-detect. This may be slow and may produce incomplete results.
  See "Compilers" in XML::Compile
  See "Compilers" in XML::Compile [] show_comments ALL skip_header <false>
  By default, do not show abstract types in the output.
  The leading indentation string per nesting. Must start with at least one blank.
  A comma separated list of tokens, which explain what kind of comments need to be included in the output. The available tokens are:
  struct,
  type,
  occur,
  facets. A value of
  ALL will select all available comments. The
  NONE or empty string will exclude all comments.
  Skip the comment header from the output.
  Returns true when the EXTTYPE extends the BASETYPE. See XML::Compile::Schema::NameSpaces::doesExtend()
  List all elements, defined by all schemas sorted alphabetically.
  See "Administration" in XML::Compile>
  Overrule the details information about the source of the data.
  example: of use of importDefinitions
  my $schema = XML::Compile::Schema->new; $schema->importDefinitions('my-spec.xsd'); my $other = "<schema>...</schema>"; # use 'HERE' documents! my @specs = ('my-spec.xsd', 'types.xsd', $other); $schema->importDefinitions(\@specs, @options);
  See "Administration" in XML::Compile
  Returns the XML::Compile::Schema::NameSpaces object which is used to collect schemas.
  Print all the elements which are defined in the schemas to the FILEHANDLE (by default the selected handle). OPTIONS are passed to XML::Compile::Schema::NameSpaces::printIndex() and XML::Compile::Schema::Instance::printIndex().
  List all types, defined by all schemas sorted alphabetically.
  See "Administration" in XML::Compile.
  These containers not only have attributes, but also multiple values as content. The
  complexContent is used to create inheritance structures in the data-type definition. This does not affect the XML data package itself...
   implements.
  You can use hooks, for instance, to block processing parts of the message, to create work-arounds for schema bugs, or to extract more information during the process than done by default., ...]);.] } );
  Let's start with an appology:!
  Replace dashes (-) with underscores (_).
  Rewrite rule with the constant name (STRING)
  SIMPLIFIED will replace all dashes with underscores, translate capitals into lowercase, and remove all other characters which are none-bareword (if possible, I am too lazy to check) rule is provided as well, then still only one prefix is added.