当前位置: 首页 > news >正文

XML Data – Semi-Structured Data XML 数据 - 半结构化数据

Outline • Structured, Semistructured, and Unstructured Data • XML Hierarchical (Tree) Data Model • Extracting XML Documents from Relational Databases • XML Documents, DTD, and XML Schema • XML Languages 结构化、半结构化和非结构化数据 - XML 层次(树)数据模型 - 从关系数据库中提取 XML 文档 - XML 文档、DTD 和 XML 模式 - XML 语言

Structured, Semi-structured, and Unstructured Data • Structured data — Represented in a strict format (schema) — Example: information stored in databases结构化数据 - 以严格的格式(模式)表示 - 例如:存储在数据库中的信息 • Semi-structured data — Has a certain structure — Not all information collected will have identical structure半结构化数据 - 具有一定的结构 - 并非所有收集到的信息都具有相同的结构  • Unstructured data — Limited indication of the of data document that contains information embedded within it 非结构化数据 - 数据文件的有限指示,其中包含嵌入的信息

Examples • Structured: Excel spreadsheets Comma-separated value file (.csv) Relational database tables • Semi-structured: Hypertext Markup Language (HTML) files, JavaScript Object Notation (JSON) files, Extensible Markup Language (XML) files • Unstructured: Audio, Video, Flat Text示例 - 结构化: Excel 电子表格 逗号分隔值文件(.csv) 关系数据库表格 - 半结构化: 超文本标记语言 (HTML) 文件、JavaScript Object Notation (JSON) 文件、可扩展标记语言 (XML) 文件 - 非结构化: 音频、视频、扁平文本

Semi-structured Data • Schema information mixed in with data values • Self-describing data • May be displayed as a directed graph — Labels or tags on directed edges represent:半结构化数据 - 混合在数据值中的模式信息 - 自描述数据 - 可以有向图的形式显示 ◦ Schema names ◦ Names of attributes ◦ Object types (or entity types or classes) ◦ Relationships有向边上的标签或标记表示: 模式名称 ◦属性名称 ◦对象类型(或实体类型或类) ◦关系037a51279a4244bca683b848e24a663b.pngXML: Extensible Markup Language • Data sources — Database storing data for Internet applications — Standard for data representation and exchange 数据源 - 为互联网应用程序存储数据的数据库 - 数据表示和交换标准 • Hypertext documents (HTML) — Common method of specifying contents and formatting of Web pages — Tags describe content instead of formatting 超文本文档(HTML) - 指定网页内容和格式的通用方法 • XML data model

XML Hierarchical (Tree) Data Model • Elements and attributes — Main structuring concepts used to construct an XML document 元素和属性 - 用于构建 XML 文档的主要结构概念• Complex elements — Constructed from other elements hierarchically 复杂元素 - 由其他元素分层构建• Simple elements — Contain data values 简单元素 - 包含数据值• XML tag names — Describe the meaning of the data elements in the document — Start tag: angled brackets – — End tag with a slash –XML 标记名称 - 描述文档中数据元素的含义 - 开始标记:带角度的括号 - <...> - 带斜线的结束标记 - </...>bf0f5c711f234ad094fa68a45a76c246.png Company ER Model

6d3b3d59786542a1901dc85b5c6b231a.png

Company Relational Model1f8f8906e1414aae89a26ae0cccf8cff.pngCompany Entities

9f5d8ced5397420c8c1ad27f90b3dbfa.png

Relational to XML Mapping

187b1657e3f74698ab14dfe5fedeaf2e.png

Relational Model v.s. XMLf5ecd643c58a4ef18815c41386be9e71.pngKnowledge Check • You’re creating a database to contain information about university records: students, courses, grades, etc. Should you use the relational model or XML? • You’re creating a database to contain information for a university web site: news, academic announcements, admissions, events, research, etc. Should you use the relational model or XML? • You’re creating a database to contain information about family trees (ancestry). Should you use the relational model or XML?d7554694024041c39b93b79be7b8249a.png“Well-Formed” XML Adheres to basic structural requirements • Single root element • Matched tags, proper nesting • Unique attributes within elements "格式完善的 "XML 符合基本结构要求 - 单一根元素 - 匹配的标记,适当的嵌套 - 元素内的唯一属性

bdb10ebe72b2456db4291a624cc6b888.pngbc12d2c008154ddb872da61d14b8d7a4.png

