Late binding

hi,
i'm interested in reading more about the ways different languages bind methods at run-time and was hoping ppl in this forum might be able to give some pointers.
I think this comes down to enumerating the kind of ways the following statement can be interpreted in an OO environment (realize this is a little vague..)obj.method(param1, param2, param3);I've recently been told about a language called Dylan that resolves which method is called by the run-time type of parameters of the method, rather than the compile-time type. (maybe Smalltalk does it this way too?)
I'm not sure when this would be useful and can see how you might go about achieving the same effect in java (i think a javaworld article solved a problem which was equivalent to the one argument case but can't find it at the moment).
I'm also finding the terminology a little confusing - since there are phrases like
1) polymorphic dispatch
2) late binding
3) parametric polymorphism (i was brought up to think of this as the ML feature whereby you can write a single type-safe Sort function for a list datatype - ie what seems to be generics in java)
that i've seen applied to this area..
thanks,
asjf

Take a look to the JMMF framework, it's
an implementation of multi-polymorphism in Java.
http://igm.univ-mlv.fr/~forax/works/jmmf/
Else, smalltalk doesn't permit overloading thus
it doesn't implements late-binding with respect to actual
type of all arguments.
The design pattern Visitor permit to this kind of polymorphism
with one parameter and could be generalized with more parameters
by performing one virtual call by argument.

