Question


Areteans
AU
Last activity: 28 Nov 2016 0:42 EST
Is there any alternative to refer sub XSD's?
Hi Team,
I have a main XSD which includes 83 sub XSD's using INCLUDE tag.
To upload into PRPC using Connector and Metadata wizard, we are allowed only to upload one XSD.
Right now, i am copying all the sub XSD's into main XSD and executing the wizard (Not facing any issue).
But i wanted to know, is there any other alternative way to refer the included xsd's rather than copying them into one main xsd?
Thanks,
Divya Sri Padarthy
-
Like (0)
-
Share this page Facebook Twitter LinkedIn Email Copying... Copied!
Accepted Solution


CGI Netherlands
NL
Hi Divya,
This is what we did in our project. You may need help from application server team to accomplish this task.
First create a folder in your WAS server and put all the XSD files in that folder. Then expose them as a directory link using a command and give full permissions to that directory so that PEGA can able to access the link. Sample as follows,
Create a folder names test1 under WAS directory and copy the files /appl/inv/acpt/was/test1
Then create a link using this command Alias /test1 /appl/inv/acpt/was/test1
Then give permissions using this command
<Directory "/appl/inv/acpt/was/test1">
Options +Indexes FollowSymLinks +ExecCGI
AllowOverride all
Order allow,deny
Allow from all
</Directory>
Now you can access the files using the link http://hostname:portnumber/test1 or http://servername.domainname:portnumber/test1 http or https depending on your server.


CGI Netherlands
NL
Hi Divya,
Copy all the XSD files in one directory and upload it in a link which is accessible to your PRPC. Instead of Uploading the XSD document you can use Document URL option and give the link of your main XSD document. This way PEGA will automatically include all the sub XSD's. Hope this helps!


Areteans
AU
Hi Prakash,
I am not sure how to refer an directory in XSD file.
It would be great if you provide me an example.
Thanks,
Divya Sri Padarthy


PEG
IN
Hi Divya Sri,
You can refer the child xsd's in parent xsd. No need to copy all the contect of child xsd's to parent xsd. Parent xsd should have reference of child xsd so that at run time of consuming the xsd to PRPC application child xsd's will get pick up.
Example:
Hi Divya Sri,
You can refer the child xsd's in parent xsd. No need to copy all the contect of child xsd's to parent xsd. Parent xsd should have reference of child xsd so that at run time of consuming the xsd to PRPC application child xsd's will get pick up.
Example:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3schools.com/schema">
<xs:include schemaLocation="http://www.w3schools.com/xml/customer.xsd"/>
<xs:include schemaLocation="http://www.w3schools.com/xml/company.xsd"/>


Areteans
AU
Hi Gangababu,
I have tried this, but it is not working.
Do you have any other alternative?
Thanks,
Divya Sri Padarthy


PEG
IN
one thing I could think of is copy all the xsd's into one folder as mentioned by @krishnaprakash and place the folder in server directory and try to access the the main xsd using url like below
http:hostname:portnumber/main.xsd
And include child xsd's into main xsd and access the url in PRPC Connector&Metadata wizard.


Areteans
AU
Hi Gangababu,
You are referring to server directory i.e., directory maintained by PRPC?
Thanks,
Divya Sri Padarthy
Accepted Solution


CGI Netherlands
NL
Hi Divya,
This is what we did in our project. You may need help from application server team to accomplish this task.
First create a folder in your WAS server and put all the XSD files in that folder. Then expose them as a directory link using a command and give full permissions to that directory so that PEGA can able to access the link. Sample as follows,
Create a folder names test1 under WAS directory and copy the files /appl/inv/acpt/was/test1
Then create a link using this command Alias /test1 /appl/inv/acpt/was/test1
Then give permissions using this command
<Directory "/appl/inv/acpt/was/test1">
Options +Indexes FollowSymLinks +ExecCGI
AllowOverride all
Order allow,deny
Allow from all
</Directory>
Now you can access the files using the link http://hostname:portnumber/test1 or http://servername.domainname:portnumber/test1 http or https depending on your server.


Areteans
AU
Hi Prakash,
Thanks for the clear explanation.
I will try this and let you know if i have any issue.
Thanks,
Divya Sri Padarthy