This is all reasonably straightforward, except for the stroke array. If you try to set it the line will not be rendered.
(in general I found that using any invalid value to a property of the symbolizer will cause that symbolizer to be silently dropped. So it might be a case of not knowing what to assign to stroke_dasharray)
Consider a simple map:
Now consider a Python script to recreate that map
This is all reasonably straightforward, except for the stroke array. If you try to set it the line will not be rendered.
(in general I found that using any invalid value to a property of the symbolizer will cause that symbolizer to be silently dropped. So it might be a case of not knowing what to assign to
stroke_dasharray
)