【XML编程与WEB服务】XML入门

简介: 【XML编程与WEB服务】XML入门

XML -入门


XML(Extensible Markup Language):可扩展的标记语言

作用:提供了一套跨平台、跨网络、跨程序语言的数据描述方式

目的:描述与表达数据,使数据 在不同设备、程序之间实现数据互通

【扩展】发展史:

1969:GML 通用标记语言

1985:SGML 标准通用标记语言

1993:HTML 超文本标记语言

1998:XML 可扩展标记语言

1999:XML -> XHTML 可扩展超文本标记语言

……

XML -> SVG:可缩放矢量图形语言

XML -> SMIL:同步多媒体综合语言

XML -> HDML:手持设备标记语言

XML -> OEB:开放电子结构规范

……

分类:

  • 格式不良好的XML文档
  • 格式良好的XML文档
  • 有效XML文档

符合XML语法规范(符合规则定义)的是良好的XML文档,符合DTD等约束文件约束的是有效XML文档

XML文档组成

  • XML声明
<?xml version="1.0|1.1"[ encoding="编码方式"] [standalone=”yes|no”]?>

[属性说明]

  • version: 必需包含该属性,指明以下文档遵循哪个版本的XML规范。该属性必须放在其它属性之前,属性的合法值为1.0或1.1。
  • encoding:该属性可以被省略,指明文档中要采用的字符编码方式。当省略该属性时,属性的默认值为utf-8。
  • standalone:该属性可以被省略,指定该XML文档是否和一个外部文档配套使用。该属性为yes是说明当前XML文档是一个独立的XML文档,与外部文件无关联。否则相反。当省略该属性时,属性的默认值为yes。
<?xml version="1.0" encoding="utf-8"?>
version必须填写,``encoding`可以不填写
  • 文档类型声明
  • 元素
  • 注释
<!-- -->

注释不能出现在XML文档声明之前,注释内容不能出现“--”

  • 处理指令

处理指令(Processing Instructions,简称PIs)允许文档中包含由应用程序来处理的指令。在XML文档中,有可能会包含一些非XML格式的数据,XML处理器无法处理这些数据,我们就可以通过处理指令来通知其它应用程序来处理这些数据。

处理指令(PI)的语法和XML声明类似,以“<?”开始并以“?>”结束。常见的使用样式表单的处理指令如下所示。

<?xml-stylesheet href="hello.css" type="text/css"?>
<?xml-stylesheet href="hello.xsl" type="text/xsl"?>

XML文档规则

1.【强制】必须有XML声明语句

2.【重要】XML标记大小写敏感

标记名字应该具有描述性,单词与单词之间可以使用下划线连接,但名称应该尽可能简洁;

在标记名称中间尽量避免使用“-”、“.”、“:”容易造成歧义;

非英语的字母比如éòá也是合法的XML元素名,但要避免使用,因为某些软件不支持这些特殊字符。

3.【强制】属性值必须使用引号""''

4.【强制】XML标记必须有对应的结束标记(例如:

<tag>str</tag>

),如果是空标记,也必须关闭(例如)

<tag/>

5.【重要】所有XML元素必须合理包含

6.所有标记以外的空白都会被保留(空白包括空格、制表符、空行)

7.【强制】特殊字符必须用相应的符号来代替

8.【强制】一个XML文档有且仅有一对根标签

XML元素

  • 空元素
  • 非空元素

特殊字符数据引用

字符 字符引用(十进制) 字符引用(十六进制) 预定义实体引用
< &#60; &#x3c; &lt;
> &#62; &#x3e; &gt;
" &#34; &#x22; &quot;
' &#39; &#x27; &apos;
& &#28; &#x26; &amp;

CDATA段

格式:

<![CDATA["字符串"]]>

里面的“字符串”是纯字符,但是不能包含

]]>

空白处理

在XML文档中,可以在元素中使用一个特殊的属性xml:space,来通知应用程序保留此元素中的空白。xml:space 属性接受两个值。

▪default :此值允许应用程序根据需要处理空白。 如果不包含 xml:space 属性,结果与使用 default 值相同。

▪preserve :此值表示应用程序按原样保留空白,空白可能有含义。

相关文章
|
17天前
|
开发框架 监控 .NET
Visual Basic的Web服务和REST API开发指南
【4月更文挑战第27天】本文探讨了使用Visual Basic(VB.NET)构建Web服务和RESTful API的方法。首先介绍了Web服务的基础和REST API的概念,然后阐述了.NET Framework与.NET Core/.NET 5+对VB.NET的支持,以及ASP.NET Core在Web开发中的作用。接着,详细讲解了创建RESTful API的步骤,包括控制器与路由设置、模型绑定与验证,以及返回响应。此外,还讨论了安全措施、测试方法、部署选项和监控策略。最后强调,VB.NET开发者可以通过ASP.NET Core涉足现代Web服务开发,拓宽技术领域。
|
19天前
|
应用服务中间件 网络安全 nginx
快速上手!使用Docker和Nginx部署Web服务的完美指南
快速上手!使用Docker和Nginx部署Web服务的完美指南
|
23天前
|
开发框架 前端开发 .NET
C#编程与Web开发
【4月更文挑战第21天】本文探讨了C#在Web开发中的应用,包括使用ASP.NET框架、MVC模式、Web API和Entity Framework。C#作为.NET框架的主要语言,结合这些工具,能创建动态、高效的Web应用。实际案例涉及企业级应用、电子商务和社交媒体平台。尽管面临竞争和挑战,但C#在Web开发领域的前景将持续拓展。
|
4天前
|
JSON 数据格式 Windows
LabVIEW创建Web服务
LabVIEW创建Web服务
|
3天前
|
XML 存储 安全
LabVIEWCompactRIO 开发指南23 Web服务
LabVIEWCompactRIO 开发指南23 Web服务
|
4天前
|
JSON 监控 安全
LabVIEW测试和调试Web服务
LabVIEW测试和调试Web服务
11 1
|
8天前
|
开发框架 JavaScript 安全
WIndows Server 2016 部署 Web服务(简单篇)
WIndows Server 2016 部署 Web服务(简单篇)
|
14天前
|
缓存 监控 测试技术
【Go语言专栏】使用Go语言构建高性能Web服务
【4月更文挑战第30天】本文探讨了使用Go语言构建高性能Web服务的策略,包括Go语言在并发处理和内存管理上的优势、基本原则(如保持简单、缓存和并发控制)、标准库与第三方框架的选择、编写高效的HTTP处理器、数据库优化以及性能测试和监控。通过遵循最佳实践,开发者可以充分利用Go语言的特性,构建出高性能的Web服务。
|
17天前
|
XML 安全 Java
从零手写实现 apache Tomcat-02-web.xml 入门详细介绍
`web.xml`是Java Web应用的核心配置文件,描述应用工作方式。它包含Servlet、Filter和Listener的定义。例如,示例展示了如何配置名为`my`的Servlet处理`/my`请求,`LoggingFilter`拦截所有请求,以及`MyServletContextAttrListener`监听应用事件。`web.xml`是服务器理解应用结构与行为的指南。迷你版Tomcat实现——mini-cat(开源:https://github.com/houbb/minicat)。
|
20天前
|
设计模式 存储 前端开发
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式