Displaying XML Use rule-based language to translate to HTML • Cascading stylesheets (CSS) • Extensible stylesheet language (XSL)使用基于规则的语言翻译成 HTML - 层叠样式表 (CSS) - 可扩展样式表语言 (XSL)

9cfa160796b646f59984585149ede0ab.png

Extensible Markup Language (XML) • Standard for data representation and exchange • Formal specification is enormous; we cover most important components

“Valid” XML Adheres to basic structural requirements • Also adheres to content-specific specification — Document Type Descriptor (DTD) — XML Schema Description (XSD)符合基本的结构要求 - 也符合特定内容规范 - Document Type Descriptor (DTD) - XML Schema Description (XSD)  所以是在“Well-Formed” XML的基础上符合特定内容规范

7b5584830ae848a195b5c93573ff8d1e.png

Document Type Descriptor (DTD) • Grammar-like language for specifying elements, attributes, nesting, ordering, #occurrences 文档类型描述符(DTD)--类似语法的语言,用于指定元素、属性、嵌套、排序和 #occurrences

1a22040fdd434a23981f27477530afec.png

a0b2a32fe2e34ca89a873e3ab338b0b3.png0f7269a9ed5e4aefb445e9b3db703b0e.png

XML Schema (XSD) • Extensive language • Like DTDs, can specify elements, attributes, nesting, ordering, #occurrences • Also data types, keys, (typed) pointers, and more • XSD is written in XML 扩展语言 - 与 DTD 类似,可指定元素、属性、嵌套、排序、#occurrences - 还可指定数据类型、键、(类型化)指针等 - XSD 以 XML 编写4627d3e322a14784851e15b2298809e5.png

DTD/XSD v.s. None (Well-Formed) • Advantages — Program can assume the structure — CSS/XSL rules are simple when program has particular structure — Specification language DTD as a specification what the XML look like — Documentation — Strongly typed Data • Disadvantages — Flexibility and ease of change is difficult — DTD can be messy irregular structure — Benefits of no typing //“Valid” XML对比“Well-Formed” XML的优点 - 程序可以假设结构 - 当程序具有特定结构时,CSS/XSL 规则很简单 - 规范语言 DTD 作为 XML 的外观规范 - 文档 - 强类型化数据 - 缺点 - 难以实现灵活性和易更改性 - DTD 可能是杂乱无章的不规则结构 - 无类型化的优点

Querying XML • Not nearly as mature as Querying Relational — Newer — No underlying algebraXML 查询 - 不如关系查询成熟 - 较新 - 没有底层代数 • Sequence of development — XPath: Path expression + conditions — XSLT: Xpath transformation, output formatting — XQuery: Xpath + full featured QL 发展顺序 - XPath: XSLT:Xpath 转换、输出格式化 - XQuery: X路径+全功能QL

XPath = Path expressions + Conditions XPath = 路径表达式 + 条件96415c0ce7224c0991a7ae0cde905cff.pngebf4dee335574d5c8c213799fd1846db.png

- 基本结构 - / :根元素分隔符

- 元素名称 X

- * : 匹配路径中的任何节点

- @ : 属性名

- // : 任何子节点或自通配符

- [C] : 条件

- [N] : 根据位置访问子节点

• Built-in functions (lots of them) — starts-with() and contains() : built-in functions work on string values and can be useful to access elements based on substring matches. /companyDB/employees/employee[starts-with(lname,"S")] /companyDB/employees/employee[contains(address,"Philadelphia")] 内置函数(很多) - starts-with() 和 contains():内置函数用于处理字符串值,可用于访问基于子串匹配的元素。  Navigation “axes” (13 of them) — Keywords that allows us to move in multiple directions from current node in path expression ◦ includes, self, child, descendent, attribute, parent, ancestor, previous sibling, and next sibling- 导航 "轴"(共 13 个)--允许我们从路径表达式中的当前节点向多个方向移动的关键字 ◦ 包括、自己、子节点、后节点、属性、父节点、祖节点、上一个兄弟节点和下一个兄弟节点

More Details • XPath queries operate on & return sequence of elements — XML document — XML stream • Sometimes result can be expressed as XML, not always XPath 查询操作并返回元素序列 - XML 文档 - XML 流 - 有时结果可表示为 XML,但并非总是如此

