Regular Object Types
Regular Object Types
复制标题
常规对象类型
DOI:
10.1007/978-3-540-45070-2_8
复制
发表时间:
2003
期刊:
影响因子:
--
通讯作者:
B. Pierce
中科院分区:
文献类型:
--
作者:
V. Gapeyev;B. Pierce
Regular types have been proposed as a foundation for statically typed processing of XML and other forms of tree-structured data. To date, however, regular types have only been explored in special-purpose languages (e.g.,XDuce,CDuce, andXQuery) with type systems designed around regular types “from the ground up.” The goal of theXtaticlanguage is to bring regular types to a broad audience by offering them as a lightweight extension of a popular object-oriented language, C#.We develop here the formal core of theXtaticdesign-a combination of the tree-structured data model ofXDuceand the classes-and-objects data model of a conventional object-oriented language. Our tool for this investigation is a tiny language called FX with features drawn from Featherweight Java (FJ) and from the core ofXDuce. Points of interest include (1) a smooth interleaving of the two data models, in whichXDuce’s tree structures are grafted into of FJ’s class hierarchy while objects and object types play the role ofXDuce’s label values and label types; (2) an intuitive “semantic” definition of the subtype relation, inherited fromXDuceand extended to objects; and (3) a natural encoding of XML documents and their schemas using a simple form of singleton classes.