How does XML DB handle XML Schema Validation ?

In order to validate an XML document against an XML Schema using Oracle XML DB the XML Schema must first be registered with XML DB using the method registerSchema provided by the package DBMS_XMLSCHEMA.
XDB provides two types of schema validation, 'Lax' Validation and 'Strict' Validation.
'Lax' validation takes place whenever a schema based document is converted from it's textual representation into the XML DB internal object model. Errors caught by this validation will be prefixed with 'ORA'.
'Stict' validation takes place when the XMLType methods schemaValidate() or isSchemaValid() are invoked.
The schemaValidate() method throws an exception with an error message indicating what is wrong it encounteres an invalid document. The error message associated with the exception will be prefixed with LSX.
The isSchemaValid() method returns true or false, depending on whether or not the document is valid. It cannot return any information about why the document is invalid.
The reason for having both the Lax and Strict validation models is that Strict validation is much more expensive in terms of CPU and memory usage than Lax validation.

Here are some examples of what is caught by Lax validation (ORA errors) and what is only caught by Strict validation (LSX errors).
SQL> begin
  2     dbms_xmlschema.registerSchema('test',xmltype(
  3  '<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.co
eFormDefault="unqualified">
  4     <xs:complexType name="RootType">
  5             <xs:sequence>
  6                     <xs:element name="Mandatory"/>
  7                     <xs:element name="Enumeration">
  8                             <xs:simpleType>
  9                                     <xs:restriction base="xs:string">
10                                             <xs:enumeration value="A"/>
11                                             <xs:enumeration value="B"/>
12                                             <xs:enumeration value="C"/>
13                                     </xs:restriction>
14                             </xs:simpleType>
15                     </xs:element>
16                     <xs:element name="MinLength">
17                             <xs:simpleType>
18                                     <xs:restriction base="xs:string">
19                                             <xs:minLength value="4"/>
20                                             <xs:maxLength value="20"/>
21                                     </xs:restriction>
22                             </xs:simpleType>
23                     </xs:element>
24                     <xs:element name="MaxLength">
25                             <xs:simpleType>
26                                     <xs:restriction base="xs:string">
27                                             <xs:minLength value="1"/>
28                                             <xs:maxLength value="4"/>
29                                     </xs:restriction>
30                             </xs:simpleType>
31                     </xs:element>
32                     <xs:element name="MaxOccurs" type="xs:string" maxOccurs="2"/>
33                     <xs:element name="MinOccurs" minOccurs="2" maxOccurs="2"/>
34                     <xs:element name="Optional" type="xs:string" minOccurs="0"/>
35             </xs:sequence>
36     </xs:complexType>
37     <xs:element name="Root" type="RootType" xdb:defaultTable="ROOT_TABLE"/>
38  </xs:schema>'));
39  end;
40  /
PL/SQL procedure successfully completed.
SQL> --
SQL> -- Valid Document
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11     <Optional>Goodbye</Optional>
12  </Root>'
13  ))
14  /
1 row created.
SQL> --
SQL> -- Undefined element 'Illegal'
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Illegal>Hello World</Illegal>
  5     <Enumeration>A</Enumeration>
  6     <MinLength>ABCD</MinLength>
  7     <MaxLength>WXYZ</MaxLength>
  8     <MaxOccurs>1</MaxOccurs>
  9     <MaxOccurs>2</MaxOccurs>
10     <MinOccurs>1</MinOccurs>
11     <MinOccurs>2</MinOccurs>
12     <Optional>Goodbye</Optional>
13  </Root>'
14  ))
15  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-30937: No schema definition for 'Illegal' (namespace '##local') in parent
'/Root'
SQL> --
SQL> -- Multiple occurences of 'Optional'
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11     <Optional>Goodbye</Optional>
12     <Optional>Goodbye</Optional>
13  </Root>'
14  ))
15  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-30936: Maximum number (1) of 'Optional' XML node elements exceeded
SQL> --
SQL> -- Missing element 'Manadatory'
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Enumeration>A</Enumeration>
  4     <MinLength>ABCD</MinLength>
  5     <MaxLength>WXYZ</MaxLength>
  6     <MaxOccurs>1</MaxOccurs>
  7     <MaxOccurs>2</MaxOccurs>
  8     <MinOccurs>1</MinOccurs>
  9     <MinOccurs>2</MinOccurs>
