REX: general-purpose CNL with code generation support
Autor(a) principal: | |
---|---|
Data de Publicação: | 2022 |
Tipo de documento: | Artigo |
Idioma: | eng |
Título da fonte: | Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
Texto Completo: | https://hdl.handle.net/1822/80336 |
Resumo: | Controlled natural languages (CNLs) have been proposed to address some of the issues of natural language when it is used to express requirements. CNLs, however, are based on formal grammar, which can easily become complex, hard to read, and especially hard to write, and the implementation of support tools can also demand a significant effort. Moreover, unanticipated constructions cannot be handled or have to be handled in unexpected and cumbersome ways. In this article, we present REX, a CNL with a simple grammar that is, thus, easy to understand and easy to support, but still general purpose. To accomplish this, instead of trying to support every conceivable construction and imposing a language on the users, through a small but comprehensive set of rules and through patterns, users specify their own language and how natural it is. Another of the benefits of CNLs is the possibility to automate the transformation of a text or specification into something useful, thereby reducing manual labor and transformation errors. In this article, we also present the support tools that were used to transform a REX text into code and a complete application. It is also shown that this CNL and its support tools can be easily adapted to suit different needs. |
id |
RCAP_21a20bd93e3e23ba2361816953eed4db |
---|---|
oai_identifier_str |
oai:repositorium.sdum.uminho.pt:1822/80336 |
network_acronym_str |
RCAP |
network_name_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository_id_str |
7160 |
spelling |
REX: general-purpose CNL with code generation supportcontrolled natural languagecode generationprogrammingrequirements specificationCiências Naturais::Ciências da Computação e da InformaçãoScience & TechnologyControlled natural languages (CNLs) have been proposed to address some of the issues of natural language when it is used to express requirements. CNLs, however, are based on formal grammar, which can easily become complex, hard to read, and especially hard to write, and the implementation of support tools can also demand a significant effort. Moreover, unanticipated constructions cannot be handled or have to be handled in unexpected and cumbersome ways. In this article, we present REX, a CNL with a simple grammar that is, thus, easy to understand and easy to support, but still general purpose. To accomplish this, instead of trying to support every conceivable construction and imposing a language on the users, through a small but comprehensive set of rules and through patterns, users specify their own language and how natural it is. Another of the benefits of CNLs is the possibility to automate the transformation of a text or specification into something useful, thereby reducing manual labor and transformation errors. In this article, we also present the support tools that were used to transform a REX text into code and a complete application. It is also shown that this CNL and its support tools can be easily adapted to suit different needs.Multidisciplinary Digital Publishing InstituteUniversidade do MinhoCarvalho, Adriano Dídimo Machado2022-07-302022-07-30T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/articleapplication/pdfhttps://hdl.handle.net/1822/80336engCarvalho, A. REX: General-Purpose CNL with Code Generation Support. Appl. Sci. 2022, 12, 7700. https://doi.org/10.3390/app121577002076-341710.3390/app12157700https://www.mdpi.com/2076-3417/12/15/7700info:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-07-21T12:09:45Zoai:repositorium.sdum.uminho.pt:1822/80336Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T19:01:14.734104Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse |
dc.title.none.fl_str_mv |
REX: general-purpose CNL with code generation support |
title |
REX: general-purpose CNL with code generation support |
spellingShingle |
REX: general-purpose CNL with code generation support Carvalho, Adriano Dídimo Machado controlled natural language code generation programming requirements specification Ciências Naturais::Ciências da Computação e da Informação Science & Technology |
title_short |
REX: general-purpose CNL with code generation support |
title_full |
REX: general-purpose CNL with code generation support |
title_fullStr |
REX: general-purpose CNL with code generation support |
title_full_unstemmed |
REX: general-purpose CNL with code generation support |
title_sort |
REX: general-purpose CNL with code generation support |
author |
Carvalho, Adriano Dídimo Machado |
author_facet |
Carvalho, Adriano Dídimo Machado |
author_role |
author |
dc.contributor.none.fl_str_mv |
Universidade do Minho |
dc.contributor.author.fl_str_mv |
Carvalho, Adriano Dídimo Machado |
dc.subject.por.fl_str_mv |
controlled natural language code generation programming requirements specification Ciências Naturais::Ciências da Computação e da Informação Science & Technology |
topic |
controlled natural language code generation programming requirements specification Ciências Naturais::Ciências da Computação e da Informação Science & Technology |
description |
Controlled natural languages (CNLs) have been proposed to address some of the issues of natural language when it is used to express requirements. CNLs, however, are based on formal grammar, which can easily become complex, hard to read, and especially hard to write, and the implementation of support tools can also demand a significant effort. Moreover, unanticipated constructions cannot be handled or have to be handled in unexpected and cumbersome ways. In this article, we present REX, a CNL with a simple grammar that is, thus, easy to understand and easy to support, but still general purpose. To accomplish this, instead of trying to support every conceivable construction and imposing a language on the users, through a small but comprehensive set of rules and through patterns, users specify their own language and how natural it is. Another of the benefits of CNLs is the possibility to automate the transformation of a text or specification into something useful, thereby reducing manual labor and transformation errors. In this article, we also present the support tools that were used to transform a REX text into code and a complete application. It is also shown that this CNL and its support tools can be easily adapted to suit different needs. |
publishDate |
2022 |
dc.date.none.fl_str_mv |
2022-07-30 2022-07-30T00:00:00Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/article |
format |
article |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
https://hdl.handle.net/1822/80336 |
url |
https://hdl.handle.net/1822/80336 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.relation.none.fl_str_mv |
Carvalho, A. REX: General-Purpose CNL with Code Generation Support. Appl. Sci. 2022, 12, 7700. https://doi.org/10.3390/app12157700 2076-3417 10.3390/app12157700 https://www.mdpi.com/2076-3417/12/15/7700 |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.publisher.none.fl_str_mv |
Multidisciplinary Digital Publishing Institute |
publisher.none.fl_str_mv |
Multidisciplinary Digital Publishing Institute |
dc.source.none.fl_str_mv |
reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação instacron:RCAAP |
instname_str |
Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
instacron_str |
RCAAP |
institution |
RCAAP |
reponame_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
collection |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository.name.fl_str_mv |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
repository.mail.fl_str_mv |
|
_version_ |
1799132410585022464 |