xmerl_eventp
[医]xmerl[医]事件
模块
[医]xmerl[医]事件
模块摘要
基于简单事件的xmerl前端[医]扫描流中XML文档的处理和SAX样式的解析。
描述
基于简单事件的xmerl前端[医]扫描流中XML文档的处理和SAX样式的解析。每个都包含更详细的xmerl设置。[医]用于使用自定义功能的扫描。
数据类型
option_list()
选项允许自定义扫描仪的行为。另见tutorial
关于定制功能。
可能的备选办法是:
{acc_fun, Fun}
回调函数来积累实体的内容。
{continuation_fun, Fun} | {continuation_fun, Fun, ContinuationState}
回调函数,以决定如果扫描仪在文档完成之前运行到EOF中,应该做什么。
{event_fun, Fun} | {event_fun, Fun, EventState}
回调函数来处理扫描器事件。
{fetch_fun, Fun} | {fetch_fun, Fun, FetchState}
回调函数来获取外部资源。
{hook_fun, Fun} | {hook_fun, Fun, HookState}
回调函数来处理文档实体。
{close_fun, Fun}
当文档被完全解析时调用。
{rules, ReadFun, WriteFun, RulesState} | {rules, Rules}
解析时处理扫描程序信息的存储。
{user_state, UserState}
可从所有自定义函数访问全局状态变量
{fetch_path, PathList}
PathList是在获取文件时要搜索的目录列表。如果所讨论的文件不在获取中[医]路径时,URI将用作文件名。
{space, Flag}
%27保留%27%28默认%29以保留空格,%27正常化%27以累积连续空格并将其替换为一个空格。
{line, Line}
若要指定包含XML片段的文档中的扫描起始行,请执行以下操作。
{namespace_conformant, Flag}
控制是否作为符合命名空间的XML解析器行为,'false'(默认)不是'true'。
{validation, Flag}
控制是否作为验证XML解析器进行处理:“关闭”(默认)不验证,或者通过DTD验证“DTD”或通过XML架构验证“模式”。'false'和'true'选项已过时(即可能在未来的版本中删除),如果使用'false'等于'off'且'true'等于'dtd'。
{schemaLocation, [{Namespace,Link}|...]}
显式地告诉要使用哪些XML架构文档来验证XML文档。与{validation,schema}
选择。
{quiet, Flag}
如果xmerl应该安静地行为并且不将任何信息输出到标准输出(默认为“false”),则设置为'true'。
{doctype_DTD, DTD}
允许在XML文档中不可用时指定DTD名称。此选项仅与{validation,'dtd'
选件一起使用。
{xmlbase, Dir}
XMLBase目录。如果使用字符串/1,则默认值为当前目录。如果使用file/1,默认为给定文件的目录。
{encoding, Enc}
设置默认字符集使用%28默认UTF-8%29。只有当XML声明没有显式地给出此字符集时,才使用此字符集。
{document, Flag}
如果xmerl应该将完整的XML文档作为xmlDocument记录返回(默认为“false”),则设置为'true'。
{comments, Flag}
如果xmerl应该跳过注释,则设置为'false',否则它们将作为xmlComment记录返回(默认为'true')。
{default_attrs, Flag}
如果xmerl应该添加到缺少具有定义的默认值的属性的元素(默认值为“false”),则设置为'true'。
xmlElement()= #xmlElement {}
出口
file_sax(Fname::string(), CallBackModule::atom(), UserState, Options::option_list()) -> NewUserState
包含XML文档的解析文件,SAX样式。调用XML解析器的包装器xmerl_scan
带着hook_fun
用于在解析实体之后直接使用xmerl导出功能。
stream(Fname::string(), Options::option_list()) ->xmlElement()
将包含XML文档的文件解析为流,DOM样式。包装器的XML解析器的调用xmerl_scan
与continuation_fun
用于处理XML数据流。需要注意的是continuation_fun
,acc_fun
,fetch_fun
,rules
和close_fun
选项不能被用户在使用此解析器定义。
stream_sax(Fname, CallBack::CallBackModule, UserState, Options) ->xmlElement()
类型
将包含XML文档的文件解析为流,SAX样式。包装器的XML解析器的调用xmerl_scan
与continuation_fun
用于处理XML数据流。需要注意的是continuation_fun
,acc_fun
,fetch_fun
,rules
,hook_fun
,close_fun
并user_state
不能使用该解析器用户定义的选项。
string_sax(String::list(), CallBackModule::atom(), UserState, Options::option_list()) ->xmlElement()
包含XML文档的解析文件,SAX样式。调用XML解析器的包装器xmerl_scan
带着hook_fun
用于在解析实体之后直接使用xmerl导出功能。