matlab.io.xml.dom.ParserConfiguration 类
命名空间: matlab.io.xml.dom
描述
使用 matlab.io.xml.dom.ParserConfiguration
对象的属性为表示为 matlab.io.xml.dom.Parser
对象的 XML 解析器指定选项。创建 Parser
对象时,会创建 ParserConfiguration
对象。使用 Parser
对象的 Configuration
属性来访问 ParserConfiguration
对象。
matlab.io.xml.dom.ParserConfiguration
类是一个 handle
类。
属性
Namespaces
— 元素名称前缀是否需要声明的命名空间
true
(默认) | false
元素名称前缀是否需要声明的命名空间,指定为 true
或 false
。如果值为 true
,解析器会在输出文档中包含以下元素:
名称没有前缀的元素
名称具有声明的前缀的元素
如果值为 false
,解析器还会包含具有未声明前缀的元素。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
LoadExternalDTD
— 是否加载外部 DTD
true
(默认) | false
是否加载外部文档类型定义 (DTD),指定为 true
或 false
。如果值为 true
,解析器将加载由输入标记指定的外部 DTD。如果此选项为 false,解析器将忽略外部 DTD。
如果 Validate
属性设置为 true
,解析器将忽略 LoadExternalDTD
属性并加载 DTD。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
DisableEntityResolution
— 是否禁用实体引用的解析
false
(默认) | true
是否禁用实体引用的解析,指定为 true
或 false
。如果值为 true
,解析器不会尝试解析实体引用。如果值为 false
,解析器将尝试解析实体引用。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
AllowDoctype
— 文档类型定义 (DTD) 权限
false
(默认) | true
文档类型定义 (DTD)(指定为 true
或 false
)确定 XML 文件是否可以包含 DTD。如果指定的文件包含 DTD,则值 false
将导致错误。只能对可信源启用此选项。
Entities
— 是否在标记中展开实体引用
true
(默认) | false
是否在标记中展开实体引用,指定为 true
或 false
。如果值为 true
,则已解析的文档会保留外部实体引用。如果值为 false
,解析器将使用解析的内容替换外部实体引用。例如,假设要解析的文档的 DTD 将外部实体定义为 <!ENTITY sect SYSTEM "./sect.xml">
,其中 sect.xml
包含要包括在文档中的 XML 内容。然后,如果此属性为 false
,解析器会在解析的文档中使用 sect.xml
的内容替换 §
形式的实体引用。否则,引用将保留在已解析的文档中,并串行化为 §
。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
StandardURIConformant
— 是否强制应用 URI 合规
false
(默认) | true
是否强制应用统一资源标识符 (URI) 合规,指定为 true
或 false
。如果值为 true
,解析器将强制应用标准的 URI 合规。当解析器遇到格式错误的 URI 时,它会结束并报告错误。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
Validate
— 是否验证输入标记
false
(默认) | true
是否验证输入标记,指定为 true
或 false
。如果值为 true
,则文档必须指定语法(DTD 或架构),解析器根据该语法报告标记错误。如果值为 false
,并且文档指定了语法,则解析器可能解析语法,但不会根据语法验证输入。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
SkipDTDValidation
— 是否跳过输入的 DTD 验证
false
(默认) | true
是否跳过使用文档类型定义 (DTD) 对输入标记进行验证,指定为 true
或 false
。如果值为 true
,则解析器仅使用输入指定的 DTD 来解析实体引用。如果值为 false
并且 Validate
属性值为 true
,则解析器使用 DTD 来验证输入。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
Comments
— 是否在解析器输出中包含输入注释
true
(默认) | false
是否在解析器输出中包含输入注释,指定为 true
或 false
。如果值为 true
,解析器会在输出文档中包含输入注释。如果值为 false
,解析器将忽略注释。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
DoXInclude
— 是否处理 XInclude 声明
false
(默认) | true
是否处理输入 XML 中的 XInclude 声明,指定为 true
或 false
。如果值为 true
,解析器将包括由输出文档树中的 XInclude 声明指定的节点。如果值为 false
,解析器将忽略 XInclude 声明。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
ExternalSchemaLocation
— 用于验证具有命名空间的 XML 的外部架构的 URI
[]
(默认) | 字符向量 | 字符串标量
外部架构的统一资源标识符 (URI),该外部架构用于验证使用命名空间的 XML,指定为字符向量或字符串标量。指定的架构会覆盖由输入的 XML 标记指定的架构。
如果 URI 指定远程位置,解析器就会引发错误。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
ExternalNoNamespaceSchemaLocation
— 用于验证不带命名空间的 XML 的外部架构的 URI
[]
(默认) | 字符向量 | 字符串标量
外部架构的统一资源标识符 (URI),该外部架构用于验证不使用命名空间的 XML,指定为字符向量或字符串标量。指定的架构会覆盖由输入的 XML 标记指定的架构。
如果 URI 指定远程位置,解析器就会引发错误。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
LoadSchema
— 是否加载架构
true
(默认) | false
是否加载架构,指定为 true
或 false
。如果值为 true
并且 Schema
属性值为 true
,则解析器将加载由输入 XML 标记指定的架构。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
Schema
— 是否使用基于架构的标记验证
false
(默认) | true
是否使用基于架构的标记验证,指定为 true
或 false
。如果此属性和 Namespace
属性的值为 true
,解析器将根据架构验证 XML 标记。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
ValidateIfSchema
— 验证是否需要架构
false
(默认) | true
验证是否需要架构,指定为 true
或 false
。如果此属性和 Validate
属性的值为 true
,则仅在输入 XML 指定架构时才会进行验证。如果此属性的值为 false
,而 Validate
属性的值为 true
,则如果输入 XML 指定 DTD 或架构,会发生验证。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
SchemaFullChecking
— 是否启用完全架构约束检查
false
(默认) | true
是否启用完全架构约束检查,指定为 true
或 false
。true
值启用架构检查,以检查其中的粒子唯一归属约束错误和粒子派生限制约束错误。检查这些错误既耗时又占用大量内存。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
DatatypeNormalization
— 是否标准化 XML 输入中的空白
false
(默认) | true
是否标准化 XML 输入中的空白,指定为 true
或 false
。如果此属性的值为 true
,启用了验证,并且输入 XML 指定了架构,则解析器使用架构中为每个属性和元素数据类型定义的空白标准化选项来标准化元素和属性值中的空白。如果此属性的值为 false
,则架构仅标准化在 XML 1.0 标准中定义的属性值。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
IgnoreAnnotations
— 是否忽略架构标记中的注解
false
(默认) | true
是否忽略架构标记中的注解,指定为 true
或 false
。如果此属性的值为 true
,则解析器在解析架构时会忽略注解。如果此属性的值为 false
,解析器会将注解声明转换为架构输出中的注解节点。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
ValidateAnnotations
— 是否验证注解
false
(默认) | true
是否验证注解,指定为 true
或 false
。如果此属性的值为 true
,解析器将验证注解。每个注解都是独立验证的。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
GenerateSyntheticAnnotations
— 是否生成合成注解
false
(默认) | true
是否生成合成注解,指定为 true
或 false
。true
值表示生成合成注解。当架构组件具有非架构属性但没有子注解时,解析器会生成合成注解。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
CacheGrammarFromParse
— 是否缓存已解析的架构
false
(默认) | true
是否缓存已解析的架构,指定为 true
或 false
。如果值为 true
,则缓存架构语法以在后续解析中重用。无论 UseCachedGrammarInParse
属性的值如何,解析器都使用缓存的语法。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
UseCachedGrammarInParse
— 是否使用缓存的语法
false
(默认) | true
是否使用缓存的语法,指定为 true
或 false
。如果该值为 true
,解析器将使用缓存的架构语法(如果存在)。如果值为 false
,解析器将解析该架构。
如果 CacheGrammarFromParse
属性的值为 true
,则无论 UseCachedGrammarInParse
的设置如何,解析器都将使用缓存的语法。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
HandleMultipleImports
— 是否允许多个架构
false
(默认) | true
是否允许多个架构,指定为 true
或 false
。如果值为 true
,则可以在架构验证期间导入具有相同命名空间的多个架构。如果值为 false
,则不允许具有相同命名空间的多个架构。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
HasPSVI
— 是否保存架构验证后信息
false
(默认) | true
是否保存架构验证后信息,指定为 true
或 false
。如果值为 true
,解析器将保存架构验证后信息。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
IdentityConstraintChecking
— 是否检查标识约束
false
(默认) | true
是否检查标识约束,指定为 true
或 false
。true
值表示检查由与文档关联的架构指定的标识约束。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
EntityResolver
— 对实体引用进行解析的对象
[]
(默认) | matlab.io.xml.dom.EntityResolver
的子类的对象
对文档引用的实体进行解析的对象,指定为 matlab.io.xml.dom.EntityResolver
类的子类的对象。要使解析器能够解析文档引用的实体,请创建 matlab.io.xml.dom.EntityResolver
的子类,并将此属性设置为该子类的实例。
如果此属性的值为空,则解析器不会解析文档引用的实体。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
ErrorHandler
— 处理解析错误的对象
[]
(默认) | matlab.io.xml.dom.ErrorHandler
的子类的对象
处理解析错误的对象,指定为 matlab.io.xml.dom.ErrorHandler
类的子类对象。错误处理程序确定如何处理解析器在解析文件或字符串中的 XML 标记时遇到的错误。
如果此属性的值为空(默认值),则解析器使用默认错误处理程序。默认错误处理程序在遇到第一个解析错误时会终止解析,并抛出 MATLAB 错误。如果您要解析器在遇到标记错误后在可行的情况下继续解析,则请指定自定义错误处理程序。您可以通过创建 matlab.io.xml.dom.ErrorHandler
的子类并将此属性设置为该子类的实例来指定自定义错误处理程序。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
示例
版本历史记录
在 R2021a 中推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)