License of SDK generated packages

Are there any plans to change the license for custom collectors
generated with the SDK to allow for public sharing?
Looking at other tools such a Splunk they have a very open user
community, but this line in the license really does not look like Novell
is interested in Sentinel getting much community involvment. I guess
that is good for professional services and partners with a special
license, but not so great for smaller users who might be more interested
in helping each other by sharing collectors.
Code:
"License to Create Permitted Derivative Works. Solely as provided in the documentation, Novell hereby grants You a nonexclusive and nontransferable license to use the Novell Collector Builder to create custom Collectors for Your internal use (Permitted Derivative Works). The Permitted Derivative Works may be used solely in conjunction with the Software and for no other purpose."
Does NetIQ have any plans to change this, or is there a new EULA
someplace that changes this?
cslye
cslye's Profile: http://forums.novell.com/member.php?userid=26909
View this thread: http://forums.novell.com/showthread.php?t=451346

DCorlette;2172530 Wrote:
> Cameron,
>
> It is ABSOLUTELY NetIQ's intention to foster an active plug-in
> development community around Sentinel. I think the terms-of-use that you
> found really should not apply, and the one that should apply to
> community-developed content is the Novell Developer License Agreement.
> I'll get confirmation on that and make sure we have the right one
> published into the SDK.
>
> You should know that coming Very Soon is a major change to the SDK that
> will make all of this more obvious. This will involve an external,
> public SVN repository, a new Eclipse plug-in, and a lot of re-factoring
> of the existing build processes to allow us to "overlay" the special
> internal stuff that we do (such as embedding the Sentinel EULA into our
> own plug-ins) even when building against the public SDK. We've actually
> had a "partner" repository for a while now, but access was somewhat
> restricted. We'll look into releasing some of that content into the
> public repository (unsupported, of course) in case people find it
> useful.
Thank you for the clarification. This new SDK sounds like it is as
big of an update as 6.1 to 7.0 Sentinel. This is a pretty exciting time
for Sentinel right now, and my hope is when I tell a vendor I use Novell
as my SIEM/Log manager they dont ask why I am using Netware still. For
now, I just tell them I use NetIQ.
With everything you have commented on, the API, the SDK and everything
I have been using in 7, it is a positive change.
I need to go on vacation and come back when "Very soon" is over
cslye
cslye's Profile: http://forums.novell.com/member.php?userid=26909
View this thread: http://forums.novell.com/showthread.php?t=451346

