protected override void OnLoad(XmlNode node)
        {
            object v;
            string s;

            _value = XmlSerialization.GetAttribute(node, XmlSerialization.XMLATT_NAME);
            if (string.IsNullOrEmpty(_value))
            {
                _value = "_";
            }
            _subscript = XmlSerialization.GetAttribute(node, "subscript");
            _isInPort  = XmlSerialization.GetAttributeBool(node, "asInport");
            s          = XmlSerialization.GetAttribute(node, "typeDefined");
            if (!string.IsNullOrEmpty(s))
            {
                if (string.Compare(s, "true", StringComparison.OrdinalIgnoreCase) == 0)
                {
                    _typeDefined = true;
                }
            }
            s = XmlSerialization.GetAttribute(node, XmlSerialization.XMLATT_ID);
            if (!string.IsNullOrEmpty(s))
            {
                _id = Convert.ToUInt32(s);
            }
            v = XmlSerialization.ReadFromChildXmlNode(GetReader(), node, "ValueType");
            if (v != null)
            {
                _dataType = (RaisDataType)v;
            }
            else
            {
                _dataType         = new RaisDataType();
                _dataType.LibType = typeof(double);
            }
            LoadPorts(node);
        }