XQuery: FLWOR Expression • All except Return are optional • For and Let can be repeated and interleaved XQuery: FLWOR 表达式 - 除了 Return 之外,其他都是可选的 - For 和 Let 可以重复和交错使用8110111f5b7e4c6aa664a307bd533b8b.pngMixing Queries and XMLcf3285f55cec4ddea4382acdcc1b103f.png

Summary • Three main types of data: structured, semi-structured, and unstructured • XML standard — Tree-structured (hierarchical) data model — XML documents and the languages for specifying the structure of these documents • XPath and XQuery languages — Query XML data 三种主要数据类型:结构化、半结构化和非结构化 - XML 标准 - 树状结构(分层)数据模型 - XML 文档和指定这些文档结构的语言 - XPath 和 XQuery 语言 - 查询 XML 数据

 

相关文章:

XML Data – Semi-Structured Data XML 数据 - 半结构化数据

Outline • Structured, Semistructured, and Unstructured Data • XML Hierarchical (Tree) Data Model • Extracting XML Documents from Relational Databases • XML Documents, DTD, and XML Schema • XML Languages 结构化、半结构化和非结构化数据 - XML 层次&#x…...

Python自动化之如何利用allure生成测试报告

Allure测试报告框架帮助你轻松实现”高大上”报告展示。本文通过示例演示如何从0到1集成Allure测试框架。重点展示了如何将Allure集成到已有的自动化测试工程中、以及如何实现报表的优化展示。Allure非常强大&#xff0c;支持多种语言多种测试框架&#xff0c;无论是Java/Pytho…...

【晴问算法】入门篇—贪心算法—区间不相交问题

题目描述 给定n个开区间&#xff0c;从中选择尽可能多的开区间&#xff0c;使得这些开区间两两没有交集。 输入描述 输出描述 输出一个整数&#xff0c;表示最多选择的开区间个数。 样例1输入 4 1 3 2 4 3 5 6 7 输出 3 解释 最多选择(1,3)、(3,5)、(6,7)三个区间&#xff0c;它…...

WPF意外无法启动?try-catch也无法捕捉?0xc0000409?

文章目录 背景尝试原因解决 背景 周六在家加了一会会的班&#xff0c;公司电脑没关机&#xff0c;然后周一上班。。。诡异的事情发生了&#xff0c;在家远程都能运行的程序&#xff0c;突然运行不起来了 尝试 我对WPF程序做了如下尝试&#xff1a; 修改UI框架对OnStartup方…...

微服务day05(中) -- ES索引库操作

索引库就类似数据库表&#xff0c;mapping映射就类似表的结构。 我们要向es中存储数据&#xff0c;必须先创建“库”和“表”。 2.1.mapping映射属性 mapping是对索引库中文档的约束&#xff0c;常见的mapping属性包括&#xff1a; type&#xff1a;字段数据类型&#xff0c;…...

AI智能电销机器人可以做哪些事情呢?智能机器人搭建

随着科技不断发展&#xff0c;选择使用电销智能机器人的行业有很多&#xff0c;因为它的适用性和实用性都非常广&#xff0c;电销智能机器人使用之后能够让企业的整体工作效率变得更加高效&#xff0c;全天候灵活响应也能帮助企业做好业务工作。对于一些还不太了解电销智能机器…...

别踩坑!2024年小红书代写代发机构选择指南!

在小红书平台上&#xff0c;一篇优质的内容往往能迅速吸引用户的关注&#xff0c;为品牌带来不可估量的曝光和转化。然而&#xff0c;对于许多品牌来说&#xff0c;创作高质量的小红书内容并非易事。因此&#xff0c;选择一家专业的小红书代写代发机构成为了不少品牌的明智之选…...

数据出路 -----pandas

Pandas 是 Python 语言的一个扩展程序库&#xff0c;用于数据分析。 Pandas 的主要数据结构是 Series &#xff08;一维数据&#xff09;与 DataFrame&#xff08;二维数据&#xff09;。 数据结构 Series 是一种类似于一维数组的对象&#xff0c;它由一组数据&#xff08;各…...

Win11右键菜单定制

0.优化目标 优化成&#xff1a;右键菜单优化成全量菜单选项&#xff0c;并精简掉我不需要的菜单选项。 具体优化步骤&#xff1a; 1.win11菜单恢复到win10经典状态 win11右键菜单是缩水版的&#xff0c;需要再次点击“显示更多选项”才能找到自己想用到的选项&#xff0c;再…...

