soaplib.model API提供了一种优雅的方法在Python类中声明XML概要(W3C)元素,它构成了接口的WSDL。这也可以用于为非SOAP应用程序生成通用的XSD。
Model API
在soaplib中,模型是负责将单个参数与xml进行转换,并提供构建wsdl所需的信息。Soap有许多内置的模型,它们为您提供一般所需的通用数据类型
Base
soaplib模型模块基于类(Base,Simple Type,and Null),以及几个助手函数
soaplib.core.model.base.nillable_value(func)¶
soaplib.core.model.base.nillable_element(func)
soaplib.core.model.base.nillable_string(func)
class soaplib.core.model.base.Base
Bases: object
Base class for all soaplib models.
class Annotations
Bases: object
class Base.Attributes
Bases: object
class Base.Empty
Bases: object
classmethod Base.add_to_schema(schema_entries)
Add this type to the wsdl.
classmethod Base.customize(**kwargs)
This function duplicates and customizes the class it
belongs to. The original class remains unchanged. This is
an ugly hack. If you know better, let us know.
classmethod Base.from_xml(element)
classmethod Base.get_namespace()
classmethod Base.get_namespace_prefix(app)
classmethod Base.get_type_name()
classmethod Base.get_type_name_ns(app)
static Base.is_default()
static Base.resolve_namespace(default_ns)
classmethod Base.to_parent_element(value, tns, parent_elt, *args, **kwargs)
class soaplib.core.model.base.Null
Bases: soaplib.core.model.base.Base
class Annotations
Bases: object
class Null.Attributes
Bases: object
class Null.Empty
Bases: object
classmethod Null.add_to_schema(schema_entries)
Add this type to the wsdl.
classmethod Null.customize(**kwargs)
This function duplicates and customizes the class it
belongs to. The original class remains unchanged. This is
an ugly hack. If you know better, let us know.
classmethod Null.from_xml(element)
classmethod Null.get_namespace()
classmethod Null.get_namespace_prefix(app)
classmethod Null.get_type_name()
classmethod Null.get_type_name_ns(app)
static Null.is_default()
static Null.resolve_namespace(default_ns)
classmethod Null.to_parent_element(value, tns, parent_elt, name='retval')
class soaplib.core.model.base.SimpleType
Bases: soaplib.core.model.base.Base
class Annotations
Bases: object
class SimpleType.Attributes
Bases: soaplib.core.model.base.Attributes
class SimpleType.Empty
Bases: object
classmethod SimpleType.add_to_schema(schema_entries)
classmethod SimpleType.customize(**kwargs)
This function duplicates and customizes the class it
belongs to. The original class remains unchanged. This is
an ugly hack. If you know better, let us know.
classmethod SimpleType.from_xml(element)
classmethod SimpleType.get_namespace()
classmethod SimpleType.get_namespace_prefix(app)
classmethod SimpleType.get_restriction_tag(schema_entries)
classmethod SimpleType.get_type_name()
classmethod SimpleType.get_type_name_ns(app)
static SimpleType.is_default()
static SimpleType.resolve_namespace(default_ns)
classmethod SimpleType.to_parent_element(value, tns, parent_elt, *args, **kwargs)