10     <Optional>Goodbye</Optional>
11  </Root>'
12  ))
13  /
1 row created.
SQL> --
SQL> -- Invalid Enumeration Value
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>Z</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11     <Optional>Goodbye</Optional>
12  </Root>'
13  ))
14  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-31038: Invalid enumeration value: "Z"
SQL> --
SQL> -- MinLength Violation
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABC</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11     <Optional>Goodbye</Optional>
12  </Root>'
13  ))
14  --
15  -- MaxLength Violation
16  --
17  /
1 row created.
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>VWXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11     <Optional>Goodbye</Optional>
12  </Root>'
13  ))
14  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-30951: Element or attribute at Xpath /Root/MaxLength exceeds maximum length
SQL> --
SQL> -- Missing element Optional - Valid Document
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11  </Root>'
12  ))
13  /
1 row created.
SQL> --
SQL> -- Too many instances of 'MaxOccurs'
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MaxOccurs>3</MaxOccurs>
10     <MinOccurs>1</MinOccurs>
11     <MinOccurs>2</MinOccurs>
12     <Optional>Goodbye</Optional>
13  </Root>'
14  ))
15  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-30936: Maximum number (2) of 'MaxOccurs' XML node elements exceeded
SQL> --
SQL> -- Too few instances of 'MinOccurs'
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <Optional>Goodbye</Optional>
11  </Root>'
12  ))
13  /
1 row created.
SQL> create trigger validateSchema
  2  before insert on ROOT_TABLE
  3  for each row
  4  begin
  5     :new.object_value.schemaValidate();
  6  end;
  7  /
Trigger created.
SQL> --
SQL> -- Valid Document
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11     <Optional>Goodbye</Optional>
12  </Root>'
13  ))
14  /
1 row created.
SQL> --
SQL> -- Undefined element 'Illegal'
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Illegal>Hello World</Illegal>
  5     <Enumeration>A</Enumeration>
  6     <MinLength>ABCD</MinLength>
  7     <MaxLength>WXYZ</MaxLength>
  8     <MaxOccurs>1</MaxOccurs>
  9     <MaxOccurs>2</MaxOccurs>
10     <MinOccurs>1</MinOccurs>
11     <MinOccurs>2</MinOccurs>
12     <Optional>Goodbye</Optional>
13  </Root>'
14  ))
15  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-30937: No schema definition for 'Illegal' (namespace '##local') in parent
'/Root'
SQL> --
SQL> -- Multiple occurences of 'Optional'
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11     <Optional>Goodbye</Optional>
12     <Optional>Goodbye</Optional>
13  </Root>'
14  ))
15  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-30936: Maximum number (1) of 'Optional' XML node elements exceeded
SQL> --
SQL> -- Missing element 'Manadatory'
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Enumeration>A</Enumeration>
  4     <MinLength>ABCD</MinLength>
  5     <MaxLength>WXYZ</MaxLength>
  6     <MaxOccurs>1</MaxOccurs>
  7     <MaxOccurs>2</MaxOccurs>
  8     <MinOccurs>1</MinOccurs>
  9     <MinOccurs>2</MinOccurs>
