问题的出现:XML的元素名字是不固定的,当两个不同的文档使用同样的名称描述两个不同类型的元素的时候,或者一个同样的标记表示两个不同含义的内容的时候,就会发生命名冲突。
问题的解决:命名空间(Namespace),对于每一套特定应用的DTD,给它一个独一无二的标志来代表,如果在XML中使用DTD中定义的元素,需将DTD的标志和元素名,属性连在一起使用,相当于指明了元素来自什么地方,这样就不会同其他同名元素混淆了(有点类似Java中包的作用,给它取个全名)。在XML中,采用现成的,在全球范围唯一的“域名”作为Namespace,即URL作为XML的Namespace。
命名空间允许我们在一个文档中结合不同的元素和属性定义,并指明这些元素和属性的定义来自那里。
命名空间的语法如下:
xmlns:[prefix]=”[url of name]”
其中“xmlns:”是必须的属性。“prefix”是命名空间的别名,它的值不能为xml。
<sample xmlns:ins=”http://www.lsmx.net.ac”>
<ins:batch-list>
<ins:batch>Evening Batch</ins:batch>
</ins:batch-list>
</sample>
一,默认Namespace xmlns=”[url ofnamespace]”
二,指定了父元素的命名空间,子元素希望用自己的命名空间,可以在子元素中指定命名空间的别名。
三,属性也可以有自己的命名空间。
前面知识复习:
结构完整的XML文档是指符合XML规则的文档。合法的XML文档,不但要求结构完整,而且要求符合DTD验证。
DTD用来规定XML文档的语法结构,使得解析器能够理解XML文档的内容。
SYSTEM关键字代表DTD文件是一个外部文件,也就是解析器会根据SYSTEM后面的说明到外部去寻找这个DTD文件。
如果一个元素的CONTENT(元素类型)被声明为EMPTY的话,表示该元素不能包含任何子元素和文本。
ANY表示该元素其中可以包含任何本身有效的元素内容,也就是说,它能够包含在DTD其他位置已经声明过的元素。
PCDATA表明该元素可以包含任何字符数据,但是不能在其中包含任何子元素。
分享到:
相关推荐
6. **Namespace和QName**: 在处理包含命名空间的XML时,JAXB使用`javax.xml.namespace.QName`来表示带有命名空间的元素和属性。`QName`包含了本地名称和命名空间URI。 7. **自定义转换**: 当标准注解无法满足需求时...
XML还定义了命名空间、DTD(Document Type Definition)或XML Schema来验证文档结构和数据的正确性。 XML解析分为两种主要类型:DOM(Document Object Model)解析和SAX(Simple API for XML)解析。 1. DOM解析:...
第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称空间在元素中的运用 39 2.2.2 默认名称空间 41 2.2.3 名称空间在属性中的运用 42 2.3 名称空间和dtd 43 2.4 小结 ...
第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称空间在元素中的运用 39 2.2.2 默认名称空间 41 2.2.3 名称空间在属性中的运用 42 2.3 名称空间和dtd 43 2.4 小结 ...
第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称空间在元素中的运用 39 2.2.2 默认名称空间 41 2.2.3 名称空间在属性中的运用 42 2.3 名称空间和dtd 43 2.4 小结 ...
第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称空间在元素中的运用 39 2.2.2 默认名称空间 41 2.2.3 名称空间在属性中的运用 42 2.3 名称空间和dtd 43 2.4 小结 ...
-p 指的是wsdl的命名空间,也就是包名 -d 指的是要生成代码所存放的目录 -client 生成客户端测试webService的代码 -server 生成服务器启动webService代码 -impl 生成webService的实现代码 -ant 生成...
在处理XML文档时,值得注意的是XML的结构和它的命名空间、属性和文本内容的提取。XMLHttpRequest对象的open方法用来初始化一个请求,第二个参数是请求的类型(GET、POST等),第三个参数表示请求是否异步进行。在...
Web服务的实现中,使用了System.Data.SqlClient命名空间下的类与数据库交互,构造了SQL查询并执行了数据检索操作。 正确的代码示例展示了如何使用对象字面量的方式来传递参数,即data:{tablename:temp}。这种方式...
在User.xml 的配置文件中,mapper namespace="com.yihaomen.mybatis.inter.IUserOperation" ,命名空间非常重要,不能有错,必须与我们定义的package 和 接口一致。 运行这个测试程序,就可以看到结果了。 除非...
3. **配置服务主机(Configuring the Service Host)**:使用`System.ServiceModel`命名空间中的`ServiceHost`类来启动服务。在基于TCP的配置中,我们需要指定服务终结点的地址、绑定和行为。以下是一个基本的配置...
在C#中,这可以通过System.ServiceModel.Syndication命名空间实现: ```csharp using System.ServiceModel.Syndication; using System.Xml; var xmlReader = XmlReader.Create("http://news.baidu.com/rss"); var ...
要使用LibertyGIS加载SHP文件,首先需要在Flex应用中引入相关的命名空间和类。例如: ```xml <![CDATA[ import com.esri.ags.Graphic; import com.esri.ags.SpatialReference; // ... import ...
另外,您还需要安装微软 DirectX End-User Runtimes(March 2008)以获得对Microsoft.DirectX和Microsoft.DirectX.DirectSound命名空间的支持。 <br>如果您是志同道合的朋友,可以给我来信(HeddaZ@live.com)交流,...
在HTML文档中,`xmlns`是一个命名空间的声明,它指定了文档所使用的XML版本,例如在XHTML中,`xmlns="http://www.w3.org/1999/xhtml"`声明了文档使用的是XHTML 1.0规范。 编码语言的声明是通过`<meta>`标签完成的,...
2. **Spring配置** - 在Spring配置文件中添加Spring Security的命名空间,配置验证和授权的详细规则。 3. **数据库验证** - 用户信息通常存储在数据库中,Spring Security可以通过UserDetailsService接口与数据库...
科汛cms实现了“网站模板与程序完全分离”的新概念,独创ajax输出和JS标签跨站调用,支持不同频道、栏目、专题、内容页应用不同的模板,支持批量绑定模板,模板换肤更是一键之谈。 模板制作也非常方便,用户可以...