SHARE
TWEET

Untitled

a guest Nov 9th, 2011 25 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?xml version="1.0"?>
  2.  
  3. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  4.  
  5. <!-- Basic definitions -->
  6.  
  7.         <xs:element name="Year">
  8.                 <xs:simpleType>
  9.                         <xs:restriction base="xs:integer">
  10.                                 <xs:minInclusive value="1900"/>
  11.                                 <xs:maxInclusive value="9999"/>
  12.                         </xs:restriction>
  13.                 </xs:simpleType>
  14.         </xs:element>
  15.        
  16.         <xs:element name="Month">
  17.                 <xs:simpleType>
  18.                         <xs:restriction base="xs:string">
  19.                         </xs:restriction>
  20.                 <!--    <xs:restriction base="xs:integer">
  21.                                 <xs:minInclusive value="1"/>
  22.                                 <xs:maxInclusive value="12"/>
  23.                                 </xs:restriction> -->
  24.                 </xs:simpleType>                               
  25.         </xs:element>
  26.        
  27.         <xs:element name="Day">
  28.                 <xs:simpleType>
  29.                         <xs:restriction base="xs:integer">
  30.                                 <xs:minInclusive value="1"/>
  31.                                 <xs:maxInclusive value="31"/>
  32.                         </xs:restriction>
  33.                 </xs:simpleType>                               
  34.         </xs:element>
  35.  
  36. <!--Medline Citation Definitions -->
  37.  
  38.         <xs:element name="PMID">
  39.                 <xs:simpleType>
  40.                         <xs:restriction base="xs:integer">
  41.                                 <xs:minInclusive value="00000000"/>
  42.                                 <xs:maxInclusive value="99999999"/>
  43.                         </xs:restriction>
  44.                 </xs:simpleType>
  45.         </xs:element>
  46.  
  47.         <xs:element name="DateCreated">
  48.                 <xs:complexType>
  49.                         <xs:sequence>
  50.                                 <xs:element ref="Year" />
  51.                                 <xs:element ref="Month" />
  52.                                 <xs:element ref="Day" />
  53.                         </xs:sequence>
  54.                 </xs:complexType>
  55.         </xs:element>
  56.        
  57.         <xs:element name="DateCompleted">
  58.                 <xs:complexType>
  59.                         <xs:sequence>
  60.                                 <xs:element ref="Year" />
  61.                                 <xs:element ref="Month" />
  62.                                 <xs:element ref="Day" />
  63.                         </xs:sequence>
  64.                 </xs:complexType>
  65.         </xs:element>
  66.        
  67.         <xs:element name="DateRevised">
  68.                 <xs:complexType>
  69.                         <xs:sequence>
  70.                                 <xs:element ref="Year" />
  71.                                 <xs:element ref="Month" />
  72.                                 <xs:element ref="Day" />
  73.                         </xs:sequence>
  74.                 </xs:complexType>
  75.         </xs:element>  
  76.  
  77.         <!-- Article definitions -->
  78.  
  79.         <xs:simpleType name="ISSN_ST"> <!-- this took 5 hours or so to figure out -->
  80.                 <xs:restriction base="xs:string">
  81.                         <xs:pattern value="[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}"/>
  82.                 </xs:restriction>
  83.         </xs:simpleType>
  84.  
  85.         <xs:element name="Journal">
  86.                 <xs:complexType>
  87.                         <xs:all>
  88.                                 <xs:element name="ISSN">
  89.                                 <xs:complexType>
  90.                                         <xs:simpleContent>
  91.                                                 <xs:extension base="ISSN_ST">
  92.                                                         <xs:attribute name="IssnType" type="xs:string"/>
  93.                                                 </xs:extension>
  94.                                         </xs:simpleContent>
  95.                                 </xs:complexType>
  96.                                 </xs:element>
  97.                                 <xs:element name="JournalIssue">
  98.                                         <xs:complexType>
  99.                                                 <xs:all>
  100.                                                         <xs:element name="Volume" minOccurs="0">
  101.                                                                 <xs:simpleType>
  102.                                                                         <xs:restriction base="xs:integer">
  103.                                                                         </xs:restriction>
  104.                                                                 </xs:simpleType>
  105.                                                         </xs:element>
  106.                                                         <xs:element name="Issue" minOccurs="0">
  107.                                                                 <xs:simpleType>
  108.                                                                         <xs:restriction base="xs:integer">
  109.                                                                         </xs:restriction>
  110.                                                                 </xs:simpleType>
  111.                                                         </xs:element>
  112.                                                         <xs:element name="PubDate" minOccurs="0">
  113.                                                                 <xs:complexType>
  114.                                                                         <xs:sequence>
  115.                                                                                 <xs:element ref="Year" />
  116.                                                                                 <xs:element ref="Month" />
  117.                                                                                 <xs:element ref="Day" />
  118.                                                                         </xs:sequence>
  119.                                                                 </xs:complexType>
  120.                                                         </xs:element>
  121.                                                 </xs:all>
  122.                                                 <xs:attribute name="CitedMedium" type="xs:string"/>
  123.                                         </xs:complexType>
  124.                                 </xs:element>
  125.                                 <xs:element name="Title" type="xs:string" minOccurs="0"/>
  126.                                 <xs:element name="ISOAbbreviation" type="xs:string" minOccurs="0"/>
  127.                         </xs:all>
  128.                 </xs:complexType>
  129.         </xs:element>
  130.  
  131.         <xs:element name="ArticleTitle" type="xs:string" />
  132.  
  133.         <xs:element name="Pagination">
  134.                 <xs:complexType>
  135.                         <xs:sequence>
  136.                                 <xs:element name="MedlinePgn" type="xs:string" />
  137.                         </xs:sequence>
  138.                 </xs:complexType>
  139.         </xs:element>
  140.        
  141.         <xs:element name="Abstract">
  142.                 <xs:complexType>
  143.                         <xs:sequence>
  144.                                 <xs:element name="AbstractText" type="xs:string" />
  145.                         </xs:sequence>
  146.                 </xs:complexType>
  147.         </xs:element>  
  148.  
  149.         <xs:element name="Affiliation" type="xs:string" />
  150.        
  151.         <!-- varying forms of ForeName validation -->
  152.         <xs:element name="ForeName" type="xs:string"/>
  153.         <xs:element name="FirstName" substitutionGroup="ForeName"/>
  154.        
  155.         <xs:element name="AuthorList">
  156.                 <xs:complexType>
  157.                         <xs:sequence minOccurs="1" maxOccurs="unbounded">
  158.                                 <xs:element name="Author">
  159.                                         <xs:complexType>
  160.                                                 <xs:sequence>
  161.                                                         <xs:element name="LastName" type="xs:string"/>
  162.                                                         <xs:element ref="ForeName"/>
  163.                                                         <xs:element name="Initials" type="xs:string"/>
  164.                                                 </xs:sequence>
  165.                                                 <xs:attribute name="ValidYN">
  166.                                                         <xs:simpleType>
  167.                                                                 <xs:restriction base="xs:string">
  168.                                                                         <xs:enumeration value="Y"/>
  169.                                                                         <xs:enumeration value="N"/>
  170.                                                                         <!-- <xs:pattern value="[YN]"/> -->
  171.                                                                 </xs:restriction>
  172.                                                         </xs:simpleType>
  173.                                                 </xs:attribute>
  174.                                         </xs:complexType>
  175.                                 </xs:element>
  176.                         </xs:sequence>
  177.                         <xs:attribute name="CompleteYN">
  178.                                 <xs:simpleType>
  179.                                         <xs:restriction base="xs:string">
  180.                                                 <xs:enumeration value="Y"/>
  181.                                                 <xs:enumeration value="N"/>
  182.                                                 <!-- <xs:pattern value="[YN]"/> -->
  183.                                         </xs:restriction>
  184.                                 </xs:simpleType>
  185.                         </xs:attribute>
  186.                 </xs:complexType>
  187.         </xs:element>
  188.        
  189.         <xs:element name="Language" type="xs:string" />
  190.  
  191.         <xs:element name="PublicationTypeList">
  192.                 <xs:complexType>
  193.                         <xs:sequence>
  194.                                 <xs:element name="PublicationType" type="xs:string" />
  195.                         </xs:sequence>
  196.                 </xs:complexType>
  197.         </xs:element>  
  198.  
  199.         <xs:element name="ArticleDate">
  200.                 <xs:complexType>
  201.                         <xs:sequence>
  202.                                 <xs:element ref="Year" />
  203.                                 <xs:element ref="Month" />
  204.                                 <xs:element ref="Day" />                               
  205.                         </xs:sequence>
  206.                         <xs:attribute name="DateType" type="xs:string"/>
  207.                 </xs:complexType>
  208.         </xs:element>
  209.        
  210.         <xs:element name="Article">
  211.                 <xs:complexType>
  212.                         <xs:all>
  213.                                 <xs:element ref="Journal" minOccurs="0" />
  214.                                 <xs:element ref="ArticleTitle" minOccurs="0" />
  215.                                 <xs:element ref="Pagination" minOccurs="0" />
  216.                                 <xs:element ref="Abstract" minOccurs="0" />
  217.                                 <xs:element ref="Affiliation" minOccurs="0" />
  218.                                 <xs:element ref="AuthorList" minOccurs="0" />
  219.                                 <xs:element ref="Language" minOccurs="0" />
  220.                                 <xs:element ref="PublicationTypeList" minOccurs="0" />
  221.                                 <xs:element ref="ArticleDate" minOccurs="0" />
  222.                         </xs:all>
  223.                         <xs:attribute name="PubModel" type="xs:string"/>
  224.                 </xs:complexType>
  225.         </xs:element>  
  226.  
  227.         <!-- Article definitions end -->
  228.  
  229.         <xs:element name="MedlineJournalInfo">
  230.                 <xs:complexType>
  231.                         <xs:all>
  232.                                 <xs:element name="Country" type="xs:string" minOccurs="0"/>
  233.                                 <xs:element name="MedlineTA" type="xs:string" />
  234.                                 <xs:element name="NlmUniqueID" type="xs:integer" />
  235.                         </xs:all>
  236.                 </xs:complexType>
  237.         </xs:element>
  238.        
  239.         <xs:element name="ChemicalList">
  240.                 <xs:complexType>
  241.                         <xs:sequence minOccurs="1" maxOccurs="unbounded">
  242.                                 <xs:element name="Chemical">
  243.                                         <xs:complexType>
  244.                                                 <xs:sequence>
  245.                                                         <xs:element name="RegistryNumber" type="xs:string" />
  246.                                                         <xs:element name="NameOfSubstance" type="xs:string" />
  247.                                                 </xs:sequence>
  248.                                         </xs:complexType>
  249.                                 </xs:element>
  250.                         </xs:sequence>
  251.                 </xs:complexType>
  252.         </xs:element>
  253.        
  254.         <xs:element name="CitationSubset" type="xs:string" />
  255.        
  256.         <xs:element name="MeshHeadingList">
  257.                 <xs:complexType>
  258.                         <xs:sequence minOccurs="1" maxOccurs="unbounded">
  259.                                 <xs:element name="MeshHeading">
  260.                                         <xs:complexType>
  261.                                                 <xs:sequence>
  262.                                                        
  263.                                                         <xs:element name="DescriptorName" minOccurs="0" maxOccurs="unbounded">
  264.                                                                 <xs:complexType>
  265.                                                                         <xs:simpleContent>
  266.                                                                                 <xs:extension base="xs:string">
  267.                                                                                         <xs:attribute name="MajorTopicYN">
  268.                                                                                                 <xs:simpleType>
  269.                                                                                                         <xs:restriction base="xs:string">
  270.                                                                                                                 <xs:enumeration value="Y"/>
  271.                                                                                                                 <xs:enumeration value="N"/>
  272.                                                                                                                 <!-- <xs:pattern value="[YN]"/> -->
  273.                                                                                                         </xs:restriction>
  274.                                                                                                 </xs:simpleType>
  275.                                                                                         </xs:attribute>
  276.                                                                                 </xs:extension>
  277.                                                                         </xs:simpleContent>
  278.                                                                 </xs:complexType>
  279.                                                         </xs:element>
  280.                                                        
  281.                                                         <xs:element name="QualifierName" minOccurs="0" maxOccurs="unbounded">
  282.                                                                 <xs:complexType>
  283.                                                                         <xs:simpleContent>
  284.                                                                                 <xs:extension base="xs:string">
  285.                                                                                         <xs:attribute name="MajorTopicYN">
  286.                                                                                                 <xs:simpleType>
  287.                                                                                                         <xs:restriction base="xs:string">
  288.                                                                                                                 <xs:enumeration value="Y"/>
  289.                                                                                                                 <xs:enumeration value="N"/>
  290.                                                                                                                 <!-- <xs:pattern value="[YN]"/> -->
  291.                                                                                                         </xs:restriction>
  292.                                                                                                 </xs:simpleType>
  293.                                                                                         </xs:attribute>
  294.                                                                                 </xs:extension>
  295.                                                                         </xs:simpleContent>
  296.                                                                 </xs:complexType>
  297.                                                         </xs:element>
  298.                                                        
  299.                                                 </xs:sequence>
  300.                                         </xs:complexType>
  301.                                 </xs:element>
  302.                         </xs:sequence>
  303.                 </xs:complexType>
  304.         </xs:element>
  305.  
  306. <!--Pubmed Data Definitions -->
  307.  
  308.         <xs:element name="History">
  309.                 <xs:complexType>
  310.                         <xs:sequence minOccurs="1" maxOccurs="unbounded">      
  311.                                 <xs:element name="PubMedPubDate">
  312.                                         <xs:complexType>
  313.                                                 <xs:all>
  314.                                                         <xs:element ref="Year" />
  315.                                                         <xs:element ref="Month"  minOccurs="0"/>
  316.                                                         <xs:element ref="Day"  minOccurs="0"/>
  317.                                                         <xs:element name="Hour" minOccurs="0">
  318.                                                                 <xs:simpleType>
  319.                                                                         <xs:restriction base="xs:integer">
  320.                                                                                 <xs:minInclusive value="1"/>
  321.                                                                                 <xs:maxInclusive value="24"/>
  322.                                                                         </xs:restriction>
  323.                                                                 </xs:simpleType>               
  324.                                                         </xs:element>
  325.                                                         <xs:element name="Minute" minOccurs="0">
  326.                                                                 <xs:simpleType>
  327.                                                                         <xs:restriction base="xs:integer">
  328.                                                                                 <xs:minInclusive value="0"/>
  329.                                                                                 <xs:maxInclusive value="60"/>
  330.                                                                         </xs:restriction>
  331.                                                                 </xs:simpleType>               
  332.                                                         </xs:element>
  333.                                                 </xs:all>
  334.                                                 <xs:attribute name="PubStatus">
  335.                                                         <xs:simpleType>
  336.                                                                 <xs:restriction base="xs:string">
  337.                                                                         <xs:enumeration value="received"/>
  338.                                                                         <xs:enumeration value="accepted"/>
  339.                                                                         <xs:enumeration value="pubmed"/>
  340.                                                                         <xs:enumeration value="medline"/>
  341.                                                                         <xs:enumeration value="aheadofprint"/>
  342.                                                                         <!-- <xs:pattern value="/^(?:received|accepted|pubmed|medline|aheadofprint)$/i"/> -->
  343.                                                                 </xs:restriction>
  344.                                                         </xs:simpleType>
  345.                                                 </xs:attribute>
  346.                                         </xs:complexType>
  347.                                 </xs:element>
  348.                         </xs:sequence>
  349.                 </xs:complexType>
  350.         </xs:element>
  351.  
  352.         <xs:element name="PublicationStatus" type="xs:string" />
  353.        
  354.         <xs:element name="ArticleIdList">
  355.                 <xs:complexType>
  356.                         <xs:sequence minOccurs="1" maxOccurs="unbounded">      
  357.                                         <xs:element name="ArticleId">
  358.                                                 <xs:complexType>
  359.                                                         <xs:simpleContent>
  360.                                                                 <xs:extension base="xs:string">
  361.                                                                         <xs:attribute name="IdType">
  362.                                                                                 <xs:simpleType>
  363.                                                                                         <xs:restriction base="xs:string">
  364.                                                                                                 <xs:enumeration value="pii"/>
  365.                                                                                                 <xs:enumeration value="doi"/>
  366.                                                                                                 <xs:enumeration value="pubmed"/>
  367.                                                                                         </xs:restriction>
  368.                                                                                 </xs:simpleType>
  369.                                                                         </xs:attribute>
  370.                                                                 </xs:extension>
  371.                                                         </xs:simpleContent>
  372.                                                 </xs:complexType>
  373.                                         </xs:element>
  374.                         </xs:sequence>
  375.                 </xs:complexType>
  376.         </xs:element>
  377.  
  378. <!-- Pubmed Article Template -->
  379.  
  380. <xs:element name="PubmedArticle">
  381.         <xs:complexType>
  382.                 <xs:sequence>
  383.                
  384.                
  385.                 <!--Medline Citation Template -->
  386.                         <xs:element name="MedlineCitation">
  387.                                 <xs:complexType>
  388.                                         <xs:all>
  389.                                                 <xs:element ref="PMID" minOccurs="0" />
  390.                                                 <xs:element ref="DateCreated" minOccurs="0"/>
  391.                                                 <xs:element ref="DateCompleted" minOccurs="0"/>
  392.                                                 <xs:element ref="DateRevised" minOccurs="0"/>
  393.                                                 <xs:element ref="Article" minOccurs="0"/>
  394.                                                 <xs:element ref="MedlineJournalInfo" minOccurs="0" />
  395.                                                 <xs:element ref="ChemicalList" minOccurs="0" />
  396.                                                 <xs:element ref="CitationSubset" minOccurs="0"/>
  397.                                                 <xs:element ref="MeshHeadingList" minOccurs="0"/>
  398.                                         </xs:all>
  399.                                         <xs:attribute name="Owner" type="xs:string" fixed="NLM"/>
  400.                                         <xs:attribute name="Status" type="xs:string"/>
  401.                                 </xs:complexType>
  402.                         </xs:element>
  403.                        
  404.                        
  405.                 <!--Pubmed Data Template -->
  406.                         <xs:element name="PubmedData">
  407.                                 <xs:complexType>
  408.                                         <xs:sequence>
  409.                                                 <xs:element ref="History" />
  410.                                                 <xs:element ref="PublicationStatus" />
  411.                                                 <xs:element ref="ArticleIdList" />
  412.                                         </xs:sequence>
  413.                                 </xs:complexType>
  414.                         </xs:element>
  415.                        
  416.                 </xs:sequence>
  417.         </xs:complexType>
  418. </xs:element>
  419.  
  420. </xs:schema>
  421.  
RAW Paste Data
Top