Other interesting tools have emerged in the con-
text of end-user programming and web augmentation
(D
´
ıaz et al., 2014). Reuse in web augmentation has
also been tackled before. For example, Scripting In-
terface (D
´
ıaz et al., 2010) is oriented to better sup-
port reuse by generating a conceptual layer over the
DOM, specifically for user scripts. Since the specifi-
cation of a scripting interface could be defined in two
distinct websites, the augmentation artifacts written
in terms of that interfaces could be reused. However,
these scripting interfaces do not consider the search
engines provided by web applications.
6 CONCLUSIONS AND FUTURE
WORKS
In this article, we highlight the unique nature of
browser extensions as software tools that enable users
to customize their web browsing experience. While
some browser extensions can be developed with-
out programming skills using end-user development
tools, the complexity increases when scraping is in-
volved.
The article introduces a data service layer ap-
proach to simplify the development process for
browser extensions that require web scraping. The
approach enables developers to define web scraping
operations in a no-code manner by automating the
interaction with search engines, effectively creating
search services or APIs for websites that do not of-
fer them. These search APIs can then be combined
to create more complex information models, allowing
developers to retrieve data from multiple websites in
a single invocation.
An exciting outcome of the presented approach
and tool is its potential integration into other browser
extensions that aim to provide end-user programming
capabilities. Incorporating this data service, including
the end-user programming tools for defining search
services and APIs composition, can serve as a foun-
dational layer within a broader end-user program-
ming tool for more general-purpose artifacts such as
mashups or web augmenters. In addition, this inte-
gration would empower users to leverage web scrap-
ing capabilities seamlessly, enhancing their ability to
customize and extend the functionality of browser ex-
tensions.
By embedding the data service layer into other ex-
tensions, developers can provide a comprehensive en-
vironment that combines the benefits of end-user pro-
gramming with the flexibility of web scraping. This
would enable a wider range of users to create sophis-
ticated browser extensions that rely on scraping and
aggregating information from various websites.
A usability study was conducted to assess the ef-
fectiveness of the approach. While some usability is-
sues were identified, the majority of participants, even
those without programming skills, were able to define
the necessary API compositions for the given tasks,
demonstrating promising results.
As part of future work, the authors plan to conduct
a more comprehensive experiment to validate other
aspects of the data service layer approach. This will
contribute to further refining and enhancing the us-
ability and effectiveness of the proposed method.
REFERENCES
Bizer, C., Eckert, K., Meusel, R., M
¨
uhleisen, H., Schuh-
macher, M., and V
¨
olker, J. (2013). Deployment of
rdfa, microdata, and microformats on the web - A
quantitative analysis. In Alani, H., Kagal, L., Fokoue,
A., Groth, P., Biemann, C., Parreira, J. X., Aroyo, L.,
Noy, N. F., Welty, C., and Janowicz, K., editors, The
Semantic Web - ISWC 2013 - 12th International Se-
mantic Web Conference, Sydney, NSW, Australia, Oc-
tober 21-25, 2013, Proceedings, Part II, volume 8219
of Lecture Notes in Computer Science, pages 17–32.
Springer.
Chasins, S. E., Mueller, M., and Bod
´
ık, R. (2018). Rousil-
lon: Scraping distributed hierarchical web data. In
Baudisch, P., Schmidt, A., and Wilson, A., editors,
The 31st Annual ACM Symposium on User Interface
Software and Technology, UIST 2018, Berlin, Ger-
many, October 14-17, 2018, pages 963–975. ACM.
D
´
ıaz, O. and Arellano, C. (2015). The augmented web:
Rationales, opportunities, and challenges on browser-
side transcoding. ACM Trans. Web, 9(2):8:1–8:30.
D
´
ıaz, O., Arellano, C., Aldalur, I., Medina, H., and Fir-
menich, S. (2014). End-user browser-side modifica-
tion of web pages. In Benatallah, B., Bestavros, A.,
Manolopoulos, Y., Vakali, A., and Zhang, Y., editors,
Web Information Systems Engineering - WISE 2014 -
15th International Conference, Thessaloniki, Greece,
October 12-14, 2014, Proceedings, Part I, volume
8786 of Lecture Notes in Computer Science, pages
293–307. Springer.
D
´
ıaz, O., Arellano, C., and Iturrioz, J. (2010). Interfaces
for scripting: Making greasemonkey scripts resilient
to website upgrades. In Benatallah, B., Casati, F.,
Kappel, G., and Rossi, G., editors, Web Engineering,
10th International Conference, ICWE 2010, Vienna,
Austria, July 5-9, 2010. Proceedings, volume 6189 of
Lecture Notes in Computer Science, pages 233–247.
Springer.
Kalou, A. K., Koutsomitropoulos, D. A., and Pap-
atheodorou, T. S. (2013). Semantic web rules and on-
tologies for developing personalised mashups. Int. J.
Knowl. Web Intell., 4(2/3):142–165.
Karger, D. R., Bakshi, K., Huynh, D., Quan, D., and Sinha,
V. (2005). Haystack: A general-purpose information
A Data Service Layer for Web Browser Extensions
57