diff --git a/html5lib/sanitizer.py b/html5lib/sanitizer.py
index 469d9b40..c84c43c5 100644
--- a/html5lib/sanitizer.py
+++ b/html5lib/sanitizer.py
@@ -138,7 +138,7 @@ class HTMLSanitizerMixin(object):
acceptable_protocols = ['ed2k', 'ftp', 'http', 'https', 'irc',
'mailto', 'news', 'gopher', 'nntp', 'telnet', 'webcal',
'xmpp', 'callto', 'feed', 'urn', 'aim', 'rsync', 'tag',
- 'ssh', 'sftp', 'rtsp', 'afs']
+ 'ssh', 'sftp', 'rtsp', 'afs', 'tel']
# subclasses may define their own versions of these constants
allowed_elements = acceptable_elements + mathml_elements + svg_elements
@@ -181,7 +181,7 @@ def allowed_token(self, token, token_type):
if "data" in token:
attrs = dict([(name, val) for name, val in
token["data"][::-1]
- if name in self.allowed_attributes])
+ if name in self.allowed_attributes or name.startswith('data-')])
for attr in self.attr_val_is_uri:
if attr not in attrs:
continue