/*   -*- coding: utf-8 -*-  */
/***********************************************************************
*
*  module   : Marc
*  fichier  : UsMarcToTei.c
*  Auteur   : Jacques DUCLOY
*  Date     : Juillet 93
*
************************************************************************/

#include "SxmlNode.h"

#include <stdio.h>     /* for printf */
#include <stdlib.h>    /* for exit */
#include <getopt.h>

#include "TeiHandler.h"
#include "Buffer.h"

SxmlNode *docInput;
SxmlNode *teiRecord;
SxmlNode *teiRoot;

int outputMode;  /* e = explor , n implicit */

int main(int argc, char **argv)
{
  int  cOption;
  SxmlNode *docInput;

  outputMode='n';

   while((cOption=getopt(argc,argv,"e"))!=EOF)
     {switch (cOption)
	 {
	 case 'e':
	   outputMode='e';
	   break;
	 }
     }

  while ((docInput=SxmlInputNextDocumentElement()))
    {
      teiRoot=TeiHandlerNew();
      if (outputMode=='n')
	{
	  SxmlPrint(teiRoot);
	  putchar('\n');
	  SxmlFree(teiRoot);
	}
      else
	{
	  SxmlNode *outputRecord;
	  SxmlNode *docu;
	  outputRecord=SxmlElementCreate("record");
	  SxmlAppendChild(outputRecord, teiRoot);
	  docu=SxmlClone(docInput);
	  SxmlSetNodeName(docu,strdup("usmarc")); /* strdup pour SxmlFree() */
	  SxmlAppendChild(outputRecord,docu);
	  SxmlPrint(outputRecord);
	  putchar('\n');
	  SxmlFree(outputRecord);
	}
    }
  exit (EXIT_SUCCESS);
}