10     <Optional>Goodbye</Optional>
11  </Root>'
12  ))
13  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-31154: invalid XML document
ORA-19202: Error occurred in XML processing
LSX-00213: only 0 occurrences of particle "Mandatory", minimum is 1
ORA-06512: at "SYS.XMLTYPE", line 345
ORA-06512: at "XDBTEST.VALIDATESCHEMA", line 2
ORA-04088: error during execution of trigger 'XDBTEST.VALIDATESCHEMA'
SQL> --
SQL> -- Invalid Enumeration Value
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>Z</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11     <Optional>Goodbye</Optional>
12  </Root>'
13  ))
14  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-31038: Invalid enumeration value: "Z"
SQL> --
SQL> -- MinLength Violation
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABC</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11     <Optional>Goodbye</Optional>
12  </Root>'
13  ))
14  --
15  -- MaxLength Violation
16  --
17  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-31154: invalid XML document
ORA-19202: Error occurred in XML processing
LSX-00221: "ABC" is too short (minimum length is 4)
ORA-06512: at "SYS.XMLTYPE", line 345
ORA-06512: at "XDBTEST.VALIDATESCHEMA", line 2
ORA-04088: error during execution of trigger 'XDBTEST.VALIDATESCHEMA'
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>VWXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11     <Optional>Goodbye</Optional>
12  </Root>'
13  ))
14  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-30951: Element or attribute at Xpath /Root/MaxLength exceeds maximum length
SQL> --
SQL> -- Missing element Optional - Valid Document
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <MinOccurs>2</MinOccurs>
11  </Root>'
12  ))
13  /
1 row created.
SQL> --
SQL> -- Too many instances of 'MaxOccurs'
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MaxOccurs>3</MaxOccurs>
10     <MinOccurs>1</MinOccurs>
11     <MinOccurs>2</MinOccurs>
12     <Optional>Goodbye</Optional>
13  </Root>'
14  ))
15  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-30936: Maximum number (2) of 'MaxOccurs' XML node elements exceeded
SQL> --
SQL> -- Too few instances of 'MinOccurs'
SQL> --
SQL> insert into ROOT_TABLE values (xmltype(
  2  '<Root>
  3     <Mandatory>Hello World</Mandatory>
  4     <Enumeration>A</Enumeration>
  5     <MinLength>ABCD</MinLength>
  6     <MaxLength>WXYZ</MaxLength>
  7     <MaxOccurs>1</MaxOccurs>
  8     <MaxOccurs>2</MaxOccurs>
  9     <MinOccurs>1</MinOccurs>
10     <Optional>Goodbye</Optional>
11  </Root>'
12  ))
13  /
insert into ROOT_TABLE values (xmltype(
ERROR at line 1:
ORA-31154: invalid XML document
ORA-19202: Error occurred in XML processing
LSX-00213: only 1 occurrences of particle "MinOccurs", minimum is 2
ORA-06512: at "SYS.XMLTYPE", line 345
ORA-06512: at "XDBTEST.VALIDATESCHEMA", line 2
ORA-04088: error during execution of trigger 'XDBTEST.VALIDATESCHEMA'
SQL>

Similar Messages

  • How we can skip project level schema validation in BPEL

    How we can skip project level schema validation in BPEL................... Because i have a requirement to send email with attachment. to send attachment i have to skip schema validation from EM console. so it will skip schema validation for all deployed application.it creates problem for other project so i want to do that thing at project level ....

    Hi
    It can be done by going opening the composite.xml in jdeveloper and than opening the properties window of the composite.There you will see a property Validate schema.Set that to no to overwrite the property set at the sever level.
    The following property gets added in the composite.xml
    <property name="validateSchema" type="xs:boolean" many="false">false</property>
    Redeploy the composite and check.
    Hope this helps!!!

  • How does Media Manager handle Motion Projects within the Sequence being cop

    How does Media Manager handle Motion Projects within the Sequence being copied?
    I've highlighted my sequence, opened Media Manager, and copied it to another drive. When I open up the sequence in it's new project, the rendered Motion Project plays within my sequence but it won't let me go back into this Motion Project to make changes. I tried starting over. This time I highlighted the actual motion sequence and clip that is created within FCP after sending something to Motion and copied those to the new drive. When I went into the newly created 'media' folder and double clicked on the motion project it launched. It looked liked it was going to play but while my crops moves and borders were there, the filmed material is shown as a freeze frame for the duration of the motion project.
    I did this with and without 'including master clips within selection'. Any advice would be appreciated. Thanks.

    Is there anyone who knows the answer to this? Thanks.

  • How does the iMac handle HD video editing?

    Tired of Window PCs, looking to buy an Apple System. I would like to do some video editing but want to make sure I get a powerful enough system from the start. How does the iMac handle HD video editing or should I look a better, faster computer?

    I have a mid 2011 iMac, 21 inch 4 GB RAM (the next to bottom iMac), Lion. I run Final Cut Express 4 with no difficulty (at least so far). It is certainly fast enough. My old G5, 7 years old, was also, and the iMac is faster.
    As I remember, I heard from someone on the Final Cut Express Discussions that some people might be having difficulty with FCE 4 on Lion, but I am a bit hazy. Its bigger brother, Final Cut Pro, is also available. I suggest that you post on the Final Cut Express or Final Cut Pro Discussion sites. They have many reliable users.

  • How does GRC CUP handle scheduled termination set up in SAP HR ?

    Dear Experts,
    We are planning to use "HR Tiggers"  for Hire, Terminate and transfer events in GRC CUP ? Can some body help me understand how does GRC CUP handle the termination requests that are scheduled in future ?
    Thanks
    Kumar

    I configured HR trigger rule for infotype 0000 & subtype Z1,field MASSN with value equal to 01 to trigger new hire...i don't see any data being populated into table /VIRSA/INT_TRIG & ?VIRSA/DATA.
    I could see the rule in table /VIRSA/RULEATTR.
    Any help would be appreciated.
    Thanks,
    Srinu

  • How does iTunes match handle music that isn't available in iTunes?

    How does iTunes match handle music that isn't available in iTunes?

    Apple - iTunes - Match
    iTunes Store: Subscribing to iTunes Match
    iTunes Match on iPhone, iPad, or iPod touch

  • How does iTunes Genius handle two libraries for the same user?

    I've been reading lately about how iTunes Genius should work. To my understanding, one of its basic principles, is absorbing usage data from users in order to create a database consisting of as much information possible. I don't expect a detailed explanation about the algorithms here. I know Apple doesn't share that kind of information (for obvious reasons) and I doubt I'd be able to understand much of it anyway. What I would like to know, though, in general terms, is how does this mechanism handle an instance like mine, where I use my Apple ID on two computers - one at home, another at work. That way, I have all my songs on both computers, so I can listen to them in either location. Obviously, each such library produces different usage data.
    Thanks in advance for any information, as I'm quite curious about it.

    Dear Fateh,
    Thanks for the reply.
    The features of this plugin are:
    Configurable timeout actions including alert, redirect, and logout
    Optional and configurable warning message
    Option to keep session alive if user isn’t truly idle. Special thanks to Martin D’Souza for a great idea on how to implement this feature.
    But it cannot stop a new session for a user, if there is an active (in my definition apex_workspace_activity_log.seconds_ago<240) session already running for that user.
    Regards,
    Deepika.

  • HT204074 How does iTunes match handle music that isn't available in iTunes?

    How does iTunes match handle music that isn't available in iTunes?

    Music in your iTunes library that isn't available at the iTunes Store is uploaded to your iCloud account.

  • How does Time Machine Handle separate Boot and User Volumes?

    I recently installed an SSD and set it up as my boot drive, and I'm using another hard drive for my Home folder, if I ever run into a scenario that I need to restore my entire system, how will Time Machine handle it?
    Will it restore my system back to the drives that they came off of?, in other words will my Boot volume be restored back to the SSD and my Home folder back to the hard drive, or will it restore everything back on the one disk it asks me to select before I click restore?

    Michael Hoover wrote:
    Ok, so if I tried to access a backup from booting with the Snow Leopard install disk I won't be able to select which volume I need to restore?
    You would restore the OSX volume via the procedure in #14 of [Time Machine - Frequently Asked Questions|http://web.me.com/pondini/Time_Machine/FAQ.html] (or use the link in *User Tips* at the top of this forum).
    You would restore the data-only volume separately, via the "Star Wars" display, per #15 in the FAQ.
    I guess I would be better off doing incremental backups with Carbon Copy Cloner on 2 partitions on the same volume.
    That would also take two separate operations to restore. (It would be a good idea to do such backups +*in addition+* to Time Machine backups, in case there's a problem with either disk drive or backup app, or a user error like erasing the wrong disk.)
    Your scenario is actually quite unlikely; you'd rarely need to restore both volumes at once. If the SSD fails, you'd only need to restore it; if the HD fails, you'd only need to restore that.
    It would get a bit more complicated if you get a new Mac, especially one with a single volume. That's one of the reasons it's a good idea to keep at least a minimal Admin account on the OSX volume.

  • How to get the handle of the Validation Failure Message Popups.

    Hi,
    I'm using Jdev 11.1.2.0
    I have added validation rule(less than system date) and failuremessage("date should not after currentdate") on the date field in EO.
    when I enter greated than the sysdate in date field in page, I'm getting validation failure message in a popup with ok button. its working good.
    but when i click on the popup ok button, the focus should go the date field again and it is higlighted.
    So, how to get the handle of the popup's ok buton? and how to highlight the datefield after clicking the popup's ok button?
    Any suggestion would be appreciated.
    thank you.

    if i understood correclty means,
    i hope that, error popup is provided by framework.. how could be possible? to catch the error popup ok button.
    am not well aware of catching the error popup which is provide by framework..
    but i had answer for your part of the question,
    if the condition go off false means you force the cursor into date field. this is can be done using 'javascript'. unless using script you can't do that. ADF doesnt provide any force focusing feature.
    please google how to focus the field.
    https://blogs.oracle.com/jdevotnharvest/entry/how_to_programmatically_set_focus
    http://technology.amis.nl/2008/01/04/adf-11g-rich-faces-focus-on-field-after-button-press-or-ppr-including-javascript-in-ppr-response-and-clientlisteners-client-side-programming-in-adf-faces-rich-client-components-part-2/
    http://lspatil25.blogspot.in/2012/04/adf-default-cursorfocus-to-input-field.html
    http://donatas.nicequestion.com/2012/04/component-to-set-initial-focus-in-adf.html

  • How does Time Machine handle large files?

    I'm relatively new at the whole Time Capsule / Time Machine process and have learned that large files (eg aperture library) are backed up each time there is a change and this can lead to the TC filling up quicker than normal.
    How does this work with daily and weekly backups?
    For example, if my aperture library is, say 1Gb and I import a load of photos from my camera and this goes up to 2Gb. I've learned that I should disable time machine while I'm in Aperture (or at least before 10.6...not sure now). So given I've done that, imported the files to Aperture but want to edit them later and ultimately move them into iPhoto to keep the Aperture album small.
    When I turn back on Time Machine, the next hourly backup will know the library has changed and will back it up, this will go on until a day backup has been taken - this deletes the 24 hourly backups? or does it merge them?
    If I then do the editing the following week, then export the photos and the library is now back to 1Gb again....backed up hourly/daily/weekly etc what am I left with??
    Do I have an original, the 2GB version and the new 1Gb version...ie 4Gb......is there a cunning way I can work to change the files within a week so only one of the changes is in the backup?

    Orpheus999 wrote:
    When I turn back on Time Machine, the next hourly backup will know the library has changed and will back it up, this will go on until a day backup has been taken - this deletes the 24 hourly backups? or does it merge them?
    The Time Machine panel of System Preferences says this:
    Time Machine keeps
    - Hourly backup for the past 24 hours
    - Daily backups for the past month
    - Weekly backups until your backup disk is full
    Each time Time Machine runs it creates what appears to be an entirely new backup set, although it does this in a way that doesn't require it to copy files that have already been copied. So merging isn't necessary. Another effect of how it operates is that each unique version of a file (as opposed to packages of files) only exists on the backup volume once.
    According to the contents of my Time Machine backup file, hourly backups are literally kept for 24 hours, not until the next "daily" backup. For a "daily" backup, it seems to keep the oldest "hourly" backup for a day.
    If I then do the editing the following week, then export the photos and the library is now back to 1Gb again....backed up hourly/daily/weekly etc what am I left with??
    Do I have an original, the 2GB version and the new 1Gb version...ie 4Gb......is there a cunning way I can work to change the files within a week so only one of the changes is in the backup?
    You might be able to exclude those files from being backed up at certain times, but I can't be sure this would result in older copied of those files being retained.

  • How does Time Machine handle multiple profiles?

    Hello,
    I have an IMac with 3 users, does time machine handle all users?
    2 users are admins, but when i change users the time machine does not handle well the external drive.
    Can you give some info in this matter.
    Thanks
    Nuno

    It should work fine. All of my machines have multiple users. What problems are you having?

  • How does LabView 8 handle Ring constants?

    Hi all,
    This is probably more for NI guys, but I am wondering how LabView 8 handles text rings?  In the past, constants dropped into a VI that are of type "enum" will be updated when the typedef is updated, however, ring text constants will not.  Has this changed in LabView 8?
    Thanks,
    Jason

    Part 1 of 2
    Hi Chris,
    Please forgive me for differing on this point but you should have written
    When a control is strictly typed it will force all  [front panel] instances to be identical to the strict type definition and update all of the text constants.
    The "strict" part only takes care of the appearence and those changes only affect instance were they are seen by a user. The strings associated with the enum do not affect block diagram constants.
    The attached image and zip illustrates that the representation of an enum and a ring a very different. An enum has the defined strings "hidden" in the wire and the numeric value can only be one of the valid indexes of the defined strings. In this example I have shown three different constructs that illustrate the fundemental difference between rings and enums.
    1) Case Structures - An enum driven case will pickup the valid choices as defined by the enum's definition. A ring does not carry this info in the wire so it is NOT possible to label the cases to match the ring. This brings up another compliation. If the case structure does not have a default case defined there must be a case for each possible selection value. The strings of an ring can be defined at run-time. Is LV supposed to re-compile the case structures code every time the ring is re-populated? In the case of an enum driven case, this is not an issue because enums that are used in a VI that is running or reserved to run can not be editied.
    2) The "Format into string" can pick-up the valid enum strings by decoding the type descriptor of the enum wire. This is not the case with a ring because the ring is just a number.
    3) The "Flatten into string" function will return the type destriptor of whatever is wired to it. The typed descriptor contents of a enum shows that every valid selection for that enum is defined in the enum wire. Please note that the type descriptor for a ring has no information about any strings.
    End of part 1 of 2
    Ben
    Message Edited by Ben on 10-15-2005 10:41 AM
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction
    Attachments:
    ring vs enum.JPG ‏78 KB

  • How does the EDB handle deleted items and why am I only able to recover some and not all previously deleted emails?

    Hello,
    I have been unable to locate information regarding how the EDB handles deleted files.  I am able to recover deleted emails from the EDB; however, there are numerous emails that I know have been deleted, that were not recovered during the recovery process.
     Is this because the EDB dumps deleted emails once it reaches a certain amount of entries?  Or is it more likely the deleted items are corrupted and thus not recoverable?  Thank you for your time and I look forward to your responses.  The
    product in question is Microsoft Exchange Server 2007.

    Great information from the other posters and one other possible explanation is if the users did a HARD DELETE.  More information on this below
    Pre-Exchange 2010 Dumpster 1.0 worked as follows;
    1. When a user does a normal delete of an item via Outlook or OWA it gets sent to your deleted items folder
    2. If the user then empties deleted items folder those items are then marked with the ptagDeletedOnFlag attribute which in essence hides them from the view of the user
    3. At this point the user can use the Recover Deleted Items function in Outlook to recover those items as long as the items were NOT purged using the Recover Deleted Items option OR the items have not passed still the deleted item retention period.
    NOTE: Every day there is a nightly maintenance process that in short looks through  the DB and examines items that have been deleted. Items that have met or exceeded the deleted item retention period are purged from the system and are
    completely non-recoverable.  More about this at the end of my post.
    4. However if the end user were to  delete an item from the Inbox or another folder in Outlook by using Shift + Delete aka a Hard Deletion the item is left in its orignal location and gets marked with the ptagDeletedOnFlag attribute which again just
    hides it from view.
    5. By default you can only use the Recover Deleted Items option on the Delted Items folder.  Howeve you can make it so that you can recover hard Deleted items from other folders.  More on that here http://support.microsoft.com/kb/246153
    5. The problem with this method though IMO is that you have to know where to look and that can be rather time consuming.
    6. If you want a more elegant method to resolve this and are open to using 3rd party utilities check out Lucid8's DigiScope. 
    http://www.lucid8.com/product/digiscope.asp which will allow you to open any offline copy of the DB from a forensic point of view and to solve your specific issue you can either turn on a filter to ONLY
    show hard deleted items OR you can search the entire store and all mailboxes for just deleted items and can then view or export them to PST or MSG format.  You can download the product and obtain a 30 day demo license which will allow you to find any
    hard deleted items, however to view them or export your would need to purchase a license.
    NOTE: When a database is backed up or copied it is an "Offline" database and then its offline the data retention period is not an issue because the nightly online maintenance process can only act on a database that is mounted on an
    Exchange server.  So for this reason if you want to recover the most data possible use offline copies/backups of the DB with a 3rd party utility like DigiScope
    NOTE 2: Exchange 2010 and 2013 use Dumpster 2.0 which is an entirely different beast and I will not go into that in this post since its nearly 1AM  however DigiScope can expose that information as well
    Search, Recover, & Extract Mailboxes, Folders, & Email Items from Offline Exchange Mailbox and Public Folder EDB's and Live Exchange Servers or Import/Migrate direct from Offline EDB to Any Production Exchange Server, even cross version i.e. 2003
    --> 2007 --> 2010 --> 2013 with Lucid8's
    DigiScope

  • How does flex builder handle permissions?

    Every time i launch flex builder it seems to for some reason
    replace my external files(asp files that gernerate xml) with older
    versions. Sometimes during work updates i make to these files stop
    occuring entirely, its as if im not able to save over or copy over
    the files, when i close flex builder and reboot i can copy the
    files from last time i backed up and work for a little while
    longer, it just started doing this. My files are in the bin
    directory with all the other files and maybe thats bad, anyways any
    advice would be great.
    leo

    leotemp wrote:
    > Every time i launch flex builder it seems to for some
    reason replace my
    > external files(asp files that gernerate xml) with older
    versions. Sometimes
    > during work updates i make to these files stop occuring
    entirely, its as if im
    > not able to save over or copy over the files, when i
    close flex builder and
    > reboot i can copy the files from last time i backed up
    and work for a little
    > while longer, it just started doing this. My files are
    in the bin directory
    > with all the other files and maybe thats bad, anyways
    any advice would be great.
    >
    > leo
    >
    When you compile and run a flex application in flex builder
    we copy over
    all the included files to the bin folder. Do you have copies
    of the
    generated xml files in your project? If so, then the ones in
    the bin
    folder will get overwritten.
    winsha

