return sb.toString();
}
- private static StringBuilder appendValue(final StringBuilder sb, final QNameModule currentModule,
+ private StringBuilder appendValue(final StringBuilder sb, final QNameModule currentModule,
final Object value) {
+ if (value instanceof QName qname) {
+ // QName implies identity-ref, which can never be escaped
+ return appendQName(sb.append('\''), qname, currentModule).append('\'');
+ }
+
final var str = String.valueOf(value);
// We have two specifications here: Section 6.1.3 of both RFC6020 and RFC7950: