}
public static void main2(String... argv)
{
CmdLineArgs cl = new CmdLineArgs(argv) ;
ArgDecl helpDecl = new ArgDecl(ArgDecl.NoValue, "h", "help") ;
cl.add(helpDecl) ;
ArgDecl verboseDecl = new ArgDecl(ArgDecl.NoValue, "v", "verbose") ;
cl.add(verboseDecl) ;
ArgDecl versionDecl = new ArgDecl(ArgDecl.NoValue, "ver", "version", "V") ;
cl.add(versionDecl) ;
ArgDecl quietDecl = new ArgDecl(ArgDecl.NoValue, "q", "quiet") ;
cl.add(quietDecl) ;
ArgDecl reduceDecl = new ArgDecl(ArgDecl.NoValue, "reduce", "fold", "simplify" ) ;
cl.add(reduceDecl) ;
ArgDecl strictDecl = new ArgDecl(ArgDecl.NoValue, "strict") ;
cl.add(strictDecl) ;
ArgDecl printDecl = new ArgDecl(ArgDecl.HasValue, "print") ;
cl.add(printDecl) ;
try {
cl.process() ;
} catch (IllegalArgumentException ex)
{
System.err.println(ex.getMessage()) ;
usage(System.err) ;
throw new CmdException() ;
}
if ( cl.contains(helpDecl) )
{
usage() ;
throw new TerminationException(0) ;
}
if ( cl.contains(versionDecl) )
{
System.out.println("ARQ Version: "+ARQ.VERSION+" (Jena: "+Jena.VERSION+")") ;
throw new TerminationException(0) ;
}
// ==== General things
boolean verbose = cl.contains(verboseDecl) ;
boolean quiet = cl.contains(quietDecl) ;
if ( cl.contains(strictDecl) )
ARQ.setStrictMode() ;
boolean actionCopySubstitute = cl.contains(reduceDecl) ;
boolean actionPrintPrefix = false ;
boolean actionPrintSPARQL = false ;
boolean actionPrint = cl.contains(printDecl) ;
for ( String v : cl.getValues( printDecl ) )
{
if ( v.equalsIgnoreCase( "prefix" ) || v.equalsIgnoreCase( "op" ) )
{
actionPrintPrefix = true;
}
else if ( v.equalsIgnoreCase( "expr" ) )
{
actionPrintSPARQL = true;
}
else
{
System.err.println( "Unknown print form: " + v );
throw new TerminationException( 0 );
}
}
// ==== Do it
for ( int i = 0 ; i < cl.getNumPositional() ; i++ )
{
String exprStr = cl.getPositionalArg(i) ;
exprStr = cl.indirect(exprStr) ;
try {
PrefixMapping pmap = PrefixMapping.Factory.create() ;
pmap.setNsPrefixes(ARQConstants.getGlobalPrefixMap()) ;
pmap.setNsPrefix("", "http://example/") ;