OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

sdd message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: JSDL and CDL document example


Hi all,

During Monday meeting, I took an action item to provide
sample JSDL and CDDLM documents.

Attached are simple examples for your review.

(1) JSDL document (by Chris Smith of Platform Computing)
This document is for BLAST (Basic Local Alignment Search Tool)
application submission. BLAST is an algorithm for comparing biological
sequences, such as the amino-acid sequences of different proteins or the 
DNA sequences. This document corresponds to a following POSIX command
line.

blastall  -p blastn  -d est  -T T

You can find manual page for this command at:
http://www.rcc.uga.edu/applications/bioinformatics/ncbiblast2210/blastall.html

(2) CDL document (from XML-CDL specification appendix B)
This document is for two-tier application (DB + Web)
deployment.
- component-model-example.xml is a template for "Component."
- webapp-template.xml is a template for two-tier application
   "WebApp."
- webapp-deploy.xml is a actual CDL document for deployment.

- webapp-deploy-resolved.xml is reference resolved version of
   webapp-deploy.xml. Both documents has the same meanings.

Hope it helps,
-- 
Hiro Kishimoto
<?xml version="1.0" encoding="UTF-8"?>
<jsdl:JobDefinition 
xmlns:jsdl="http://schemas.ggf.org/jsdl/2005/11/jsdl";
xmlns:jsdl-posix="http://schemas.ggf.org/jsdl/2005/11/jsdl-posix";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
  xsi:schemaLocation="http://schemas.ggf.org/jsdl/2005/11/jsdl jsdl.xsd
http://schemas.ggf.org/jsdl/2005/11/jsdl-posix jsdl-posix.xsd">
  <jsdl:JobDescription>
    <jsdl:JobIdentification>
      <jsdl:JobName>Blast1</jsdl:JobName>
      <jsdl:Description>Blast query number 1</jsdl:Description>
      <jsdl:JobAnnotation>Blast1Annotation</jsdl:JobAnnotation>
      <jsdl:JobProject>BlastProject</jsdl:JobProject>
    </jsdl:JobIdentification>
    <jsdl:Application>
      <jsdl:ApplicationName>BlastN</jsdl:ApplicationName>
      <jsdl:ApplicationVersion>NCBI BLAST 2.2.13</jsdl:ApplicationVersion>
      <jsdl:Description>BlastN performs nucleotide similarity
searching</jsdl:Description>
      <jsdl-posix:POSIXApplication>
        <jsdl-posix:Executable>/usr/local/bin/blastall</jsdl-posix:Executable>
        <jsdl-posix:Argument>-p</jsdl-posix:Argument>
        <jsdl-posix:Argument>blastn</jsdl-posix:Argument>
        <jsdl-posix:Argument>-d</jsdl-posix:Argument>
        <jsdl-posix:Argument>est</jsdl-posix:Argument>
        <jsdl-posix:Argument>-T</jsdl-posix:Argument>
        <jsdl-posix:Argument>T</jsdl-posix:Argument>
        <jsdl-posix:Input
filesystemName="HOME">sequences1.txt</jsdl-posix:Input>
        <jsdl-posix:Output
filesystemName="HOME">sequences1.html</jsdl-posix:Output>
        <jsdl-posix:Error
filesystemName="HOME">sequences1.err</jsdl-posix:Error>
        <jsdl-posix:WorkingDirectory
filesystemName="HOME">blastqueries</jsdl-posix:WorkingDirectory>
        <jsdl-posix:Environment
