xmlschemas

Hi,

  In the definition of a table i see this definition for a column.  

  The URL part of this definition means that for any insert/select/update/delete on this column it will need to go online to the internet ?

  So any DML operation on this table will take more time that usual because it has to go online  to this internet URL ?

  What does this part of URL means in the table definition ?

 

  ) XMLTYPE COLUMN "ADT_ADF_INFO" STORE AS CLOB  (
  TABLESPACE "my_tablespace" ENABLE STORAGE IN ROW CHUNK 8192 PCTVERSION 10
  NOCACHE LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT))
 XMLSCHEMA "http://url_web.com" ELEMENT "AuditTrail" ID 3288
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
  TABLESPACE "my_tablespace"
  PARALLEL 4 ;
LVL 1
joe_echavarriaDatabase AdministratorAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

sdstuberCommented:
No

XMLSCHEMA clause forces your XMLTYPE column to be validated against the url_web.com schema you have registered using the DBMS_XMLSCHEMA package

There is a lot to this topic, far more than the scope of a single question.
I suggest reading up on it, starting in the following resources:


PL/SQL packages and types reference
http://docs.oracle.com/cd/E11882_01/appdev.112/e25788/d_xmlsch.htm#i1008494

xml db developers guide
http://docs.oracle.com/cd/E11882_01/appdev.112/e23094/xdb05sto.htm#g1070409
joe_echavarriaDatabase AdministratorAuthor Commented:
So it does not connect to the internet at any time  during any database operation ?
sdstuberCommented:
there will be no internet connection based on what you have posted above.

there could be triggers or other procedural steps that could create connections though.
Determine the Perfect Price for Your IT Services

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden with our free interactive tool and use it to determine the right price for your IT services. Download your free eBook now!

joe_echavarriaDatabase AdministratorAuthor Commented:
The URL i posted was " http://url_web.com ", which is not a valid one.

The original table definition has a valid url.  Having a valid URL does it means will need to connect to the internet for any DML operation ?
sdstuberCommented:
no
joe_echavarriaDatabase AdministratorAuthor Commented:
Thanks, i just wanted to confirm that.

Because the server on which the database will be installed won't have internet access.
sdstuberCommented:
>> the server on which the database will be installed won't have internet access.

that makes it really easy to confirm.  Just try it.
if it needed internet access it would fail.
joe_echavarriaDatabase AdministratorAuthor Commented:
What happens is that any dml operation on that table always takes too much time, and i was telling it was because it has to go to the internet and connect to that url.

I wanted to be sure before.
slightwv (䄆 Netminder) Commented:
>>and i was telling it was because it has to go to the internet and connect to that url.

I suppose it is possible.  I've never tried this but there is a version or REGISTERSHCHEMA that accepts a URIType for the schema doc.

Look in DBA_XML_SCHEMAS for the registered schema to see if it is local to the database.
sdstuberCommented:
>>and i was telling it was because it has to go to the internet and connect to that url.

I suppose it is possible.


No, it's not....

http://docs.oracle.com/cd/E11882_01/appdev.112/e23094/xdb05sto.htm#i1031977

Registering an XML Schema with Oracle XML DB

The main parameters to procedure DBMS_XMLSCHEMA.registerSchema are these:

    SCHEMAURL – the XML schema URL. This is a unique identifier for the XML schema within Oracle XML DB. It is conventionally in the form of a URL, but this is not a requirement. The XML schema URL is used with Oracle XML DB to identify instance documents, by making the schema location hint identical to the XML schema URL. Oracle XML DB never tries to access a Web server identified by the specified URL.
sdstuberCommented:
I will repeat my caveat from above though.

If you have something other than dml against the table, (triggers or other procedural logic) then those processes "might" try to connect.  But those processes wouldn't have any technical correlation to the xdb schema registration
sdstuberCommented:
Just to clarify on comments above.  I had originally misunderstood what slightwv was trying to say.

I thought he was referring to uri columns on the table,  not the uri version of the registersschema procedure.  (Yes, I know he was pretty explicit about it, but I still somehow misread it.)

If you want to dothat, you should actually call registeruri, and let it invoke the corresponding registerschema procedure for you.

If you do this, then your are telling Oracle to go retrieve a remote (i.e. across the internet) schema document and store it locally in your xdb repository.

Once the schema doc is stored, then, just like any other registered schema, there is no internet access required.  If you already have a registered schema, then none of this applies.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Oracle Database

From novice to tech pro — start learning today.