---
name: "XML::Compile::Schema::Specs"
section: "3pm"
platform: "linux"
package: "libxml-compile-perl"
version: "1.64-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/XML::Compile::Schema::Specs"
---

# XML::Compile::Schema::Specs(3pm)

Predefined Schema Information

## NAME

XML::Compile::Schema::Specs - Predefined Schema Information

## SYNOPSIS

```
 # not for end-users
 use XML::Compile::Schema::Specs;
```

## DESCRIPTION

This package defines the various schema-specifications.

## METHODS

- XML::Compile::Schema::Specs-\>**builtInType**( \<$node\|undef\>, $expanded \| \<$uri,$local\>, %options )

  Provide an `$expanded` (full) type name or an namespace `$uri` and a `$local` node name.  Returned is a HASH with process information or `"undef"` if not found.

  ```
   -Option         --Default
    json_friendly    <false>
    sloppy_floats    <false>
    sloppy_integers  <false>
  ```

  - json\_friendly =\> BOOLEAN

    The READER is slightly different, to produce output which can be passed on to JSON serializers without need for conversion.  Implies `"sloppy_floats"`.

  - sloppy\_floats =\> BOOLEAN

    The float types of XML are all quite big, and support NaN, INF, and -INF. Perl's normal floats do not, and therefore Math::BigFloat is used.  This, however, is slow.  When true, your application will crash on any value which is not understood by Perl's default float... but run much faster.

  - sloppy\_integers =\> BOOLEAN

    the \<integer\> types must accept huge integers, which require `"Math::BigInt"` objects to process.  But often, Perl's normal signed 32bit integers suffice... which is good for performance, but not standard compliant.

- XML::Compile::Schema::Specs-\>**predefinedSchema**($uri)

  Return a HASH which contains the schema information for the specified `$uri` (or undef if it doesn't exist).

- XML::Compile::Schema::Specs-\>**predefinedSchemas**()

  Returns the uri of all predefined schemas.

## SEE ALSO

This module is part of XML-Compile distribution version 1.64, built on October 21, 2024. Website: *http://perl.overmeer.net/xml-compile/*

## LICENSE

Copyrights 2006-2024 by \[Mark Overmeer \<markov@cpan.org\>\]. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See *http://dev.perl.org/licenses/*
