第一章 Object-XML 映射简介

文章目录

  • 第一章 Object-XML 映射简介
  • 基础
  • 如何工作的
  • 映射选项
  • `IRIS` 中的相关工具
  • XML 文档的可能应用

第一章 Object-XML 映射简介

基础

将对象映射到 XML 一词意味着定义如何将该对象用作 XML 文档。要将对象映射到 XML,请将 %XML.Adaptor 添加到定义该对象的类的超类列表中,以及该类使用的任何其他对象类(少数例外)。

此活动也称为定义定义对象的类的 XML 映射或支持 XML 的类。

如何工作的

当为类定义 XML 映射时:

  • 系统为类生成附加的 INT 代码,使能够将类实例用作 XML 文档。 (此代码是在编译类时生成的,不应编辑它。)
  • 类的每个属性自动继承自 %XML.PropertyParameters
  • %XML.AdaptorXML 相关的类参数添加到类中。
  • %XML.PropertyParameters将与 XML 相关的属性参数添加到类中的属性中。
  • 数据类型属性定义 LogicalToXSD()XSDToLogical() 方法,这些方法控制在输出到 XML 或从 XML 输入时数据的转换方式。

然后,如果默认映射不适合需求,可以根据需要编辑类中与 XML 相关的参数。

映射选项

给定类的 XML 映射确定该类的实例如何对应于 XML 文档,反之亦然。例如:

在这里插入图片描述

可以通过多种方式控制 XML 映射,包括以下方式:

  • 控制属性映射到的结构。例如,简单属性可以映射为元素或属性,或者根本无法映射,如前面的示例所示。
  • 控制 XML 元素和属性名称。
  • 控制为其分配元素和属性的 XML 命名空间。
  • 控制 IRIS 类如何映射到 XML 模式的详细信息。

这些参数中的大多数都会影响使用支持 XML 的类的所有场景。一些参数仅适用于本文档中注明的某些场景。

IRIS 中的相关工具

当为类定义 XML 映射时,可以访问大量 IRIS 工具,这些工具适用于许多实际应用程序。可以通过以下任意方式使用这些工具来处理类:

  • 将该类的对象导出到 XML 文档。
  • XML 文档导入 IRIS,这会创建该类的新实例,然后可以保存该实例。
  • 使用该类的对象作为 Web 服务和 Web 客户端的参数。
  • 生成XML 模式。 IRIS 隐式定义该类的 XML 类型,并在以上述任何方式使用该类的对象时使用该类型进行验证。

IRIS 提供了用于处理 XML 文档的附加工具,包括与 IRIS 类不对应的任意 XML 文档。这些工具包括对 DOMXPathXSLT 的支持。

IRIS 使用 SAX 解析器来验证和解析入站和出站 XML 文档(SAX 表示 Simple API for XML)。 SAX 解析器是使用标准 Xerces 库的内置 SAX XML 验证解析器。 IRIS SAX 使用高性能、进程内调用机制与 IRIS 进程进行通信。可以微调解析器或提供您自己的自定义 SAX 接口类。

XML 文档的可能应用

可以在各种实际应用中使用 XML 文档,包括:

  • 作为消息传递应用程序中的标准格式。这包括行业标准协议以及本土解决方案。
  • 作为应用程序和用户之间数据交换的标准格式。
  • 作为外部数据存储的标准表示。这可能包括传统的数据库记录,也可能包括更复杂的内容,例如文档。
  • 作为Web 服务和 Web 客户端之间发送的 SOAP 消息的有效负载。
  • 作为类定义中 XData 块的内容。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/130792.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

线性代数-Python-04:线性系统+高斯消元的实现

文章目录 1 线性系统2 高斯-jordon消元法的实现2.1 Matrix2.2 Vector2.3 线性系统 3 行最简形式4 线性方程组的结构5 线性方程组-通用高斯消元的实现5.1 global5.2 Vector-引入is_zero5.3 LinearSystem5.4 main 1 线性系统 2 高斯-jordon消元法的实现 2.1 Matrix from .Vecto…

搭建完全分布式Hadoop

文章目录 一、Hadoop集群规划二、在主节点上配置Hadoop(一)登录虚拟机(二)设置主机名(三)主机名与IP地址映射(四)关闭与禁用防火墙(五)配置免密登录&#xff…