将深度图转成2D激光

文章目录 大致过程具体实现运行结果大致过程 将深度图转换为2D激光扫描数据是一个在机器人和自动化领域常见的任务,尤其是在计算资源有限的情况下或当只需要2D数据时。这个过程通常涉及从深度图中选择一个水平切片(或多个切片)并将其转换为距离读数。以下是基本步骤: 确定…...

rust学习笔记(8-12)

8 集合 Rust 标准库中包含一系列被称为 集合&#xff08;collections&#xff09;的非常有用的数据结构。大部分其他数 据类型都代表一个特定的值&#xff0c;不过集合可以包含多个值。不同于内建的数组和元组类型&#xff0c;这些 集合指向的数据是储存在堆上的&#xff0c;这…...

JetPack之DataBinding基础使用

目录 一、简介二、使用2.1 使用环境2.2 xml文件绑定数据2.3 数据绑定的对象2.3.1 object2.3.2 ObseravbleField2.3.3 ObseravbleCollection 2.4 绑定数据 三、应用场景 一、简介 DataBinding是谷歌15年推出的library,DataBinding支持双向绑定&#xff0c;能大大减少绑定app逻辑…...

设计模式学习笔记 - 设计原则与思想总结:2.运用学过的设计原则和思想完善之前性能计数器项目

概述 在 《设计原则 - 10.实战&#xff1a;针对非业务的通用框架开发&#xff0c;如何做需求分析和设计及如何实现一个支持各种统计规则的性能计数器》中&#xff0c;我们讲解了如何对一个性能计数器框架进行分析、设计与实现&#xff0c;并且实践了一些设计原则和设计思想。当…...

docker入门(八)—— dockerfile详细介绍,编写dockerfile

dockerfile&#xff08;重点&#xff09; 大家想想&#xff0c;Nginx&#xff0c;tomcat&#xff0c;mysql 这些镜像都是哪里来的&#xff1f;官方能写&#xff0c;我们不能写吗&#xff1f; 我们要研究自己如何做一个镜像&#xff0c;而且我们写的微服务项目打包上云部署&am…...

机器学习复习(9)——自定义dataset

目录 第一种dataset(文件夹名即为标签) 用于将格式&#xff08;1&#xff09;转换为格式&#xff08;2&#xff09; 第二种dataset(标签在labels文件夹下的对应的txt文件里面) 第一种dataset(文件夹名即为标签) 数据组织格式&#xff08;1&#xff09; --data ----train …...

【Redis】缓存穿透

问题发生背景&#xff1a;客户端请求的数据再缓存中和数据库中都不存在。 导致的问题&#xff1a;缓存永远不会生效&#xff0c;这些请求都会去请求数据库—导致数据库压力增大。 解决方案&#xff1a; 1.缓存空对象 在Redis中缓存空对象&#xff0c;告诉客户端数据库中没有该值…...

编程出现bug?怎么用Python打印异常

在 Python 编程中&#xff0c;异常是指程序执行过程中出现的错误或异常情况。当程序遇到异常时&#xff0c;为了更好地调试和定位问题&#xff0c;我们需要打印异常信息。本文将详细介绍如何在 Python 中打印异常&#xff0c;并提供一些示例和注意事项。 一、try-except 语句捕…...

P1958 上学路线

题目传送门&#xff1a;P1958 上学路线 一个DFS求迷宫的的题。 详细在代码里&#xff1a; #include <bits/stdc.h>using namespace std; int n,m,a[20][20],t,x,y,ans0; int dx[4]{0,1}; int dy[4]{1,0}; int flag[105][105]{0}; inline void dfs(register int x,regis…...

Android14之HIDL报错:Invalid sparse file format at header magic(一百九十六)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…...

旭日x3派目标跟随小车

目标跟随小车&#xff08;yolov5、安全帽识别&#xff09; 前言最终结果接线实现 前言 上板运行的后处理使用cython封装了&#xff0c;由于每个版本的yolo输出的形状不一样&#xff0c;这里只能用yolov5-6.2这个版本。 ①训练自己的模型并部署于旭日x3派参考&#xff1a; http…...

如何永久保存微信聊天记录?三步实现数据自主管理的完整指南

