Skip to content

Commit 30b1c8f

Browse files
committed
Update catalog, add cli access to refresh, make rdflib optional
1 parent 701d20f commit 30b1c8f

20 files changed

Lines changed: 305 additions & 124 deletions

.github/workflows/unit_tests.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ jobs:
1313
strategy:
1414
matrix:
1515
python: ["3.10", "3.11", "3.12", "3.13"]
16+
rdflib: [true, false]
1617
steps:
1718
- name: Checkout repository
1819
uses: actions/checkout@v4
@@ -33,11 +34,15 @@ jobs:
3334
pip-${{ hashFiles('pyproject.toml') }}
3435
pip-
3536
36-
- name: Install package with dependencies
37+
- name: Install package with test dependencies
3738
run: |
38-
pip install -e '.[dev]'
39+
pip install -e '.[test]'
3940
pip install codecov
4041
42+
- name: Install package with rdf dependencies if enabled
43+
if: ${{ matrix.rdflib }}
44+
run: pip install -e '.[rdf]'
45+
4146
- name: Generate PLY lextab and parsetab artifacts
4247
run: python -c "import neuxml.xpath.core"
4348

DEVNOTES.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,3 +59,9 @@ in that module, and store the schemas and catalog file in the subdirectory
5959

6060
To specify other remote schema URLs and catalog locations, use the provided
6161
keyword arguments ``xsd_schemas``, ``xmlcatalog_dir``, and ``xmlcatalog_file``.
62+
63+
To refresh the defaults, use the project script which calls the same method:
64+
65+
.. code-block:: shell
66+
67+
neuxml-refresh-catalog

neuxml/catalog.py

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,10 @@
6565
"http://www.loc.gov/mods/xml.xsd",
6666
"http://www.w3.org/2001/xml.xsd",
6767
"http://www.w3.org/2001/03/xml.xsd",
68-
"http://www.dublincore.org/schemas/xmls/simpledc20021212.xsd",
68+
# "http://www.dublincore.org/schemas/xmls/simpledc20021212.xsd",
69+
"http://dublincore.org/schemas/xmls/simpledc20021212.xsd",
70+
"http://www.openarchives.org/OAI/2.0/oai_dc.xsd",
71+
"http://dublincore.org/2010/10/11/dctype.rdf",
6972
]
7073
# Deprecated URLs. Current schema lives on Github at https://github.com/StateArchivesOfNorthCarolina/tomes-eaxs.
7174
# 'http://www.archives.ncdcr.gov/mail-account.xsd',
@@ -137,7 +140,7 @@ def download_schema(uri, path, comment=None):
137140
except requests.exceptions.HTTPError as err:
138141
msg = "Failed to download schema %s" % schema
139142
msg += "(error codes %s)" % err.response.status_code
140-
logger.warn(msg)
143+
logger.warning(msg)
141144

142145
return False
143146

@@ -203,3 +206,14 @@ def refresh_catalog(xsd_schemas=None, xmlcatalog_dir=None, xmlcatalog_file=None)
203206
with open(xmlcatalog_file, "wb") as xml_catalog:
204207
catalog.serializeDocument(xml_catalog, pretty=True)
205208
return catalog
209+
210+
211+
def refresh_cli():
212+
"""
213+
Command line access to :meth:`refresh_catalog`. Configures logging
214+
for `neuxml` to DEBUG level so downloads will be reported.
215+
"""
216+
# configure logging with minimal format to output downloads and any errors
217+
logging.basicConfig(format="%(message)s", level=logging.WARNING)
218+
logging.getLogger("neuxml").setLevel(logging.DEBUG)
219+
refresh_catalog()

