US20060248538A1 - Xml interfaces in unified rendering - Google Patents

Xml interfaces in unified rendering Download PDF

Info

Publication number
US20060248538A1
US20060248538A1 US10/529,638 US52963805A US2006248538A1 US 20060248538 A1 US20060248538 A1 US 20060248538A1 US 52963805 A US52963805 A US 52963805A US 2006248538 A1 US2006248538 A1 US 2006248538A1
Authority
US
United States
Prior art keywords
instructions
implementation
definition
readable medium
validating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US10/529,638
Inventor
Josef Dietl
Reiner Hammerich
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SAP SE
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Assigned to SAP AG reassignment SAP AG ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DIETL, JOSEF, HAMMERICH, REINER
Assigned to SAP AG reassignment SAP AG ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SAP AKTIENGESELLSCHAFT
Publication of US20060248538A1 publication Critical patent/US20060248538A1/en
Assigned to SAP SE reassignment SAP SE CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: SAP AG
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3608Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2294Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by remote test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/43Checking; Contextual analysis
    • G06F8/436Semantic checking

Definitions

  • the invention relates in general to programmable electronic multipurpose computers.
  • Scripting languages such as JavaScript and Perl
  • JavaScript and Perl can be used to program applications to be run on computer systems. Correctness of the programmed scripting code is desirable, as with any computer programming in general.
  • a program can be checked or validated prior to use to reduce errors occurring during runtime of the code. It is an object of the invention to reduce the number of errors in computer code. Therefore, the invention provides for a computer implemented method for validation of computer code according to claim 1 . By validating both sets of instructions with the script code used, the number of errors will be reduced.
  • a computer program can be defined in design documentation and specifications. From this starting point an actual implementation can be coded using a suitable programming language.
  • the coding is done using a two-component interface-classes model, and a script coded section.
  • Non-limiting examples of such programming languages are compiler languages and object oriented programming languages.
  • compiler languages such as for example Modula-2
  • object oriented programming languages such as for example Java, C++, C#, and Modula-3
  • the components are implemented as interfaces and classes, wherein interfaces are equivalent to definition modules and classes are equivalent to implementation modules.
  • the script-coded section can be programmed using any suitable script language, such as for example JavaScript and Perl.
  • Interfaces in object-oriented programming are used for several purposes. To function for example as a record of promises (with respect to functionality) given by one (“provider”) class. This fact is used to verify automatically during compilation whether a second “customer” object is relying on features of a class that have not been promised. Also the interface is used to verify whether the actual implementation of the provider class keeps all its promises.
  • Interfaces enable modern compiler languages to verify the availability of the method during compilation, eliminating this failure mode with the associated debugging effort.
  • Another example is that can be checked whether a method of an object is called in the code that is not present in the interface. This would lead in the compiled code during runtime to errors. By checking the interface, this can be caught at the outset, eliminating this failure mode during runtime.
  • a program is programmed in object oriented style using two separate tree structures, written in XML, wherein the first tree structure represents the classes to be implemented and the second tree structure represents the associated interfaces.
  • the invention is not limited to the implementation shown in this example, and that any programming implementation yielding a set of classes/definitions and interfaces/implementations can be employed.
  • Based on this tree structures in XML executable programs can be generated, for example using Extensible Stylesheet Language (XSL) or Apache Velocity.
  • XSL defines the code using two parts; a language for transforming XML documents, and an XML vocabulary for specifying formatting semantics.
  • An XSL style sheet specifies the presentation of a class of XML documents by describing how an instance of the class is transformed into an XML document that uses the formatting vocabulary. On the XML level a syntax check is performed between the interface description and the implementation class description.
  • executable programs can be generated for different platforms, for example ABAP, Net and JavaScript.
  • the executable code generated does implement classes and interfaces, such as is the case with ABAP and .Net
  • the validity of that code can be verified with a compiler program that performs the usage and implementation checks at the semantics level.
  • executable program code is generated from the interface description and from the implementation class description. The thus generated code can then use or call the script coded section when needed.
  • the generation of executable programs in script languages is done by first generating an intermediate code, using a language that supports classes and interfaces.
  • the intermediate code used can be Java, with implementation for interfaces and classes.
  • the validity of these interfaces and classes is then proved using methods as described above, i.e. using a compiler that performs the usage and implementation checks at the semantics level. This can be done for example by comparing the resulting interfaces with the classes obtained.
  • a successful validation of the Java code means that the original XML code is correct for at least the interface and classes definition.
  • the script code section is checked by running it trough an interpreter. This can be for example a JavaScript interpreter if the script code is written in JavaScript.
  • interpreters or parsers are known per se in the art.
  • the interpreter yields at least a symbol table including various elements, such as for example variables, used by the script code.
  • the information included in the symbol table is compared to the original XML implementation description. From this comparison can be derived whether the script code is compatible with the implementation description. If the script code is validated accordingly, executable code generated from the sets of definition and implementation instructions, is validated for use with the script code. Thus validated, the number of runtime errors is reduced.
  • two separate tree structures are provided for, together with a script code section.
  • the first tree structure describes interfaces, while the second tree structure describes content in the form of classes for a HTML document.
  • the script code section provides functionality for the HTML document, such as for example scrolling of text.
  • the tree structures can be programmed for example in XML, and the script code section can be programmed in JavaScript.
  • the invention further relates to a program storage device readable by a computer system, embodying a program of instructions executable by the computer system to perform any method according to the invention.
  • a program storage device readable by a computer system, embodying a program of instructions executable by the computer system to perform any method according to the invention.