如何永久保存微信聊天记录&#xff1f;三步实现数据自主管理的完整指南 【免费下载链接】WeChatMsg 提取微信聊天记录&#xff0c;将其导出成HTML、Word、CSV文档永久保存&#xff0c;对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/…...

深入解析SyncE:以太网频率同步的关键技术与应用

1. SyncE技术初探&#xff1a;以太网频率同步的基石 想象一下城市交通信号灯系统&#xff0c;如果每个路口的红绿灯各自为政、节奏混乱&#xff0c;结果必然是交通瘫痪。SyncE&#xff08;同步以太网&#xff09;技术解决的正是类似问题——它让以太网设备像精准协调的交通信号…...

零基础也能用!Face Analysis WebUI人脸分析系统完整操作指南

零基础也能用&#xff01;Face Analysis WebUI人脸分析系统完整操作指南 1. 它能帮你做什么&#xff1f;不只是猜年龄性别 1.1 一个浏览器&#xff0c;看懂照片里的所有“脸” 你是不是也好奇过&#xff0c;一张普通的照片里&#xff0c;除了能看出是男是女、大概多大&#…...

WeKnora在教育培训场景的应用:构建智能学习助手

WeKnora在教育培训场景的应用&#xff1a;构建智能学习助手 1. 引言 想象一下这样的场景&#xff1a;一位编程老师每天需要回答学生提出的上百个问题&#xff0c;从基础语法到复杂算法&#xff0c;每个问题都需要查阅不同的教材和讲义。或者一位语言学习者&#xff0c;面对厚…...

C语言必学:汉诺塔递归算法详解

C语言初学者必学经典算法与逻辑基础1、 塔在河内2、 河内塔问题&#xff0c;是由法国人M.克劳斯&#xff0c;也就是被称作卢卡斯的那位提出的&#xff0c;它是一道堪称经典的&#xff0c;具有递归性质的数学方面的难题。3、 有史以来&#xff0c;有一座被众口称道为神塔的建筑&…...

Qwen3-0.6B-FP8效果展示:FP8量化后32K上下文长文档摘要质量对比

Qwen3-0.6B-FP8效果展示&#xff1a;FP8量化后32K上下文长文档摘要质量对比 1. 引言&#xff1a;当小模型遇上大文档 想象一下&#xff0c;你手头有一份长达几十页的技术报告、一篇复杂的学术论文&#xff0c;或者一份冗长的会议纪要。你需要快速抓住核心要点&#xff0c;但人…...

如何向别人清晰地解释技术问题?

如何向别人清晰地解释技术问题&#xff1f; 在技术领域工作或学习时&#xff0c;我们常常需要向他人解释复杂的技术概念或问题。无论是向非技术人员说明某个功能的工作原理&#xff0c;还是帮助同事理解一段代码的逻辑&#xff0c;清晰、有效的表达至关重要。技术问题往往涉及…...

微软Phi-3轻量模型保姆级教程:快速部署,一键开启智能问答与文本改写

微软Phi-3轻量模型保姆级教程&#xff1a;快速部署&#xff0c;一键开启智能问答与文本改写 1. 为什么选择Phi-3-mini-4k-instruct-gguf Phi-3-mini-4k-instruct-gguf是微软推出的轻量级文本生成模型&#xff0c;特别适合日常办公和内容创作场景。相比其他大模型&#xff0c;…...

《高频电子线路》 —— 高频谐振功放(2):从尖顶脉冲到高效输出的工程实践

1. 高频谐振功放的工程实践挑战 作为一名射频工程师&#xff0c;在实际调试发射机末级功放时&#xff0c;最头疼的就是如何平衡输出功率和效率。记得我第一次独立负责项目时&#xff0c;对着频谱仪上扭曲的波形整整折腾了两周。高频谐振功放这个看似简单的电路&#xff0c;藏着…...

Qwen3-4B实战:Streamlit缓存让AI应用支持多人同时聊天

Qwen3-4B实战&#xff1a;Streamlit缓存让AI应用支持多人同时聊天 1. 问题背景与挑战 当你在本地部署了一个基于Qwen3-4B的AI聊天应用&#xff0c;自己测试时一切运行良好。但当你兴奋地分享给同事或朋友使用时&#xff0c;突然发现&#xff1a; 第二个用户打开页面时&#…...