Maybe you are looking for

  • Asset Down Payment - Error code: . AA 834

    Hi , I am getting below error while doing F-48 Asset down payment entry. You cannot use this transaction type to post to this asset Message no. AA 834 Diagnosis The transaction type entered belomgs to transaction type group 15. It has been specified

  • Java printing taking too much time

    Hi all I am trying to print whole JFrame but in the printer job the document size is 366 MB. I do not why it is so large to print ??? JFrame contains a panel and other GUI components like JTable and JLables. Here is the working code for this: private

  • How do I ping a URL in Java?

    All I wanna do it ping a URL. Can I do it? Like, have the user input a URL, then make the URL object, then ping it, then display the results. Can I do this?

  • Is this PSU powerful enough?

    Hello, New member here.. I have just built a system composing of the following: ZORRO 865W SCORPIO (SILVER) K8T NEO FISR2 (BIOS 1.4) AMD64 3200+ CREATIVE AUDIGY 2 HIGHTECH RADEON 9800 PRO CORSAIR TWINX-XMS3700 (1GB) SONY DVD-ROM PIONEER DVR 106D Is t

  • I moved songs within my iTunes media folder and now my iPod can't find them

    Hello.  I have a few albums in my iTunes library that organize the artists by such folders as Artist feat. So-and-So.  This makes it difficult to scroll through artists on my iPod and in my car.  So I moved those songs that are in those folders to th