Abstract

Computer implemented methods are provided for validating computer code in order to reduce errors at runtime. In one implementation, the method comprises providing a computer program by defining at least one set of definition instructions, at least one set of implementation instructions, and a script code section. The definition instructions and the implementation instructions may be described in XML. Further, the method may comprise validating the set of definition instructions and the set of implementation instructions using a validation tool, and validating the script code section using the set of implementation instructions.

Description

  • The invention relates in general to programmable electronic multipurpose computers.
  • Scripting languages, such as JavaScript and Perl, can be used to program applications to be run on computer systems. Correctness of the programmed scripting code is desirable, as with any computer programming in general. A program can be checked or validated prior to use to reduce errors occurring during runtime of the code. It is an object of the invention to reduce the number of errors in computer code. Therefore, the invention provides for a computer implemented method for validation of computer code according to claim 1. By validating both sets of instructions with the script code used, the number of errors will be reduced.
  • Objects, aspects and advantages of the invention will be better understood from the following detailed description of a preferred embodiment of the invention.
  • A computer program can be defined in design documentation and specifications. From this starting point an actual implementation can be coded using a suitable programming language.
  • According to the invention the coding is done using a two-component interface-classes model, and a script coded section. Non-limiting examples of such programming languages are compiler languages and object oriented programming languages. In compiler languages, such as for example Modula-2, these components are implemented as definition modules and implementation modules. In object oriented programming languages, such as for example Java, C++, C#, and Modula-3, the components are implemented as interfaces and classes, wherein interfaces are equivalent to definition modules and classes are equivalent to implementation modules. The script-coded section can be programmed using any suitable script language, such as for example JavaScript and Perl.
  • Interfaces in object-oriented programming are used for several purposes. To function for example as a record of promises (with respect to functionality) given by one (“provider”) class. This fact is used to verify automatically during compilation whether a second “customer” object is relying on features of a class that have not been promised. Also the interface is used to verify whether the actual implementation of the provider class keeps all its promises.
  • This allows inspection of the code during compilation and to test or validate whether errors with respect to these fundamentals would occur during runtime. For example methods that are offered by the object can be checked, as well as compliance of object classes with the respective interfaces. If errors are found these can be reported during compilation, so that the errors in the source code can be corrected. Thus runtime errors are reduced in the compiled code.
  • For example, if an interface promises the availability of a certain method but the method is not present in the implementation, a “customer” of that method would fail at latest at run time. Interfaces enable modern compiler languages to verify the availability of the method during compilation, eliminating this failure mode with the associated debugging effort.
  • Another example is that can be checked whether a method of an object is called in the code that is not present in the interface. This would lead in the compiled code during runtime to errors. By checking the interface, this can be caught at the outset, eliminating this failure mode during runtime.
  • In one embodiment of the invention, a program is programmed in object oriented style using two separate tree structures, written in XML, wherein the first tree structure represents the classes to be implemented and the second tree structure represents the associated interfaces. Note that the invention is not limited to the implementation shown in this example, and that any programming implementation yielding a set of classes/definitions and interfaces/implementations can be employed. Based on this tree structures in XML executable programs can be generated, for example using Extensible Stylesheet Language (XSL) or Apache Velocity. XSL defines the code using two parts; a language for transforming XML documents, and an XML vocabulary for specifying formatting semantics. An XSL style sheet specifies the presentation of a class of XML documents by describing how an instance of the class is transformed into an XML document that uses the formatting vocabulary. On the XML level a syntax check is performed between the interface description and the implementation class description.
  • Using this method executable programs can be generated for different platforms, for example ABAP, Net and JavaScript. In case the executable code generated does implement classes and interfaces, such as is the case with ABAP and .Net, the validity of that code can be verified with a compiler program that performs the usage and implementation checks at the semantics level. Then executable program code is generated from the interface description and from the implementation class description. The thus generated code can then use or call the script coded section when needed.
  • In this example, the generation of executable programs in script languages, such as for example JavaScript is done by first generating an intermediate code, using a language that supports classes and interfaces. In this example, the intermediate code used can be Java, with implementation for interfaces and classes. The validity of these interfaces and classes is then proved using methods as described above, i.e. using a compiler that performs the usage and implementation checks at the semantics level. This can be done for example by comparing the resulting interfaces with the classes obtained. A successful validation of the Java code means that the original XML code is correct for at least the interface and classes definition. Further the script code section is checked by running it trough an interpreter. This can be for example a JavaScript interpreter if the script code is written in JavaScript. Such interpreters or parsers are known per se in the art. The interpreter yields at least a symbol table including various elements, such as for example variables, used by the script code. The information included in the symbol table is compared to the original XML implementation description. From this comparison can be derived whether the script code is compatible with the implementation description. If the script code is validated accordingly, executable code generated from the sets of definition and implementation instructions, is validated for use with the script code. Thus validated, the number of runtime errors is reduced.
  • In a further embodiment of the invention, two separate tree structures are provided for, together with a script code section. The first tree structure describes interfaces, while the second tree structure describes content in the form of classes for a HTML document. The script code section provides functionality for the HTML document, such as for example scrolling of text. The tree structures can be programmed for example in XML, and the script code section can be programmed in JavaScript.
  • The invention further relates to a program storage device readable by a computer system, embodying a program of instructions executable by the computer system to perform any method according to the invention. As this invention may be embodied in several forms without departing from the spirit of essential characteristics thereof, the present embodiment is therefore illustrative and not restrictive, since the scope of the invention is defined by the appended claims rather than by the description preceding them, and all changes that fall within the metes and bounds of the claims, or equivalence of such metes and bounds thereof are therefore intended to be embraced by the claims.