name="PATH">/usr/bin:/usr/local/bin:/usr/local/bio/bin</jsdl-posix:Environment>
        <jsdl-posix:Environment name="TMPDIR" filesystemName="TMP"/>
        <jsdl-posix:WallTimeLimit>60</jsdl-posix:WallTimeLimit>
        <jsdl-posix:FileSizeLimit>1073741824</jsdl-posix:FileSizeLimit>
        <jsdl-posix:CoreDumpLimit>0</jsdl-posix:CoreDumpLimit>
        <jsdl-posix:DataSegmentLimit>32768</jsdl-posix:DataSegmentLimit>
        <jsdl-posix:LockedMemoryLimit>8388608</jsdl-posix:LockedMemoryLimit>
        <jsdl-posix:MemoryLimit>67108864</jsdl-posix:MemoryLimit>
        <jsdl-posix:OpenDescriptorsLimit>16</jsdl-posix:OpenDescriptorsLimit>
        <jsdl-posix:PipeSizeLimit>512</jsdl-posix:PipeSizeLimit>
        <jsdl-posix:StackSizeLimit>1048576</jsdl-posix:StackSizeLimit>
        <jsdl-posix:CPUTimeLimit>30</jsdl-posix:CPUTimeLimit>
        <jsdl-posix:ProcessCountLimit>8</jsdl-posix:ProcessCountLimit>
        <jsdl-posix:VirtualMemoryLimit>134217728</jsdl-posix:VirtualMemoryLimit>
        <jsdl-posix:ThreadCountLimit>8</jsdl-posix:ThreadCountLimit>
        <jsdl-posix:UserName>csmith</jsdl-posix:UserName>
        <jsdl-posix:GroupName>bio</jsdl-posix:GroupName>
      </jsdl-posix:POSIXApplication>
    </jsdl:Application>
    <jsdl:Resources>
      <jsdl:CandidateHosts>
        <jsdl:HostName>cluster1</jsdl:HostName>
        <jsdl:HostName>cluster2</jsdl:HostName>
      </jsdl:CandidateHosts>
      <jsdl:FileSystem name="TMP">
        <jsdl:FileSystemType>temporary</jsdl:FileSystemType>
        <jsdl:Description>
          Temporary space that does not necessarily persist after the job
          terminates and which might not be shared between resources, but 
          which will be fast.
        </jsdl:Description>
        <jsdl:DiskSpace>
          <jsdl:LowerBoundedRange>10737418240.0</jsdl:LowerBoundedRange>
        </jsdl:DiskSpace>
      </jsdl:FileSystem>
      <jsdl:FileSystem name="HOME">
        <jsdl:FileSystemType>normal</jsdl:FileSystemType>
        <jsdl:Description>Chris's home directory</jsdl:Description>
        <jsdl:MountPoint>/home/csmith</jsdl:MountPoint>
      </jsdl:FileSystem>
      <jsdl:ExclusiveExecution>true</jsdl:ExclusiveExecution>
      <jsdl:OperatingSystem>
        <jsdl:OperatingSystemType>
          <jsdl:OperatingSystemName>MACOS</jsdl:OperatingSystemName>
        </jsdl:OperatingSystemType>
        <jsdl:OperatingSystemVersion>10.4.4</jsdl:OperatingSystemVersion>
        <jsdl:Description>Mac OS version 10.4.x</jsdl:Description>
      </jsdl:OperatingSystem>
      <jsdl:CPUArchitecture>
        <jsdl:CPUArchitectureName>powerpc</jsdl:CPUArchitectureName>
      </jsdl:CPUArchitecture>
      <jsdl:IndividualCPUSpeed>
        <jsdl:LowerBoundedRange>2147483648.0</jsdl:LowerBoundedRange>
      </jsdl:IndividualCPUSpeed>
      <jsdl:IndividualCPUTime>
        <jsdl:UpperBoundedRange>60.0</jsdl:UpperBoundedRange>
      </jsdl:IndividualCPUTime>
      <jsdl:IndividualCPUCount>
        <jsdl:Exact>2.0</jsdl:Exact>
      </jsdl:IndividualCPUCount>
      <jsdl:IndividualNetworkBandwidth>
        <jsdl:LowerBoundedRange>104857600.0</jsdl:LowerBoundedRange>
      </jsdl:IndividualNetworkBandwidth>
      <jsdl:IndividualPhysicalMemory>
        <jsdl:LowerBoundedRange>1073741824.0</jsdl:LowerBoundedRange>
      </jsdl:IndividualPhysicalMemory>
      <jsdl:IndividualVirtualMemory>
        <jsdl:LowerBoundedRange>1073741824.0</jsdl:LowerBoundedRange>
      </jsdl:IndividualVirtualMemory>
      <jsdl:IndividualDiskSpace>
        <jsdl:LowerBoundedRange>1073741824.0</jsdl:LowerBoundedRange>
      </jsdl:IndividualDiskSpace>
      <jsdl:TotalCPUTime>
        <jsdl:UpperBoundedRange>600.0</jsdl:UpperBoundedRange>
      </jsdl:TotalCPUTime>
      <jsdl:TotalCPUCount>
        <jsdl:Exact>10.0</jsdl:Exact>
      </jsdl:TotalCPUCount>
      <jsdl:TotalPhysicalMemory>
        <jsdl:LowerBoundedRange>10737418240.0</jsdl:LowerBoundedRange>
      </jsdl:TotalPhysicalMemory>
      <jsdl:TotalVirtualMemory>
        <jsdl:LowerBoundedRange>10737418240.0</jsdl:LowerBoundedRange>
      </jsdl:TotalVirtualMemory>
      <jsdl:TotalDiskSpace>
        <jsdl:LowerBoundedRange>10737418240.0</jsdl:LowerBoundedRange>
      </jsdl:TotalDiskSpace>
      <jsdl:TotalResourceCount>
        <jsdl:Exact>5.0</jsdl:Exact>
      </jsdl:TotalResourceCount>
    </jsdl:Resources>
    <jsdl:DataStaging>
      <jsdl:FileName>blastqueries/sequences1.txt</jsdl:FileName>
      <jsdl:FilesystemName>HOME</jsdl:FilesystemName>
      <jsdl:CreationFlag>overwrite</jsdl:CreationFlag>
      <jsdl:Source>
        <jsdl:URI>file:/Users/csmith/blastqueries/sequences1.txt</jsdl:URI>
      </jsdl:Source>
    </jsdl:DataStaging>
    <jsdl:DataStaging>
      <jsdl:FileName>blastqueries/sequences1.html</jsdl:FileName>
      <jsdl:FilesystemName>HOME</jsdl:FilesystemName>
      <jsdl:CreationFlag>overwrite</jsdl:CreationFlag>
      <jsdl:Target>
        <jsdl:URI>file:/Users/csmith/blastqueries/sequences1.html</jsdl:URI>
      </jsdl:Target>
    </jsdl:DataStaging>
    <jsdl:DataStaging>
      <jsdl:FileName>blastqueries/sequences1.err</jsdl:FileName>
      <jsdl:FilesystemName>HOME</jsdl:FilesystemName>
      <jsdl:CreationFlag>append</jsdl:CreationFlag>
      <jsdl:Target>
        <jsdl:URI>file:/Users/csmith/blastqueries/sequences1.err</jsdl:URI>
      </jsdl:Target>
    </jsdl:DataStaging>
  </jsdl:JobDescription>
