Home · All Classes · Modules · QSS HELP · QSS 案例 · VER007 HOME |
该QXmlSchema类提供了一个W3C XML模式的加载和验证。More...
该QXmlSchema类提供了一个W3C XML模式的加载和验证。
该QXmlSchema类加载,编译和验证,可以进一步通过用于XML实例文档验证的W3C XML Schema文件QXmlSchemaValidator。
下面的示例演示如何从网络加载一个XML Schema文件,并测试它是否是一个有效的架构文档:
QUrl url("http://www.schema-example.org/myschema.xsd"); QXmlSchema schema; if (schema.load(url) == true) qDebug() << "schema is valid"; else qDebug() << "schema is invalid";
这个类是用来表示符合的模式XML Schema1.0规范。
构造不能使用,直到无效,空架构load()被调用。
返回架构的文档URI或空的URI ,如果没有模式已定。
返回True如果这个模式是有效的。失效模式的例子是那些包含语法错误或不符合W3C的XML Schema规范。
此套QXmlSchema以从加载的模式sourceURI。
如果架构is invalid,false返回和行为是未定义的。
例如:
QUrl url("http://www.schema-example.org/myschema.xsd"); QXmlSchema schema; if (schema.load(url) == true) qDebug() << "schema is valid"; else qDebug() << "schema is invalid";
See also isValid( ) 。
此套QXmlSchema从读取架构source设备。该设备必须已经打开了至少QIODevice.ReadOnly。
documentUri表示从所获得的模式source设备。它是架构的基础URI,它在内部使用,以解决出现在架构相对URI ,以及消息的报告。
If source is null或无法读取,或者如果documentUri是不是一个有效的URI ,行为是未定义的。
如果架构is invalid,false返回和行为是未定义的。
例如:
QFile file("myschema.xsd"); file.open(QIODevice.ReadOnly); QXmlSchema schema; schema.load(&file, QUrl.fromLocalFile(file.fileName())); if (schema.isValid()) qDebug() << "schema is valid"; else qDebug() << "schema is invalid";
See also isValid( ) 。
此套QXmlSchema从读取架构data
documentUri表示从所获得的模式data。它是架构的基础URI,它在内部使用,以解决出现在架构相对URI ,以及消息的报告。
If documentUri是不是一个有效的URI ,行为是未定义的。
如果架构is invalid,false返回和行为是未定义的。
例如:
QByteArray data( "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" "<xsd:schema" " xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"" " xmlns=\"http://qt.nokia.com/xmlschematest\"" " targetNamespace=\"http://qt.nokia.com/xmlschematest\"" " version=\"1.0\"" " elementFormDefault=\"qualified\">" "</xsd:schema>" ); QXmlSchema schema; schema.load(data); if (schema.isValid()) qDebug() << "schema is valid"; else qDebug() << "schema is invalid";
See also isValid()和isValid( ) 。
返回处理这个编译和验证消息的消息处理程序QXmlSchema。
See also setMessageHandler( ) 。
返回此名称池QXmlSchema构建names。有没有setter的名字池,因为混合池的名称会导致错误,由于名称的混乱。
返回该网络管理器,或0 ,如果它没有被设置。
See also setNetworkAccessManager( ) 。
更改message handler这QXmlSchema至handler。该架构将所有的编译和验证消息,此消息处理程序。QXmlSchema不采取所有权handler。
通常情况下,默认的消息处理就足够了。它写的编译和验证消息的stderr。默认的消息处理程序,包括颜色代码,如果stderr可以使色彩。
When QXmlSchema电话QAbstractMessageHandler.message( ) ,参数如下:
message() argument | Semantics |
---|---|
QtMsgType type | Only QtWarningMsg and QtFatalMsg are used. The former identifies a warning, while the latter identifies an error. |
const QString & description | An XHTML document which is the actual message. It is translated into the current language. |
const QUrl &identifier | Identifies the error with a URI, where the fragment is the error code, and the rest of the URI is the error namespace. |
const QSourceLocation & sourceLocation | Identifies where the error occurred. |
See also messageHandler( ) 。
设置网络管理员manager。QXmlSchema不采取所有权manager。
See also networkAccessManager( ) 。
设置的URI解析器resolver。QXmlSchema不采取所有权resolver。
See also uriResolver( ) 。
返回架构的URI解析器。如果没有的URI解析器已定,QtXmlPatterns将使用的URI的模式,因为它们。
这个URI解析器提供了一个抽象层,或polymorphic URIs。解析器可以重写logicalURI与物理的,或者它可以翻译过时的或无效的URI来有效的。
When QtXmlPatterns电话QAbstractUriResolver.resolve( )的绝对URI是由架构规范规定的URI和相对URI是由用户指定的URI。
See also setUriResolver( ) 。
PyQt 4.10.3 for X11 | Copyright © Riverbank Computing Ltd and Nokia 2012 | Qt 4.8.5 |