OK, I had partial success, but it doesn't work.
My db prefix is "bob". My template extension is "joe".
In bob_layouts, I inserted 2 new layouts:
9, default, GS1 Layout, 1
29, joe, GS1 Layout, 1
In bob_pages, I inserted 1 new page:
6,0, checkout/guest_step_1
In bob_pages_layouts, I inserted 2 new relationships:
9, 6
29, 6
So basically I made a new layout and new page-layout association for both the default and joe extensions.
Then, in root/extensions/joe/layout.xml, I copied the entire set of definitions for the Checkout Pages layout ( from <layout> thru </layout> ), and I pasted it just below the Checkout Pages section, then edited 3 lines on the paste as follows, then saved the file:
<name>GS1 Layout</name>
<controller>pages/checkout/guest_step_1</controller>
<name><![CDATA[GS1 Layout]]></name>
Then I cleared cache for the Configuration and Layouts & Blocks elements.
The new layout "GS1 Layout" now appears in the Layouts dropdown menu of my template extension, but I have 2 problems:
The new layout only has 1 feature: Content Area.
My guest_step_1 webpage is still using the Checkout Pages layout.
I think the next steps will probably be to create new pages and specific layout associations for all of my other checkout pages,
and then perhaps to remove the original generalized Checkout Pages rows from the 3 different tables,
but before I do that, I would like to be able to see the full set of fields in my new GS1 Layout, not just the Content Area field.
What else do i need to do so that the new GS1 Layout has a full set of block fields?
Is there another layout.xml file somewhere? I searched but cannot find one.
Once I get a complete set of block fields in my new layout, do i need to do something else to assign specific layouts to specific checkout pages?
Thanks.