public IXmlTransportable FromXElement(XElement x)
        {
            Core.Fragment f = null;

            foreach(var metaElement in x.Elements("meta"))
            {
                if (f == null) {
                    f = new Core.Fragment(metaElement.Element("key").Value,
                                          metaElement.Element("value").Value);
                }

                f.SetMeta(metaElement.Element("key").Value,
                          metaElement.Element("value").Value);
            }

            return (IXmlTransportable)new FragmentXmlAdapter(f);
        }
 public FragmentXmlAdapter(Core.Fragment f)
 {
     fragment = f;
 }