neuxml/schema_data/catalog.xml

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
11
<?xml version='1.0' encoding='UTF-8'?>
22
<c:catalog xmlns:c="urn:oasis:names:tc:entity:xmlns:xml:catalog">
3-
<c:uri name="http://www.loc.gov/standards/mods/mods.xsd" uri="mods.xsd"/>
4-
<c:uri name="http://www.loc.gov/standards/mods/v3/mods-3-4.xsd" uri="mods-3-4.xsd"/>
5-
<c:uri name="http://www.loc.gov/standards/xlink/xlink.xsd" uri="xlink.xsd"/>
6-
<c:uri name="http://www.loc.gov/standards/premis/premis.xsd" uri="premis.xsd"/>
7-
<c:uri name="http://www.loc.gov/standards/premis/v2/premis-v2-1.xsd" uri="premis-v2-1.xsd"/>
8-
<c:uri name="http://www.tei-c.org/release/xml/tei/custom/schema/xsd/tei_all.xsd" uri="tei_all.xsd"/>
9-
<c:uri name="https://raw.githubusercontent.com/StateArchivesOfNorthCarolina/tomes-eaxs/master/versions/1/eaxs_schema_v1.xsd" uri="eaxs_schema_v1.xsd"/>
10-
<c:uri name="http://www.openarchives.org/OAI/2.0/oai_dc.xsd" uri="oai_dc.xsd"/>
11-
<c:uri name="http://www.loc.gov/ead/ead.xsd" uri="ead.xsd"/>
12-
<c:uri name="http://www.loc.gov/mods/xml.xsd" uri="xml.xsd"/>
13-
<c:uri name="http://www.w3.org/2001/xml.xsd" uri="xml.xsd"/>
14-
<c:uri name="http://www.w3.org/2001/03/xml.xsd" uri="xml.xsd"/>
15-
<c:uri name="http://www.dublincore.org/schemas/xmls/simpledc20021212.xsd" uri="simpledc20021212.xsd"/>
3+
<c:uri name="http://www.loc.gov/standards/mods/mods.xsd" uri="mods.xsd"/>
4+
<c:uri name="http://www.loc.gov/standards/mods/v3/mods-3-4.xsd" uri="mods-3-4.xsd"/>
5+
<c:uri name="http://www.loc.gov/standards/xlink/xlink.xsd" uri="xlink.xsd"/>
6+
<c:uri name="http://www.loc.gov/standards/premis/premis.xsd" uri="premis.xsd"/>
7+
<c:uri name="http://www.loc.gov/standards/premis/v2/premis-v2-1.xsd" uri="premis-v2-1.xsd"/>
8+
<c:uri name="http://www.tei-c.org/release/xml/tei/custom/schema/xsd/tei_all.xsd" uri="tei_all.xsd"/>
9+
<c:uri name="https://raw.githubusercontent.com/StateArchivesOfNorthCarolina/tomes-eaxs/master/versions/1/eaxs_schema_v1.xsd" uri="eaxs_schema_v1.xsd"/>
10+
<c:uri name="http://www.loc.gov/ead/ead.xsd" uri="ead.xsd"/>
11+
<c:uri name="http://www.loc.gov/mods/xml.xsd" uri="xml.xsd"/>
12+
<c:uri name="http://www.w3.org/2001/xml.xsd" uri="xml.xsd"/>
13+
<c:uri name="http://www.w3.org/2001/03/xml.xsd" uri="xml.xsd"/>
14+
<c:uri name="http://dublincore.org/schemas/xmls/simpledc20021212.xsd" uri="simpledc20021212.xsd"/>
15+
<c:uri name="http://www.openarchives.org/OAI/2.0/oai_dc.xsd" uri="oai_dc.xsd"/>
16+
<c:uri name="http://dublincore.org/2010/10/11/dctype.rdf" uri="dctype.rdf"/>
1617
</c:catalog>

