{"id":"https://openalex.org/W2974585540","doi":"https://doi.org/10.1145/3342558.3345397","title":"On the Expressive Power of Declarative Constructs in Interactive Document Scripts","display_name":"On the Expressive Power of Declarative Constructs in Interactive Document Scripts","publication_year":2019,"publication_date":"2019-09-19","ids":{"openalex":"https://openalex.org/W2974585540","doi":"https://doi.org/10.1145/3342558.3345397","mag":"2974585540"},"language":"en","primary_location":{"id":"doi:10.1145/3342558.3345397","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3342558.3345397","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM Symposium on Document Engineering 2019","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5063312563","display_name":"John M. Boyer","orcid":"https://orcid.org/0000-0002-4755-5535"},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"John M. Boyer","raw_affiliation_strings":[""],"affiliations":[{"raw_affiliation_string":"","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5063312563"],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.1094349,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"10"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9965000152587891,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9965000152587891,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9945999979972839,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11450","display_name":"Model-Driven Software Engineering Techniques","score":0.9857000112533569,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8428305983543396},{"id":"https://openalex.org/keywords/succinctness","display_name":"Succinctness","score":0.8376823663711548},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7673593759536743},{"id":"https://openalex.org/keywords/xpath","display_name":"XPath","score":0.7155536413192749},{"id":"https://openalex.org/keywords/declarative-programming","display_name":"Declarative programming","score":0.5833827257156372},{"id":"https://openalex.org/keywords/expressive-power","display_name":"Expressive power","score":0.5522727966308594},{"id":"https://openalex.org/keywords/datalog","display_name":"Datalog","score":0.5051503777503967},{"id":"https://openalex.org/keywords/scripting-language","display_name":"Scripting language","score":0.49985265731811523},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4508145749568939},{"id":"https://openalex.org/keywords/xml","display_name":"XML","score":0.4091004729270935},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.20029115676879883},{"id":"https://openalex.org/keywords/xml-database","display_name":"XML database","score":0.13259220123291016},{"id":"https://openalex.org/keywords/inductive-programming","display_name":"Inductive programming","score":0.09309074282646179}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8428305983543396},{"id":"https://openalex.org/C2776493592","wikidata":"https://www.wikidata.org/wiki/Q5158717","display_name":"Succinctness","level":2,"score":0.8376823663711548},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7673593759536743},{"id":"https://openalex.org/C2780213375","wikidata":"https://www.wikidata.org/wiki/Q16340","display_name":"XPath","level":4,"score":0.7155536413192749},{"id":"https://openalex.org/C146206909","wikidata":"https://www.wikidata.org/wiki/Q531152","display_name":"Declarative programming","level":4,"score":0.5833827257156372},{"id":"https://openalex.org/C195818886","wikidata":"https://www.wikidata.org/wiki/Q5421724","display_name":"Expressive power","level":2,"score":0.5522727966308594},{"id":"https://openalex.org/C148230440","wikidata":"https://www.wikidata.org/wiki/Q1172264","display_name":"Datalog","level":2,"score":0.5051503777503967},{"id":"https://openalex.org/C61423126","wikidata":"https://www.wikidata.org/wiki/Q187432","display_name":"Scripting language","level":2,"score":0.49985265731811523},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4508145749568939},{"id":"https://openalex.org/C8797682","wikidata":"https://www.wikidata.org/wiki/Q2115","display_name":"XML","level":2,"score":0.4091004729270935},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.20029115676879883},{"id":"https://openalex.org/C183068750","wikidata":"https://www.wikidata.org/wiki/Q357393","display_name":"XML database","level":3,"score":0.13259220123291016},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.09309074282646179},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3342558.3345397","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3342558.3345397","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM Symposium on Document Engineering 2019","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":7,"referenced_works":["https://openalex.org/W122154057","https://openalex.org/W2890391545","https://openalex.org/W2890747149","https://openalex.org/W3198160809","https://openalex.org/W4206573268","https://openalex.org/W4233037448","https://openalex.org/W4285719527"],"related_works":["https://openalex.org/W2109725814","https://openalex.org/W4394664935","https://openalex.org/W2087528959","https://openalex.org/W3121709727","https://openalex.org/W2963679208","https://openalex.org/W2743317844","https://openalex.org/W1560546362","https://openalex.org/W4237831588","https://openalex.org/W4387885179","https://openalex.org/W1502477797"],"abstract_inverted_index":{"It":[0],"is":[1,124,144],"difficult":[2],"to":[3,29,80,180,198],"generally":[4],"compare":[5],"the":[6,38,54,72,122,137,141,174,191],"succinctness":[7],"of":[8,61,71,121,140,157,173,195],"declarative":[9,34,69,99,119,142,151],"versus":[10],"imperative":[11,19,64,103,132,167],"programming":[12],"as":[13],"source":[14,83],"code":[15,59,84],"size":[16,60,78,85],"varies.":[17],"In":[18,149],"programs,":[20,35],"basic":[21,166],"operations":[22],"have":[23,154],"constant":[24],"cost,":[25],"but":[26],"they":[27],"tend":[28],"be":[30,181],"more":[31],"verbose":[32],"than":[33],"which":[36],"increases":[37],"potential":[39],"for":[40,48,82,106],"defects.":[41],"This":[42,75],"paper":[43],"presents":[44],"a":[45,49,62,67,91,186,199],"novel":[46,117,187],"approach":[47],"generalized":[50,192],"comparison":[51],"by":[52],"transforming":[53],"problem":[55],"into":[56],"comparing":[57],"executed":[58],"benchmark":[63],"algorithm":[65],"with":[66,108,163],"partially":[68,118],"variant":[70,120],"same":[73],"algorithm.":[74],"allows":[76],"input":[77],"variation":[79],"substitute":[81],"variation.":[86],"For":[87],"implementation,":[88],"we":[89],"use":[90],"multiparadigm":[92],"language":[93],"called":[94],"XForms":[95],"that":[96,129],"contains":[97],"both":[98],"XPath":[100],"expressions":[101],"and":[102,113],"script":[104],"actions":[105,133],"interacting":[107],"XML":[109,196],"data":[110,197],"within":[111],"web":[112],"office":[114],"documents.":[115],"A":[116],"quicksort":[123],"presented.":[125],"Amortized":[126],"analysis":[127],"shows":[128],"only":[130,164],"O(n)":[131],"are":[134],"executed,":[135],"so":[136],"expressive":[138,159,175],"power":[139,160,176],"constructs":[143,152],"at":[145],"least":[146],"\u03a9(log":[147],"n).":[148],"general,":[150],"can":[153],"an":[155],"order":[156],"magnitude":[158],"advantage":[161,177],"compared":[162],"using":[165],"operations.":[168],"The":[169],"performance":[170],"cost":[171],"factor":[172],"was":[178],"determined":[179],"O(log2":[182],"n)":[183],"based":[184],"on":[185],"dynamic":[188],"projection":[189],"from":[190],"tree":[193],"structure":[194],"height":[200],"balanced":[201],"binary":[202],"tree.":[203]},"counts_by_year":[],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