</jsdl:JobDefinition>
<?xml version="1.0" encoding="UTF-8"?>
<cdl:cdl
    targetNamespace="http://cddlm.org/component-model-example";
    xmlns="http://cddlm.org/component-model-example";
    xmlns:cdl="http://www.gridforum.org/namespaces/2005/02/cddlm/CDL-1.0";
    xmlns:cmp="http://www.gridforum.org/cddlm/components/2005/02";
    xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
<cdl:configuration>
<Component>
    <cmp:CodeBase cdl:type="xsd:anyURI"/>
    <cmp:CommandPath cdl:type="cmp:commandPathType"/>
</Component>
<Compound cdl:extends="Component">
    <cmp:CommandPath>com.example.cddlm.Compound</cmp:CommandPath>
    <cmp:Delegate/>
</Compound>
</cdl:configuration>
</cdl:cdl>
<cdl:cdl
    targetNamespace="http://example.org/webapp-template";
    xmlns="http://example.org/webapp-template";
    xmlns:cdl="http://www.gridforum.org/namespaces/2005/02/cddlm/CDL-1.0";
    xmlns:cmp="http://www.gridforum.org/cddlm/components/2005/02";
    xmlns:xsd="http://www.w3.org/2001/XMLSchema";
    xmlns:c="http://cddlm.org/component-model-example";>
<cdl:configuration>
    <DBConnection>
        <JNDIName/>
        <hostname/>
        <port/>
        <username/>
        <password/>
    </DBConnection>
    <WebServer cdl:extends="c:Component">
        <cmp:CommandPath>com.example.cddlm.WebServer</cmp:CommandPath>
        <application cdl:type="xsd:anyURI"/>
        <applicationPath cdl:type="xsd:string"/>
        <hostname cdl:lazy="true"/>
        <port>8080</port>
        <dbconnection cdl:extends="DBConnection"/>
</WebServer>
<DBServer cdl:extends="c:Component">
        <cmp:CommandPath>com.example.cddlm.DBServer</cmp:CommandPath>
        <data cdl:type="xsd:anyURI"/>
        <hostname cdl:lazy="true"/>
        <port>3306</port>
        <username/>
        <password/>
</DBServer>

