Alert.png The wiki is deprecated and due to be decommissioned by the end of September 2022.
The content is being migrated to other supports, new updates will be ignored and lost.
If needed you can get in touch with EGI SDIS team using operations @ egi.eu.

Difference between revisions of "EGI-InSPIRE:NRMS New Release MetaDATA schema"

From EGIWiki
Jump to navigation Jump to search
Line 3: Line 3:
This provides the software provider with a way to define the packages in a release, along with the release metadata. A full example follows:
This provides the software provider with a way to define the packages in a release, along with the release metadata. A full example follows:


== Minimal Example ==
A minimal XML file can be uploaded as well, but in this case a synchronization URL is required. It is implied that all packages are contained at this URL, so that the repository can fetch them:
<pre>
<Release>
    <Name>glite</Name>
    <SoftwareProvider>EMI</SoftwareProvider>
    <SoftwareComponent>glite3.2</SoftwareComponent>
    <Contact>eangelou@cslab.ntua.gr</Contact>
    <Description>Yet another glite release</Description> 
    <Keywords>gLite</Keywords>
    <DocumentationLinks>http://www.cslab.ece.ntua.gr http://www.egi.eu<DocumentationLinks>
    <Date>21/6/2010</Date>
    <Version>3.2</Version>
    <ReleaseNotes>Release Notes Text</ReleaseNotes>
    <ChangeLog>Change Log Text</ChangeLog>
    <SynchProtocol>ftp</SynchProtocol>
    <SynchURL>ftp://repository.egi.eu/~eangelou/myfiles/</SynchURL>
</Release>
</pre>


== Full Example ==
== Full Example ==
Line 79: Line 98:


</Package>
</Package>
</Release>
</pre>
== Minimal Example ==
A minimal XML file can be uploaded as well, but in this case a synchronization URL is required. It is implied that all packages are contained at this URL, so that the repository can fetch them:
<pre>
<Release>
    <Name>glite</Name>
    <SoftwareProvider>EMI</SoftwareProvider>
    <SoftwareComponent>glite3.2</SoftwareComponent>
    <Contact>eangelou@cslab.ntua.gr</Contact>
    <Description>Yet another glite release</Description> 
    <Keywords>gLite</Keywords>
    <DocumentationLinks>http://www.cslab.ece.ntua.gr http://www.egi.eu<DocumentationLinks>
    <Date>21/6/2010</Date>
    <Version>3.2</Version>
    <ReleaseNotes>Release Notes Text</ReleaseNotes>
    <ChangeLog>Change Log Text</ChangeLog>
    <SynchProtocol>ftp</SynchProtocol>
    <SynchURL>ftp://repository.egi.eu/~eangelou/myfiles/</SynchURL>
</Release>
</Release>
</pre>
</pre>

Revision as of 11:41, 22 September 2010

Schema definition

This document described the definition of the XML file that should be provided to the UMD repo in order to update it, using metadata collected by the RT from the software providers. This provides the software provider with a way to define the packages in a release, along with the release metadata. A full example follows:

Minimal Example

A minimal XML file can be uploaded as well, but in this case a synchronization URL is required. It is implied that all packages are contained at this URL, so that the repository can fetch them:

<Release>
    <Name>glite</Name>
    <SoftwareProvider>EMI</SoftwareProvider>
    <SoftwareComponent>glite3.2</SoftwareComponent>
    <Contact>eangelou@cslab.ntua.gr</Contact>
    <Description>Yet another glite release</Description>  
    <Keywords>gLite</Keywords>
    <DocumentationLinks>http://www.cslab.ece.ntua.gr http://www.egi.eu<DocumentationLinks>
    <Date>21/6/2010</Date>
    <Version>3.2</Version>
    <ReleaseNotes>Release Notes Text</ReleaseNotes>
    <ChangeLog>Change Log Text</ChangeLog>
    <SynchProtocol>ftp</SynchProtocol>
    <SynchURL>ftp://repository.egi.eu/~eangelou/myfiles/</SynchURL>
</Release>

Full Example

<Release>
    <Name>glite</Name>
    <SoftwareProvider>EMI</SoftwareProvider>
    <SoftwareComponent>glite3.2</SoftwareComponent>
    <Contact>eangelou@cslab.ntua.gr</Contact>
    <Description>Yet another glite release</Description>   

<Keywords>gLite</Keywords>

<DocumentationLinks>http://www.cslab.ece.ntua.gr http://www.egi.eu<DocumentationLinks>
    <Date>21/6/2010</Date>
    <Version>3.2</Version>

