rspec/rules/S3843/xml/rule.adoc

70 lines
1.5 KiB
Plaintext
Raw Normal View History

== Why is this an issue?
2021-04-28 16:49:39 +02:00
Certain prefixes are widely recognized and expected to correspond to specific namespaces. For instance, most users will expect "xs" to correspond to "http://www.w3.org/2001/XMLSchema". If you subvert that expected correspondence, you run the risk of severely confusing the users of your XSD.
=== Noncompliant code example
2021-04-28 16:49:39 +02:00
2022-02-04 17:28:24 +01:00
[source,xml]
2021-04-28 16:49:39 +02:00
----
<xs:schema targetNamespace="http://www.codeSamples.com/fruit"
elementFormDefault="qualified" version="1"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:wsdl="http://CodeSamples.com/animal> <!-- Noncompliant -->
...
----
=== Compliant solution
2021-04-28 16:49:39 +02:00
2022-02-04 17:28:24 +01:00
[source,xml]
2021-04-28 16:49:39 +02:00
----
<xs:schema targetNamespace="http://www.codeSamples.com/fruit"
elementFormDefault="qualified" version="1"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:animal="http://CodeSamples.com/animal>
...
----
ifdef::env-github,rspecator-view[]
'''
== Implementation Specification
(visible only on this page)
=== Message
Use a different prefix for this namespace.
=== Parameters
.reservedPrefixes
****
----
xml,xmlns,xs,xsd,xsi,wsdl
----
Comma-delimited list of namespace prefixes that should not be used
****
=== Highlighting
``++xmlns:xxx++``
'''
== Comments And Links
(visible only on this page)
=== on 18 Jan 2017, 08:44:23 Ann Campbell wrote:
\[~yves.duboispelerin] I almost want to rename this: Standard namespace prefixes should not be hijacked
WDYT?
endif::env-github,rspecator-view[]