根据DataFrame指定的列该列中如果有n个不同元素则将其转化为n行显示explode()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 根据DataFrame指定的列 该列中如果有n个不同元素 则将其转化为n行显示 explode() 选择题 以下代码两次输出结果分别为几行? import pandas as pd df pd.DataFrame({种类:[蔬菜,水…

什么是 CASB,在网络安全中的作用

数字化转型正在稳步攀升,组织现在越来越关注在线生产力系统和协作平台,各行各业的企业都采用了不同的云基础设施服务模式。云基础架构提供按需服务,可提高易用性、访问控制、内容协作和减少内部存储资源,以及许多其他好处。迁移到…

【Mysql】查询mysql的版本

目录 cmd命令查询 mysql -- help(命令) mysql -u root -p(命令) 数据库管理工具查询 select version(); cmd命令查询 mysql -- help(命令) mysql -u root -p(命令) 执行该命令并且输入数据库密码 数据库管理工具查询 selec…

DAY50 309.最佳买卖股票时机含冷冻期 + 714.买卖股票的最佳时机含手续费

309.最佳买卖股票时机含冷冻期 题目要求:给定一个整数数组,其中第 i 个元素代表了第 i 天的股票价格 。 设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票): 你不…

如何解决msvcr90.dll文件丢失,电脑丢失msvcr90.dll什么意思

在计算机使用过程中,我们可能会遇到一些错误提示,比如“msvcr90.dll丢失”。这是因为msvcr90.dll是Microsoft Visual C 2008运行库的一部分,当这个文件丢失或者损坏时,就会导致程序无法正常运行。那么,如何解决这个问题…

麒麟V10系统下编译libcef_dll

目录 前言1、下载cef2、编译libcef_dll2.1 问题一 cmake版本太低2.2 问题二 无法识别的编译选项 -m64 3、总结 前言 本篇主要记录了在飞腾PC麒麟V10系统下编译libcef_dll时遇到的问题及解决方法。在Qt应用程序中使用QWebEngine加载HTML网页算是常规操作,但是涉及到…

Clickhouse SQL

insert insert操作和mysql一致 标准语法:insert into [table_name] values(…),(….)从表到表的插入:insert into [table_name] select a,b,c from [table_name_2] update 和 delete ClickHouse 提供了 Delete 和 Update 的能力,这类操作…

[100天算法】-最短无序连续子数组(day 70)

题目描述 给定一个整数数组,你需要寻找一个连续的子数组,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。你找到的子数组应是最短的,请输出它的长度。示例 1:输入: [2, 6, 4, 8, 10, 9, 15] 输出: 5 解释: 你只需要…

【计算机网络笔记】Internet网络的网络层——IP协议之IP数据报的结构

系列文章目录 什么是计算机网络? 什么是网络协议? 计算机网络的结构 数据交换之电路交换 数据交换之报文交换和分组交换 分组交换 vs 电路交换 计算机网络性能(1)——速率、带宽、延迟 计算机网络性能(2)…

WebDAV之π-Disk派盘 + Keepass2Android

推荐一款密码管理器,允许人们使用复杂的组合进行登录,而不必记住所有的组合。 Keepass2Android可以支持大多数安卓互联网浏览器, Android设备上同步软件,还支持通过WebDAV添加葫芦儿派盘。 Keepass2Android 目前安全方面最大的问题之一是大多数人几乎在任何地方都使用通用…

windows下安装es及logstash、kibna

1、安装包下载 elasticsearch https://www.elastic.co/cn/downloads/past-releases#elasticsearch kibana安装包地址: https://www.elastic.co/cn/downloads/past-releases/kibana-8-10-4 logstash安装包地址: https://www.elastic.co/cn/downloads/past…

18 Linux 阻塞和非阻塞 IO

一、阻塞和非阻塞 IO 1. 阻塞和非阻塞简介 这里的 IO 指 Input/Output(输入/输出),是应用程序对驱动设备的输入/输出操作。当应用程序对设备驱动进行操作的时候,如果不能获取到设备资源,那么阻塞式 IO 就会将对应应用…

CVE-2023-25194 Kafka JNDI 注入分析

Apache Kafka Clients Jndi Injection 漏洞描述 Apache Kafka 是一个分布式数据流处理平台,可以实时发布、订阅、存储和处理数据流。Kafka Connect 是一种用于在 kafka 和其他系统之间可扩展、可靠的流式传输数据的工具。攻击者可以利用基于 SASL JAAS 配置和 SASL …

文本生成高精准3D模型,北京智源AI研究院等出品—3D-GPT

北京智源AI研究院、牛津大学、澳大利亚国立大学联合发布了一项研究—3D-GPT,通过文本问答方式就能创建高精准3D模型。 据悉,3D-GPT使用了大语言模型的多任务推理能力,通过任务调度代理、概念化代理和建模代理三大模块,简化了3D建模的开发流程…

Linux 进程的管道通信

文章目录 无名管道pipe有名管道 进程之间的通信:Linux环境下,进程地址空间相互独立,每个进程各自有不同的用户地址空间。任何一个进程的全局变量在另外一个进程中都看不到,所以进程之间不能相互访问,要交换数据必须通过…

java学习part01

15-Java语言概述-单行注释和多行注释的使用_哔哩哔哩_bilibili 1.命令行 javac编译出class文件 然后java运行 2. java文件每个文件最多一个public类 3.java注释 单行注释 // 多行注释 文档注释 文档注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文…

赛氪ETTBL全国商务英语翻译大赛入榜国内翻译赛事发展评估报告

中国外文局下属CATTI项目管理中心出具2023 国内翻译赛事发展评估报告,ETTBL全国商务英语翻译大赛赫然在榜 2023年11月6日,继2022年首次发布国内翻译赛事发展评估报告后,中国外文局CATTI项目管理中心和中国外文界平台联合发布了《2023国内翻译…

JVM字符串常量池StringTable

目录 一、StringTable为什么要调整 二、String的基本特性 三、String的内存分配 四、字符串拼接操作 五、intern()方法 六、Stringtable的垃圾回收 七、G1中String去重操作 一、StringTable为什么要调整 jdk7之前,hotspot对于方法区的实现是永久代&#xff…