SchemaFactory.NewSchema 方法

定义

重载

NewSchema(ISource[])

将指定的源分析为架构,并将其作为架构返回。

NewSchema(ISource)

将指定的源分析为架构,并将其作为架构返回。

NewSchema()

创建一个特殊 Schema 对象。

NewSchema(File)

分析指定 File 为架构并将其作为一个 Schema

NewSchema(URL)

分析指定 URL 为架构并将其作为一个 Schema

NewSchema(ISource[])

将指定的源分析为架构,并将其作为架构返回。

[Android.Runtime.Register("newSchema", "([Ljavax/xml/transform/Source;)Ljavax/xml/validation/Schema;", "GetNewSchema_arrayLjavax_xml_transform_Source_Handler")]
public abstract Javax.Xml.Validation.Schema? NewSchema (Javax.Xml.Transform.ISource[]? schemas);
[<Android.Runtime.Register("newSchema", "([Ljavax/xml/transform/Source;)Ljavax/xml/validation/Schema;", "GetNewSchema_arrayLjavax_xml_transform_Source_Handler")>]
abstract member NewSchema : Javax.Xml.Transform.ISource[] -> Javax.Xml.Validation.Schema

参数

schemas
ISource[]

要分析的输入。 SchemaFactory 是识别 StreamSourcejavax.xml.transform.sax.SAXSourcejavax.xml.transform.dom.DOMSource

返回

始终返回非 null 有效 Schema 对象。 请注意,报告错误时,不能保证返回 Schema 的对象有意义。

属性

例外

如果在处理指定输入期间发现错误。 设置时 IErrorHandler ,首先会向那里报告错误。 请参阅 ErrorHandler

schemas如果参数本身为 null 或数组中的任何项为 null。

如果此方法无法识别数组中的任何项。

如果架构语言不支持此操作。

注解

将指定的源分析为架构,并将其作为架构返回。

被调用方将读取所有 Sources 并将其合并为单个架构。 组合的确切语义取决于为此 SchemaFactory 对象创建的架构语言。

设置时 ErrorHandler ,被调用方会将源中找到的所有错误报告给处理程序。 如果处理程序引发异常,它将中止架构编译,并且将从此方法引发相同的异常。 此外,在向处理程序报告错误后,调用方可以通过引发该错误来中止进一步处理。 如果未设置错误处理程序,被调用方将引发在源中找到的第一个错误。

<h2>W3C XML 架构 1.0</h2>

生成的架构包含来自指定源的组件。 如果所有这些源都以与源相同的顺序被导入到具有不同 targetNamespace 且没有其自己的组件的单个架构文档中,则所有这些源都使用适当的值导入架构和命名空间时,将实现相同的结果。 XML 架构建议的第 4.2.3 节介绍了处理器在这方面具有的选项。 虽然处理器在处理 JAXP 架构源和 XML 架构导入时应保持一致,但符合 JAXP 分析程序的行为可能会有所不同:具体而言,分析器可以选择忽略除了第一个 < 外的所有项> 导入给定命名空间,而不考虑 schemaLocation 中提供的信息。

如果分析的架构集包含 XML 架构规范第 5.1 节中指定的错误(s),则必须将错误报告给该 ErrorHandler错误。

<h2>RELAX NG</h2>

对于 RELAX NG,此方法必须引发 UnsupportedOperationException (如果 schemas.length!=1)。

适用于 . 的 javax.xml.validation.SchemaFactory.newSchema(javax.xml.transform.Source[])Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

NewSchema(ISource)

将指定的源分析为架构,并将其作为架构返回。

[Android.Runtime.Register("newSchema", "(Ljavax/xml/transform/Source;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljavax_xml_transform_Source_Handler")]
public virtual Javax.Xml.Validation.Schema? NewSchema (Javax.Xml.Transform.ISource? schema);
[<Android.Runtime.Register("newSchema", "(Ljavax/xml/transform/Source;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljavax_xml_transform_Source_Handler")>]
abstract member NewSchema : Javax.Xml.Transform.ISource -> Javax.Xml.Validation.Schema
override this.NewSchema : Javax.Xml.Transform.ISource -> Javax.Xml.Validation.Schema

