N久没有看XML SCHAME的规范了,在项目中一直搞不清楚TargetNameSpace和DefaultNameSpace之间的区别。今天去查了哈文档。
根据我的理解TargetNameSpace只在定义XML SCHAME的时候才有用,它的主要作用是标明Schame定义的元素的命名空间,而DefaultNameSpace则只是标明在定义这个Schame中用的默认命名空间比如:http://www.w3.org/2001/XMLSchema就是在定义一个XSD的时候的默认命名空间,而定义出来的Schame的命名空间则是根据需要指定。
下面是W3C(http://www.w3.org/TR/2004/PER-xmlschema-0-20040318/#NS)上关于这个问题的解释:
A schema can be viewed as a collection (vocabulary) of type definitions and element declarations whose names belong to a particular namespace called a target namespace. Target namespaces enable us to distinguish between definitions and declarations from different vocabularies. For example, target namespaces would enable us to distinguish between the declaration for element
in the XML Schema language vocabulary, and a declaration for element
in a hypothetical chemistry language vocabulary. The former is part of the http://www.w3.org/2001/XMLSchema
target namespace, and the latter is part of another target namespace.
When we want to check that an instance document conforms to one or more schemas (through a process called schema validation), we need to identify which element and attribute declarations and type definitions in the schemas should be used to check which elements and attributes in the instance document. The target namespace plays an important role in the identification process. We examine the role of the target namespace in the next section.
The schema author also has several options that affect how the identities of elements and attributes are represented in instance documents. More specifically, the author can decide whether or not the appearance of locally declared elements and attributes in an instance must be qualified by a namespace, using either an explicit prefix or implicitly by default. The schema author's choice regarding qualification of local elements and attributes has a number of implications regarding the structures of schemas and instance documents, and we examine some of these implications in the following sections
例如:
<description></description>
- <?xml version="1.0" encoding="utf-8" ?>
- <description
- xmlns="http://www.w3.org/ns/wsdl"
- targetNamespace= "http://greath.example.com/2004/wsdl/resSvc"
- xmlns:tns= "http://greath.example.com/2004/wsdl/resSvc"
- xmlns:ghns = "http://greath.example.com/2004/schemas/resSvc"
- xmlns:wsoap= "http://www.w3.org/ns/wsdl/soap"
- xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
- xmlns:wsdlx= "http://www.w3.org/ns/wsdl-extensions">
-
- <documentation>
- This document describes the GreatH Web service. Additional
- application-level requirements for use of this service --
- beyond what WSDL 2.0 is able to describe -- are available
- at http://greath.example.com/2004/reservation-documentation.html
- </documentation>
-
- <types>
- <xs:schema
- xmlns:xs="http://www.w3.org/2001/XMLSchema"
- targetNamespace="http://greath.example.com/2004/schemas/resSvc"
- xmlns="http://greath.example.com/2004/schemas/resSvc">
-
- <xs:element name="checkAvailability" type="tCheckAvailability"/>
- <xs:complexType name="tCheckAvailability">
- <xs:sequence>
- <xs:element name="checkInDate" type="xs:date"/>
- <xs:element name="checkOutDate" type="xs:date"/>
- <xs:element name="roomType" type="xs:string"/>
- </xs:sequence>
- </xs:complexType>
-
- <xs:element name="checkAvailabilityResponse" type="xs:double"/>
-
- <xs:element name="invalidDataError" type="xs:string"/>
-
- </xs:schema>
- </types>
xml 代码
在这个WSDL中,默认的命名空间是http://www.w3.org/ns/wsdl所以TYPES的命名空间就是它,而TargetNameSpace是http://greath.example.com/2004/schemas/resSvc 所以定义的checkAvailability这个ELEMENT的命名空间就是这个咯:)
分享到:
相关推荐
xml中xmlns和targetNamespace的相关信息。用来描述xml。
WebService 是一种基于 XML 的远程过程调用(RPC)技术,它允许不同的系统之间通过网络进行通信。在 Java 中,WebService 通常使用 JAX-WS(Java API for XML-Based Web Services)来实现。为了简化WebService 的...
Web服务(WebService)是一种基于XML和开放标准的平台无关、语言无关的技术,用于在不同系统之间交换数据。在本案例中,我们将关注如何通过注解来修改WebService生成的WSDL(Web Services Description Language)...
综上所述,Webservice不仅解决了不同平台和编程语言之间的兼容性问题,还大大提高了软件系统的灵活性和可扩展性。通过学习Webservice的相关知识和技术,开发者可以更好地构建和维护复杂的分布式应用系统。
为了保证文档导入时的一致性,被导入文档中的`targetNamespace`应该与`wsdl:import`元素的`namespace`属性相匹配。 ### 3. RESTful Web服务设计原则 #### 3.1 RESTful Web服务简介 REST(Representational State ...
首先,目标命名空间(Target Namespace)是XML Schema中定义的一个特定URI(Uniform Resource Identifier),用于标识一组元素和属性的命名空间。在XML文档中,命名空间通过`targetNamespace`属性定义,例如`...
2. 解压缩该文件,您会看到两个主要的目录:`axis2-web` 和 `WEB-INF` 目录。 3. 将这些目录复制到您的项目目录中对应的路径下,确保它们能够被正确识别。 ##### 第二步:编写 WebService 类 编写 WebService 类时...
Web服务(Web Service)是一种基于网络的、分布式的模块化组件,它提供了一种标准的接口,使得不同的系统之间能够互相通信和交换数据。在Java领域,Web Service通常使用SOAP(Simple Object Access Protocol)协议...
Web Service是一种基于网络的、分布式的模块化组件,它提供了一种标准的接口,使得不同系统之间能够通过互联网进行通信和交互。在本篇尚硅谷的学习笔记中,主要涉及了Web Service的基础概念、Schema约束、HTTP协议...
- **自动化处理**: WSDL文件的存在使得客户端和服务端之间的交互可以自动化处理,无需人工介入,降低了错误率和成本。 - **跨平台和跨语言**: 不同平台和编程语言之间的服务交互成为可能,提高了系统的互操作性。 #...
Web服务(WebService)是一种基于Web的、用于不同系统之间交换数据和实现互操作的技术。在Java中,WebService主要利用SOAP(Simple Object Access Protocol)协议,XML(eXtensible Markup Language)作为数据交换...
完成以上步骤后,报表的格式和功能应恢复正常,错误消息"An error occurred during local report processing: report definition has an invalid target namespace"也应该消失。需要注意的是,每次进行报表开发时,...
targetNamespace="http://code.alibabatech.com/schema/dubbo"> <xsd:import namespace="http://www.w3.org/XML/1998/namespace"/> <xsd:import namespace="http://www.springframework.org/schema/beans"/> ...
- 简单元素如`<xs:element>`可以通过`name`和`type`属性定义,可选的`default`和`fixed`属性分别用来设定默认值和固定值。 - 属性定义与元素类似,但使用`<xs:attribute>`标签,并可以设置`use`属性来决定属性是否...
XML Schema定义了XML文档的结构,允许我们指定元素、属性、数据类型以及它们之间的关系,从而增强了XML文档的可读性和可维护性。 XML Schema的发展历程可以从DTD(Document Type Definition)说起。早期,XML文档的...
<?xml version="1.0" encoding="UTF-8" standalone="no"?> ... targetNamespace=...[CDATA[ Namespace support for the dubbo services provided by dubbo framework. ]]> <xsd:attribute name=
在本文中,我们将探讨如何将Apache CXF 3.0.2版本集成到Spring框架中,以及在这个过程中可能遇到的问题和解决...同时,理解CXF与Spring之间的交互以及它们的配置方式,对于解决类似问题和构建高效的服务架构至关重要。
XML Schema (XSD) 是一种用于定义XML文档结构和数据类型的规范。它是W3C推荐的标准,用于确保XML文档遵循一套预定义的规则,从而提高数据的准确性和一致性。通过XSD,我们可以清晰地定义XML文档中允许的元素、属性、...