Similar Messages

  • Late Binding Word Automation creates a document with an unresponsive Ribbon

    I have a .NET ActiveX COM object that is calling Word and adding a template for processing. This template will get some data and then add in a layout template which will create the final document with the data and layout.
    When it is all said and done, the Word document has all the data, however, when the user tries to access the ribbon (click on one of the tabs or an item in the visible ribbon), nothing happens (like it is disabled).  You can click into the document
    itself and if the document has bolded text or something like that the ribbon changes to reflect the changes in font. 
    The only way for the ribbon to become responsive is to either minimize and reshow Word or select another application and then back to Word.  This "unlocks" the ribbon and you can interact with it.
    I accidently left in a reference to Word 2010 when I was testing something and then the code I have worked.  I went back to late binding and removed the reference to Office 2010 and it does not work even though none of my code has changed.  The
    Word constants/enums I am using were already locally created and the methods I am using have the either no parameters or the appropriate parameters provided as far as I know.
    In the code snippet below, the line "officeApp.ActiveWindow.Activate()" is what worked with early binding to
    cause the ribbon to be responsive immediately and allow the use to interact with the ribbon with no additional steps.  With late binding nothing seems to work.
    Code snippet :
    Dim reportDocument As Object = Nothing
    Try
    officeApp = GetObject(, "Word.Application")
    usingExistingWord = True
    Catch exp As Exception
    'Not Ideal - would prefer not to rely on Exception handle to catch this
    If officeApp Is Nothing Then
    officeApp = CreateObject("Word.Application")
    End If
    End Try
    Try
    'Open process template
    templateDocument = officeApp.Documents.Add(Template:=ProcessTemplate)
    Catch exp As Exception
    Success = False
    If Not usingExistingWord Then
    officeApp = Nothing
    templateDocument = Nothing
    End If
    Throw exp
    End Try
    If templateDocument Is Nothing Then
    'The process template was not loaded/added properly, abort code
    If Not usingExistingWord Then
    officeApp.Quit()
    officeApp = Nothing
    End If
    Success = False
    Exit Sub
    End If
    'hide Word while the process template runs its code.
    officeApp.Visible = False
    Try
    officeApp.Run("RunReport", _parameters, reportDocument)
    Catch exp As Exception
    Success = False
    If officeApp IsNot Nothing Then
    If templateDocument IsNot Nothing Then
    templateDocument.Close(SaveChanges:=False)
    templateDocument = Nothing
    End If
    If Not usingExistingWord Then
    officeApp.Quit()
    End If
    officeApp = Nothing
    End If
    Throw exp
    End Try
    If Success Then
    Try
    If reportDocument IsNot Nothing Then
    reportDocument.Activate()
    End If
    officeApp.ActiveWindow.Activate()
    officeApp.Activate()
    officeApp.ActiveWindow.ToggleRibbon()
    officeApp.ActiveWindow.ToggleRibbon()
    Catch ex As Exception
    End Try
    End If
    'Done - close the process template
    templateDocument.Close(SaveChanges:=c_wdDoNotSaveChanges)
    End If
    Thanks in advance for any help you are able to provide!

    Hi gardmica,
    Thanks for the detail explaintation. However I still failed to reproduce the issue. Here is the code I tested:
    Public Class Class1
    Sub Main()
    Dim reportDocument As Object = Nothing
    Dim usingExistingWord As Boolean
    Dim officeApp As Object
    Dim templateDocument As Object
    Dim ProcessTemplate As String
    Dim Success As Boolean
    Dim c_wdDoNotSaveChanges As Boolean
    Success = True
    ProcessTemplate = "C:\Users\UserName\Desktop\ProcessAndLayoutTemplates\MailMerge Process XML.dot"
    Try
    officeApp = GetObject(, "Word.Application")
    usingExistingWord = True
    Catch exp As Exception
    'Not Ideal - would prefer not to rely on Exception handle to catch this
    If officeApp Is Nothing Then
    officeApp = CreateObject("Word.Application")
    End If
    End Try
    Try
    'Open process template
    templateDocument = officeApp.Documents.Add(Template:=ProcessTemplate)
    Catch exp As Exception
    Success = False
    If Not usingExistingWord Then
    officeApp = Nothing
    templateDocument = Nothing
    End If
    Throw exp
    End Try
    If templateDocument Is Nothing Then
    'The process template was not loaded/added properly, abort code
    If Not usingExistingWord Then
    officeApp.Quit()
    officeApp = Nothing
    End If
    Success = False
    Exit Sub
    End If
    'hide Word while the process template runs its code.
    officeApp.Visible = True
    Try
    'officeApp.Run("RunReport", _parameters, reportDocument)
    Catch exp As Exception
    Success = False
    If officeApp IsNot Nothing Then
    If templateDocument IsNot Nothing Then
    templateDocument.Close(SaveChanges:=False)
    templateDocument = Nothing
    End If
    If Not usingExistingWord Then
    officeApp.Quit()
    End If
    officeApp = Nothing
    End If
    Throw exp
    End Try
    If Success Then
    Try
    If reportDocument IsNot Nothing Then
    reportDocument.Activate()
    End If
    officeApp.ActiveWindow.Activate()
    officeApp.Activate()
    officeApp.ActiveWindow.ToggleRibbon()
    officeApp.ActiveWindow.ToggleRibbon()
    Catch ex As Exception
    End Try
    End If
    'Done - close the process template
    templateDocument.Close(SaveChanges:=c_wdDoNotSaveChanges)
    End Sub
    End Class
    Did I miss any step? Does the issue exist when you didn't run the "RunReport" macro?
    Also I notich that the template is working in a compatibilty mode, is it helpful that convert it via File->Info->Convert?
    Regards & Fei
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Late Binding Error on CreateGraphics in DLL

    I have a DLL that is a very basic image management library.  To draw graphics I am using the following subroutine:
    Public Sub DrawImage(ByVal Surface As Object, ByVal Name As String, ByVal Position As Point, Optional Size As Point = Nothing)
                Try
                    If Images.ContainsKey(Name) Then
                        Dim g As Graphics = Surface.CreateGraphics
                        If Size.IsEmpty Then
                            g.DrawImage(Images(Name), Position)
                        Else
                            g.DrawImage(Images(Name), New Rectangle(Position.X, Position.Y, Size.X, Size.Y))
                        End If
                    End If
                Catch ex As Exception
                    MsgBox(ex.ToString)
                End Try
            End Sub
    Object passed as the surface is a PictureBox on the main form so that the image is drawn in the PictureBox.  It all works perfectly except when I try to use Option Strict On (which is my preference) in the DLL.  When I do this the Surface.CreateGraphics
    line gives me a late binding error.  I am very new to coding and have not been able to figure out a solution.  When similar errors have occurred I have been able to use DirectCast() to remove the error.  For my current situation I do not know
    how to apply the cast, if it is even possible.  Any help or suggestions?

    Hi,
     You should be doing this one of two ways. One is to declare Surface as a Graphics type in the sub like below. This is the way i would recommend doing it.
     You will also notice that the last parameter is not Optional any more and is renamed to something other than Size and is changed to a Size Type. The name Size is the name of the Drawing Size structure so you need to use a different name. Also because
    an Optional parameter is not able to use a Structure type which Size is, it can`t be Optional.
     You will also notice i changed the name of your sub to DrawMyImage. You really need to choose names that are not used for Classes, properties, and methods already. The DrawImage name is already used by the Graphics class.
        Public Sub DrawMyImage(ByVal Surface As Graphics, ByVal Name As String, ByVal Position As Point, ByVal DrawSize As Size)
            Try
                If Images.ContainsKey(Name) Then
                    'Dim g As Graphics = Surface.CreateGraphics
                    If Size.IsEmpty Then
                        Surface.DrawImage(Images(Name), Position)
                    Else
                        Surface.DrawImage(Images(Name), New Rectangle(Position.X, Position.Y, DrawSize.Width, DrawSize.Height))
                    End If
                End If
            Catch ex As Exception
                MsgBox(ex.ToString)
            End Try
        End Sub
     Then call your Function from within the PictureBox`s Paint event in the Form like this
    Public Class Form1
    Private DrawingClass As New NameOfYourClass
    Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
    Dim SomeLocation As New Point(10, 10)
    Dim SomeSize As New Size(100, 90)
    DrawingClass.DrawMyImage(e.Graphics, "Some Image Name", SomeLocation, SomeSize)
    End Sub
    End Class
     The other way would be to make the Surface parameter a PictureBox type and pass the PictureBox to the sub. I would also recommend not using the CreateGraphics method. If you really must do it like this then at least creat the graphics
    in a Using End Using block. A Graphics Object needs to be Disposed when you are done using it and this will take care of that for you.
    Public Sub DrawMyImage(ByVal Surface As PictureBox, ByVal Name As String, ByVal Position As Point, ByVal DrawSize As Size)
    Try
    If Images.ContainsKey(Name) Then
    Using g As Graphics = Graphics.FromHwnd(Surface.Handle)
    If Size.IsEmpty Then
    g.DrawImage(Images(Name), Position)
    Else
    g.DrawImage(Images(Name), New Rectangle(Position.X, Position.Y, DrawSize.Width, DrawSize.Height))
    End If
    End Using
    End If
    Catch ex As Exception
    MsgBox(ex.ToString)
    End Try
    End Sub
     Then you can call your sub from other places in the form than the Paint event like this. However, this will not be persistent doing it like this. Meaning if you draw the image and then move the form off the side of the screen, cover it with another form,
    or minimize it the image will be erased and not be redrawn again until you call the sub again.
    Public Class Form1
    Private DrawingClass As New NameOfYourClass
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim SomeLocation As New Point(10, 10)
    Dim SomeSize As New Size(100, 90)
    DrawingClass.DrawImage(PictureBox1, "Some Image Name", SomeLocation, SomeSize)
    End Sub
    End Class
    If you say it can`t be done then i`ll try it

  • IDcs2 late binding RGB to CMYK

    InDesign CS2 uses two document profiles, RGB & CMYK. I have been using a "late binding" workflow with an Epson R1800 "RGB" printer, letting InDesign convert to the Printer Profile.
    I was surprised I cannot use the RGB document space and let ID Determine Colors for the CMYK Printer Profile for a Phaser CMYK solid ink printer.
    For CMYK printers are my placed sRGB images converted to the CMYK working space of the InDesign file for output, or are they just passed through so I can still allow ID to Determine Colors for Printer Profile selected ?
    Does the same hold true for separations made to film or plates?
    Thanks, Mark
    Mac OS 10.4

    Mark,
    First, I work on a PC, so there may be some differences. I have sporadically had problems getting accurate color from IDCS2 when outputting to an RGB printer. I'm not sure why it happens, and nobody (including Adobe) has managed to explain what happens with RGB files sent to RGB devices. So, for that reason alone, I do not recommend using late binding workflows. I think it is an Adobe print engine issue, but they'd deny it no doubt, as they usually do. When the couldn't solve the problem, they just became "unavailable". In theory, when printing from IDCS2, the ID print engine will convert ALL document colors to your intended print space.
    If my final intent is a press or other CMYK based device, I always place CMYK images into ID. I soft proof my final output space while editing in Photoshop, which I trust a lot more than I do ID. By the way, I have not had any problem with CMYK files rendering incorrectly, so that seems to work fine.
    I don't have ID open right now, so I cannot answer some of your specific questions. For proofing on an RGB inkjet device, here is what I do.
    1. Create the entire document in the destination CMYK space, including all placed images. Make sure the ID document itself is set to the same CMYK workspace, and make sure the document blend space is set to CMYK.
    2. For proofing on an RGB inkjet, I first export to PDF, leaving color unchanged. Then I open the PDF in Acrobat and set up my print stream to have the correct printer profiles, etc.
    3. I usually send both the IDCS2 file and the PDF to my commercial printer. This way they have both, just in case there is an issue with the IDCS2 file. And I ALWAYS have them generate a color proof on their inkjet as a contract proof. I like to compare it to my inkjet proof to make sure everything is right.
    I hope this helps somewhat, though it doesn't take you in the exact direction you intended. I think Adobe still has work to do on their program, but perhaps this has been fixed in later releases of ID.
    Lou

  • JCOM and wlserver 6.1 (Problem with native late binding)

    Hi,
    I have seen your message in bea group. I would like to ask you something, that
    one has stated that to run JCOM, needs only beahomelist file in bea directory
    no need of wlserver to the client side. But still I'm not able to run vb client
    using native late binding.
    Its clearly mentioned that in JCOM 6.1 native late binding is not possible
    without wlserver on the client pc. So, can you help me or suggest something for
    this. I want to run this code without installing the server on client. I want
    just jcom.jar, native bridge class file and weblogic.jar file to the client
    side.
    Thanks,
    Atit.

    Hi,
    I have seen your message in bea group. I would like to ask you something, that
    one has stated that to run JCOM, needs only beahomelist file in bea directory
    no need of wlserver to the client side. But still I'm not able to run vb client
    using native late binding.
    Its clearly mentioned that in JCOM 6.1 native late binding is not possible
    without wlserver on the client pc. So, can you help me or suggest something for
    this. I want to run this code without installing the server on client. I want
    just jcom.jar, native bridge class file and weblogic.jar file to the client
    side.
    Thanks,
    Atit.

  • Early and late binding workflows in ICC based color management

    Hi all!
    I'm a graphic design student at Reading Uni in the UK, and I'm writing my BA dissertation on early and late binding workflows in ICC based color management for print production. I'm intending to write to a graphic designer audience from a designer's point of view. Please do comment here if you have anything to say on this topic, or you can point me to the right direction. I'm also looking for studios where I could conduct my case studies who employ early, medium or late binding workflows.
    Thank you.

    Will your paper have a title like  "Color Management is Fun and Easy" or "The Fiasco of Color Management"?
    Notice that in the past week you and I are the only posts on this forum! This is the Color Management forum on Adobe's website. Shouldn't it be really busy?
    It appears, that even after nearly ten years  I can't remember when color management first began to appear in prepress software), the industry has not embraced color management.
    The promise of color management since I can remember was  that we could make color documents and not need to know how they would be printed. In other words a late binding workflow; that latest possible, just before making the plates or screens or engravings, etc. After forty hours of reading on the net and testing I am almost positive this is impossible if Illustrator is in the workflow.
    Illustrator documents must be either RGB or CMYK not both. So if there are any colors that need to be preserved as CMYK (like 100 K black) you must work in CMYK meaning a mid binding color management workflow. The only thing I can think of is to find, or make, the widest gamut CMYK profile so that the fewest colors are hacked off.
    But really how can this all be so messed up? What good reason could Adobe have for doing this? (I can think of several but they all contridict themselves.)
    I preped some files the other day that were going to a printer I wasn't familiar with; one of the premium houses here in my area. I called them and asked how they wanted the files sent to them. I was hoping they had profiles for me or would spec some kind of PDF/x document that they would handle. No they wanted the source files and when I asked do you want the images in RGB then said, "No." So I asked which profile did they want me to use to convert to CMYK and the answer was, "What do you mean?" I said which CMYK do you want? The answer was, "The one everybody uses." I used SWOP and sighed.
    IF I'M WRONG I would love to hear about it.
    Good luck

  • Support for late binding

    I've created a couple of similar top-level VIs that make use of a number of common subVIs. In the interest of modularity, I'd like to place these common subVIs into some kind of a folder or library that is shared by the top-level VIs - so far, so good.
    Some of these shared subVIs refer to other subVIs that are separately and uniquely implemented for each of the top-level VIs. My original thought was that LabVIEW might use "late binding", when the top-level VI is loaded for execution, to resolve all of the subVI references, and thus pick up the correct uniquely-implemented subVIs for the particular top-level VI being loaded. However, observations have led me to believe that all of the subVI references are resolved statically, at compile time, and thus a shared subVI cannot refer to different subVIs depending on which top-level VI is running. And I can see that it makes sense that it needs to be this way, given the way that the LabVIEW development environment works.
    Consequently, it seems that shared subVIs need to be able to statically resolve any of their own subVI references to one specific implementation at compile time. Thus subVIs that cannot do this cannot be shared subVIs, even though they are otherwise identical in each of the top-level VI contexts. Separate identical copies of such subVIs will need to be maintained for each top-level VI.
    Do I have this approximately correct? Is there any way that this kind of "late binding" can be supported in LabVIEW?
    Solved!
    Go to Solution.

    There are two ways you could make this work; you'll have to determine which one is appropriate for your situation. The first is to use VI reference for the specific instance you want. Inside the generic subVI you use a Call By Reference to call the VI that was passed in. Several of the VIs supplied with LabVIEW demonstrate how this works, for example take a look at "Constrained Non-linear Optimization" under the Mathematics->Optimization palette. You'll see that one of the terminals is are reference to a VI that implements the function to be optimized.
    Another possible solution is to use the dynamic dispatch capabilities of LabVIEW's Object-Oriented Programming. In this case, your library would implement a class. The specific instance you want to call would inherit from that class and define a specific VI that overrides the version in the generic library. When a VI in the library calls the subVI, it will dynamically dispatch to the child method, if the object is of the child class and the child method exists.

  • Examples for Native Mode ( early or late binding)

    HI,
    Do you have examples of Native Mode programming model (for early or late
    binding )?
    thanks & Best Regards,
    Regina Schwartz
    BEA Israel Support
    Phone: 972-3-7535705
    Fax: 972-3-7517045
    e-mail: [email protected]

    HI,
    Do you have examples of Native Mode programming model (for early or late
    binding )?
    thanks & Best Regards,
    Regina Schwartz
    BEA Israel Support
    Phone: 972-3-7535705
    Fax: 972-3-7517045
    e-mail: [email protected]

  • Late binding and Frame accuracy

    We are using AMS late binding feature to switch audio channels (available over HTTP streaming), but at the same time we need InBufferSeek feature for frame accuracy seeking (available on RTMP protocol). Is there any way to work with both features over RTMP?

    Hi Juan,
    Currently late binding feature is not available for RTMP, it's only available for HTTP streaming.
    Thanks,
    Apurva

  • Audio Late Binding Sync

    Hi,
    I want to use audio late binding for a live video stream along with different live audio streams.
    I succeeded to set up the manifest as described here: http://www.adobe.com/devnet/adobe-media-server/articles/late-binding-audio-ams.html
    Everything works fine, but one thing I don't understand is: Upon which information is the audio synchronized with the video at the receiver player?
    Are there some timestamps included in metadata to do this or how is this done?
    I ask, because my task is to manually adjust the delay of different live incoming audio streams to match the video.
    Thanks,
    ueler13

    Hi Scott,
    in simple terms, switching rules are using the f4m declared bitrate to compare to the actual bandwidth. Declaring the same bitrate for all MBR assets will prevent them from working correctly - correct me if I misunderstood what you wrote.
    Switching or changing the alternate audio track will be affected by the buffer size(s). You could expect a maximum lag  equivalent, in the worst case, with the sum of all buffers.
    Regarding the seek and change audio bug, I think it was fixed. http://bugs.adobe.com/jira/browse/FM-1326 is a similar case. You might want to resync with the trunk to get the latest bugfixes, since the sprint 5 was relatively in the middle of the Alternate audio feature development.
    S.

  • Late binding of attributes?

    Hi,
    I have a little question regarding the late binding of attributes. Google didn't help so far :(
    I have an object definition, e.g.
    def chart = LineChart
         title: "Line Chart"
    Later on I want (or sometimes need) to bind additonal attributes, e.g.
    chart.width = bind scene.width
    chart.height = bind scene.height
    Unfortunately this results in an error message in Eclipse. What is wrong with this code?
    Another example uses a factory function instead:
    function createWindow( x, y, w, h: Number, caption: String ) : ChildWindow
    return Window { ... }
    Because I use this factory method in different circumstances, I have to bind some of the values of the resulting object outside of the method (I guess in a late binding fashion?). Same as above.
    Has somebody a short hint for me? Any help is highly appreciated.
    Best Regards
    Michael

    I will just advance a guess, I can be wrong of course.
    I would say late binding is not possible.
    Binding in JavaFX actually produces code, whatever the implementation might be, using listener or similar. So binding must be done at compilation time, when defining classes or variables, not at run time.
    Maybe you can use the on replace mechanism to handle these cases?

  • Interfacing a JTree with late binded - database objects

    Hello all,
    I need to create a hierarchy of objects that are stored in a database. I am using a JTree and I am forced to use late binding calls for my objects. Therefore, there is no �toString� method for these objects. Is there any way to override the method in a JTree so that I can specify how the JTree decides on what text it should display?
    Kind regards
    -Elm

    Does anyone know what method I use to overload the toString when trying to extend DefaultTreeCellRenderer?

  • Wat is early binding and late binding

    1)Class A {
    Public void amethod(){
    System.out.println(�amethod�);
    class B extends A{
    public static void main(String args[]){
    B b = new B();
    b.amethod();
    if I run amethod will be printed on the console;
    in the class A if i replace public class with private modifier;then I don�t compile class B and I run directly what will happen?
    What is late binding and early binding?

    What is late binding and early binding?Suppose you have two objects iA and sB, where iA is an Integer object and sB is a String object. If you were to assign them to one another, this would result in a compile time error. This is because the compiler checks if the objects 'bind' with each other. This is early binding.
    Take another case where you have two custom objects (A & B) implementing the same interface. you pass an one of the objects (say A) to a method which accepts the implemented interface as a parameter and try to work with it as if it were to be the other (ie B) the compiler passes this since syntactically this is correct. But when it comes to runtime, the runtime env will get to know that this is illegal and throws an exception. This is a typical case of late binding.

  • Does WebLogic support late binding?

    Hi,
    One of BEA's competitors told me that they are the only one to support 'late binding'. I don't really know what it is, so could someone explain something about it?
    And is it true that BEA does not support this so called late binding?
    Thanks and greetings,
    Ben

    Late binding is supported by weblogic also.
    Late binding is a way of providing access to another application's objects. In late bound access, no information about the object being accessed is available at compile time; the objects being accessed are dynamically evaluated at runtime. This means that it is not until you run the program that you find out if the methods and properties you are accessing actually exist.
    - Navaneeth

  • Adaptive WebService and late binding of nodes

    Hi,
    my Model has the folowing structure:
    Request
    -- out
    -- In (1..1)
    -- In -- Node1 (0..1)
    -- In -- Node1 --- MandatoryField
    -- In -- Node2 (0..1)
    -- In -- Node2 --- MandatoryField
    -- In -- Node3 (0..1)
    -- In -- Node3 --- MandatoryField
    At least one of the nodes (1 - 3) must be filled when executing the request..
    Usually the initializing of the model is done in the wdDoInit. This will not work in this case, if a NodeX doesn't exist, MandatoryField doesn't exist and the execution fails.
    So I have to initialize and bind the nodes directly before the execution of the request..
    I'd tried different ways to create and bind a new NodeX, but nothing works for me. No data is tranfered to the WebService backend..
    Does soneone know how to solve this?
    TIA
      Thomas Paulsen

    Hallo Bertram
    The real problem:
    I don't know the data I have to store in the moment wdDoinit() is executed:
    Think about a child. A child has a mother and a father. All of them have a mandatory attribute "Name".
    Usually the mother is known, but the father...
    And a foundling?
    So the child node have a mandatory attribute "Name" and two optional nodes "Mother" and "Father". If they where known, they must have a name.
    It is easy to create values nodes in the context to allow entering the data in the UI.
    But when I initialize the model in the wdDoInit(), I don't know whether there will be entered one of the  parents name  or not. If I initialze the parent's nodes, I need values for the names, otherwise the execution of the save request fails.
    So my idea is to initialize the parent's nodes directly before executiing the request, not during wdDoInit(). This is the moment I know if those name values were entered or not.
    This is (a little bit simplified) my problem.
    (The real problem is the (in wsdl allowed and inside the model not supported ) inheritence.
    The nodes I can't initialize during wdDoInit() are storing attributes of the different inherited object types. 
    This is my workaround for this limitation.
    The structure,  optional/nillable Nodes with mandatory attributes, will not give any errors or  warnings during the creation of the model.
    It would be an error if it is impossible to handle this structure a runtime, so I think it's my fault. But I don't know how to handle this)
    Regards
      Thomas

Maybe you are looking for