public void HandleTokenParam()
        {
            var p1 = new TokenParamValue("NOK", "http://somewhere.nl/codes");
            Assert.AreEqual("http://somewhere.nl/codes!NOK", p1.QueryValue);

            var p2 = new TokenParamValue("NOK", namespaceSensitive:false);
            Assert.AreEqual("NOK", p2.QueryValue);

            var p3 = new TokenParamValue("NOK", namespaceSensitive:true);
            Assert.AreEqual("!NOK", p3.QueryValue);

            var p4 = TokenParamValue.FromQueryValue("http://somewhere.nl/codes!NOK");
            Assert.AreEqual("http://somewhere.nl/codes", p4.Namespace);
            Assert.AreEqual("NOK", p4.Value);
            Assert.IsTrue(p4.NamespaceSensitive);

            var p5 = TokenParamValue.FromQueryValue("!NOK");
            Assert.AreEqual(null, p5.Namespace);
            Assert.AreEqual("NOK", p5.Value);
            Assert.IsTrue(p5.NamespaceSensitive);

            var p6 = TokenParamValue.FromQueryValue("NOK");
            Assert.AreEqual(null, p6.Namespace);
            Assert.AreEqual("NOK", p6.Value);
            Assert.IsFalse(p6.NamespaceSensitive);
        }
 public TokenParamValue AsTokenParam()
 {
     return(TokenParamValue.FromQueryValue(Value));
 }