A error with sequence

if i define sequence as below:
class l2b_seq_lib #(type REQ = ovm_sequence_item,type RSP = ovm_sequence_item) extends ovm_sequence #(REQ, RSP);
use default sequence
set_config_string(“l2b_sve0.l2bEnv.l2b.sequencer”, “default_sequence”, “l2b_seq_lib”);

OVM_WARNING @ 0: reporter [BDTYP] Cannot create an object of type ‘l2b_seq_lib’ because it is not registered with the factory.

** Error: Assertion error.

if i define sequence as below:
    class l2b_seq_lib #(type REQ = ovm_sequence_item,type RSP = ovm_sequence_item) extends ovm_sequence #(REQ, RSP);
 use default sequence 
 set_config_string("l2b_sve0.l2bEnv.l2b.sequencer", "default_sequence", "l2b_seq_lib");
 
 # OVM_WARNING @ 0: reporter [BDTYP] Cannot create an object of type 'l2b_seq_lib' because it is not registered with the factory.
 # ** Error: Assertion error.
 
 if i change as:
     class l2b_seq_lib extends ovm_sequence #( ovm_sequence_item);
 # ** Error: (vsim-3567) ../ovm20/base/ovm_registry.svh(88): No field named 'set_name'.
 #         Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__7
 # ** Error: (vsim-3978) ../ovm20/base/ovm_registry.svh(89): Illegal assignment to variable of class ovm_object from variable of class <temp_name>
 #    Time: 0 ps  Iteration: 0  Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__7  File: ../ovm20/ovm_pkg.sv
 # ** Error: (vsim-3567) ../ovm20/base/ovm_registry.svh(88): No field named 'set_name'.
 #         Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__7
 # ** Error: (vsim-3978) ../ovm20/base/ovm_registry.svh(87): Illegal assignment to variable of class ovm_object_wrapper from variable of class <temp_name>
 #    Time: 0 ps  Iteration: 0  Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__7  File: ../ovm20/ovm_pkg.sv
 # ** Error: (vsim-3567) ../ovm20/base/ovm_registry.svh(88): No field named 'set_name'.
 #         Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__9
 # ** Error: (vsim-3978) ../ovm20/base/ovm_registry.svh(89): Illegal assignment to variable of class ovm_object from variable of class <temp_name>
 #    Time: 0 ps  Iteration: 0  Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__9  File: ../ovm20/ovm_pkg.sv
 # ** Error: (vsim-3567) ../ovm20/base/ovm_registry.svh(88): No field named 'set_name'.
 #         Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__9
 # ** Error: (vsim-3978) ../ovm20/base/ovm_registry.svh(87): Illegal assignment to variable of class ovm_object_wrapper from variable of class <temp_name>
 #    Time: 0 ps  Iteration: 0  Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__9  File: ../ovm20/ovm_pkg.sv
 # ** Error: (vsim-3567) ../ovm20/base/ovm_registry.svh(88): No field named 'set_name'.
 #         Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__10
 # ** Error: (vsim-3978) ../ovm20/base/ovm_registry.svh(89): Illegal assignment to variable of class ovm_object from variable of class <temp_name>
 #    Time: 0 ps  Iteration: 0  Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__10  File: ../ovm20/ovm_pkg.sv
 # ** Error: (vsim-3567) ../ovm20/base/ovm_registry.svh(88): No field named 'set_name'.
 #         Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__10
 # ** Error: (vsim-3978) ../ovm20/base/ovm_registry.svh(87): Illegal assignment to variable of class ovm_object_wrapper from variable of class <temp_name>
 #    Time: 0 ps  Iteration: 0  Region: /ovm_pkg::ovm_object_registry::ovm_object_registry__10  File: ../ovm20/ovm_pkg.sv
 # ** Error: (vsim-3043) l2b_seq_lib.sv(42): Unresolved reference to 'add_typewide_sequence'.
 #         Region: /all_top/l2b_seq_lib

Is there a specific reason that you are parameterizing the sequence l2b_seq_lib? Typically, a sequence is expected to generate a specific type of request & response, and the ovm_sequence is parameterized with these types. The ovm_sequence_utils macro will then register the sequence with the factory.

I would expect to see the sequence definition below:

class l2b_seq_lib extends ovm_sequence #(my_sequence_item, my_sequence_item);

where my_sequence_item is a class extended from ovm_sequence_item.