WO2001008002A2 - Hierarchically structured control information editor - Google Patents
Hierarchically structured control information editor Download PDFInfo
- Publication number
- WO2001008002A2 WO2001008002A2 PCT/CA2000/000841 CA0000841W WO0108002A2 WO 2001008002 A2 WO2001008002 A2 WO 2001008002A2 CA 0000841 W CA0000841 W CA 0000841W WO 0108002 A2 WO0108002 A2 WO 0108002A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- context
- data
- hierarchically structured
- specifying
- parametric
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/33—Intelligent editors
Definitions
- the present invention is directed toward a system and method for editing source code templates in a target language utilizing a graphical user interface. More particularly, the present invention is directed to a system and method in which a programmer parameterizes target source code with contextual metadata provided by the application domain. He determines the repetitive and nesting structures of the code which is visually clear, easy to maintain and fully consistent.
- a kind of template is a block of target source code annotated where the change is needed, saved in a common location and reused by a programmer with some manual interventions.
- Textual generation templates are created with programmer's instructions that are given using a rigorous syntax and are used by the source code generator to replace any context variable in the provided parameterized source code.
- the programmer has to create textual generation templates using these symbols.
- a mental list of such symbols must be built up in order for the programmer to stay consistent in naming the components, especially when there is more than one parametric symbol from %001 up to %999 that needs to be respectively associated with a context variable.
- a programmer could decide to concatenate the parameterized code with the result of an instruction performed by an algorithm implemented in a given programming language. For example, like is taught in US patent no. 5,675,801 to Lindsey, the software would solve the expression in parameterized form with the result of another operation.
- the message identifier is the token "varName” which will be the message sent to the object "self. This message tells the object "self to return the string representing itself when used in a variable declaration.
- the NumericDataltemObject whose name is “IdNumber” will return the string "idNumber”.
- the resulting target language source code fragment is "int idNumber;", which is a C language source code fragment.
- Yet another object of the present invention is to provide a template editor that meets the needs for editing the template source code, which can be used in all kinds of environments such as web-based servers, framework environments, code generation or else.
- Another object of the present invention is to use an editor to generate script templates.
- a system for editing templates of component based source code.
- This system comprises a context editor for entering source code and, when parameterized, context variables representing the component or attribute property name that will be replaced by the generator with its actual property value at generation time.
- the source code is in fact captured into context blocks that can be nested among each other. They can represent a constant, conditional or repetitive context block in which case condition expressions are provided to determine if the context block is generated and how many times it will occur.
- a second method provides for creating a source code template, contextually capturing control information, and representing context variables and context blocks using display effects. These effects comprise, among others, color, special fonts, modified cursor behaviors or even sound effects.
- two unique preferred embodiments are provided and are both related to the manipulation of hierarchically structured control information. The first process allows the efficient creation, modification and visualization of the control information for humans. The second provides a deterministic transformation of this control information into a machine-understandable format.
- the first process provides a context sensitive editor to create, modify and display hierarchically structured control information.
- the editor presents action choices appropriate to the immediately current context, thereby simplifying the manipulation protocol of the user. Because the editor understands the relationships and multiplicity between the contexts, its graphical user interface represents the repetition and conditionality of the blocks without resorting to a scripting language.
- the editor displays the control information according to the presentation rules of the associated context. The presentation clearly differentiates between the bulk text, the structure in which the text resides, and parameterized elements. The editor effectively manipulates what is meta control information in a way that displays it as information.
- a method and a system for displaying hierarchically structured data comprise specifying control information concerning parametric elements of the hierarchically structured data, editing a template for the hierarchically structured data and specifying non-parametric elements of the data, specifying a context parameter as a parametric element of the data, specifying a filtering option for at least one block of the hierarchically structured data comprising at least one non-parametric element and one parametric element, associating a display characteristic with each the filtering option, displaying the hierarchically structured data identified using the display characteristic.
- the second process provides a method to systematically transform the control information into a machine-understandable format.
- a method for transforming hierarchically structured data into code generator script data comprises specifying control information concerning parametric elements of the hierarchically structured data, editing a template for the hierarchically structured data and specifying non-parametric elements of the data, specifying a context parameter as a parametric element of the data, specifying a filtering option for at least one block of the hierarchically structured data comprising at least one non-parametric element and one parametric element, generating code generator script data using the control information, the template, the filtering option and the context parameter for a desired source code language.
- FIG. 1 is a class diagram of the Hierarchically Structured Data Editor
- FIG. 2 is an example of a new template
- FIG. 3 is an example of a template translated into a scripting language
- FIG. 4 is an example of source code generated from the scripting language
- FIG. 8 illustrates the new operation signature tool
- template editor In order to facilitate the coding process for template programmers, a new hierarchical structured control information editor (hereafter referred to as "template editor") has been created. This template editor uses an editor to display the hierarchical structure and the parameterized code.
- the main purpose of the hierarchical structured control information editor is to allow the programmer to create and edit generation templates in a form visually close to the generation output, so that it is immediately evident what output will be generated for any given input to the generator.
- the template editor provides a graphical context editor (see FIG. 2) where the programmer can type text (24), insert context variables (25) or insert context blocks (23).
- the difference between the user-entered text and the various kinds of context variables (25) or context blocks (23) is shown by various visual effects like text/background color, cursor/text behavior, and so on (see the Context Presentation Rules 31 of FIG. 1 ).
- the context variables (25) cannot be modified. They are read-only strings. The only actions possible on the context variables strings is to replace or delete them.
- FIG. 1 shows a Unified Modeling Language (UML) model of the editor's implementation.
- UML Unified Modeling Language
- the principle classes are Context Block 23, Context Variable 25, and Text String 24.
- the following text will describe their role in relation to both Graphical User Interface (GUI) editing and script language translating.
- GUI Graphical User Interface
- Text strings 24 represent static data (i.e. a set of characters) in a context block 23. Depending on the context block, the text's appearance will vary. In addition, each character has its own set of edit routines. These routines are executed when the programmer attempts to change that character. Each character of the text string 24 will also have its own set of behavioral properties. Since the character's behavioral properties tend to repeat themselves over runs of many continuous characters, a sparse representation is used in order to save computer memory.
- a context variable 25 is linked to a model object by its context block 23 and can therefore represent the various characteristics of that object.
- each character of a Context Variable 25 has the same structure as that of a Text String 24. The template editor 20 maintains the integrity of the context variables 25 by not permitting the representation to be edited.
- a context block 23 contains text strings 24, and/or context variables 25, and/or other nested context blocks 23.
- the role of a context block 23 is to repeatedly or conditionally produce its contents according to the conditions set upon it.
- the programmer has to provide the selection criteria (i.e. condition and filter variables) necessary to determine the number of repetitions.
- the programmer controls the sequencing of the context block 23 for each repetition through the use of criterias.
- Context blocks 23 have three formats: conditional (33), constant (23) and repetitive (32).
- conditional context block(33) will be generated uniquely for each object that is captured by its filter (i.e. criteria).
- a constant context block(23) is like a conditional context block(33) having its conditions always true.
- Repetitive context blocks(32) will generate repeatedly in the object for each item captured by the context block conditions (every target role in a class, for example).
- Repetitive Context Blocks (32) are also capable of inserting user defined delimiter text in between each repetition of the block, such as inserting a comma followed by a space.
- the text (24) is composed of a String object and an Array object with the same size as the String.
- the Array object of the text represents the text's Behavioral Property. For each character in the String object, there is an object at the corresponding Array position which contains the information for the graphical representation of the character such as color, font size, bold or italic properties.
- This Behavioral Property also stores the character's type, be it Context Variable or Text String 24. These characteristics comprise the Behavioral Property, and links the text on the screen to the objects in the template editor class diagram.
- the generation template is a sequence of Context Blocks 23.
- a context block contains a sequence of Text strings 24, Context Variables 25, and
- the Text String 24 represents static text which is represented as is in the script language format.
- the Context Variable is placed in the script language format at the position where it is displayed graphically the value for the variable. This is shown in the script language format by a number proceed with '%'
- a Context Block is written in the script language format depending on a set of criteria.
- the script language format is written to represent the block's repetition.
- FIG. 1 An example will now be described to better illustrate a preferred embodiment of the present invention.
- the example will show how to define a context hierarchy (see Fig. 1 ) and some presentation rules for each level of the hierarchy (see Table 1 ), use the control information data as defined in Table 2, define a template representing a Java method (FIG. 2), generate a template and obtaining a script (FIG. 3), execute this script using the system of published PCT patent application number WO 00/22517 entitled "Source Code Template Generator Associated with Component Development" to obtain the Java source code (FIG. 4).
- Context Hierarchy describes the possible contexts used in Tables 2 and 3 and FIG.'s. 2, 3, 4. All objects used in the example belong to one of the levels of the hierarchy, and acquire the context properties associated with that level.
- the next element is a Context Variable.
- the Context Variable In the script language, as explained previously, the Context Variable must write a reference to the object. In the script, the parameters are referenced according to the order of appearance of the Context Variables. This order is determined by the Context Block which registers its list of Context Variables and orders them by attributing a number to each variable.
- Context Variable for a Class name.
- the Context Variable performs a call to its Context Block to request its order of appearance. As it is the first Context Variable, the variable obtains its order and writes:
- the Context Block requests that each Context Variable to write its initialization Behavioral Property. The block therefore writes:
- the block closes the parentheses for the parameters and then the context block closes the parentheses for itself:
- FIG. 5 is a block diagram of the system for hierarchically structured data and the system for generating code generator script data.
- Editor 120 is used to enter and modify the template.
- the editor uses the context definer 121 to introduce context variables and parametric elements.
- the context definer 121 uses the hierarchy information definer 122 to obtain information concerning the context of the template. This context can be obtained from a UML modeling tool for example.
- the editor 120 also uses a filter definer 123 to define filter options for the generation of source code.
- the context definer 121 also communicates with the context identifier 125 to assign a display characteristic 124 to each context variable.
- the editor 120 sends the template to the display 126 for display.
- the display 126 uses the display characteristics 124 to display each parametric and non-parametric elements of the template.
- the system also has a code generator script generator 127 which uses the template of the editor 120, the filter definer options 123 and the context parameters of the context definer 121 to generate code generator script data.
- a code generator script generator 127 uses the template of the editor 120, the filter definer options 123 and the context parameters of the context definer 121 to generate code generator script data.
- FIG. 6 is a flow chart of the steps that occur in a method according to a preferred embodiment of the present invention.
- Hierarchy information is specified 130.
- a template is edited 131.
- Context parameters are specified 132.
- Filtering options are also specified 133.
- Display characteristics are associated with context parameters 134.
- the data is displayed to the user 135.
- FIG. 7 is a flow chart of another method according to a preferred embodiment of the present invention.
- Hierarchy information is specified 140.
- a template is edited 141.
- Context parameters are specified 142.
- Filtering options are also specified 143.
- Code generator script data is then generated 145 using the template, the context parameters and the filtering options.
- FIG. 8 shows the new operation signature tool 38.
- a template name 40 has to be given together with the visibility of the operation 41 , the inheritance 43 and whether the operation is static 42.
- the return type has to be defined by its class name 44 and its package 45.
- the name of the operation is typed at 46.
- FIG. 9 shows the Template Editor 50 with the signature 52 for the operation just created.
- This text cannot be modified directly since it is managed by the organizer.
- the string of the signature can be double-clicked and the Operation Signature tool will reappear.
- this text is created from the signature tool, it appears with a different visual aspect.
- the color of the font and the color of the background are in shades of gray since the drawings are in black and white.
- any visual characteristic could be used to enhance the difference in nature of the text appearing in the template.
- the signature could appear with a blue background meaning that only double-clicking will allow the programmer to change what is comprised in that string.
- the space 53 is available for coding the operation.
- a class filter 51 is specified to determine which component or components this graphical generation template will be generated for. (these steps are not shown in the figures).
- One usage of this invention would be for hiding scripting language from the developer by creating the lines of codes of a template in order to generate code with a generation tool such as the one described in the commonly assigned and co-pending PCT patent application published under number WO 00/22517 and entitled "Source Code Template Generator Associated with Component Development".
- the template is used to generate near- repetitive and repetitive source code for components meeting the selection criteria of the generation template and found in the modeling tool or in the integrated development environment.
- the programmer When typing a context block which will be used for all classes of a system, the programmer only needs to type the method as he would like it to be when generated.
- a loop has to be created using the filter variables which determine the selection criteria for items participating in the loop like, for example, components, components subclass, superclass, or attribute properties.
- the programmer had to define the instructions for this loop in order to cover all attributes.
- block context that will be so closely related for all attributes are identified by a visual characteristic. For example, the context block can be identified with a different background color.
- the lines of code are typed in naturally, with context variables introduced by way of the right-mouse click. Since the editor knows that these lines will be reproduced for all attributes, the selection of context variables from the menu at the right-mouse-click will differ from the previous menu.
- context variables will not all belong to the same categories of context variables, for example, the context variable " ⁇ class name>" will be available inside a repetitive context block that iterates at the attribute level of the current component or inside an inner context block that iterates on a given external property name associated to the current attribute of the current class found in the dynamic context of the generator. It is so because the generator will ask the outer level recursively up to the proper level to get the property value. Loops are always identified by a visual characteristic , which enhances this programming aspect. It is important to note that even when coding at the attribute level, it is possible to insert context variables that refer to the class, for example. This allows greater flexibility since the programmer can code all operations necessary at the attribute level using all context variables.
- the editor could be used for a library of lines of re-use code.
- the templates can be used to create a personal or a networked library of available lines of code for re-use. In that case, since the templates are already parameterized, the programmer does not need to modify anything inside the lines of code in order to use them with his or her project. This approach saves a good amount of work for the programmer.
- the template editor embedded in a word processor application could be used to produce templates in order to generate text files such as parameterized mailing lists with tokens for the name, the address and the account representative for a client.
- the template editor can be used to generate almost anything as long as the information on what it has to generate is available.
- An EXtensibe Markup Language (XML) template editor could be used.
- XML protocol could be used by the template editor to extract the information on what it has to generate.
- XML Document Type Definition (dtd) could be used to define the meta-data used by the template editor as context variable and the XML dtd tree structure definition could be used to know the different level of the parameterized source text (i.e. used to define the proper filter variable at each nested level of a XML document that is compatible.)
- a data time definition (dtd) file written in XML could be used.
- the XML dtd would replace the model declaration necessary for the generation of code since it describes the data to be treated. If two files are using the same dtd file, their data files can be exchanged because the organization of this data will be the same and the template editor will have the same behavior because of it.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Document Processing Apparatus (AREA)
Abstract
Description
Claims
Priority Applications (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU61440/00A AU6144000A (en) | 1999-07-23 | 2000-07-24 | Hierarchically structured control information editor |
IL14766500A IL147665A0 (en) | 1999-07-23 | 2000-07-24 | Hierarchically structured control information editor |
JP2001513029A JP2003505785A (en) | 1999-07-23 | 2000-07-24 | Hierarchical structure control information editor |
MXPA02000850A MXPA02000850A (en) | 1999-07-23 | 2000-07-24 | Hierarchically structured control information editor. |
BR0012706-0A BR0012706A (en) | 1999-07-23 | 2000-07-24 | Hierarchically structured control information editor |
EP00947719A EP1208426A2 (en) | 1999-07-23 | 2000-07-24 | Hierarchically structured control information editor |
CA002377945A CA2377945A1 (en) | 1999-07-23 | 2000-07-24 | Hierarchically structured control information editor |
US09/721,902 US6769095B1 (en) | 1999-07-23 | 2000-11-27 | Hierarchically structured control information editor |
HK02107277.7A HK1045896A1 (en) | 1999-07-23 | 2002-10-03 | Hierarchically structured control information editor |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14520799P | 1999-07-23 | 1999-07-23 | |
US60/145,207 | 1999-07-23 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/721,902 Continuation US6769095B1 (en) | 1999-07-23 | 2000-11-27 | Hierarchically structured control information editor |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2001008002A2 true WO2001008002A2 (en) | 2001-02-01 |
WO2001008002A3 WO2001008002A3 (en) | 2001-11-08 |
Family
ID=22512058
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CA2000/000841 WO2001008002A2 (en) | 1999-07-23 | 2000-07-24 | Hierarchically structured control information editor |
Country Status (10)
Country | Link |
---|---|
EP (1) | EP1208426A2 (en) |
JP (1) | JP2003505785A (en) |
CN (1) | CN1148652C (en) |
AU (1) | AU6144000A (en) |
BR (1) | BR0012706A (en) |
CA (1) | CA2377945A1 (en) |
HK (1) | HK1045896A1 (en) |
IL (1) | IL147665A0 (en) |
MX (1) | MXPA02000850A (en) |
WO (1) | WO2001008002A2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005114387A1 (en) * | 2004-05-20 | 2005-12-01 | Code Valley Pty Limited | Code generation techniques |
AU2005245983B2 (en) * | 2004-05-20 | 2011-07-07 | Code Valley Corp Pty Ltd | Code generation techniques |
US9521209B2 (en) | 2002-11-06 | 2016-12-13 | Code Valley Corp Pty Ltd | Code generation |
US9916610B2 (en) | 2002-11-06 | 2018-03-13 | Noel William Lovisa | Service implementation |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0398646A2 (en) * | 1989-05-15 | 1990-11-22 | International Business Machines Corporation | User interface tool |
US5603018A (en) * | 1991-07-15 | 1997-02-11 | Mitsubishi Denki Kabushiki Kaisha | Program developing system allowing a specification definition to be represented by a plurality of different graphical, non-procedural representation formats |
EP0897148A1 (en) * | 1997-08-14 | 1999-02-17 | International Business Machines Corporation | Method of error handling in a framework |
WO1999048000A1 (en) * | 1998-03-16 | 1999-09-23 | Acuity Imaging, Llc | Object oriented method of structuring a software step program |
-
2000
- 2000-07-24 IL IL14766500A patent/IL147665A0/en unknown
- 2000-07-24 MX MXPA02000850A patent/MXPA02000850A/en unknown
- 2000-07-24 CN CNB008107572A patent/CN1148652C/en not_active Expired - Fee Related
- 2000-07-24 BR BR0012706-0A patent/BR0012706A/en not_active IP Right Cessation
- 2000-07-24 CA CA002377945A patent/CA2377945A1/en not_active Abandoned
- 2000-07-24 AU AU61440/00A patent/AU6144000A/en not_active Abandoned
- 2000-07-24 WO PCT/CA2000/000841 patent/WO2001008002A2/en not_active Application Discontinuation
- 2000-07-24 EP EP00947719A patent/EP1208426A2/en not_active Withdrawn
- 2000-07-24 JP JP2001513029A patent/JP2003505785A/en active Pending
-
2002
- 2002-10-03 HK HK02107277.7A patent/HK1045896A1/en unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0398646A2 (en) * | 1989-05-15 | 1990-11-22 | International Business Machines Corporation | User interface tool |
US5603018A (en) * | 1991-07-15 | 1997-02-11 | Mitsubishi Denki Kabushiki Kaisha | Program developing system allowing a specification definition to be represented by a plurality of different graphical, non-procedural representation formats |
EP0897148A1 (en) * | 1997-08-14 | 1999-02-17 | International Business Machines Corporation | Method of error handling in a framework |
WO1999048000A1 (en) * | 1998-03-16 | 1999-09-23 | Acuity Imaging, Llc | Object oriented method of structuring a software step program |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9521209B2 (en) | 2002-11-06 | 2016-12-13 | Code Valley Corp Pty Ltd | Code generation |
US9916610B2 (en) | 2002-11-06 | 2018-03-13 | Noel William Lovisa | Service implementation |
US10140098B2 (en) | 2002-11-06 | 2018-11-27 | Noel William Lovisa | Code generation |
WO2005114387A1 (en) * | 2004-05-20 | 2005-12-01 | Code Valley Pty Limited | Code generation techniques |
AU2005245983B2 (en) * | 2004-05-20 | 2011-07-07 | Code Valley Corp Pty Ltd | Code generation techniques |
US8856733B2 (en) | 2004-05-20 | 2014-10-07 | Code Valley Corp Pty Ltd | Code generation techniques |
Also Published As
Publication number | Publication date |
---|---|
HK1045896A1 (en) | 2002-12-13 |
BR0012706A (en) | 2002-04-09 |
IL147665A0 (en) | 2002-08-14 |
CA2377945A1 (en) | 2001-02-01 |
JP2003505785A (en) | 2003-02-12 |
WO2001008002A3 (en) | 2001-11-08 |
CN1364259A (en) | 2002-08-14 |
EP1208426A2 (en) | 2002-05-29 |
CN1148652C (en) | 2004-05-05 |
AU6144000A (en) | 2001-02-13 |
MXPA02000850A (en) | 2004-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6769095B1 (en) | Hierarchically structured control information editor | |
US7114149B2 (en) | Navigation links in generated documentation | |
Mann | Java Server Faces in Action | |
US6742175B1 (en) | Component-based source code generator | |
Alderson | Meta-CASE technology | |
EP1292887A1 (en) | Methods and systems for generating source code for object-oriented elements | |
Akehurst | Model Translation: A UML-based specification technique and active implementation approach | |
CA2347191A1 (en) | Component-based source code generator | |
English et al. | An extensible, object-oriented system for active documents | |
Valverde et al. | A MDA-based environment for web applications development: from conceptual models to code | |
White et al. | Introduction to the generic eclipse modeling system | |
WO2001008002A2 (en) | Hierarchically structured control information editor | |
Kalnins et al. | Metamodel specialization for graphical language support | |
Åkesson et al. | Jatte: A tunable tree editor for integrated DSLs | |
Lions et al. | Extending opentool/uml using metamodeling: An aspect oriented programming case study | |
Grundy | Multiple textual and graphical views for Interactive Software Development Environments | |
KR100609240B1 (en) | Apparatus and method for generating diagram modeling tool based on MOP metamodel and user requirements | |
Esbai et al. | Model-driven transformation for gwt with approach by modeling: From uml model to mvp web applications | |
JP2001273125A (en) | Source program automatic generation method and system, and program recording medium therefor | |
Tallis et al. | The Briefing Associate: A Role for COTS applications in the Semantic Web. | |
Lafontant et al. | Modeling with Gentleman: a web-based projectional editor | |
Rencis et al. | Towards Open Graphical Tool-Building Framework. | |
Rath et al. | Declarative specification of domain specific visual languages | |
Tapper et al. | Object-oriented programming with ActionScript 2.0 | |
Barzdins et al. | Metamodel Specialization for Graphical Language and Editor Definition. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 09721902 Country of ref document: US |
|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2377945 Country of ref document: CA |
|
WWE | Wipo information: entry into national phase |
Ref document number: 147665 Country of ref document: IL |
|
WWE | Wipo information: entry into national phase |
Ref document number: 008107572 Country of ref document: CN Ref document number: PA/a/2002/000850 Country of ref document: MX |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2000947719 Country of ref document: EP Ref document number: IN/PCT/2002/267/KOL Country of ref document: IN |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWP | Wipo information: published in national office |
Ref document number: 2000947719 Country of ref document: EP |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 2000947719 Country of ref document: EP |