<WebApp cdl:extends="c:Compound">
    <cmp:sequence lifecycle="initialization">true</cmp:sequence>
    <cmp:sequence lifecycle="execution">true</cmp:sequence>
    <cmp:reverse lifecycle="termination">true</cmp:reverse>
    <application/>
    <applicationPath/>
    <dbname/>
    <data/>
    <dbuser/>
    <dbpassword/>
    <DB cdl:extends="DBServer">
        <cmp:CodeBase cdl:ref="/data"/>
        <username cdl:ref="/dbuser"/>
        <password cdl:ref="/dbpassword"/>
    </DB>
    <Web cdl:extends="WebServer">
        <cmp:CodeBase cdl:ref="/application"/>
        <applicationPath cdl:ref="/applicationPath"/>
        <dbconnection cdl:extends="DBConnection">
            <JNDIName cdl:ref="/dbname"/>
            <hostname cdl:ref="/DB/hostname"/>
            <port cdl:ref="/DB/port"/>
            <username cdl:ref="/DB/username"/>
            <password cdl:ref="/DB/password"/>
        </dbconnection>
    </Web>
</WebApp>

</cdl:configuration>
</cdl:cdl>
<?xml version="1.0" encoding="UTF-8"?>
<cdl:cdl
    targetNamespace="http://example.org/webapp-deploy";
    xmlns="http://example.org/webapp-deploy";
    xmlns:t="http://example.org/webapp-template";
    xmlns:cdl="http://www.gridforum.org/namespaces/2005/02/cddlm/CDL-1.0";>
<cdl:system>
    <WebApplication cdl:extends="t:WebApp">
        <t:application>http://repository.org/test.war</t:application>
        <t:applicationPath>/test</t:applicationPath>
        <t:dbname>jdbc/Test</t:dbname>
        <t:data>http://repository.org/db.zip</t:data>
        <t:dbuser>myapp</t:dbuser>
        <t:dbpassword>pass</t:dbpassword>
    </WebApplication>
</cdl:system>
</cdl:cdl>
<?xml version="1.0" encoding="UTF-8"?>
<cdl:cdl
    targetNamespace="http://example.org/webapp-deploy";
    xmlns="http://example.org/webapp-deploy";
    xmlns:t="http://example.org/webapp-template";
    xmlns:cdl="http://www.gridforum.org/namespaces/2005/02/cddlm/CDL-1.0";
    xmlns:cmp="http://www.gridforum.org/cddlm/components/2005/02";
    xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
<cdl:system>
<WebApplication>
    <cmp:CodeBase/>
    <cmp:CommandPath cdl:type="cmp:commandPathType">
        com.example.cddlm.Compound</cmp:CommandPath>
    <cmp:Delegate/>
    <cmp:sequence lifecycle="initialization">true</cmp:sequence>
    <cmp:sequence lifecycle="execution">true</cmp:sequence>
    <cmp:reverse lifecycle="termination">true</cmp:reverse>
    <t:application>http://repository.org/test.war</t:application>
    <t:applicationPath>/test</t:applicationPath>
    <t:dbname>jdbc/Test</t:dbname>
    <t:data>http://repository.org/db.zip</t:data>
    <t:dbuser>myapp</t:dbuser>
    <t:dbpassword>pass</t:dbpassword>
    <t:DB>
        <cmp:CodeBase cdl:type="xsd:anyURI">
            http://repository.org/db.zip</cmp:CodeBase>
        <cmp:CommandPath cdl:type="cmp:commandPathType">
            com.example.cddlm.DBServer</cmp:CommandPath>
        <t:hostname cdl:lazy="true"/>
        <t:port>3306</t:port>
        <t:username>myapp</t:username>
        <t:password>pass</t:password>
    </t:DB>
    <t:Web>
        <cmp:CodeBase cdl:type="xsd:anyURI">
            http://repository.org/test.war</cmp:CodeBase>
        <cmp:CommandPath cdl:type="cmp:commandPathType">
            com.example.cddlm.WebServer</cmp:CommandPath>
        <t:applicationPath cdl:type="xsd:string">/test</t:applicationPath>
        <t:hostname cdl:lazy="true"/>
        <t:port>8080</t:port>
        <t:dbconnection>
            <t:JNDIName>jdbc/Test</t:JNDIName>
            <t:hostname cdl:ref="../../t:DB/t:hostname"/>
            <t:port>3306</t:port>
            <t:username>myapp</t:username>
            <t:password>pass</t:password>
        </t:dbconnection>
    </t:Web>
</WebApplication>
</cdl:system>
</cdl:cdl>


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]