neuxml/schema_data/dctype.rdf

Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<rdf:RDF xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:dcam="http://purl.org/dc/dcam/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
3+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/">
4+
<dcterms:title xml:lang="en-US">DCMI Type Vocabulary</dcterms:title>
5+
<dcterms:publisher rdf:resource="http://purl.org/dc/aboutdcmi#DCMI"/>
6+
<dcterms:modified>2010-10-11</dcterms:modified>
7+
</rdf:Description>
8+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/Collection">
9+
<rdfs:label xml:lang="en-US">Collection</rdfs:label>
10+
<rdfs:comment xml:lang="en-US">An aggregation of resources.</rdfs:comment>
11+
<dcterms:description xml:lang="en-US">A collection is described as a group; its parts may also be separately described.</dcterms:description>
12+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
13+
<dcterms:issued>2000-07-11</dcterms:issued>
14+
<dcterms:modified>2008-01-14</dcterms:modified>
15+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
16+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#Collection-003"/>
17+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
18+
</rdf:Description>
19+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/Dataset">
20+
<rdfs:label xml:lang="en-US">Dataset</rdfs:label>
21+
<rdfs:comment xml:lang="en-US">Data encoded in a defined structure.</rdfs:comment>
22+
<dcterms:description xml:lang="en-US">Examples include lists, tables, and databases. A dataset may be useful for direct machine processing.</dcterms:description>
23+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
24+
<dcterms:issued>2000-07-11</dcterms:issued>
25+
<dcterms:modified>2008-01-14</dcterms:modified>
26+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
27+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#Dataset-003"/>
28+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
29+
</rdf:Description>
30+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/Event">
31+
<rdfs:label xml:lang="en-US">Event</rdfs:label>
32+
<rdfs:comment xml:lang="en-US">A non-persistent, time-based occurrence.</rdfs:comment>
33+
<dcterms:description xml:lang="en-US">Metadata for an event provides descriptive information that is the basis for discovery of the purpose, location, duration, and responsible agents associated with an event. Examples include an exhibition, webcast, conference, workshop, open day, performance, battle, trial, wedding, tea party, conflagration.</dcterms:description>
34+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
35+
<dcterms:issued>2000-07-11</dcterms:issued>
36+
<dcterms:modified>2008-01-14</dcterms:modified>
37+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
38+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#Event-003"/>
39+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
40+
</rdf:Description>
41+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/Image">
42+
<rdfs:label xml:lang="en-US">Image</rdfs:label>
43+
<rdfs:comment xml:lang="en-US">A visual representation other than text.</rdfs:comment>
44+
<dcterms:description xml:lang="en-US">Examples include images and photographs of physical objects, paintings, prints, drawings, other images and graphics, animations and moving pictures, film, diagrams, maps, musical notation. Note that Image may include both electronic and physical representations.</dcterms:description>
45+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
46+
<dcterms:issued>2000-07-11</dcterms:issued>
47+
<dcterms:modified>2008-01-14</dcterms:modified>
48+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
49+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#Image-004"/>
50+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
51+
</rdf:Description>
52+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/InteractiveResource">
53+
<rdfs:label xml:lang="en-US">Interactive Resource</rdfs:label>
54+
<rdfs:comment xml:lang="en-US">A resource requiring interaction from the user to be understood, executed, or experienced.</rdfs:comment>
55+
<dcterms:description xml:lang="en-US">Examples include forms on Web pages, applets, multimedia learning objects, chat services, or virtual reality environments.</dcterms:description>
56+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
57+
<dcterms:issued>2000-07-11</dcterms:issued>
58+
<dcterms:modified>2008-01-14</dcterms:modified>
59+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
60+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#InteractiveResource-003"/>
61+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
62+
</rdf:Description>
63+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/Service">
64+
<rdfs:label xml:lang="en-US">Service</rdfs:label>
65+
<rdfs:comment xml:lang="en-US">A system that provides one or more functions.</rdfs:comment>
66+
<dcterms:description xml:lang="en-US">Examples include a photocopying service, a banking service, an authentication service, interlibrary loans, a Z39.50 or Web server.</dcterms:description>
67+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
68+
<dcterms:issued>2000-07-11</dcterms:issued>
69+
<dcterms:modified>2008-01-14</dcterms:modified>
70+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
71+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#Service-003"/>
72+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
73+
</rdf:Description>
74+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/Software">
75+
<rdfs:label xml:lang="en-US">Software</rdfs:label>
76+
<rdfs:comment xml:lang="en-US">A computer program in source or compiled form.</rdfs:comment>
77+
<dcterms:description xml:lang="en-US">Examples include a C source file, MS-Windows .exe executable, or Perl script.</dcterms:description>
78+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
79+
<dcterms:issued>2000-07-11</dcterms:issued>
80+
<dcterms:modified>2008-01-14</dcterms:modified>
81+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
82+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#Software-003"/>
83+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
84+
</rdf:Description>
85+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/Sound">
86+
<rdfs:label xml:lang="en-US">Sound</rdfs:label>
87+
<rdfs:comment xml:lang="en-US">A resource primarily intended to be heard.</rdfs:comment>
88+
<dcterms:description xml:lang="en-US">Examples include a music playback file format, an audio compact disc, and recorded speech or sounds.</dcterms:description>
89+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
90+
<dcterms:issued>2000-07-11</dcterms:issued>
91+
<dcterms:modified>2008-01-14</dcterms:modified>
92+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
93+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#Sound-003"/>
94+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
95+
</rdf:Description>
96+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/Text">
97+
<rdfs:label xml:lang="en-US">Text</rdfs:label>
98+
<rdfs:comment xml:lang="en-US">A resource consisting primarily of words for reading.</rdfs:comment>
99+
<dcterms:description xml:lang="en-US">Examples include books, letters, dissertations, poems, newspapers, articles, archives of mailing lists. Note that facsimiles or images of texts are still of the genre Text.</dcterms:description>
100+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
101+
<dcterms:issued>2000-07-11</dcterms:issued>
102+
<dcterms:modified>2008-01-14</dcterms:modified>
103+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
104+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#Text-003"/>
105+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
106+
</rdf:Description>
107+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/PhysicalObject">
108+
<rdfs:label xml:lang="en-US">Physical Object</rdfs:label>
109+
<rdfs:comment xml:lang="en-US">An inanimate, three-dimensional object or substance.</rdfs:comment>
110+
<dcterms:description xml:lang="en-US">Note that digital representations of, or surrogates for, these objects should use Image, Text or one of the other types.</dcterms:description>
111+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
112+
<dcterms:issued>2002-07-13</dcterms:issued>
113+
<dcterms:modified>2008-01-14</dcterms:modified>
114+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
115+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#PhysicalObject-003"/>
116+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
117+
</rdf:Description>
118+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/StillImage">
119+
<rdfs:label xml:lang="en-US">Still Image</rdfs:label>
120+
<rdfs:comment xml:lang="en-US">A static visual representation.</rdfs:comment>
121+
<dcterms:description xml:lang="en-US">Examples include paintings, drawings, graphic designs, plans and maps. Recommended best practice is to assign the type Text to images of textual materials. Instances of the type Still Image must also be describable as instances of the broader type Image.</dcterms:description>
122+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
123+
<dcterms:issued>2003-11-18</dcterms:issued>
124+
<dcterms:modified>2008-01-14</dcterms:modified>
125+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
126+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#StillImage-003"/>
127+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
128+
<rdfs:subClassOf rdf:resource="http://purl.org/dc/dcmitype/Image"/>
129+
</rdf:Description>
130+
<rdf:Description rdf:about="http://purl.org/dc/dcmitype/MovingImage">
131+
<rdfs:label xml:lang="en-US">Moving Image</rdfs:label>
132+
<rdfs:comment xml:lang="en-US">A series of visual representations imparting an impression of motion when shown in succession.</rdfs:comment>
133+
<dcterms:description xml:lang="en-US">Examples include animations, movies, television programs, videos, zoetropes, or visual output from a simulation. Instances of the type Moving Image must also be describable as instances of the broader type Image.</dcterms:description>
134+
<rdfs:isDefinedBy rdf:resource="http://purl.org/dc/dcmitype/"/>
135+
<dcterms:issued>2003-11-18</dcterms:issued>
136+
<dcterms:modified>2008-01-14</dcterms:modified>
137+
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
138+
<dcterms:hasVersion rdf:resource="http://dublincore.org/usage/terms/history/#MovingImage-003"/>
139+
<dcam:memberOf rdf:resource="http://purl.org/dc/terms/DCMIType"/>
140+
<rdfs:subClassOf rdf:resource="http://purl.org/dc/dcmitype/Image"/>
141+
</rdf:Description>
142+
<!--Downloaded by neuxml 1.1.0.dev0 on 2025-08-20--></rdf:RDF>

