Svoboda | Graniru | BBC Russia | Golosameriki | Facebook
This schema specifies the structure for the two separate XML documents required for participation in Europe PMC's External Links Service: one that contains basic information about the provider of links (with a <providers> root element) and another that contains the links (with a <links> root element.) Changelog: v1.0 (2013-07-09): First release v1.1 (2013-11-04): Fixes to allow leading and trailing whitespace in string values v1.2 (2014-03-18): Added the ability to identify Europe PMC records by DOI v1.3 (2015-06-08): Made the doi regex less restrictive v1.4 (2016-04-22): Added image provision All versions are backwards compatible. One of two permitted root elements. It should contain a list of multiple child <link> elements. Required, only permitted, multiply-occurring child element of the <links> root element. Each <link> must have a @providerId attribute and two child elements: <resource> and either <record> or <doi>. Each link is a mapping of a single external resource to a single bibliographic record. Required first child of <link> elements. Contains details of a single external resource (e.g. a web page, a PDF document.) Required child of <resource> elements. Contains the full URL of an external resource. Only URLs beginning with http://, https:// or ftp:// are currently allowed. Optional child of <resource> elements, containing the text to be displayed on the Europe PMC web site alongside the URL. Optional child of <resource> elements. Contains the location of an image to display with the external links. Second child of <link> elements. Contains details of the Europe PMC record to be associated with the external resource specified in the sibling <resource> element. Alternatively, a <doi> element can be used, but not both. Required child of <record> elements, containing a three-letter code indicating the source of the Europe PMC record. Europe PMC is an aggregator of content which has mostly been acquired from other sources. Therefore, to uniquely identify a record, the source must be specified in addition to the individual record's ID. The allowed values are listed below, and are the same as the values returned in the <source> element of the Europe PMC web service responses, but not necessarily the same as the prefixes to identifiers displayed on the Europe PMC web site. Required child of <record> elements, containing the identifer of the record to be linked. It is the same value as returned in the <id> element of the Europe PMC web web service responses. Alternative second child of <link> elements. If used, it must contain a string value which is a full valid DOI as per the specification at http://www.doi.org/doi_handbook/2_Numbering.html#2.2 (i.e. must start with "10.", do not prefix with "doi:" or the URL of a DOI resolver, and shortDOIs are not supported.) When DOIs are used, instead of the identifiers of Europe PMC records, an attempt will made to match against our internal database of DOIs. If no match can be found, the link will not appear on Europe PMC. Required attribute of each <link> element. Contains the number assigned to the link provider upon approval of their participation in the External Links Service. If you do not have a provider ID, send an email to [email protected] to request one. This is used to associate each link with an organisation or individual, so that their links will be attributed to them on the Europe PMC web site. One of two permitted root elements. Contains at least one child <provider> element, each of which describes the links provided in a separate file. Required, only permitted, multiply-occurring child element of the <providers> root element. Most users will require only one <provider> but multiple are permitted. Required child element of <provider> elements. Contains the number assigned to the link provider upon approval of their participation in the External Links Service. If you do not have a provider ID, or wish to maintain multiple profiles, send an email to [email protected] to request one. Required child element of <provider> elements. Contains the text of the heading under which links will be displayed on the Europe PMC web site. Required child element of <provider> elements. Contains a short description of the resource and/or the methodology used to link Europe PMC records to the resource. Required child element of <provider> elements. Contains a single email address of a person who can respond to, or redirect, both technical issues (e.g. invalid XML files, broken links) and any enquiries we might have about the quality or legality of the linked resources. An automated report will be sent to this address each time new or updated links are processed.
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.2">
<xs:annotation>
<xs:documentation>
This schema specifies the structure for the two separate XML documents required for participation in Europe PMC's External Links Service: one that contains basic information about the provider of links (with a <providers> root element) and another that contains the links (with a <links> root element.)
</xs:documentation>
<xs:documentation>
Changelog: v1.0 (2013-07-09): First release v1.1 (2013-11-04): Fixes to allow leading and trailing whitespace in string values v1.2 (2014-03-18): Added the ability to identify Europe PMC records by DOI v1.3 (2015-06-08): Made the doi regex less restrictive v1.4 (2016-04-22): Added image provision All versions are backwards compatible.
</xs:documentation>
</xs:annotation>
<!-- Root element 1 of 2: links -->
<xs:element name="links">
<xs:annotation>
<xs:documentation>
One of two permitted root elements. It should contain a list of multiple child <link> elements.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="link" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
Required, only permitted, multiply-occurring child element of the <links> root element. Each <link> must have a @providerId attribute and two child elements: <resource> and either <record> or <doi>. Each link is a mapping of a single external resource to a single bibliographic record.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="resource" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Required first child of <link> elements. Contains details of a single external resource (e.g. a web page, a PDF document.)
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:all>
<xs:element name="url" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Required child of <resource> elements. Contains the full URL of an external resource. Only URLs beginning with http://, https:// or ftp:// are currently allowed.
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="\s*(ht|f)tps*://.*\s*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="xs:string">
<xs:annotation>
<xs:documentation>
Optional child of <resource> elements, containing the text to be displayed on the Europe PMC web site alongside the URL.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="image" minOccurs="0" maxOccurs="1" type="xs:string">
<xs:annotation>
<xs:documentation>
Optional child of <resource> elements. Contains the location of an image to display with the external links.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
<xs:choice>
<xs:element name="record" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Second child of <link> elements. Contains details of the Europe PMC record to be associated with the external resource specified in the sibling <resource> element. Alternatively, a <doi> element can be used, but not both.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:all minOccurs="1" maxOccurs="1">
<xs:element name="source">
<xs:annotation>
<xs:documentation>
Required child of <record> elements, containing a three-letter code indicating the source of the Europe PMC record. Europe PMC is an aggregator of content which has mostly been acquired from other sources. Therefore, to uniquely identify a record, the source must be specified in addition to the individual record's ID. The allowed values are listed below, and are the same as the values returned in the <source> element of the Europe PMC web service responses, but not necessarily the same as the prefixes to identifiers displayed on the Europe PMC web site.
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:normalizedString">
<xs:enumeration value="AGR"/>
<xs:enumeration value="CIT"/>
<xs:enumeration value="CBA"/>
<xs:enumeration value="CTX"/>
<xs:enumeration value="ETH"/>
<xs:enumeration value="HIR"/>
<xs:enumeration value="MED"/>
<xs:enumeration value="PAT"/>
<xs:enumeration value="PMC"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="id" type="xs:string">
<xs:annotation>
<xs:documentation>
Required child of <record> elements, containing the identifer of the record to be linked. It is the same value as returned in the <id> element of the Europe PMC web web service responses.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="doi" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Alternative second child of <link> elements. If used, it must contain a string value which is a full valid DOI as per the specification at http://www.doi.org/doi_handbook/2_Numbering.html#2.2 (i.e. must start with "10.", do not prefix with "doi:" or the URL of a DOI resolver, and shortDOIs are not supported.) When DOIs are used, instead of the identifiers of Europe PMC records, an attempt will made to match against our internal database of DOIs. If no match can be found, the link will not appear on Europe PMC.
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="\s*10\.[\da-zA-Z]+/\S+\s*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attribute name="providerId" use="required" type="xs:integer">
<xs:annotation>
<xs:documentation>
Required attribute of each <link> element. Contains the number assigned to the link provider upon approval of their participation in the External Links Service. If you do not have a provider ID, send an email to [email protected] to request one. This is used to associate each link with an organisation or individual, so that their links will be attributed to them on the Europe PMC web site.
</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- Root element 2 of 2: providers -->
<xs:element name="providers">
<xs:annotation>
<xs:documentation>
One of two permitted root elements. Contains at least one child <provider> element, each of which describes the links provided in a separate file.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="provider" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
Required, only permitted, multiply-occurring child element of the <providers> root element. Most users will require only one <provider> but multiple are permitted.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:all minOccurs="1" maxOccurs="1">
<xs:element name="id" type="xs:integer">
<xs:annotation>
<xs:documentation>
Required child element of <provider> elements. Contains the number assigned to the link provider upon approval of their participation in the External Links Service. If you do not have a provider ID, or wish to maintain multiple profiles, send an email to [email protected] to request one.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resourceName" type="xs:string">
<xs:annotation>
<xs:documentation>
Required child element of <provider> elements. Contains the text of the heading under which links will be displayed on the Europe PMC web site.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" type="xs:string">
<xs:annotation>
<xs:documentation>
Required child element of <provider> elements. Contains a short description of the resource and/or the methodology used to link Europe PMC records to the resource.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="email">
<xs:annotation>
<xs:documentation>
Required child element of <provider> elements. Contains a single email address of a person who can respond to, or redirect, both technical issues (e.g. invalid XML files, broken links) and any enquiries we might have about the quality or legality of the linked resources. An automated report will be sent to this address each time new or updated links are processed.
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="\s*[^\s;@]+@[^\s;@]+\.[^\s;@]+\s*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>