Ch08 XML and namespace
Yang Haoran 1/3/2022 ServiceService Computing
# Ch08 XML and namespace
Namespace:A collection of names identified by a URI(但是不一定是在此定义的)


Qualified name(Qname):


默认namespace:可以在任意位置被定义

XSD是xml schema,是用来取代dtd的东西,可以用来验证一个xml是否符合规范https://blog.csdn.net/freelk/article/details/80869439

xmls:xs定义了这个schema的namespace,前缀为xs
targetNamespace定义了这个schema用来验证哪个namespace下的东西,也就是说在验证xml的时候,xml中的schemaLocation第一个参数必须和targetNamespace一样才可以
例子schema:Pers.xsd

例子xml引用上面的schema:

- xmlns:xsi=‘...’ 是固定的,因为这是由WWW机构定义的namespace,这个namespace中规定了schemaLocation怎么写, 意思是使用Pers.xsd来验.../Person这个namespace下的东西
由于XML非常冗长,在传输(Serialize the structured data)的时候可以用一定的策略:
有多种传输数据的方式

- FO存储了数据格式,ID是数据的id,LE是长度,value是真正的数据
XML schema可以作为一个序列化的模板(Serialization Template),一个factory,一个Metamodel。

整个树叫Info set
Node叫info item
xml文档是一棵树

- 灰色虚线的是attribute
可以用XPATH来找到某个元素

也可以用XML schema来定义JSON,yaml的格式,也就是产生各种格式的xml schema的instance