diff --git a/hoot-core/src/main/cpp/hoot/core/elements/Element.h b/hoot-core/src/main/cpp/hoot/core/elements/Element.h
index 328ce1d..8b955af 100644
--- a/hoot-core/src/main/cpp/hoot/core/elements/Element.h
+++ b/hoot-core/src/main/cpp/hoot/core/elements/Element.h
@@ -117,6 +117,7 @@ public:
const Tags& getTags() const { return _getElementData().getTags(); }
Tags& getTags() { return _getElementData().getTags(); }
+ int getTagCount() const { return _getElementData().getTags().size(); }
bool hasCircularError() const { return _getElementData().hasCircularError(); }
void setCircularError(Meters circularError) { _getElementData().setCircularError(circularError); }
@@ -126,6 +127,15 @@ public:
void setTag(QString k, QString v) { _getElementData().setTag(k, v); }
void addTags(const Tags& tags) { _getElementData().addTags(tags); }
+ /**
+ * Compares information tags with another element
+ *
+ * @param other element to compare this element's tags with
+ * @return true if this element has the same information tags as the other element; false
+ * otherwise
+ */
+ bool hasSameNonMetadataTags(const Element& other) const;
+
bool getVisible() const { return _getElementData().getVisible(); }
void setVisible(bool visible) { _getElementData().setVisible(visible); }