The xsd2jsonschema command converts one or more W3C XML Schema 1.0 or 1.1 documents to a JSON Schema document.
raptorxmlxbrl xsd2jsonschema [options] XSDFile |
•The XSDFile argument is the XML Schema file to convert.
•Use the --schema-conversion-output option to specify the location of the generated XSD file.
Example
Example of the xsd2jsonschema command:
•raptorxmlxbrl xsd2jsonschema --schema-conversion-output=c:\MyJSONSchema.json c:\MyXSDSchema.xsd
RaptorXMLXBRL (and RaptorXMLXBRLServer for administration commands) on Windows raptorxmlxbrl (and raptorxmlxbrlserver for administration commands) on Windows and Unix (Linux, Mac) * Note that lowercase (raptorxmlxbrl and raptorxmlxbrlserver) works on all platforms (Windows, Linux, and Mac), while upper-lower (RaptorXMLXBRL) works only on Windows and Mac. * Use forward slashes on Linux and Mac, backslashes on Windows. |
On Windows systems: When spaces or special characters occur in strings (for example in file or folder names, or company, person or product names), use quotes: for example, "My File". Note, however, that a backslash followed by a double-quotation mark (for example, "C:\My directory\") might not be read correctly. This is because the backslash character is also used to indicate the start of an escape sequence, and the escape sequence \" stands for the double-quotation mark character. If you want to escape this sequence of characters, use a preceding backslash, like this: \\". To summarize: If you need to write a file path that contains spaces or an end backslash, write it like this: "C:\My Directory\\". |
Options
Options are listed in short form (if available) and long form. You can use one or two dashes for both short and long forms. An option may or may not take a value. If it takes a value, it is written like this: --option=value. Values can be specified without quotes except in two cases: (i) when the value string contains spaces, or (ii) when explicitly stated in the description of the option that quotes are required. If an option takes a Boolean value and no value is specified, then the option's default value is TRUE. Use the --h, --help option to display information about the command.
--schema-imports = load-by-schemalocation | load-preferring-schemalocation | load-by-namespace | load-combining-both | license-namespace-only Specifies the behaviour of xs:import elements, each of which has an optional namespace attribute and an optional schemaLocation attribute: <import namespace="someNS" schemaLocation="someURL">. The option specifies whether to load a schema document or just license a namespace, and, if a schema document is to be loaded, which information should be used to find it. Default: load-preferring-schemalocation. The behavior is as follows: •load-by-schemalocation: The value of the schemaLocation attribute is used to locate the schema, taking account of catalog mappings. If the namespace attribute is present, the namespace is imported (licensed). •load-preferring-schemalocation: If the schemaLocation attribute is present, it is used, taking account of catalog mappings. If no schemaLocation attribute is present, then the value of the namespace attribute is used via a catalog mapping. This is the default value. •load-by-namespace: The value of the namespace attribute is used to locate the schema via a catalog mapping. •load-combining-both: If either the namespace or schemaLocation attribute has a catalog mapping, then the mapping is used. If both have catalog mappings, then the value of the --schema-mapping option (XBRL option and XML/XSD option) decides which mapping is used. If no catalog mapping is present, the schemaLocation attribute is used. •license-namespace-only: The namespace is imported. No schema document is imported. |
--schema-mapping = prefer-schemalocation | prefer-namespace If schema location and namespace are both used to find a schema document, specifies which of them should be preferred during catalog lookup. (If either the --schemalocation-hints or the --schema-imports option has a value of load-combining-both, and if the namespace and URL parts involved both have catalog mappings, then the value of this option specifies which of the two mappings to use (namespace mapping or URL mapping; the prefer-schemalocation value refers to the URL mapping).) Default is prefer-schemalocation. |
--schemalocation-hints = load-by-schemalocation | load-by-namespace | load-combining-both | ignore Specifies the behavior of the xsi:schemaLocation and xsi:noNamespaceSchemaLocation attributes: Whether to load a schema document, and, if yes, which information should be used to find it. Default: load-by-schemalocation. •The load-by-schemalocation value uses the URL of the schema location in the xsi:schemaLocation and xsi:noNamespaceSchemaLocation attributes in XML or XBRL instance documents. This is the default value. •The load-by-namespace value takes the namespace part of xsi:schemaLocation and an empty string in the case of xsi:noNamespaceSchemaLocation and locates the schema via a catalog mapping. •If load-combining-both is used and if either the namespace part or the URL part has a catalog mapping, then the catalog mapping is used. If both have catalog mappings, then the value of the --schema-mapping option (XBRL option and XML/XSD option) decides which mapping is used. If neither the namespace nor URL has a catalog mapping, the URL is used. •If the option's value is ignore, then the xsi:schemaLocation and xsi:noNamespaceSchemaLocation attributes are both ignored. |
|
--report-import-namespace-mismatch-as-warning = true|false Downgrades namespace or target-namespace mismatch errors when importing schemas with xs:import from errors to warnings. The default value is false. Note: Boolean option values are set to true if the option is specified without a value. |
--xinclude = true|false Enables XML Inclusions (XInclude) support. Default value is false. When false, XInclude's include elements are ignored. Note: Boolean option values are set to true if the option is specified without a value. |
--xml-mode-for-schemas = wf|id|valid Specifies the XML processing mode to use for XML schema documents: wf=wellformed check; id=wellformed with ID/IDREF checks; valid=validation. Default value is wf. Note that a value of valid requires that each schema document loaded during processing references a DTD. If no DTD exists, an error is reported. |
--xsd-version = 1.0|1.1|detect Specifies the W3C Schema Definition Language (XSD) version to use. Default is 1.0. This option can also be useful to find out in what ways a schema which is 1.0-compatible is not 1.1-compatible. The detect option is an Altova-specific feature. It enables the version of the XML Schema document (1.0 or 1.1) to be detected by reading the value of the vc:minVersion attribute of the document's <xs:schema> element. If the value of the @vc:minVersion attribute is 1.1, the schema is detected as being version 1.1. For any other value, or if the @vc:minVersion attribute is absent, the schema is detected as being version 1.0. |
|
--array-and-item = true|false If set to true, the generated JSON Schema will permit not only arrays but also single items for particles with maxOccurs > 1. The default is true. Note: Boolean option values are set to true if the option is specified without a value. |
--consider-format = true|false If set to true, datatypes in the source schema are converted, if possible, to the corresponding type in the target schema. The default value is false. Note: Boolean option values are set to true if the option is specified without a value. |
--jsonschema-version = draft04|draft06|draft07|2019-09|2020-12|oas-3.1|latest|detect Specifies which version of the JSON Schema specification draft version to use. Default is detect. |
--property-for-comments = true|false If set to true, creates a property named '#' in each sub-schema to support comments. The default is false. Note: Boolean option values are set to true if the option is specified without a value. |
--property-for-pis = true|false If set to true, creates a pattern property matching properties prefixed with '?' to support XML processing instructions. The default is false. Note: Boolean option values are set to true if the option is specified without a value. |
--property-for-xmlns = true|false If set to true, creates a pattern property matching properties prefixed with '@xmlns' in each sub-schema to support namespace declaration. The default is false. Note: Boolean option values are set to true if the option is specified without a value. |
--property-for-xsi = true|false If set to true, creates a pattern property matching properties prefixed with '@xsi' in each sub-schema to support xsi:* attributes, such as xsi:schemaLocation. The default is false. Note: Boolean option values are set to true if the option is specified without a value. |
--simple-content-pure-object= true|false If set to true, creates a pure object for complex types with simple content. The default is false. Note: Boolean option values are set to true if the option is specified without a value. |
--o, --schema-converson-output = FILE Sets the path and name of the file to which the result of the conversion is sent. |
--simplify-occurrence-constraints = true|false If set to true: (i) occurrence definitions in the XML Schema are simplified to either required or optional in the JSON Schema: (ii) repeatable elements in the XML Schema are simplified to arrays with unbounded maxItems. The default is false. Note: Boolean option values are set to true if the option is specified without a value. |
--xml-mode = wf|id|valid Specifies prefix URI mappings for the namespaces in the XML Schema. |
|
--error-format = text|shortxml|longxml Specifies the format of the error output. Default value is text. The other options generate XML formats, with longxml generating more detail. |
--error-limit = N | unlimited Specifies the error limit with a value range of 1 to 9999 or unlimited. The default value is 100. Processing stops when the error limit is reached. Useful for limiting processor use during validation/transformation. |
--info-limit = N | unlimited Specifies the information message limit in the range 1-65535 or unlimited. Processing continues if the specified info limit is reached, but further messages are not reported. The default value is 100. |
--help Displays help text for the command. For example, valany --h. (Alternatively the help command can be used with an argument. For example: help valany.) |
--listfile = true|false If true, treats the command's InputFile argument as a text file containing one filename per line. Default value is false. (An alternative is to list the files on the CLI with a space as separator. Note, however, that CLIs have a maximum-character limitation.) Note that the --listfile option applies only to arguments, and not to options. Note: Boolean option values are set to true if the option is specified without a value. |
--log-output = FILE Writes the log output to the specified file URL. Ensure that the CLI has write permission to the output location. |
--network-timeout = VALUE Specifies the timeout in milliseconds for remote I/O operations. Default is: 40000. |
--recurse = true|false Used to select files within sub-directories, including in ZIP archives. If true, the command's InputFile argument will select the specified file also in subdirectories. For example: "test.zip|zip\test.xml" will select files named test.xml at all folder levels of the zip folder. References to ZIP files must be given in quotes. The wildcard characters * and ? may be used. So, *.xml will select all .xml files in the (zip) folder. The option's default value is false. Note: Boolean option values are set to true if the option is specified without a value. |
--verbose = true|false A value of true enables output of additional information during validation. Default value is false. Note: Boolean option values are set to true if the option is specified without a value. |
--verbose-output = FILE Writes verbose output to FILE. |
--version Displays the version of RaptorXML+XBRL Server. If used with a command, place --version before the command. |
--warning-limit = N | unlimited Specifies the warning limit in the range 1-65535 or unlimited. Processing continues if this limit is reached, but further warnings are not reported. The default value is 100. |
|
--catalog = FILE Specifies the absolute path to a root catalog file that is not the installed root catalog file. The default value is the absolute path to the installed root catalog file (<installation-folder>\Altova\RaptorXMLXBRLServer2025\etc\RootCatalog.xml). See the section, XML Catalogs, for information about working with catalogs. |
--user-catalog = FILE Specifies the absolute path to an XML catalog to be used in addition to the root catalog. See the section, XML Catalogs, for information about working with catalogs. |
--enable-globalresources = true|false Enables global resources. Default value is false. Note: Boolean option values are set to true if the option is specified without a value. |
|