参数

schema
ISource

表示架构的源。

返回

分析中的新增 Schema 功能 schema

属性

例外

如果在分析期间发生 SAX 错误。

如果为 null,则为 schema null。

注解

将指定的源分析为架构,并将其作为架构返回。

这是一 #newSchema(Source[] schemas)种方便的方法。

适用于 . 的 javax.xml.validation.SchemaFactory.newSchema(javax.xml.transform.Source)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

NewSchema()

创建一个特殊 Schema 对象。

[Android.Runtime.Register("newSchema", "()Ljavax/xml/validation/Schema;", "GetNewSchemaHandler")]
public abstract Javax.Xml.Validation.Schema? NewSchema ();
[<Android.Runtime.Register("newSchema", "()Ljavax/xml/validation/Schema;", "GetNewSchemaHandler")>]
abstract member NewSchema : unit -> Javax.Xml.Validation.Schema

返回

始终返回非 null 有效 Schema 对象。

属性

例外

如果被调用方不支持此操作。

如果支持此操作,但出于某种原因失败。

注解

创建一个特殊 Schema 对象。

返回 Schema 对象的确切语义取决于为其 SchemaFactory 创建的架构语言。

此外,允许实现使用特定于实现的属性/功能来更改此方法的语义。

<h2>W3C XML 架构 1.0</h2>

对于 XML 架构,此方法创建一个 Schema 对象,该对象使用文档中指定的位置提示执行验证。

返回 Schema 的对象假定如果文档引用架构位置提示中的同一 URL,它们将始终解析为相同的架构文档。 此假设允许实现重用架构文档分析的结果,以便针对同一架构的多个验证运行速度更快。

请注意,使用架构位置提示会导致拒绝服务攻击的漏洞。

<h2>RELAX NG</h2>

RELAX NG 不支持此操作。

适用于 . 的 javax.xml.validation.SchemaFactory.newSchema()Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

NewSchema(File)

分析指定 File 为架构并将其作为一个 Schema

[Android.Runtime.Register("newSchema", "(Ljava/io/File;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljava_io_File_Handler")]
public virtual Javax.Xml.Validation.Schema? NewSchema (Java.IO.File? schema);
[<Android.Runtime.Register("newSchema", "(Ljava/io/File;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljava_io_File_Handler")>]
abstract member NewSchema : Java.IO.File -> Javax.Xml.Validation.Schema
override this.NewSchema : Java.IO.File -> Javax.Xml.Validation.Schema

参数

schema
File

表示架构的文件。

返回

分析中的新增 Schema 功能 schema

属性

例外

如果在分析期间发生 SAX 错误。

如果为 null,则为 schema null。

注解

分析指定 File 为架构并将其作为一个 Schema

这是一 #newSchema(Source schema)种方便的方法。

适用于 . 的 javax.xml.validation.SchemaFactory.newSchema(java.io.File)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

NewSchema(URL)

分析指定 URL 为架构并将其作为一个 Schema

[Android.Runtime.Register("newSchema", "(Ljava/net/URL;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljava_net_URL_Handler")]
public virtual Javax.Xml.Validation.Schema? NewSchema (Java.Net.URL? schema);
[<Android.Runtime.Register("newSchema", "(Ljava/net/URL;)Ljavax/xml/validation/Schema;", "GetNewSchema_Ljava_net_URL_Handler")>]
abstract member NewSchema : Java.Net.URL -> Javax.Xml.Validation.Schema
override this.NewSchema : Java.Net.URL -> Javax.Xml.Validation.Schema

参数

schema
URL

URL 表示架构。

返回

分析中的新增 Schema 功能 schema

属性

例外

如果在分析期间发生 SAX 错误。

如果为 null,则为 schema null。

注解

分析指定 URL 为架构并将其作为一个 Schema

这是一 #newSchema(Source schema)种方便的方法。

适用于 . 的 javax.xml.validation.SchemaFactory.newSchema(java.net.URL)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于