Claims (21)

1. A computer-implemented method for validating computer code, comprising:
providing a computer program by defining at least one set of definition instructions, at least one set of implementation instructions and at least a script code section;
validating the set of definition instructions and the set of implementation instructions using a validation tool; and
validating the script code section using the set of implementation instructions.
2. The method according to claim 1, wherein the set of definition instructions are classes and the set of implementation instructions are interfaces.
3. The method according to claim 1, wherein the set of definition instructions are converted into classes and the set of implementation instructions are converted into interfaces.
4. The method according to claim 3, wherein the set of definition instructions and the set of implementation instructions are described in XML.
5. The method according to claim 4, wherein the classes and the interfaces are defined in Java language.
6. The method according to claim 1, wherein the set of definition instructions is defined in a tree structure.
7. The method according to claim 1, wherein the script code section is JavaScript.
8. The method according to claim 1, wherein validating the script code section comprises generating a symbol table by executing the code section in an interpreter, and comparing the symbol table with the implementation instructions.
9. (canceled)
10. The method according to claim 1, wherein the set of implementation instructions is defined in a tree structure.
11. The method according to claim 1, wherein the set of definition instructions is defined in a first tree structure and the set of implementation instructions is defined in a second tree structure.
12. A computer readable medium that is readable by a processor, the computer readable medium comprising a set of instructions executable by the processor to perform a method for validating computer code, the method comprising:
defining a set of definition instructions;
defining a set of implementation instructions;
defining a script code section;
validating the set of definition instructions and the set of implementation instructions using a validation tool; and
validating the script code section using the set of implementation instructions.
13. The computer readable medium according to claim 12, wherein the set of definition instructions are classes and the set of implementation instructions are interfaces.
14. The computer readable medium according to claim 12, wherein the set of definition instructions are converted into classes and the set of implementation instructions are converted into interfaces.
15. The computer readable medium according to claim 14, wherein the set of definition instructions and the set of implementation instructions are described in XML.
16. The computer readable medium according to claim 15, wherein the classes and the interfaces are defined in Java language.
17. The computer readable medium according to claim 12, wherein the set of definition instructions is defined in a tree structure.
18. The computer readable medium according to claim 12, wherein the script code section is JavaScript.
19. The computer readable medium according to claim 12, wherein validating the script code section comprises generating a symbol table by executing the code section in an interpreter, and comparing the symbol table with the implementation instructions.
20. The computer readable medium according to claim 12, wherein the set of implementation instructions is defined in a tree structure.
21. The computer readable medium according to claim 12, wherein the set of definition instructions is defined in a first tree structure and the set of implementation instructions is defined in a second tree structure.
US10/529,638 2002-10-01 2003-09-18 Xml interfaces in unified rendering Abandoned US20060248538A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP02022042.2 2002-10-01
EP02022042A EP1406166B1 (en) 2002-10-01 2002-10-01 Validation of scripting languages with interfaces using annotations in XML
PCT/EP2003/010442 WO2004031946A1 (en) 2002-10-01 2003-09-18 Xml interfaces in unified rendering

