Esempio n. 1
0
        public override double Compare(Node node)
        {
            var bdn = node as BibliographicDescriptionNode;

            if (bdn == null)
            {
                throw new Exception("Not Bibliographic DescriptionNode");
            }

            double difference = 0;

            difference += TitleNode.Compare(bdn.TitleNode);

            if (difference < 0.05 || difference > 0.25)
            {
                return(difference);
            }

            difference += AutorRangeNode.Compare(bdn.AutorRangeNode);
            difference += PublisherNode.Compare(bdn.PublisherNode);
            difference += CityNode.Compare(bdn.CityNode);
            difference += YearNode.Compare(bdn.YearNode);
            difference += PageCountNode.Compare(bdn.PageCountNode);

            return(difference);
        }