Unable to create edges after use of per alter form

Hello Netcanvas team!

Thank you so much for the wonderful software your team has created! Our team throughly enjoys and appreciates the wonderful open-source software provided to researchers. :slight_smile:

I am currently creating a network canvas protocol with the following stages:

In the protocol, I have Dyad census to collect edge data on weather or not alters know each other. (e.g., "do these two individuals know each other? edge created if yes)

the next stage, I then include a per alter edge form, to collect relationship types of data (if alters know each other) that includes a select all that apply variable "what type of relationship do these alters have? 1. friends, 2. neighbors etc.)

and the final stage is a sociogram, (if alters know each other) that asks different edge related questions.

I ran into a strange problem in which, the sociogram does not create edge data once a dyad census form is included. I have already tried trouble shooting different methods but to no avail.

I apologize in advance if there was an issue already open related to this, and i’ll be happy to send over via email a reproducible protocol example on the issues i am encountering!

Thank you so much for all your wonderful work on this project

-Ana at the U of Miami

Hi Ana!

Thank you SO much for the kind words. It means to lot!

I’m not aware of any issues that would cause the behaviour you’re seeing. Would it be possible for you to email me your protocol at joshua@northwestern.edu so I can take a look for you?

And just to be clear: you want to be able to create edges on the sociogram of the same type as you were creating with the dyad census?

Hi @Joshua thanks so much for your prompt response! i will be emailing you very soon with the exact details

1 Like

Hi Ana :slight_smile:

It turns out that the software is working as intended, but that the behaviour is a bit confusing. I will try to explain.

Basically, when you have the following filter rule set on your sociogram stage:

Screenshot 2024-12-02 at 22.08.50

…you are telling Interviewer to filter out all nodes that are not connected by an alters_know_eachother edge. However what you might not realise is that this filter is also removing all other edges that do not meet this criteria! Because of that, the edge you are creating on the sociogram won’t ever be shown - it will be filtered out. It actually is still being added to the network, but it just isn’t being displayed.

I think you can argue that this behaviour is a bit nonsensical, so I have asked my colleague @caden to look into if we can change it.

In the meantime, you can get the behaviour you expect by changing your filter rule to also include the edge type you want to create, with the “any rule” matcher. Like so:

Sorry for the confusion this caused! I hope my answers helped. We will update this thread if we decide to change the behaviour.

Please let me know if you have any other questions in the meantime!

1 Like

Hi @Joshua thank you so much for helping explain this behavior and helping me trouble shoot this!

1 Like