Publications (1)

Publication Number Publication Date
US20060248538A1 true US20060248538A1 (en) 2006-11-02

Family

ID=31985034

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/529,638 Abandoned US20060248538A1 (en) 2002-10-01 2003-09-18 Xml interfaces in unified rendering
US10/676,825 Active 2026-03-27 US7584457B2 (en) 2002-10-01 2003-09-30 Validating programs

Family Applications After (1)

Application Number Title Priority Date Filing Date
US10/676,825 Active 2026-03-27 US7584457B2 (en) 2002-10-01 2003-09-30 Validating programs

Country Status (5)

Country Link
US (2) US20060248538A1 (en)
EP (1) EP1406166B1 (en)
AT (1) ATE516537T1 (en)
AU (1) AU2003275972A1 (en)
WO (1) WO2004031946A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040128612A1 (en) * 2002-10-09 2004-07-01 Josef Dietl Hybrid digital signature workflow
US20040143627A1 (en) * 2002-10-29 2004-07-22 Josef Dietl Selecting a renderer

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE516537T1 (en) * 2002-10-01 2011-07-15 Sap Ag TESTING SCRIPTING LANGUAGES WITH INTERFACES USING ANNOTATIONS IN XML
US7454660B1 (en) * 2003-10-13 2008-11-18 Sap Ag System and method for testing applications at the business layer
WO2006043012A1 (en) * 2004-10-22 2006-04-27 New Technology/Enterprise Limited Data processing system and method
US7882317B2 (en) * 2004-12-06 2011-02-01 Microsoft Corporation Process isolation using protection domains
US8020141B2 (en) 2004-12-06 2011-09-13 Microsoft Corporation Operating-system process construction
US7451435B2 (en) * 2004-12-07 2008-11-11 Microsoft Corporation Self-describing artifacts and application abstractions
US7600232B2 (en) * 2004-12-07 2009-10-06 Microsoft Corporation Inter-process communications employing bi-directional message conduits
US8849968B2 (en) * 2005-06-20 2014-09-30 Microsoft Corporation Secure and stable hosting of third-party extensions to web services
US7673231B2 (en) * 2005-06-24 2010-03-02 Sun Microsystems, Inc. Optimized markup language processing using repeated structures in markup language source
US20070028217A1 (en) * 2005-07-29 2007-02-01 Microsoft Corporation Testing software using verification data defined independently of the testing code
US8074231B2 (en) 2005-10-26 2011-12-06 Microsoft Corporation Configuration of isolated extensions and device drivers
US20070094495A1 (en) * 2005-10-26 2007-04-26 Microsoft Corporation Statically Verifiable Inter-Process-Communicative Isolated Processes
US8032898B2 (en) 2006-06-30 2011-10-04 Microsoft Corporation Kernel interface with categorized kernel objects
US20080222463A1 (en) * 2007-03-05 2008-09-11 Interdigital Technology Corporation Apparatus, method and product for testing communications components
US8789063B2 (en) 2007-03-30 2014-07-22 Microsoft Corporation Master and subordinate operating system kernels for heterogeneous multiprocessor systems
US9575878B2 (en) * 2009-03-16 2017-02-21 International Business Machines Corporation Data-driven testing without data configuration
US8566551B2 (en) 2010-05-28 2013-10-22 Hitachi, Ltd. Information apparatus and method for controlling the same
US9240965B2 (en) 2010-08-31 2016-01-19 Sap Se Methods and systems for business interaction monitoring for networked business process
US8438272B2 (en) 2010-08-31 2013-05-07 Sap Ag Methods and systems for managing quality of services for network participants in a networked business process
US8560636B2 (en) 2010-08-31 2013-10-15 Sap Ag Methods and systems for providing a virtual network process context for network participant processes in a networked business process
US9841956B2 (en) 2011-01-31 2017-12-12 Sap Se User interface style guide compliance reporting
US9052845B2 (en) 2011-01-31 2015-06-09 Sap Se Unified interface for meta model checking, modifying, and reporting
US9459846B2 (en) * 2011-01-31 2016-10-04 Sap Se User interface style guide compliance
US20120198367A1 (en) * 2011-01-31 2012-08-02 Sap Ag User interface style guide compliance forecasting
US20120221967A1 (en) * 2011-02-25 2012-08-30 Sabrina Kwan Dashboard object validation
US9128886B2 (en) 2011-12-20 2015-09-08 Sap Se Computer implemented method, computer system, electronic interface, mobile computing device and computer readable medium
US9411665B2 (en) 2012-09-05 2016-08-09 Sap Se Messaging infrastructure integration
US8745594B1 (en) 2013-05-10 2014-06-03 Technobasics Software Inc. Program flow specification language and system
US11593249B2 (en) * 2015-12-23 2023-02-28 Oracle International Corporation Scalable points-to analysis via multiple slicing
US10783007B2 (en) 2018-10-01 2020-09-22 Sap Se Load distribution for integration scenarios
US10747658B2 (en) * 2018-11-19 2020-08-18 Paypal, Inc. Systems and methods for testing online use-case scenarios in a staging environment
US10715388B2 (en) 2018-12-10 2020-07-14 Sap Se Using a container orchestration service for dynamic routing
DE102020130022A1 (en) * 2020-11-13 2022-05-19 Festo Se & Co. Kg Checking the compatibility of a process module to be newly integrated in an automation system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594823B1 (en) * 2000-09-13 2003-07-15 Microsoft Corporation Method and system for representing a high-level programming language data structure in a mark-up language
US6754884B1 (en) * 2001-07-02 2004-06-22 Bea Systems, Inc. Programming language extensions for processing XML objects and related applications
US20040123273A1 (en) * 2002-10-01 2004-06-24 Reiner Hammerich Validating programs
US6823504B1 (en) * 2000-11-15 2004-11-23 Sun Microsystems, Inc. Method and apparatus for interfacing a javascript interpreter with library of host objects implemented in java
US6990654B2 (en) * 2000-09-14 2006-01-24 Bea Systems, Inc. XML-based graphical user interface application development toolkit
US7962925B2 (en) * 2002-02-22 2011-06-14 Oracle International Corporation System and method for XML data binding

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6066181A (en) * 1997-12-08 2000-05-23 Analysis & Technology, Inc. Java native interface code generator
EP1292886A1 (en) * 2000-04-21 2003-03-19 Togethersoft Corporation Methods and systems for supporting and deploying distributed computing components
US6941520B1 (en) * 2000-05-09 2005-09-06 International Business Machines Corporation Method, system, and program for using a user interface program to generate a user interface for an application program
EP1301854B1 (en) * 2000-05-25 2011-11-23 Oracle America, Inc. Method and apparatus for creating efficient native methods that extend a bytecode interpreter
US6950831B2 (en) * 2001-03-23 2005-09-27 Siemens Medical Solutions Health Services Corporation Processing system for use with a user interface display
US20040015840A1 (en) * 2001-04-19 2004-01-22 Avaya, Inc. Mechanism for converting between JAVA classes and XML
US7512932B2 (en) * 2002-03-22 2009-03-31 Sun Microsystems, Inc. Language and object model for describing MIDlets

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594823B1 (en) * 2000-09-13 2003-07-15 Microsoft Corporation Method and system for representing a high-level programming language data structure in a mark-up language
US6990654B2 (en) * 2000-09-14 2006-01-24 Bea Systems, Inc. XML-based graphical user interface application development toolkit
US6823504B1 (en) * 2000-11-15 2004-11-23 Sun Microsystems, Inc. Method and apparatus for interfacing a javascript interpreter with library of host objects implemented in java
US6754884B1 (en) * 2001-07-02 2004-06-22 Bea Systems, Inc. Programming language extensions for processing XML objects and related applications
US7962925B2 (en) * 2002-02-22 2011-06-14 Oracle International Corporation System and method for XML data binding
US20040123273A1 (en) * 2002-10-01 2004-06-24 Reiner Hammerich Validating programs
US7584457B2 (en) * 2002-10-01 2009-09-01 Sap Ag Validating programs

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Gosling, James, Bill Joy, Buy Steele, and Gilad Bracha. "The Java (TM) Language Specification, Second Edition." 2000, Addison-Wesley. Second edition. Additionally cite Chapter 13, pages 251-273. *
Gosling, James, Bill Joy, Buy Steele, and Gilad Bracha. "The Java (TM) Language Specification, Second Edition." 2000, Addison-Wesley. Second edition. Pages 1, 72-77, 119-133, 135-153, 199-202, 219-227, and 229-249. *
Gosling, James, Bill Joy, Guy Steele, and Gilad Bracha. "The Java (TM) Language Specification, Second Edition." 2000, Addison-Wesley. Second edition. Additionally cite Chapter 18, pages 449-456 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040128612A1 (en) * 2002-10-09 2004-07-01 Josef Dietl Hybrid digital signature workflow
US7783885B2 (en) 2002-10-09 2010-08-24 Sap Aktiengesellschaft Hybrid digital signature workflow
US20040143627A1 (en) * 2002-10-29 2004-07-22 Josef Dietl Selecting a renderer
US7529792B2 (en) 2002-10-29 2009-05-05 Sap Aktiengesellschaft Method and apparatus for selecting a renderer

