String (final @NotNull XmlTag tag, final String text) { final String namespacePrefix = XmlUtil.findPrefixByQualifiedName(text); final String namespaceByPrefix = tag.getNamespaceByPrefix(namespacePrefix); if (!namespaceByPrefix.isEmpty()) return namespaceByPrefix; final XmlTag rootTag = ((XmlFile)tag.getContainingFile()).getRootTag(); if (rootTag != null && "schema".equals(rootTag.getLocalName()) && XmlUtil.ourSchemaUrisList.contains(rootTag.getNamespace())) { final String targetNS = rootTag.getAttributeValue(TARGET_NAMESPACE); if (targetNS != null) { final String targetNsPrefix = rootTag.getPrefixByNamespace(targetNS); if (namespacePrefix.equals(targetNsPrefix) || targetNsPrefix == null) { return targetNS; } } } return namespaceByPrefix; }