Answered quite well over here: targetNamespace and xmlns without prefix, what is the difference?
To restate:
targetNamespace=""
- As the current XML document is a schema this attribute defines the namespace that this schema is intended to target, or validate.
xmlns=""
- Defines the default namespace within the current document for all non-prefixed elements (i.e no yada:
in <yada:elementName>
)
xmlns:target=""
- here you are just defining your own namespace with the prefix target:
, this is unrelated to the previous two special cases.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…