I spent some time in researching the Oracle log file format. Previous research was done about two years ago for Oracle 9i. Fortunately I did get something for these days research. And wrote a tool called "MyLOG" for a demo utility. I run the following SQLs in the Oracle.
SQL> insert into mylog values ('My Log 10g',-1,sysdate);
SQL> insert into mylog select object_name, object_id, created
2 from user_objects where rownum < 4;
SQL> update mylog set created = created + 1;
SQL> delete mylog;
SQL> select object_id from user_objects where object_name='MYLOG';
OBJECT_ID
----------
10576
Create a text file named "LOGTAB.TXT", contain the following lines (The second column is the object id of the table).
3,10576,MYLOG,
And create a text file named "LOGCOL.TXT", contain the following lines (The second column is the column storage order number, the SETCOL# column of COL$).
3,1,OBJECT_NAME,VARCHAR2
3,2,OBJECT_ID,NUMBER
3,3,CREATED,DATE
Now I run the MyLOG to extract the redo SQLs.
LOG> extract start 2 table mylog
Start extract redo SQL ...
RBA=0x000069.0000095d.0010, XID=0x000a.007.0000009b, RID=AAAClQAAEAAAAKMAAA
INSERT INTO MYLOG ( OBJECT_NAME , OBJECT_ID , CREATED ) VALUES ('My Log 10g',-1,'2007-05-30 16:16:33');
RBA=0x000069.00000960.0010, XID=0x0006.001.00000096
RID=AAAClQAAEAAAAKMAAB
INSERT INTO MYLOG ( OBJECT_NAME , OBJECT_ID , CREATED ) VALUES ('TIME_DIM',9771,'2006-10-09 21:22:08');
RID=AAAClQAAEAAAAKMAAC
INSERT INTO MYLOG ( OBJECT_NAME , OBJECT_ID , CREATED ) VALUES ('P_DEMO',10267,'2007-03-27 21:17:05');
RID=AAAClQAAEAAAAKMAAD
INSERT INTO MYLOG ( OBJECT_NAME , OBJECT_ID , CREATED ) VALUES ('EXT_DATE',10159,'2007-03-01 16:11:23');
RBA=0x000069.00000962.0010, XID=0x0009.003.00000093
RID=AAAClQAAEAAAAKMAAA
UPDATE MYLOG SET CREATED = '2007-05-31 16:16:33' WHERE CREATED = '2007-05-30 16:16:33';
RID=AAAClQAAEAAAAKMAAB
UPDATE MYLOG SET CREATED = '2007-05-31 16:16:33' WHERE CREATED = '2007-05-30 16:16:33';
RID=AAAClQAAEAAAAKMAAC
UPDATE MYLOG SET CREATED = '2007-05-31 16:16:33' WHERE CREATED = '2007-05-30 16:16:33';
RID=AAAClQAAEAAAAKMAAD
UPDATE MYLOG SET CREATED = '2007-05-31 16:16:33' WHERE CREATED = '2007-05-30 16:16:33';
RBA=0x000069.00000964.0010, XID=0x0001.028.0000009b, RID=AAAClQAAEAAAAKMAAA
DELETE MYLOG WHERE OBJECT_NAME = 'My Log 10g' AND OBJECT_ID = -1 AND CREATED = '2007-05-31 16:16:33';
RBA=0x000069.00000964.0010, XID=0x0001.028.0000009b, RID=AAAClQAAEAAAAKMAAB
DELETE MYLOG WHERE OBJECT_NAME = 'TIME_DIM' AND OBJECT_ID = 9771 AND CREATED = '2006-10-10 21:22:08';
RBA=0x000069.00000964.0010, XID=0x0001.028.0000009b, RID=AAAClQAAEAAAAKMAAC
DELETE MYLOG WHERE OBJECT_NAME = 'P_DEMO' AND OBJECT_ID = 10267 AND CREATED = '2007-03-28 21:17:05';
RBA=0x000069.00000964.0010, XID=0x0001.028.0000009b, RID=AAAClQAAEAAAAKMAAD
DELETE MYLOG WHERE OBJECT_NAME = 'EXT_DATE' AND OBJECT_ID = 10159 AND CREATED = '2007-03-02 16:11:23';
You can download the windows binary. Only valid for 10g log file. Row chain and row migrating is not processed yet, and there must be a lot of bugs.