Also Published As

Publication number Publication date
US7584457B2 (en) 2009-09-01
EP1406166A1 (en) 2004-04-07
WO2004031946A1 (en) 2004-04-15
AU2003275972A1 (en) 2004-04-23
EP1406166B1 (en) 2011-07-13
US20040123273A1 (en) 2004-06-24
ATE516537T1 (en) 2011-07-15

Similar Documents

Publication Publication Date Title
US20060248538A1 (en) Xml interfaces in unified rendering
US8694960B2 (en) Computer-implemented method, system and computer program product for displaying a user interface component
US20070011651A1 (en) Customized annotation editing
US9141807B2 (en) Security remediation
Klint et al. On the impact of DSL tools on the maintainability of language implementations
US20100146494A1 (en) Compiler generator
US20100325607A1 (en) Generating Code Meeting Approved Patterns
US20090288072A1 (en) Automatic Tests of Product Documentation
US9454347B2 (en) Analyzing incomplete software
US9465591B2 (en) Syntax language generator for compiler validation
Nguyen et al. Varis: IDE support for embedded client code in PHP web applications
CN111694726B (en) Python program type derivation method based on type labeling
CN115951890A (en) Method, system and device for code conversion between different front-end frames
US20210208857A1 (en) Parsability of code snippets
CN115357492A (en) Formal verification method and device for Java software
CN110781078B (en) Code vulnerability processing method and device
Golubovsky et al. Yhc. Core–from Haskell to Core
Heidenreich et al. Model-driven modernisation of Java programs with JaMoPP
CN112083966A (en) Method for loading remote vue component
CN106202319B (en) Abnormal URL (Uniform resource locator) verification method and system
Reid et al. Using the TypeScript compiler to fix erroneous Node. js snippets
CN116860324B (en) Development data processing method, development data processing apparatus, and readable storage medium
Bartgis Towards an Assignment Description Language for Assignment Test Generation
Klint et al. DSL tools: Less maintenance
New et al. EnergyPlus performance improvements via JSON input refactoring

Legal Events

Date Code Title Description
AS Assignment

Owner name: SAP AG, GERMANY

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DIETL, JOSEF;HAMMERICH, REINER;REEL/FRAME:017188/0687

Effective date: 20051101

AS Assignment

Owner name: SAP AG,GERMANY

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SAP AKTIENGESELLSCHAFT;REEL/FRAME:017347/0220

Effective date: 20050609

Owner name: SAP AG, GERMANY

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SAP AKTIENGESELLSCHAFT;REEL/FRAME:017347/0220

Effective date: 20050609

AS Assignment

Owner name: SAP SE, GERMANY

Free format text: CHANGE OF NAME;ASSIGNOR:SAP AG;REEL/FRAME:033625/0223

Effective date: 20140707

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION