2
// MonoDevelop XML Editor
4
// Copyright (C) 2006 Matthew Ward
9
namespace MonoDevelop.XmlEditor
12
/// A namespace Uri and a prefix.
14
public class XmlNamespace
16
string prefix = String.Empty;
17
string uri = String.Empty;
19
const string prefixToStringStart = "Prefix [";
20
const string uriToStringMiddle = "] Uri [";
22
public XmlNamespace(string prefix, string uri)
28
public string Prefix {
40
public override string ToString()
42
return String.Concat(prefixToStringStart, prefix, uriToStringMiddle, uri, "]");
46
/// Creates an XmlNamespace instance from the given string that is in the
47
/// format returned by ToString.
49
public static XmlNamespace FromString(string s)
51
int prefixIndex = s.IndexOf(prefixToStringStart);
52
if (prefixIndex >= 0) {
53
prefixIndex += prefixToStringStart.Length;
54
int uriIndex = s.IndexOf(uriToStringMiddle, prefixIndex);
56
string prefix = s.Substring(prefixIndex, uriIndex - prefixIndex);
57
uriIndex += uriToStringMiddle.Length;
58
string uri = s.Substring(uriIndex, s.Length - (uriIndex + 1));
59
return new XmlNamespace(prefix, uri);
62
return new XmlNamespace(String.Empty, String.Empty);