attr shapeType = "" attr streetWidth() = 0
I think that might be because you don't have a specific streetWidth() value. Have you tried using either streetWidth(*) or streetWidth(0)?
hope it helps
attr streetWidth(i) = 0
Use a parameter, e.g. 'i' for index.attr streetWidth(i) = 0
that way you can go and grab each edge's entry based on the index.
Note that the first entry is 0 and has the biggest street width value.
These are basically 'just' parameters for the Dynamic Subdivision, so since those are not that important, they're not inherited to the shapes which are created.
But you can map those Subdivision parameters with a map layer (image-based), so you could use the same map layer then for each created shape to sample again the value of interest.
Setting this up takes a little time, but I have some examples for this, if needed.