<Package>
        <Name>glite-WN-manpages</Name>
        <Type>Virtual</Type
        <Creator>eangelou</Creator>
        <Contact>eangelou@cslab.ntua.gr</Contact>

    <Description>Provides glite-WN with manpages for the appropriate tools</Description>
        <SLDType>community</SLDType>
        <License>GPL v.3</License>

    <Keywords>gLite gLite-WN man manpages</Keywords>

    <SupportedPlatforms>SL5</SupportedPlatforms>

    <Architecture>any</Architecture>
        <DocumentationLinks>http://www.cslab.ece.ntua.gr http://www.egi.eu<DocumentationLinks>
        <Date>21/6/2010</Date>

    <Version>3.2.1</Version>

<ReleaseNotesURL>http://www.cslab.ece.ntua.gr</ReleaseNotesURL>
        <ChangeLogURL>http://www.cslab.ece.ntua.gr</ChangeLogURL>

<RepositoryURL>http://repository.egi.eu/</RepositoryURL>

<DocumentationURL>http://www.cslab.ece.ntua.gr</DocumentationURL>
    <Dependencies>glite-WN-manpages-3.2.15 manpages</Dependencies>

</Package>

<Package>
        <Name>glite-WN-manpages</Name>
        <Type>Physical</Type>
        <Creator>eangelou</Creator>
        <Contact>eangelou@cslab.ntua.gr</Contact>
        <Description>Provides glite-WN with manpages for the appropriate tools</Description>
        <SLDType>community</SLDType>
        <License>GPL v.3</License>
        <Keywords>gLite gLite-WN man manpages</Keywords>
        <SupportedPlatforms>SL5</SupportedPlatforms>
        <Architecture>any</Architecture>
        <DocumentationLinks>http://www.cslab.ece.ntua.gr http://www.egi.eu<DocumentationLinks>
        <Date>21/6/2010</Date>
        <Version>3.2.15</Version>

<ReleaseNotes>This is a new release that adds features X and Y</ReleaseNotes>
        <ChangeLog>Added features X and Y, fixed bug Z (http://bug.tracker.eu)</ChangeLog>

<RsyncURL>ftp://www.cslab.ece.ntua.gr/</RsyncURL>
        <Method>apt</Method>

<DocumentationURL>http://www.cslab.ece.ntua.gr</DocumentationURL>

<Category>WN</Category>
        <ServicesAffected>gLite-WN</ServicesAffected>

<Dependencies>manpages</Dependencies>

</Package>
</Release>

DTD Example

An example DTD governing these XML files follows:

<!DOCTYPE repository [
<!ELEMENT Release ( Name, SoftwareProvider, SoftwareComponent, Contact, Description, Keywords, DocumentationLinks, Date, Version, SynchProtocol, SynchURL, Package* ) >
  <!ELEMENT Name ( #PCDATA) >
  <!ELEMENT SoftwareProvider ( #PCDATA) >
  <!ELEMENT SoftwareComponent ( #PCDATA) >
  <!ELEMENT Contact ( #PCDATA) >
  <!ELEMENT Description ( #PCDATA) >
  <!ELEMENT Keywords ( #PCDATA) >
  <!ELEMENT DocumentationLinks ( #PCDATA) >
  <!ELEMENT Date ( #PCDATA) >
  <!ELEMENT Version ( #PCDATA) >
  <!ATTLIST SynchProtocol reply ( http| ftp | rsync | sftp ) "http" >
  <!ELEMENT SynchURL ( #PCDATA) >

<!ELEMENT Package ( Name, Type, Creator, Contact, Description, SLDType, License, Keywords, SupportedPlatforms, Architecture, DocumentationLinks, Date, Version, ReleaseNotes, ChangeLog, RsyncURL, Method, DocumentationURL, Category, ServicesAffected, Dependencies ) >
  <!ELEMENT Name ( #PCDATA) >
  <!ELEMENT Type ( #PCDATA) >
  <!ELEMENT Creator ( #PCDATA) >
  <!ELEMENT Contact ( #PCDATA) >
  <!ELEMENT Description ( #PCDATA) >
  <!ATTLIST SLDType reply ( supported| community | component) "community" >
  <!ELEMENT License ( #PCDATA) >
  <!ELEMENT Keywords ( #PCDATA) >
  <!ELEMENT SupportedPlatforms ( #PCDATA) >
  <!ELEMENT Architecture ( #PCDATA) >
  <!ELEMENT DocumentationLinks ( #PCDATA) >
  <!ELEMENT Date ( #PCDATA) >
  <!ELEMENT Version ( #PCDATA) >
  <!ELEMENT ReleaseNotes ( #PCDATA) >
  <!ELEMENT ChangeLog ( #PCDATA) >
  <!ELEMENT RsyncURL ( #PCDATA) >
  <!ELEMENT Method ( #PCDATA) >
  <!ELEMENT DocumentationURL ( #PCDATA) >
  <!ELEMENT Category ( #PCDATA) >
  <!ELEMENT ServicesAffected ( #PCDATA) >
  <!ELEMENT Dependencies ( #PCDATA) >
]>