neuxml/schema_data/ead.xsd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1847,4 +1847,4 @@
18471847
<xs:attributeGroup ref="a.common"/>
18481848
<xs:attributeGroup ref="xlink:resourceLink"/>
18491849
</xs:complexType>
1850-
<!--Downloaded by neuxml 1.1.3 on 2025-04-01--></xs:schema>
1850+
<!--Downloaded by neuxml 1.1.0.dev0 on 2025-08-20--></xs:schema>

neuxml/schema_data/eaxs_schema_v1.xsd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -522,4 +522,4 @@
522522
</simpleType>
523523

524524

525-
<!--Downloaded by neuxml 1.1.3 on 2025-04-03--></schema>
525+
<!--Downloaded by neuxml 1.1.0.dev0 on 2025-08-20--></schema>

neuxml/schema_data/mods-3-4.xsd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1710,4 +1710,4 @@ Therefore, two definitions are needed for the usage attribute, one for <url> ("u
17101710
</xs:restriction>
17111711
</xs:simpleType>
17121712
<!-- -->
1713-
<!--Downloaded by neuxml 1.1.3 on 2025-04-01--></xs:schema>
1713+
<!--Downloaded by neuxml 1.1.0.dev0 on 2025-08-20--></xs:schema>

neuxml/schema_data/mods.xsd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1767,4 +1767,4 @@ String Definitions
17671767
</xs:restriction>
17681768
</xs:simpleType>
17691769

1770-
<!--Downloaded by neuxml 1.1.3 on 2025-04-01--></xs:schema>
1770+
<!--Downloaded by neuxml 1.1.0.dev0 on 2025-08-20--></xs:schema>

neuxml/schema_data/oai_dc.xsd

Lines changed: 34 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,37 @@
1-
<schema targetNamespace="http://www.openarchives.org/OAI/2.0/oai_dc/"
2-
xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/"
3-
xmlns:dc="http://purl.org/dc/elements/1.1/"
4-
xmlns="http://www.w3.org/2001/XMLSchema"
5-
elementFormDefault="qualified" attributeFormDefault="unqualified">
6-
7-
<annotation>
8-
<documentation>
9-
XML Schema 2002-03-18 by Pete Johnston.
10-
Adjusted for usage in the OAI-PMH.
11-
Schema imports the Dublin Core elements from the DCMI schema for unqualified Dublin Core.
12-
2002-12-19 updated to use simpledc20021212.xsd (instead of simpledc20020312.xsd)
13-
</documentation>
14-
</annotation>
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<schema xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.openarchives.org/OAI/2.0/oai_dc/" elementFormDefault="qualified" attributeFormDefault="unqualified">
3+
4+
<annotation>
5+
<documentation>
6+
XML Schema 2002-03-18 by Pete Johnston.
7+
Adjusted for usage in the OAI-PMH.
8+
Schema imports the Dublin Core elements from the DCMI schema for unqualified Dublin Core.
9+
2002-12-19 updated to use simpledc20021212.xsd (instead of simpledc20020312.xsd)
10+
</documentation>
11+
</annotation>
1512

16-
<import namespace="http://purl.org/dc/elements/1.1/"
17-
schemaLocation="http://dublincore.org/schemas/xmls/simpledc20021212.xsd"/>
13+
<import namespace="http://purl.org/dc/elements/1.1/" schemaLocation="http://dublincore.org/schemas/xmls/simpledc20021212.xsd"/>
14+
15+
<element name="dc" type="oai_dc:oai_dcType"/>
1816

19-
<element name="dc" type="oai_dc:oai_dcType"/>
17+
<complexType name="oai_dcType">
18+
<choice minOccurs="0" maxOccurs="unbounded">
19+
<element ref="dc:title"/>
20+
<element ref="dc:creator"/>
21+
<element ref="dc:subject"/>
22+
<element ref="dc:description"/>
23+
<element ref="dc:publisher"/>
24+
<element ref="dc:contributor"/>
25+
<element ref="dc:date"/>
26+
<element ref="dc:type"/>
27+
<element ref="dc:format"/>
28+
<element ref="dc:identifier"/>
29+
<element ref="dc:source"/>
30+
<element ref="dc:language"/>
31+
<element ref="dc:relation"/>
32+
<element ref="dc:coverage"/>
33+
<element ref="dc:rights"/>
34+
</choice>
35+
</complexType>
2036

21-
<complexType name="oai_dcType">
22-
<choice minOccurs="0" maxOccurs="unbounded">
23-
<element ref="dc:title"/>
24-
<element ref="dc:creator"/>
25-
<element ref="dc:subject"/>
26-
<element ref="dc:description"/>
27-
<element ref="dc:publisher"/>
28-
<element ref="dc:contributor"/>
29-
<element ref="dc:date"/>
30-
<element ref="dc:type"/>
31-
<element ref="dc:format"/>
32-
<element ref="dc:identifier"/>
33-
<element ref="dc:source"/>
34-
<element ref="dc:language"/>
35-
<element ref="dc:relation"/>
36-
<element ref="dc:coverage"/>
37-
<element ref="dc:rights"/>
38-
</choice>
39-
</complexType>
40-
41-
</schema>
37+
<!--Downloaded by neuxml 1.1.0.dev0 on 2025-08-20--></schema>

0 commit comments

Comments
 (0)