Similar Messages

  • [svn] 3652: Fix for SDK-17328 - Package description missing when they' re set using Overviews_Base.xml

    Revision: 3652
    Author: [email protected]
    Date: 2008-10-15 10:18:08 -0700 (Wed, 15 Oct 2008)
    Log Message:
    Fix for SDK-17328 - Package description missing when they're set using Overviews_Base.xml
    Fix for SDK-17185 - Allow HTML chars to be set for footer string
    Fix for SDK-17259 - Exception name missing when generating asdoc with @throw tag
    QA: Yes
    Doc: No
    Tests: checkintests
    Ticket Links:
    http://bugs.adobe.com/jira/browse/SDK-17328
    http://bugs.adobe.com/jira/browse/SDK-17185
    http://bugs.adobe.com/jira/browse/SDK-17259
    Modified Paths:
    flex/sdk/trunk/asdoc/templates/asdoc-util.xslt
    flex/sdk/trunk/asdoc/templates/package-detail.xslt
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/asdoc/TopLevelClassesGenerator.ja va

    I believe I have found my solution!
    I can currently boot with my bios in ide mode- but my raid1 mirror is showing as independent drives (c and d)
    I do a simple windows search for winload.exe on the C: drive and get nothing
    that same search on the D: turns up winload.exe all over
    When I look at I my BCD 'device partation=C:'
    shouldnt this be D:?
    If so is this just a simple bcdedit, reboot into the bios, change my bios from IDE mode to RAID mode, save to cmos then, theoretically boot into windows with my raid correct (showing as a singe drive C: )
    Please someone correct me if I am wrong
    C:\>bcdedit
    Windows Boot Manager
    identifier              {bootmgr}
    device                  partition=C:
    description             Windows Boot Manager
    locale                  en-US
    inherit                 {globalsettings}
    default                 {current}
    resumeobject            {8b18c20b-c12d-11db-afc2-ac36bbabc8b2}
    displayorder            {current}
    toolsdisplayorder       {memdiag}
    timeout                 30
    Windows Boot Loader
    identifier              {current}
    device                  partition=C:
    path                    \Windows\system32\winload.exe
    description             Microsoft Windows Vista
    locale                  en-US
    inherit                 {bootloadersettings}
    osdevice                partition=C:
    systemroot              \Windows
    resumeobject            {8b18c20b-c12d-11db-afc2-ac36bbabc8b2}
    nx                      OptIn
    vga                     No
    quietboot               Yes

  • Where can I get a decent HTML Generator package?

    I am reading Oreilly's Servlet Programming book and I'm looking for a free HTML Generator package that is simple to install and that has good documentation. Can anyone here point me out in the right direction?

    it's in HtmlConverter.exe file.
    i guess you get it together with jdk, if not- check on java.sun.com

  • Problem in generating packaged functions!!!!!

    Does anybody know how to restrict generating packaged
    functions just in package script file?
    Generating packaged function, they are generated
    both in function script file and package script file
    while I need just in package script file.

    I think that by default the functions are included in the application default implementation as you create them. If you also include them in a package then they will be generated twice when the implementation is generated.
    If this is the case then simply delete the functions from the implementation, leaving just the package to be implemented and then everything should be ok.
    Regards,
    Steve

  • Instant Client Package - SDK, RPM package download not working

    Hi,
    I am trying to download "Instant Client Package - SDK", RPM package for Linux 32 bit, version 11.2.0.1.0 from http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linuxsoft.html
    However the file downloaded has zero length. I tried from two different computers. I cannot find any contact/form to report broken content on that website. Can someone help, please?
    Cheers, Tomas

    fyi
    For me, the page ...
    http://www.oracle.com/technology/software/products/database/index.html
    ... currently says ...
    "An error occurred while processing the request. Try refreshing your browser. If the problem persists contact the site administrator"
    But, with the direct URL to the ZIP, which failed to download before ...
    http://download.oracle.com/otn/nt/oracle10g/10201/10201_companion_win32.zip
    ... I was able to download it just now.
    regards
    Jan

  • Generating package from indesign

    Hi,
    As we know there is an option in indesing for generating package for a file (File--->package).
    Getting package is one of the part of my script i need to do for automation.
    I searched for package option in javascript. I didnt get anything.
    If u have any idea or solution please share with me.
    Thanks and regards
    Christy

    includingHiddenLayers is argument for CS4,
    here is whole script.  it works on my OSX 10.6 + InDesign CS3.
    *  export pdf and package indd
    * Run for saved and validated document(s)
    * choose folder to save pdf and packaged items
    * pdf is contain package folder (named with document name)
    *  Created by mg on 2010-09-29.
    (function () {
         if(app.documents.length === 0){
              exit();
         var docObj = app.documents;//has many
         //set folder distination, creat folder for each documents
         dirFolder = Folder.selectDialog ( "choose folder for saving package folder" );
         if(dirFolder === null){
              exit(); //cancel process
         else{ //dirFolder is choosen
              for (var i= docObj.length - 1; i >= 0; i--) { //loop
                   var pdfExPreset = undefined;//app.pdfExportPresets.item("MagazineAds_1v3(Ads)");
                   dir = new File( dirFolder + "/" + decodeURI(docObj[i].name) + "/" );
                   flg_dir = new Folder (dir).create();
                   if ( flg_dir === true){
                        exportPDF ( dir, docObj[i], pdfExPreset );
                        createPackage ( dir, docObj[i] );
                   }//if
                   //to close document without saving use below
                   //docObj[i].close(SaveOptions.NO);
              }//for doc
         }//else
    * export pdf
    * @param {Object} dir Folder to Export
    * @param {Document} doc Document
    * @param {Object} pdfExPreset PDF Export Preset
    function exportPDF( dir, doc, pdfExPreset ){
         var pdfName = File ( dir + "/" + doc.name.replace(/(\.indd$|\$)/,".pdf") );
         var showingOptions = false;
         var pdfExportPreset = pdfExPreset;
         var withGrids = false
         var versionComments = "";
         var forceSave = false;
         doc.exportFile (
              ExportFormat.PDF_TYPE,
              pdfName,
              showingOptions,
              pdfExportPreset,
              withGrids,
              versionComments,
              forceSave
    * create package
    * @param {Object} dir Folder to Export
    * @param {Document} doc Document
    function createPackage( dir, doc ){
         var to = dir;
         var copyingFonts = true;
         var copyingLinkedGraphics = true;
         var copyingProfiles = true;
         var updatingGraphics = true;
         //var includingHiddenLayers = false;
         var ignorePreflightErrors = true;
         var creatingReport = true;
         var versionComments = "";
         var forceSave = false;
         app.activeDocument.packageForPrint (
              to,
              copyingFonts,
              copyingLinkedGraphics,
              copyingProfiles,
              updatingGraphics,
              //includingHiddenLayers,
              ignorePreflightErrors,
              creatingReport,
              versionComments,
              forceSave
    mg

  • Question about the generated package of an RMI stub class.

    Does anyone know why rmic tool generated stubs are in the same package as the class that implements the remote interface? For example, say I have an interface, MyRemoteInterface, in the foo.bar package, and an implementing class, MyRemoteImpl, in the baz package. When baz.MyRemoteImpl is compiled by rmic, a stub, MyRemoteImpl_Stub, is generated in the baz package.
    Now I would have thought that MyRemoteImpl_Stub would have been generated in the foo.bar package, as the stub is to be used on the client to handle calls at the interface level. In other words, the baz package really only makes sense on the server. This is in fact how stubs are generated for CORBA using the -iiop flag to rmic.
    Is there at least a way to specify the generated package?

    if u are running rmic on a class called com.yourmi.MyClass the stub will be generated with
    exactly the same package.
    the only thing that u can change is the location of the stub (for example, in another directory)
    but also in that other directory you will find com\yourmi\MyClass_Stub
    regards
    marco

  • Is there an Acrobat SDK support package to purchase?

    Too many issues while using Acrobat SDK, I wonder know if  there is an Acrobat SDK support package to purchase.
    Thanks.
    Have a good day.

    Karl:
    I started using such service back when Acrobat SDK development seemed like an intractable problem, and I really did not have the time to go through the learning curve. At the time it was called Rent-A-Coder and it was quite good.
    They had their grading system, and I often worked with coders who were in the top-10 or top-20 (out of 300,000 coders).
    You could search for "Acrobat SDK" or whatever other skill. They were acquired by Freelancer and I am afraid the quality of the service is waaaay down.
    Regards,
    -Ramon
    ps: I also have -somewhere- a list of higher-end, professional programmers, specific to PDF. It camed from PlanetPDF or a similar site. In any event, after I am about to finish my first complete plugin (the copy half of a copy+paste facility) plus an AcroForms Stamper/Filler on Linux, I feel confident that I will have no need for hired guns. I can roll my own.  :-)

  • Error in PL/SQL generated package

    Hello,
    With the help of ODM (version 10,2,0,3,1 -Build 479) I created a SVM classification model, which works very fine.
    After that, I generated the PL/SQL package, which returns an ORA-06512 in the call into DBMS_DATA_MINING.CREATE_MODEL.
    I tried to rebuild the model in the ODM and all worked well.
    I am kind of stuck here and don't know what to do next.
    Thanks,
    Igor

    Hi,
    hope you had a nice vacation.
    As for the code I have a feeling I try to fill a varchar2 with text, larger than declared length. I created a standard PL/SQL package as defined in the tutorial and the error remained. I wonder how come that with the use of odminer the building process is successful while the use of PL/SQL package returns errors?
    Thanks,
    Igor
    CREATE VIEW mining_data_build_v AS
    SELECT
    a.CUST_ID,
    a.CUST_GENDER,
    2003-a.CUST_YEAR_OF_BIRTH AGE,
    a.CUST_MARITAL_STATUS,
    c.COUNTRY_NAME,
    a.CUST_INCOME_LEVEL,
    b.EDUCATION,
    b.OCCUPATION,
    b.HOUSEHOLD_SIZE,
    b.YRS_RESIDENCE,
    b.AFFINITY_CARD,
    b.BULK_PACK_DISKETTES,
    b.FLAT_PANEL_MONITOR,
    b.HOME_THEATER_PACKAGE,
    b.BOOKKEEPING_APPLICATION,
    b.PRINTER_SUPPLIES,
    b.Y_BOX_GAMES,
    b.OS_DOC_SET_KANJI
    FROM
    sh.customers a,
    sh.supplementary_demographics b,
    sh.countries c
    WHERE
    a.CUST_ID = b.CUST_ID
    AND a.country_id = c.country_id
    AND a.cust_id between 101501 and 103000;
    using the package
    CREATE PACKAGE "DATAMININGACTIVITY9" AUTHID DEFINER AS
    PROCEDURE "MINING_DATA_BUI666498540_BA"(case_table IN VARCHAR2 DEFAULT '"DMUSER"."MINING_DATA_BUILD_V"',
    additional_table_1 IN VARCHAR2 DEFAULT NULL,
    model_name IN VARCHAR2 DEFAULT 'MINING_DATA_B80870_SV',
    confusion_matrix_name IN VARCHAR2 DEFAULT '"DM4J$T504449054041_M"',
    lift_result_name IN VARCHAR2 DEFAULT '"DM4J$T504449083327_L"',
    roc_result_name IN VARCHAR2 DEFAULT '"DM4J$T504449092305_R"',
    test_metric_name IN VARCHAR2 DEFAULT '"DM4J$MINING_D51278_TM"',
    drop_output IN BOOLEAN DEFAULT FALSE);
    END;
    CREATE PACKAGE BODY "DATAMININGACTIVITY9" AS
    c_long_sql_statement_length CONSTANT INTEGER := 32767;
    SUBTYPE SQL_STATEMENT_TYPE IS VARCHAR2(32767);
    SUBTYPE LONG_SQL_STATEMENT_TYPE IS DBMS_SQL.VARCHAR2A;
    TYPE TABLE_ARRAY is TABLE OF VARCHAR2(62);
    TYPE LSTMT_REC_TYPE IS RECORD (
    lstmt dbms_sql.VARCHAR2A,
    lb BINARY_INTEGER DEFAULT 1,
    ub BINARY_INTEGER DEFAULT 0);
    TYPE LSTMT_REC_TYPE_ARRAY is TABLE OF LSTMT_REC_TYPE;
    TYPE QUERY_ARRAY is TABLE OF SQL_STATEMENT_TYPE;
    TYPE TARGET_VALUES_LIST IS TABLE OF VARCHAR2(32);
    TYPE VALUE_COUNT_LIST IS TABLE OF NUMBER;
    PROCEDURE dump_varchar2a(vc2a dbms_sql.VARCHAR2A) IS
    v_str varchar2(32767);
    BEGIN
    DBMS_OUTPUT.PUT_LINE('dump_varchar2a:');
    FOR i IN 1..vc2a.COUNT LOOP
    v_str := vc2a(i);
    DBMS_OUTPUT.PUT_LINE(v_str);
    END LOOP;
    END;
    PROCEDURE ls_append(
    r_lstmt IN OUT NOCOPY LSTMT_REC_TYPE,
    p_txt VARCHAR2)
    IS
    BEGIN
    r_lstmt.ub := r_lstmt.ub + 1;
    r_lstmt.lstmt(r_lstmt.ub) := p_txt;
    END ls_append;
    PROCEDURE ls_append(
    r_lstmt IN OUT NOCOPY LSTMT_REC_TYPE,
    p_txt LSTMT_REC_TYPE) IS
    BEGIN
    FOR i IN p_txt.lb..p_txt.ub LOOP
    r_lstmt.ub := r_lstmt.ub + 1;
    r_lstmt.lstmt(r_lstmt.ub) := p_txt.lstmt(i);
    END LOOP;
    END ls_append;
    FUNCTION query_valid(
    p_query VARCHAR2) RETURN BOOLEAN
    IS
    v_is_valid BOOLEAN;
    BEGIN
    BEGIN
    EXECUTE IMMEDIATE p_query;
    v_is_valid := TRUE;
    EXCEPTION WHEN OTHERS THEN
    v_is_valid := FALSE;
    END;
    RETURN v_is_valid;
    END query_valid;
    FUNCTION table_exist(
    p_table_name VARCHAR2) RETURN BOOLEAN IS
    BEGIN
    RETURN query_valid('SELECT * FROM ' || dbms_assert.simple_sql_name(p_table_name));
    END table_exist;
    FUNCTION model_exist(
    p_model_name VARCHAR2) RETURN BOOLEAN
    IS
    v_model_cnt NUMBER;
    v_model_exists BOOLEAN := FALSE;
    BEGIN
    SELECT COUNT(*) INTO v_model_cnt FROM DM_USER_MODELS WHERE NAME = UPPER(p_model_name);
    IF v_model_cnt > 0 THEN
    v_model_exists := TRUE;
    END IF;
    --DBMS_OUTPUT.PUT_LINE('model exist: '||v_model_exists);
    RETURN v_model_exists;
    EXCEPTION WHEN OTHERS THEN
    RETURN FALSE;
    END model_exist;
    PROCEDURE drop_table(
    p_table_name VARCHAR2)
    IS
    v_stmt SQL_STATEMENT_TYPE;
    BEGIN
    v_stmt := 'DROP TABLE '||dbms_assert.simple_sql_name(p_table_name)||' PURGE';
    EXECUTE IMMEDIATE v_stmt;
    EXCEPTION WHEN OTHERS THEN
    NULL;
    --DBMS_OUTPUT.PUT_LINE('Failed drop_table: '||p_table_name);
    END drop_table;
    PROCEDURE drop_view(
    p_view_name VARCHAR2)
    IS
    v_stmt SQL_STATEMENT_TYPE;
    BEGIN
    v_stmt := 'DROP VIEW '||dbms_assert.simple_sql_name(p_view_name);
    EXECUTE IMMEDIATE v_stmt;
    EXCEPTION WHEN OTHERS THEN
    NULL;
    --DBMS_OUTPUT.PUT_LINE('Failed drop_view: '||p_view_name);
    END drop_view;
    PROCEDURE drop_model(
    p_model_name VARCHAR2)
    IS
    BEGIN
    DBMS_DATA_MINING.DROP_MODEL(p_model_name);
    EXCEPTION WHEN OTHERS THEN
    NULL;
    --DBMS_OUTPUT.PUT_LINE('Failed drop_model: '||p_model_name);
    END drop_model;
    FUNCTION create_new_temp_table_name(prefix IN VARCHAR2, len IN NUMBER)
    RETURN VARCHAR2 IS
    v_table_name VARCHAR2(30);
    v_seed NUMBER;
    BEGIN
    dbms_random.seed(SYS_GUID());
    v_table_name := 'DM$T' || SUBSTR(prefix, 0, 4) || dbms_random.string(NULL, len-8);
    --DBMS_OUTPUT.PUT_LINE('create_new_temp_table_name: '||v_table_name);
    RETURN v_table_name;
    END create_new_temp_table_name;
    FUNCTION create_new_temp_table_name(prefix IN VARCHAR2)
    RETURN VARCHAR2 IS
    BEGIN
    RETURN create_new_temp_table_name(prefix, 30);
    END create_new_temp_table_name;
    FUNCTION ADD_TEMP_TABLE(tempTables IN OUT NOCOPY TABLE_ARRAY, temp_table IN VARCHAR2) RETURN VARCHAR2 IS
    BEGIN
    tempTables.EXTEND;
    tempTables(tempTables.COUNT) := temp_table;
    return temp_table;
    END;
    PROCEDURE DROP_TEMP_TABLES(tempTables IN OUT NOCOPY TABLE_ARRAY) IS
    v_temp VARCHAR2(30);
    BEGIN
    FOR i IN 1..tempTables.COUNT LOOP
    v_temp := tempTables(i);
    drop_table(v_temp);
    drop_view(v_temp);
    tempTables.DELETE(i);
    END LOOP;
    END;
    PROCEDURE CHECK_RESULTS(drop_output IN BOOLEAN,
    result_name IN VARCHAR2) IS
    BEGIN
    -- drop all results if drop = true, otherwise make sure all results don't exist already (raise exception)
    IF result_name IS NOT NULL THEN
    IF drop_output THEN
    drop_table(result_name);
    drop_view(result_name);
    ELSIF (table_exist(result_name)) THEN
    RAISE_APPLICATION_ERROR(-20000, 'Result table exists: '||result_name);
    END IF;
    END IF;
    END;
    PROCEDURE CHECK_MODEL(drop_output IN BOOLEAN,
    model_name IN VARCHAR2) IS
    BEGIN
    -- drop all results if drop = true, otherwise make sure all results don't exist already (raise exception)
    IF model_name IS NOT NULL THEN
    IF drop_output THEN
    drop_model(model_name);
    ELSIF (model_exist(model_name)) THEN
    RAISE_APPLICATION_ERROR(-20001, 'Model exists: '||model_name);
    END IF;
    END IF;
    END;
    PROCEDURE create_table_from_query(query IN OUT NOCOPY LSTMT_REC_TYPE)
    IS
    v_cursor NUMBER;
    v_feedback INTEGER;
    BEGIN
    v_cursor := DBMS_SQL.OPEN_CURSOR;
    DBMS_SQL.PARSE(
    c => v_cursor,
    statement => query.lstmt,
    lb => query.lb,
    ub => query.ub,
    lfflg => FALSE,
    language_flag => dbms_sql.native);
    v_feedback := DBMS_SQL.EXECUTE(v_cursor);
    DBMS_SQL.CLOSE_CURSOR(v_cursor);
    EXCEPTION WHEN OTHERS THEN
    IF DBMS_SQL.IS_OPEN(v_cursor) THEN
    DBMS_SQL.CLOSE_CURSOR(v_cursor);
    END IF;
    RAISE;
    END;
    FUNCTION get_row_count(tableName IN VARCHAR2)
    RETURN INTEGER IS
    v_stmt VARCHAR(100);
    qcount INTEGER := 0;
    BEGIN
    v_stmt := 'SELECT COUNT(*) FROM '|| tableName;
    EXECUTE IMMEDIATE v_stmt INTO qcount;
    RETURN qcount;
    END get_row_count;
    PROCEDURE SET_EQUAL_DISTRIBUTION (
    counts IN OUT VALUE_COUNT_LIST )
    IS
    v_minvalue NUMBER := 0;
    BEGIN
    FOR i IN counts.FIRST..counts.LAST
    LOOP
    IF ( i = counts.FIRST )
    THEN
    v_minvalue := counts(i);
    ELSIF ( counts(i) > 0 AND v_minvalue > counts(i) )
    THEN
    v_minvalue := counts(i);
    END IF;
    END LOOP;
    FOR i IN counts.FIRST..counts.LAST
    LOOP
    counts(i) := v_minvalue;
    END LOOP;
    END SET_EQUAL_DISTRIBUTION;
    PROCEDURE GET_STRATIFIED_DISTRIBUTION (
    table_name VARCHAR2,
    attribute_name VARCHAR2,
    percentage NUMBER,
    attr_values IN OUT NOCOPY TARGET_VALUES_LIST,
    counts IN OUT NOCOPY VALUE_COUNT_LIST,
    counts_sampled IN OUT NOCOPY VALUE_COUNT_LIST )
    IS
    v_tmp_stmt VARCHAR2(4000);
    BEGIN
    v_tmp_stmt :=
    'SELECT /*+ noparallel(t)*/ ' || attribute_name ||
    ', count(*), ROUND ( ( count(*) * ' || percentage || ') / 100.0 ) FROM '|| table_name ||
    ' WHERE ' || attribute_name ||' IS NOT NULL GROUP BY ' || attribute_name;
    EXECUTE IMMEDIATE v_tmp_stmt
    BULK COLLECT INTO attr_values, counts, counts_sampled;
    END GET_STRATIFIED_DISTRIBUTION;
    FUNCTION GENERATE_STRATIFIED_SQL (
    v_2d_temp_view VARCHAR2,
    src_table_name VARCHAR2,
    attr_names TARGET_VALUES_LIST,
    attribute_name VARCHAR2,
    percentage NUMBER,
    op VARCHAR2,
    equal_distribution IN BOOLEAN DEFAULT FALSE) RETURN LSTMT_REC_TYPE
    IS
    v_tmp_lstmt LSTMT_REC_TYPE;
    attr_values_res TARGET_VALUES_LIST;
    counts_res VALUE_COUNT_LIST;
    counts_sampled_res VALUE_COUNT_LIST;
    tmp_str VARCHAR2(4000);
    sample_count PLS_INTEGER;
    BEGIN
    GET_STRATIFIED_DISTRIBUTION(src_table_name, attribute_name, percentage, attr_values_res, counts_res, counts_sampled_res);
    IF ( equal_distribution = TRUE )
    THEN
    SET_EQUAL_DISTRIBUTION(counts_sampled_res);
    END IF;
    v_tmp_lstmt.ub := 0; -- initialize
    ls_append(v_tmp_lstmt, 'CREATE TABLE ');
    ls_append(v_tmp_lstmt, v_2d_temp_view);
    ls_append(v_tmp_lstmt, ' AS ');
    ls_append(v_tmp_lstmt, '( SELECT ');
    FOR i IN attr_names.FIRST..attr_names.LAST
    LOOP
    IF ( i != attr_names.FIRST )
    THEN
    ls_append(v_tmp_lstmt,',');
    END IF;
    ls_append(v_tmp_lstmt, attr_names(i));
    END LOOP;
    ls_append(v_tmp_lstmt, ' FROM (SELECT /*+ no_merge */ t.*, ROWNUM RNUM FROM ' || src_table_name || ' t) WHERE ' );
    FOR i IN attr_values_res.FIRST..attr_values_res.LAST
    LOOP
    IF ( i != attr_values_res.FIRST )
    THEN
    tmp_str := ' OR ';
    END IF;
    IF ( counts_res(i) <= 2 ) THEN
    sample_count := counts_res(i);
    ELSE
    sample_count := counts_sampled_res(i);
    END IF;
    tmp_str := tmp_str ||
    '( ' || attribute_name || ' = ''' || attr_values_res(i) || '''' ||
    ' AND ORA_HASH(RNUM,(' || counts_res(i) || ' -1),12345) ' || op || sample_count || ') ';
    ls_append(v_tmp_lstmt, tmp_str );
    END LOOP;
    ls_append(v_tmp_lstmt, ') ');
    return v_tmp_lstmt;
    END GENERATE_STRATIFIED_SQL;
    PROCEDURE "MINING_DATA_BUI666498540_BA"(case_table IN VARCHAR2 DEFAULT '"DMUSER"."MINING_DATA_BUILD_V"',
    additional_table_1 IN VARCHAR2 DEFAULT NULL,
    model_name IN VARCHAR2 DEFAULT 'MINING_DATA_B80870_SV',
    confusion_matrix_name IN VARCHAR2 DEFAULT '"DM4J$T504449054041_M"',
    lift_result_name IN VARCHAR2 DEFAULT '"DM4J$T504449083327_L"',
    roc_result_name IN VARCHAR2 DEFAULT '"DM4J$T504449092305_R"',
    test_metric_name IN VARCHAR2 DEFAULT '"DM4J$MINING_D51278_TM"',
    drop_output IN BOOLEAN DEFAULT FALSE)
    IS
    additional_data TABLE_ARRAY := TABLE_ARRAY(
    additional_table_1
    v_tempTables TABLE_ARRAY := TABLE_ARRAY();
    v_2d_view VARCHAR2(30);
    v_2d_view_build VARCHAR2(30);
    v_2d_view_test VARCHAR2(30);
    v_2d_temp_view VARCHAR2(30);
    v_txn_views TABLE_ARRAY := TABLE_ARRAY();
    v_txn_views_build TABLE_ARRAY := TABLE_ARRAY();
    v_txn_views_test TABLE_ARRAY := TABLE_ARRAY();
    v_txn_temp_views TABLE_ARRAY := TABLE_ARRAY();
    v_case_data SQL_STATEMENT_TYPE := case_table;
    v_case_id VARCHAR2(30) := 'DMR$CASE_ID';
    v_tmp_lstmt LSTMT_REC_TYPE;
    v_target_value VARCHAR2(4000) := '1';
    v_num_quantiles NUMBER := 10;
    v_build_data VARCHAR2(30);
    v_test_data VARCHAR2(30);
    v_prior VARCHAR2(30);
    v_build_setting VARCHAR2(30);
    v_apply_result VARCHAR2(30);
    v_build_cm VARCHAR2(30);
    v_test_cm VARCHAR2(30);
    v_accuracy NUMBER;
    v_area_under_curve NUMBER;
    v_avg_accuracy NUMBER;
    v_predictive_confidence NUMBER;
    v_confusion_matrix VARCHAR2(30);
    v_gen_caseId BOOLEAN := FALSE;
    v_2d_txt_view VARCHAR2(30);
    v_content_index VARCHAR2(30);
    v_content_index_pref VARCHAR2(30);
    v_category_temp_table VARCHAR2(30);
    v_term_definitions VARCHAR2(30);
    v_term_final_table VARCHAR2(30);
    v_term_final_table_index VARCHAR2(30);
    v_term_final_table_test VARCHAR2(30);
    pragma autonomous_transaction;
    BEGIN
    CHECK_MODEL(drop_output, model_name);
    CHECK_RESULTS(drop_output, test_metric_name);
    CHECK_RESULTS(drop_output, confusion_matrix_name);
    CHECK_RESULTS(drop_output, lift_result_name);
    CHECK_RESULTS(drop_output, roc_result_name);
    IF (v_gen_caseId) THEN
    v_case_data := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    EXECUTE IMMEDIATE 'CREATE TABLE '||v_case_data||' as SELECT rownum as DMR$CASE_ID, t.* FROM ('||case_table||') t ';
    EXECUTE IMMEDIATE 'ALTER TABLE '||v_case_data||' add constraint '||create_new_temp_table_name('PK')||' primary key (DMR$CASE_ID)';
    END IF;
    ----- Start: Input Data Preparation -----
    v_2d_temp_view := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    ls_append(v_tmp_lstmt, 'CREATE VIEW ');
    ls_append(v_tmp_lstmt, v_2d_temp_view);
    ls_append(v_tmp_lstmt, ' AS ');
    ls_append(v_tmp_lstmt, ' ( ');
    ls_append(v_tmp_lstmt, 'SELECT "CASE_TABLE"."CUST_ID" as "DMR$CASE_ID", TO_CHAR( "CASE_TABLE"."AFFINITY_CARD") AS "AFFINITY_CARD",
    "CASE_TABLE"."AGE" AS "AGE",
    TO_CHAR( "CASE_TABLE"."BOOKKEEPING_APPLICATION") AS "BOOKKEEPING_APPLICATION",
    TO_CHAR( "CASE_TABLE"."BULK_PACK_DISKETTES") AS "BULK_PACK_DISKETTES",
    "CASE_TABLE"."COUNTRY_NAME" AS "COUNTRY_NAME",
    "CASE_TABLE"."CUST_GENDER" AS "CUST_GENDER",
    "CASE_TABLE"."CUST_INCOME_LEVEL" AS "CUST_INCOME_LEVEL",
    "CASE_TABLE"."CUST_MARITAL_STATUS" AS "CUST_MARITAL_STATUS",
    "CASE_TABLE"."EDUCATION" AS "EDUCATION",
    TO_CHAR( "CASE_TABLE"."FLAT_PANEL_MONITOR") AS "FLAT_PANEL_MONITOR",
    TO_CHAR( "CASE_TABLE"."HOME_THEATER_PACKAGE") AS "HOME_THEATER_PACKAGE",
    "CASE_TABLE"."HOUSEHOLD_SIZE" AS "HOUSEHOLD_SIZE",
    "CASE_TABLE"."OCCUPATION" AS "OCCUPATION",
    TO_CHAR( "CASE_TABLE"."OS_DOC_SET_KANJI") AS "OS_DOC_SET_KANJI",
    TO_CHAR( "CASE_TABLE"."Y_BOX_GAMES") AS "Y_BOX_GAMES",
    "CASE_TABLE"."YRS_RESIDENCE" AS "YRS_RESIDENCE" FROM (' || v_case_data || ') CASE_TABLE ');
    ls_append(v_tmp_lstmt, ' ) ');
    create_table_from_query(v_tmp_lstmt);
    v_2d_view := v_2d_temp_view;
    ----- End: Input Data Preparation -----
    ----- Start: Outlier Treatment Transformation -----
    v_tmp_lstmt.ub := 0; -- initialize
    v_2d_temp_view := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    ls_append(v_tmp_lstmt, 'CREATE VIEW ');
    ls_append(v_tmp_lstmt, v_2d_temp_view);
    ls_append(v_tmp_lstmt, ' AS ');
    ls_append(v_tmp_lstmt, ' ( ');
    ls_append(v_tmp_lstmt, 'SELECT
    "AFFINITY_CARD",
    ( CASE WHEN "AGE" < -1.3 THEN -1.3
    WHEN "AGE" >= -1.3 AND "AGE" <= 79.77 THEN "AGE"
    WHEN "AGE" > 79.77 THEN 79.77
    end) "AGE"
    "BOOKKEEPING_APPLICATION",
    "BULK_PACK_DISKETTES",
    "COUNTRY_NAME",
    "CUST_GENDER",
    "CUST_INCOME_LEVEL",
    "CUST_MARITAL_STATUS",
    "DMR$CASE_ID",
    "EDUCATION",
    "FLAT_PANEL_MONITOR",
    "HOME_THEATER_PACKAGE",
    "HOUSEHOLD_SIZE",
    "OCCUPATION",
    "OS_DOC_SET_KANJI",
    "Y_BOX_GAMES",
    ( CASE WHEN "YRS_RESIDENCE" < -1.7 THEN -1.7
    WHEN "YRS_RESIDENCE" >= -1.7 AND "YRS_RESIDENCE" <= 10 THEN "YRS_RESIDENCE"
    WHEN "YRS_RESIDENCE" > 10 THEN 10
    end) "YRS_RESIDENCE"
    FROM ');
    ls_append(v_tmp_lstmt, v_2d_view);
    ls_append(v_tmp_lstmt, ' ) ');
    create_table_from_query(v_tmp_lstmt);
    v_2d_view := v_2d_temp_view;
    ----- End: Outlier Treatment Transformation -----
    ----- Start: Missing Values Transformation -----
    v_tmp_lstmt.ub := 0; -- initialize
    v_2d_temp_view := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    ls_append(v_tmp_lstmt, 'CREATE VIEW ');
    ls_append(v_tmp_lstmt, v_2d_temp_view);
    ls_append(v_tmp_lstmt, ' AS ');
    ls_append(v_tmp_lstmt, ' ( ');
    ls_append(v_tmp_lstmt, 'SELECT
    DECODE ( "AGE" , NULL,
    39.23831 , "AGE" ) "AGE" ,
    DECODE ( "YRS_RESIDENCE" , NULL,
    4.128 , "YRS_RESIDENCE" ) "YRS_RESIDENCE" ,
    DECODE ( "BOOKKEEPING_APPLICATION" , NULL,
    ''1'' , "BOOKKEEPING_APPLICATION" ) "BOOKKEEPING_APPLICATION" ,
    DECODE ( "BULK_PACK_DISKETTES" , NULL,
    ''1'' , "BULK_PACK_DISKETTES" ) "BULK_PACK_DISKETTES" ,
    DECODE ( "COUNTRY_NAME" , NULL,
    ''United States of America'' , "COUNTRY_NAME" ) "COUNTRY_NAME" ,
    DECODE ( "CUST_GENDER" , NULL,
    ''M'' , "CUST_GENDER" ) "CUST_GENDER" ,
    DECODE ( "CUST_INCOME_LEVEL" , NULL,
    ''J: 190,000 - 249,999'' , "CUST_INCOME_LEVEL" ) "CUST_INCOME_LEVEL" ,
    DECODE ( "CUST_MARITAL_STATUS" , NULL,
    ''Married'' , "CUST_MARITAL_STATUS" ) "CUST_MARITAL_STATUS" ,
    DECODE ( "EDUCATION" , NULL,
    ''HS-grad'' , "EDUCATION" ) "EDUCATION" ,
    DECODE ( "FLAT_PANEL_MONITOR" , NULL,
    ''1'' , "FLAT_PANEL_MONITOR" ) "FLAT_PANEL_MONITOR" ,
    DECODE ( "HOME_THEATER_PACKAGE" , NULL,
    ''1'' , "HOME_THEATER_PACKAGE" ) "HOME_THEATER_PACKAGE" ,
    DECODE ( "HOUSEHOLD_SIZE" , NULL,
    ''3'' , "HOUSEHOLD_SIZE" ) "HOUSEHOLD_SIZE" ,
    DECODE ( "OCCUPATION" , NULL,
    ''Exec.'' , "OCCUPATION" ) "OCCUPATION" ,
    DECODE ( "OS_DOC_SET_KANJI" , NULL,
    ''0'' , "OS_DOC_SET_KANJI" ) "OS_DOC_SET_KANJI" ,
    DECODE ( "Y_BOX_GAMES" , NULL,
    ''0'' , "Y_BOX_GAMES" ) "Y_BOX_GAMES" ,
    "AFFINITY_CARD",
    "DMR$CASE_ID"
    FROM ');
    ls_append(v_tmp_lstmt, v_2d_view);
    ls_append(v_tmp_lstmt, ' ) ');
    create_table_from_query(v_tmp_lstmt);
    v_2d_view := v_2d_temp_view;
    ----- End: Missing Values Transformation -----
    ----- Start: Normalize Transformation -----
    v_tmp_lstmt.ub := 0; -- initialize
    v_2d_temp_view := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    ls_append(v_tmp_lstmt, 'CREATE VIEW ');
    ls_append(v_tmp_lstmt, v_2d_temp_view);
    ls_append(v_tmp_lstmt, ' AS ');
    ls_append(v_tmp_lstmt, ' ( ');
    ls_append(v_tmp_lstmt, 'SELECT
    "BOOKKEEPING_APPLICATION",
    "BULK_PACK_DISKETTES",
    "COUNTRY_NAME",
    "CUST_GENDER",
    "CUST_INCOME_LEVEL",
    "CUST_MARITAL_STATUS",
    "EDUCATION",
    "FLAT_PANEL_MONITOR",
    "HOME_THEATER_PACKAGE",
    "HOUSEHOLD_SIZE",
    "OCCUPATION",
    "OS_DOC_SET_KANJI",
    "Y_BOX_GAMES",
    "AFFINITY_CARD",
    "DMR$CASE_ID",
    LEAST(1, GREATEST(0, (ROUND(("AGE" - 17.0) / (79.77 - 17.0),15) * (1.0 - 0.0) + 0.0))) "AGE",
    LEAST(1, GREATEST(0, (ROUND(("YRS_RESIDENCE" - 0.0) / (10.0 - 0.0),15) * (1.0 - 0.0) + 0.0))) "YRS_RESIDENCE"
    FROM ');
    ls_append(v_tmp_lstmt, v_2d_view);
    ls_append(v_tmp_lstmt, ' ) ');
    create_table_from_query(v_tmp_lstmt);
    v_2d_view := v_2d_temp_view;
    ----- End: Normalize Transformation -----
    ----- Start: Stratified Split Transformation -----
    v_tmp_lstmt.ub := 0; -- initialize
    v_2d_temp_view := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    ls_append(v_tmp_lstmt, GENERATE_STRATIFIED_SQL(v_2d_temp_view, v_2d_view, TARGET_VALUES_LIST('"BOOKKEEPING_APPLICATION"',
    '"BULK_PACK_DISKETTES"',
    '"COUNTRY_NAME"',
    '"CUST_GENDER"',
    '"CUST_INCOME_LEVEL"',
    '"CUST_MARITAL_STATUS"',
    '"EDUCATION"',
    '"FLAT_PANEL_MONITOR"',
    '"HOME_THEATER_PACKAGE"',
    '"HOUSEHOLD_SIZE"',
    '"OCCUPATION"',
    '"OS_DOC_SET_KANJI"',
    '"Y_BOX_GAMES"',
    '"AFFINITY_CARD"',
    '"DMR$CASE_ID"',
    '"AGE"',
    '"YRS_RESIDENCE"'), '"AFFINITY_CARD"', 60, ' < ' ));
    create_table_from_query(v_tmp_lstmt);
    v_2d_view_build := v_2d_temp_view;
    v_tmp_lstmt.ub := 0; -- initialize
    v_2d_temp_view := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    ls_append(v_tmp_lstmt, GENERATE_STRATIFIED_SQL(v_2d_temp_view, v_2d_view, TARGET_VALUES_LIST('"BOOKKEEPING_APPLICATION"',
    '"BULK_PACK_DISKETTES"',
    '"COUNTRY_NAME"',
    '"CUST_GENDER"',
    '"CUST_INCOME_LEVEL"',
    '"CUST_MARITAL_STATUS"',
    '"EDUCATION"',
    '"FLAT_PANEL_MONITOR"',
    '"HOME_THEATER_PACKAGE"',
    '"HOUSEHOLD_SIZE"',
    '"OCCUPATION"',
    '"OS_DOC_SET_KANJI"',
    '"Y_BOX_GAMES"',
    '"AFFINITY_CARD"',
    '"DMR$CASE_ID"',
    '"AGE"',
    '"YRS_RESIDENCE"'), '"AFFINITY_CARD"', 60, ' >= ' ));
    create_table_from_query(v_tmp_lstmt);
    v_2d_view_test := v_2d_temp_view;
    ----- End: Stratified Split Transformation -----
    ----- Start: Mining Data Preparation -----
    v_tmp_lstmt.ub := 0; -- initialize
    v_2d_temp_view := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    ls_append(v_tmp_lstmt, 'CREATE VIEW ');
    ls_append(v_tmp_lstmt, v_2d_temp_view);
    ls_append(v_tmp_lstmt, ' AS ');
    ls_append(v_tmp_lstmt, ' ( ');
    ls_append(v_tmp_lstmt,
    'SELECT caseTable."AFFINITY_CARD"
    , caseTable."AGE"
    , caseTable."BOOKKEEPING_APPLICATION"
    , caseTable."BULK_PACK_DISKETTES"
    , caseTable."COUNTRY_NAME"
    , caseTable."CUST_GENDER"
    , caseTable."CUST_INCOME_LEVEL"
    , caseTable."CUST_MARITAL_STATUS"
    , caseTable."DMR$CASE_ID"
    , caseTable."EDUCATION"
    , caseTable."FLAT_PANEL_MONITOR"
    , caseTable."HOME_THEATER_PACKAGE"
    , caseTable."HOUSEHOLD_SIZE"
    , caseTable."OCCUPATION"
    , caseTable."OS_DOC_SET_KANJI"
    , caseTable."Y_BOX_GAMES"
    , caseTable."YRS_RESIDENCE"
    FROM ('); ls_append(v_tmp_lstmt, v_2d_view_build); ls_append(v_tmp_lstmt, ') caseTable
    ls_append(v_tmp_lstmt, ' ) ');
    create_table_from_query(v_tmp_lstmt);
    v_2d_view_build := v_2d_temp_view;
    v_tmp_lstmt.ub := 0; -- initialize
    v_2d_temp_view := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    ls_append(v_tmp_lstmt, 'CREATE VIEW ');
    ls_append(v_tmp_lstmt, v_2d_temp_view);
    ls_append(v_tmp_lstmt, ' AS ');
    ls_append(v_tmp_lstmt, ' ( ');
    ls_append(v_tmp_lstmt,
    'SELECT caseTable."AFFINITY_CARD"
    , caseTable."AGE"
    , caseTable."BOOKKEEPING_APPLICATION"
    , caseTable."BULK_PACK_DISKETTES"
    , caseTable."COUNTRY_NAME"
    , caseTable."CUST_GENDER"
    , caseTable."CUST_INCOME_LEVEL"
    , caseTable."CUST_MARITAL_STATUS"
    , caseTable."DMR$CASE_ID"
    , caseTable."EDUCATION"
    , caseTable."FLAT_PANEL_MONITOR"
    , caseTable."HOME_THEATER_PACKAGE"
    , caseTable."HOUSEHOLD_SIZE"
    , caseTable."OCCUPATION"
    , caseTable."OS_DOC_SET_KANJI"
    , caseTable."Y_BOX_GAMES"
    , caseTable."YRS_RESIDENCE"
    FROM ('); ls_append(v_tmp_lstmt, v_2d_view_test); ls_append(v_tmp_lstmt, ') caseTable
    ls_append(v_tmp_lstmt, ' ) ');
    create_table_from_query(v_tmp_lstmt);
    v_2d_view_test := v_2d_temp_view;
    v_build_data := v_2d_view_build;
    v_test_data := v_2d_view_test;
    ----- End: Mining Data Preparation -----
    v_prior := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    EXECUTE IMMEDIATE 'CREATE TABLE ' || v_prior || ' (TARGET_VALUE VARCHAR2(4000), PRIOR_PROBABILITY NUMBER)';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_prior || ' VALUES (''0'', 0.25333333333333335)';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_prior || ' VALUES (''1'', 0.7466666666666666)';
    COMMIT;
    v_build_setting := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    EXECUTE IMMEDIATE 'CREATE TABLE ' || v_build_setting || ' (setting_name VARCHAR2(30), setting_value VARCHAR2(128))';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_build_setting || ' VALUES (''JDMS_TARGET_NAME'', ''"AFFINITY_CARD"'')';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_build_setting || ' VALUES (''SVMS_ACTIVE_LEARNING'', ''SVMS_AL_ENABLE'')';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_build_setting || ' VALUES (''JDMS_FUNCTION_TYPE'', ''CLASSIFICATION'')';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_build_setting || ' VALUES (''ALGO_NAME'', ''ALGO_SUPPORT_VECTOR_MACHINES'')';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_build_setting || ' VALUES (''SVMS_CONV_TOLERANCE'', ''0.0010'')';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_build_setting || ' VALUES (''CLAS_PRIORS_TABLE_NAME'', :priorTable)' USING v_prior;
    COMMIT;
    -- BUILD MODEL
    DBMS_DATA_MINING.CREATE_MODEL(
    model_name => model_name,
    mining_function => dbms_data_mining.classification,
    data_table_name => v_build_data,
    case_id_column_name => v_case_id,
    target_column_name => 'AFFINITY_CARD',
    settings_table_name => v_build_setting);
    v_test_cm := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    EXECUTE IMMEDIATE 'CREATE TABLE ' || v_test_cm || ' (actual_target_value VARCHAR2(4000), predicted_target_value VARCHAR2(4000), cost NUMBER)';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_test_cm || ' VALUES (''0'', ''0'', 0.0)';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_test_cm || ' VALUES (''0'', ''1'', 1.0)';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_test_cm || ' VALUES (''1'', ''0'', 1.0)';
    EXECUTE IMMEDIATE 'INSERT INTO ' || v_test_cm || ' VALUES (''1'', ''1'', 0.0)';
    COMMIT;
    -- TEST MODEL
    IF (test_metric_name IS NOT NULL) THEN
    -- CREATE APPLY RESULT FOR TEST
    v_apply_result := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    DBMS_DATA_MINING.APPLY(
    model_name => model_name,
    data_table_name => v_test_data,
    case_id_column_name => v_case_id,
    result_table_name => v_apply_result);
    EXECUTE IMMEDIATE 'CREATE TABLE ' || test_metric_name || ' (METRIC_NAME VARCHAR2(30), METRIC_VARCHAR_VALUE VARCHAR2(31), METRIC_NUM_VALUE NUMBER)';
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_VARCHAR_VALUE) VALUES (''MODEL_NAME'', :model)' USING model_name;
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_VARCHAR_VALUE) VALUES (''TEST_DATA_NAME'', :test_data)' USING v_test_data;
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_VARCHAR_VALUE) VALUES (''MINING_FUNCTION'', ''CLASSIFICATION'')';
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_VARCHAR_VALUE) VALUES (''TARGET_ATTRIBUTE'', :target)' USING 'AFFINITY_CARD';
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_VARCHAR_VALUE) VALUES (''POSITIVE_TARGET_VALUE'', :target_value)' USING v_target_value;
    COMMIT;
    IF confusion_matrix_name IS NULL THEN
    v_confusion_matrix := ADD_TEMP_TABLE(v_tempTables, create_new_temp_table_name('DM$T'));
    ELSE
    v_confusion_matrix := confusion_matrix_name;
    END IF;
    DBMS_DATA_MINING.COMPUTE_CONFUSION_MATRIX (
    accuracy => v_accuracy,
    apply_result_table_name => v_apply_result,
    target_table_name => v_test_data,
    case_id_column_name => v_case_id,
    target_column_name => 'AFFINITY_CARD',
    confusion_matrix_table_name => v_confusion_matrix,
    score_column_name => 'PREDICTION',
    score_criterion_column_name => 'PROBABILITY',
    cost_matrix_table_name => v_test_cm);
    -- DBMS_OUTPUT.PUT_LINE('**** MODEL ACCURACY ****: ' || ROUND(accuracy, 4));
    IF (confusion_matrix_name IS NOT NULL) THEN
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_NUM_VALUE) VALUES (''ACCURACY'', :accuracy)' USING v_accuracy;
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_VARCHAR_VALUE) VALUES (''CONFUSION_MATRIX_TABLE'', :confusion_matrix_name)' USING confusion_matrix_name;
    COMMIT;
    -- Average Accuracy
    EXECUTE IMMEDIATE '
    WITH
    a as
    (SELECT a.actual_target_value, sum(a.value) recall_total
    FROM ' || confusion_matrix_name || ' a
    group by a.actual_target_value)
    b as
    (SELECT count(distinct b.actual_target_value) num_recalls
    FROM ' || confusion_matrix_name || ' b)
    c as
    (SELECT c.actual_target_value, value
    FROM ' || confusion_matrix_name || ' c
    where actual_target_value = predicted_target_value)
    d as
    (SELECT sum(c.value/a.recall_total) tot_accuracy
    FROM a, c
    where a.actual_target_value = c.actual_target_value)
    SELECT d.tot_accuracy/b.num_recalls * 100 avg_accuracy
    FROM b, d' INTO v_avg_accuracy;
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_NUM_VALUE) VALUES (''AVG_ACCURACY'', :avg_accuracy)' USING v_avg_accuracy;
    COMMIT;
    END IF;
    -- Predictive Confidence
    EXECUTE IMMEDIATE '
    WITH
    a as
    (SELECT a.actual_target_value, sum(a.value) recall_total
    FROM ' || v_confusion_matrix || ' a
    group by a.actual_target_value)
    b as
    (SELECT count(distinct b.actual_target_value) num_classes
    FROM ' || v_confusion_matrix || ' b)
    c as
    (SELECT c.actual_target_value, value
    FROM ' || v_confusion_matrix || ' c
    where actual_target_value = predicted_target_value)
    d as
    (SELECT sum(c.value/a.recall_total) tot_accuracy
    FROM a, c
    where a.actual_target_value = c.actual_target_value)
    SELECT (1 - (1 - d.tot_accuracy/b.num_classes) / GREATEST(0.0001, ((b.num_classes-1)/b.num_classes))) * 100
    FROM b, d' INTO v_predictive_confidence;
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_NUM_VALUE) VALUES (''PREDICTIVE_CONFIDENCE'', :predictive_confidence)' USING v_predictive_confidence;
    COMMIT;
    IF lift_result_name IS NOT NULL AND v_target_value IS NOT NULL THEN
    DBMS_DATA_MINING.COMPUTE_LIFT (
    apply_result_table_name => v_apply_result,
    target_table_name => v_test_data,
    case_id_column_name => v_case_id,
    target_column_name => 'AFFINITY_CARD',
    lift_table_name => lift_result_name,
    positive_target_value => v_target_value,
    num_quantiles => v_num_quantiles,
    cost_matrix_table_name => v_test_cm);
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_VARCHAR_VALUE) VALUES (''LIFT_TABLE'', :lift_result_name)' USING lift_result_name;
    COMMIT;
    END IF;
    IF roc_result_name IS NOT NULL AND v_target_value IS NOT NULL THEN
    DBMS_DATA_MINING.COMPUTE_ROC (
    roc_area_under_curve => v_area_under_curve,
    apply_result_table_name => v_apply_result,
    target_table_name => v_test_data,
    case_id_column_name => v_case_id,
    target_column_name => 'AFFINITY_CARD',
    roc_table_name => roc_result_name,
    positive_target_value => v_target_value,
    score_column_name => 'PREDICTION',
    score_criterion_column_name => 'PROBABILITY');
    -- DBMS_OUTPUT.PUT_LINE('**** AREA UNDER ROC CURVE ****: ' || area_under_curve );
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_VARCHAR_VALUE) VALUES (''ROC_TABLE'', :roc_result_name)' USING roc_result_name;
    EXECUTE IMMEDIATE 'INSERT INTO ' || test_metric_name || ' (METRIC_NAME, METRIC_NUM_VALUE) VALUES (''AREA_UNDER_CURVE'', :v_area_under_curve)' USING v_area_under_curve;
    COMMIT;
    END IF;
    END IF;
    DROP_TEMP_TABLES(v_tempTables);
    EXCEPTION WHEN OTHERS THEN
    DROP_TEMP_TABLES(v_tempTables);
    RAISE;
    END;
    END;
    /

  • How to use JPublisher generated package in JSP

    I am finding difficulty in using JDeveloper genereted (Using JPublisher) package ( from PL?SQL packages of Oracle) using in JSP . can any body help
    Prashant

    Can you be more specific on what you are doing and what problem you are facing.
    You can refer JPublisher documentation here.
    http://otn.oracle.com/docs/products/oracle9i/doc_library/release2/java.920/a96658/toc.htm
    JPub help with Jdeveloper
    http://otn.oracle.com/jdeveloper/help/
    Go to using SQL in Java Programs ->Accessing Oracle Objects and PL/SQL Packages using Java
    Also you can see how JPub generated classes can be used in SQLJandJPublisherSample at following url. You can apply similar concept for JSPs.
    http://otn.oracle.com/sample_code/tech/java/sqlj_jdbc/files/9i_sqlj/9i_sqlj.html
    Chandar

  • Having the animation issue with iOS 5 SDK generated build

    I am working on a enterprise application. I upgraded the xcode 4.2 and generated the build with iOS SDK 5. I observed the strange behavior in the animation of the views. The view are moving horizontally, even though we are setting the frame vertically.
    But if I run the app in debug mode, it works fine.
    Can anyone please help me?

    The following piece of code I am using in my application,
    Here pBgImageView is UIControl object.
                        CGRect frame =pBgImageView.frame;
      NSLog(@"frame x.o = %f, y.o = %f",frame.origin.x,frame.origin.y );           
                        frame.origin.y += (62 + 15);
      NSLog(@"frame x.o = %f, y.o = %f, bg.x = %f, bg.y =      %f",frame.origin.x,frame.origin.y, pBgImageView.frame.origin.x,pBgImageView.frame.origin.y );
    And the logs I am getting is,
    frame x.o = 15.000000, y.o = 88.000000
    frame x.o = 92.000000, y.o = 92.000000, bg.x = 15.000000, bg.y = 88.000000
    frame x.o = 92.000000, y.o = 92.000000

  • Mapping namespace to generated package name (clientgen)

    Hello,
    We have a need to map the namespace of the generated bean artifacts from clientgen to a different package name. This could be done prior to weblogic 10 with the typePackageName attribute of clientgen but this is no longer supported in weblogic 10. Is there another way to do this? Note we cannot change the namespace of the webservice wsdl we are generating the client for.
    Thank you!
    Julia Allen

    Use the <binding> child element to specify one of the following:
    * For JAX-WS, one or more customization files that specify one or more of the following:
    o JAX-WS and JAXB custom binding declarations. For more information, see “Customizing XML Schema-to-Java Mapping Using Binding Declarations” in Getting Started With WebLogic Web Services Using JAX-WS.
    o SOAP handler files. For more information, see “Creating and Using SOAP Message Handlers” in Programming Advance Features of WebLogic Web Services Using JAX-WS.
    * For JAX-RPC, one or more XMLBeans configuration files, which by convention end in .xsdconfig. Use this element if your Web Service uses Apache XMLBeans data types as parameters or return values.
    The <binding> element is similar to the standard Ant <Fileset> element and has all the same attributes. See the Apache Ant documentation on the Fileset element for the full list of attributes you can specify.
    Note:      The <binding> element replaces the <xsdConfig> element, which is deprecated as of version 10.0 of WebLogic Server.
    See here for detail.

  • Using AIR SDK To Package Apps

    Hi Guys,
    I'm using the command line, air sdk tools to package my air
    app. I can do everything except select the destination where the
    packaged app should be placed. I have read the documentation;
    http://help.adobe.com/en_US/AIR/1.1/devappshtml/WS5b3ccc516d4fbf351e63e3d118666ade46-7fd6. html
    and it says nothing about a destination directory, only to
    specify the name of the app, i.e. myApp.air. Is there an argument,
    or another way, to set the destination directory of the final
    packaged application?
    I tried to use /Documents/SomeDirectory/myApp.air, but I
    simply get an error.
    Any help would be greatly appreciated.
    Thanks

    The "myApp.air" argument is the output file, not the name of
    the application. Specifying a path should work, although the parent
    directory has to exist. You don't mention what error you received,
    but I suspect you simply gave an invalid path.

  • Customized license for an AUR package

    Hello community,
    yesterday I stumbled upon a very cool LaTeX package for creating commutative diagrams. I found it very useful and thus wanted to create an AUR package for it, but unfortunately it has a somewhat unusual license. Here it is:
    %% COPYRIGHT NOTICE: %
    %% This package may be copied and used freely for any academic %
    %% (not commercial or military) purpose, on condition that it %
    %% is not altered in any way, and that an acknowledgement is %
    %% included in any published work making substantial use of it. %
    %% IT IS SUPPLIED "AS IS", WITHOUT WARRANTY, EXPRESS OR IMPLIED. %
    %% If you are doing something where mistakes cost money (or where %
    %% success brings financial profit) then you must use commercial %
    %% software, not this package. In any case, please remember to %
    %% keep several backup copies of all files, and check everything %
    %% visually before sending final copy to the publishers. %
    %% You may use this package as a (substantial) aid to writing an %
    %% academic research or text book on condition that %
    %% (i) you contact me at a suitable time to ensure that you have %
    %% an up-to-date version (and any infelicities can be fixed), %
    %% (ii) you send me a copy of the book when it's published. %
    Also the source code is mostly kind of closed (you might take a look at http://www.paultaylor.eu/diagrams/diagrams.sty ). I contacted the author and asked whether it would be possible to change the license to some similar but more common license. Unfortunately it seems that the code needs much clean up before it can be published and the author doesn't have the time and resources to take care of it. Thus a closed license similar to the current license would be needed.
    So I'd like to ask whether there is a common license similar to the above and if not, whether I can still create an AUR package for it (and what license I should use in this case).
    Thanks,
    PhotonX
    Last edited by PhotonX (2012-07-06 08:42:42)

    I don't know if it is commonly used for software/code, but I don't think a creative commons license requires source distribution while an "Attribution + Noncommercial + NoDerivatives (by-nc-nd)" creative commons license seems to provide the restrictions the author is aiming for.  This would allow for the use of a clear and established license.
    Note: I just found a CC FAQ that advises against using it for software.  Though the reason seems to be that the license does not make any specific mention of source/object code thus it is not an open source license.  However, if one want's a closed license, that may do it ... it's at least worth considering.
    It also may be worth considering whether the code in this project uses previously GPL'ed code/tools which I'm pretty sure it would.  If that's the case then I believe it must also be GPL.  ("I beleive" = don't take my word on this ... but this should be looked into).
    EDIT: come to think of it, no actual "software" is being distributed as there is no compiled version of this.  What is being distributed is a document.  It is a style document with instructions that are interpreted by other software.  That other software could be, but need not be, a GPL'ed latex compiler.  It could be any sort of markup compiler that can work with latex-like instructions.  Anyhow, the point is what is to be protected is not a resulting program, but the text contents of the sty document itself.  Thefore a simpler document copyright would be more fitting than a software license, wouldn't it?  So, I would recommend a creative commons variant.  This allows others to use his sty document while (optionally) requiring attribution, disallowing modification of the sty document, and disallowing commercial use.
    EDIT2: following from the above, with a comparison - this is like distrubuting campaigns or other plugins for the GPL'ed game Battle for Wesnoth.  The artwork can be, and often is, under a more restrictive copyright of the author/creator.  A sty document seems more like the artwork and added levels of Wesnoth than additional software.
    EDIT3: another comparison would be distributed CSS styles.  These are (if anything) under document copyright not software license.
    Last edited by Trilby (2012-07-06 14:29:51)

  • License of Class Generator

    Hello,
    I want know when the first version of Class Generator will be
    released and the license agreements. Another question : at the
    actual moment, can I utilize the Class Generator for commercial
    purposes ? I've read the license, and I've understood this is
    impossible until the new version will be released.
    Thank you in advance
    Rolando Ramieri
    Agenzia ANSA Roma
    null

    Rolando Ramieri (guest) wrote:
    : Hello,
    : I want know when the first version of Class Generator will be
    : released and the license agreements. Another question : at the
    : actual moment, can I utilize the Class Generator for
    commercial
    : purposes ? I've read the license, and I've understood this is
    : impossible until the new version will be released.
    : Thank you in advance
    : Rolando Ramieri
    : Agenzia ANSA Roma
    There will be an announcement in a couple of weeks regarding
    licensing. Right now it is only a development license.
    Oracle XML Team
    http://technet.oracle.com
    Oracle Technology Network
    null

Maybe you are looking for