diff --git a/inspire_matcher/utils.py b/inspire_matcher/utils.py
new file mode 100644
index 0000000..ff2cb3e
--- /dev/null
+++ b/inspire_matcher/utils.py
@@ -0,0 +1,39 @@
+# -*- coding: utf-8 -*-
+#
+# This file is part of INSPIRE.
+# Copyright (C) 2014-2017 CERN.
+#
+# INSPIRE is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# INSPIRE is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with INSPIRE. If not, see .
+#
+# In applying this license, CERN does not waive the privileges and immunities
+# granted to it by virtue of its status as an Intergovernmental Organization
+# or submit itself to any jurisdiction.
+
+from __future__ import absolute_import, division, print_function
+
+from inspire_json_merger.comparators import AuthorComparator
+
+
+def get_number_of_author_matches(x_authors, y_authors):
+ """Return the number of matches between two lists of authors.
+
+ Args:
+ x_authors (list(dict)): a schema-compliant list of authors.
+ y_authors (list(dict)): another schema-compliant list of authors.
+
+ Returns:
+ int: the number of matching authors between the two lists.
+
+ """
+ return len(AuthorComparator(x_authors, y_authors).matches)
diff --git a/setup.py b/setup.py
index 80e3d59..69dead5 100644
--- a/setup.py
+++ b/setup.py
@@ -40,6 +40,7 @@
'Werkzeug~=0.0,>=0.12.2',
'elasticsearch-dsl~=2.0,>=2.2.0',
'elasticsearch~=2.0,>=2.4.1',
+ 'inspire-json-merger~=2.0,>=2.0.0',
'inspire-utils~=0.0,>=0.0.10',
'invenio-search>=1.0.0a10',
'six~=1.0,>=1.11.0',
diff --git a/tests/test_utils.py b/tests/test_utils.py
new file mode 100644
index 0000000..1d7f77c
--- /dev/null
+++ b/tests/test_utils.py
@@ -0,0 +1,42 @@
+# -*- coding: utf-8 -*-
+#
+# This file is part of INSPIRE.
+# Copyright (C) 2014-2017 CERN.
+#
+# INSPIRE is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# INSPIRE is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with INSPIRE. If not, see .
+#
+# In applying this license, CERN does not waive the privileges and immunities
+# granted to it by virtue of its status as an Intergovernmental Organization
+# or submit itself to any jurisdiction.
+
+from __future__ import absolute_import, division, print_function
+
+from inspire_matcher.utils import get_number_of_author_matches
+
+
+def test_get_number_of_author_matches():
+ x_authors = [
+ {'full_name': 'Cabibbo, Nicola'},
+ {'full_name': 'Kobayashi, Makoto'},
+ {'full_name': 'Maskawa, Toshihide'},
+ ]
+ y_authors = [
+ {'full_name': 'Kobayashi, Makoto'},
+ {'full_name': 'Maskawa, Toshihide'},
+ ]
+
+ expected = 2
+ result = get_number_of_author_matches(x_authors, y_authors)
+
+ assert expected == result