感谢您发送咨询!我们的团队成员将很快与您联系。
感谢您发送预订!我们的团队成员将很快与您联系。
课程大纲
XQuery 简介
- 什么是 XQuery?
- 路径表达式
- FLWOR(for, let, where, order by, return)
- 函数
- 连接
XQuery 基础
- XQuery 语言的设计
- XQuery 的上下文
- 处理查询
- XQuery 数据模型
- 类型
- 命名空间
表达式
- 表达式的类别
- 关键字和名称
- 查询中的空白
- 字面量
- 变量
- 函数调用
- 注释
- 评估顺序
- 比较表达式
- "if-then-else" 表达式
- "and/or" 表达式
路径
- 路径表达式
- 谓词
- 动态路径
- 输入文档
- 上下文
构造器
- 从输入文档中包含元素和属性
- 直接构造器
- 计算构造器
使用 FLWOR 进行选择和连接
- 使用路径表达式进行选择
- FLWOR 表达式
- 量化表达式
- 选择唯一值
- 连接
排序和分组
- XQuery 中的排序
- 分组
- 聚合值
函数
- 内置函数
- 用户定义函数
高级查询
- 复制输入元素并进行修改
- 处理位置和序列号
- 组合结果
- 使用中间 XML 文档
XML 命名空间
- XQuery 和命名空间
- 命名空间声明
类型
- XQuery 类型系统
- 内置类型
- 类型、节点和原子值
- XQuery 中的类型检查
- 自动类型转换
- 序列类型
- 构造器和类型转换
序言和模块
- 查询的结构:序言和主体
- 从多个模块组装查询
- 变量声明
- 声明外部函数
使用模式
- 什么是模式?
- 为什么在查询中使用模式?
- W3C XML 模式:简要概述
- 作用域内的模式定义
- 模式验证和类型分配
- 序列类型和模式
静态类型
- 什么是静态类型?
- Typeswitch 表达式
- Treat 表达式
- 类型声明
- zero-or-one、one-or-more 和 exactly-one 函数
查询设计原则
-
查询设计:
- 清晰性
- 模块化
- 鲁棒性
- 错误处理
- 性能
数字
- 构造和比较数值
- 算术运算
- 数字函数
字符串
- xs:string 类型
- 构造、比较和操作字符串
- 子字符串、长度
- 连接和拆分字符串
- 空白
- 国际化
正则表达式
- 正则表达式的结构
- 表示单个字符
- 表示任意字符
- 表示字符组
- 字符类表达式
- 非贪婪量词
- 锚点
- 反向引用
- 使用标志
- 使用带有替换变量的子表达式
日期和时间类型
- 提取日期、时间和持续时间的组件
- 对日期、时间和持续时间使用算术运算符
- 日期组件类型
限定名称
- 处理限定名称
- URI、ID
其他 XML 组件
- 文档
- 文本节点
- 注释
- PI(处理指令)
- XML 实体
- CDATA
XQuery 相关标准
- XML 序列化
- XQueryX
- XQuery 更新功能
- 全文搜索
- XQJ - XQuery API for Java
实现特定功能
- XML 版本
- 设置查询上下文
- 选项声明和扩展表达式
- 序列化参数
XQuery vs. SQL
- XML 数据 vs. 关系数据
- SQL 语法 vs. XQuery 语法
- SQL 和 XQuery
XQuery vs. XSLT
- XQuery 和 XPath
- XQuery vs. XSLT
要求
需要具备一些 XML 基础知识。对 XML 相关技术的深入了解有益,但不是必需的。
14 小时
客户评论 (3)
Theory and excises not separated but after every bigger Topic there were exercises to remember theory in practice
Krzysztof - Nordea
课程 - XQuery
The pacing was good enough
Daniel - Nordea
课程 - XQuery
I was very lucky to have one-to-one training and it gave me a good grounding in the subject as well as exploring some of my real use-cases that were really complex.