xmlns:marc="http://www.loc.gov/MARC21/slim"
version="1.0">
- <!-- <xsl:include href="http://www.loc.gov/marcxml/xslt/MARC21slimUtils.xsl"/>-->
<!-- <xsl:include href="MARC21slimUtils.xsl"/> -->
<xsl:output indent="yes" method="xml" version="1.0" encoding="UTF-8"/>
<xsl:variable name="leader" select="marc:leader"/>
<xsl:variable name="leader6" select="substring($leader,7,1)"/>
<xsl:variable name="leader7" select="substring($leader,8,1)"/>
- <xsl:variable name="controlField001" select="marc:controlfield[@tag=001]"/>
- <xsl:variable name="controlField008" select="marc:controlfield[@tag=008]"/>
-
- <xsl:variable name="typeOf008">
- <xsl:choose>
- <xsl:when test="$leader6='a'">
- <xsl:choose>
- <xsl:when test="$leader7='a' or $leader7='c' or $leader7='d'
- or $leader7='m'">BK</xsl:when>
- <xsl:when test="$leader7='b' or $leader7='i'
- or $leader7='s'">SE</xsl:when>
- </xsl:choose>
- </xsl:when>
- <xsl:when test="$leader6='t'">BK</xsl:when>
- <xsl:when test="$leader6='p'">MM</xsl:when>
- <xsl:when test="$leader6='m'">CF</xsl:when>
- <xsl:when test="$leader6='e' or $leader6='f'">MP</xsl:when>
- <xsl:when test="$leader6='g' or $leader6='k' or $leader6='o'
- or $leader6='r'">VM</xsl:when>
- <xsl:when test="$leader6='c' or $leader6='d' or $leader6='i'
- or $leader6='j'">MU</xsl:when>
- </xsl:choose>
- </xsl:variable>
-
- <z:record id="{$controlField001}" type="update">
- <!-- <xsl:attribute name="id"></xsl:attribute> -->
- <!-- <xsl:attribute name="type">update</xsl:attribute> -->
- <!-- <xsl:attribute name="rank"></xsl:attribute> -->
-
- <!-- calling simple templates working only on one field at a time -->
- <!-- <xsl:apply-templates select="marc:controlfield"/> -->
- <!-- <xsl:apply-templates select="marc:datafield"/> -->
-
- <xsl:call-template name="bib1_rules"/>
-
- </z:record>
- </xsl:template>
+ <xsl:variable name="controlField001"
+ select="normalize-space(marc:controlfield[@tag='001'])"/>
+ <xsl:variable name="controlField008"
+ select="normalize-space(marc:controlfield[@tag='008'])"/>
- <xsl:template name="bib1_rules">
- <!-- att 1 Personal-name -->
- <!-- att 2 Corporate-name -->
- <!-- att 3 Conference-name -->
- <!-- att 4 Title -->
- <xsl:call-template name="Title"/>
- <!-- att 5 Title-series -->
- <!-- att 6 Title-uniform -->
- <!-- att 7 ISBN -->
- <!-- att 8 ISSN -->
- <!-- att 9 LC-card-number -->
- <!-- att 10 BNB-card-number -->
- <!-- att 11 BGF-number -->
- <!-- att 12 Local-number -->
- <!-- att 13 Dewey-classification -->
- <!-- att 14 UDC-classification -->
- <!-- att 15 Bliss-classification -->
- <!-- att 16 LC-call-number -->
- <!-- att 17 NLM-call-number -->
- <!-- att 18 NAL-call-number -->
- <!-- att 19 MOS-call-number -->
- <!-- att 20 Local-classification -->
- <!-- att 21 Subject-heading -->
- <xsl:call-template name="Subject-heading"/>
- <!-- att 22 Subject-Rameau -->
- <!-- att 23 BDI-index-subject -->
- <!-- att 24 INSPEC-subject -->
- <!-- att 25 MESH-subject -->
- <!-- att 26 PA-subject -->
- <!-- att 27 LC-subject-heading -->
- <!-- att 28 RVM-subject-heading -->
- <!-- att 29 Local-subject-index -->
- <!-- att 30 Date -->
- <!-- att 31 Date-of-publication -->
- <!-- att 32 Date-of-acquisition -->
- <!-- att 33 Title-key -->
- <!-- att 34 Title-collective -->
- <!-- att 35 Title-parallel -->
- <!-- att 36 Title-cover -->
- <!-- att 37 Title-added-title-page -->
- <!-- att 38 Title-caption -->
- <!-- att 39 Title-running -->
- <!-- att 40 Title-spine -->
- <!-- att 41 Title-other-variant -->
- <!-- att 42 Title-former -->
- <!-- att 43 Title-abbreviated -->
- <!-- att 44 Title-expanded -->
- <!-- att 45 Subject-precis -->
- <!-- att 46 Subject-rswk -->
- <!-- att 47 Subject-subdivision -->
- <!-- att 48 Number-natl-biblio -->
- <!-- att 49 Number-legal-deposit -->
- <!-- att 50 Number-govt-pub -->
- <!-- att 51 Number-music-publisher -->
- <!-- att 52 Number-db -->
- <!-- att 53 Number-local-call -->
- <!-- att 54 Code-language -->
- <!-- att 55 Code-geographic -->
- <!-- att 56 Code-institution -->
- <!-- att 57 Name-and-title -->
- <!-- att 58 Name-geographic -->
- <!-- att 59 Place-publication -->
- <!-- att 60 CODEN -->
- <!-- att 61 Microform-generation -->
- <!-- att 62 Abstract -->
- <xsl:call-template name="Abstract"/>
- <!-- att 63 Note -->
- <!-- att 1000 Author-title -->
- <xsl:call-template name="Author-title"/>
- <!-- att 1001 Record-type -->
- <!-- att 1002 Name -->
- <!-- att 1003 Author -->
- <xsl:call-template name="Author"/>
- <!-- att 1004 Author-name-personal -->
- <xsl:call-template name="Author-name-personal"/>
- <!-- att 1005 Author-name-corporate -->
- <xsl:call-template name="Author-name-corporate"/>
- <!-- att 1006 Author-name-conference -->
- <xsl:call-template name="Author-name-conference"/>
- <!-- att 1007 Identifier-standard -->
- <!-- att 1008 Subject-LC-childrens -->
- <!-- att 1009 Subject-name-personal -->
- <!-- att 1010 Body-of-text -->
- <!-- att 1011 Date/time-added-to-db -->
- <!-- att 1012 Date/time-last-modified -->
- <!-- att 1013 Authority/format-id -->
- <!-- att 1014 Concept-text -->
- <!-- att 1015 Concept-reference -->
- <!-- att 1016 Any -->
- <!-- att 1017 Server-choice -->
- <!-- att 1018 Publisher -->
- <!-- att 1019 Record-source -->
- <!-- att 1020 Editor -->
- <!-- att 1021 Bib-level -->
- <!-- att 1022 Geographic-class -->
- <!-- att 1023 Indexed-by -->
- <!-- att 1024 Map-scale -->
- <!-- att 1025 Music-key -->
- <!-- att 1026 Related-periodical -->
- <!-- att 1027 Report-number -->
- <!-- att 1028 Stock-number -->
- <!-- att 1030 Thematic-number -->
- <!-- att 1031 Material-type -->
- <!-- att 1032 Doc-id -->
- <!-- att 1033 Host-item -->
- <!-- att 1034 Content-type -->
- <!-- att 1035 Anywhere -->
- <!-- att 1036 Author-Title-Subject -->
- </xsl:template>
+ <xsl:variable name="typeOf008">
+ <xsl:choose>
+ <xsl:when test="$leader6='a'">
+ <xsl:choose>
+ <xsl:when test="$leader7='a' or $leader7='c' or $leader7='d'
+ or $leader7='m'">BK</xsl:when>
+ <xsl:when test="$leader7='b' or $leader7='i'
+ or $leader7='s'">SE</xsl:when>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:when test="$leader6='t'">BK</xsl:when>
+ <xsl:when test="$leader6='p'">MM</xsl:when>
+ <xsl:when test="$leader6='m'">CF</xsl:when>
+ <xsl:when test="$leader6='e' or $leader6='f'">MP</xsl:when>
+ <xsl:when test="$leader6='g' or $leader6='k' or $leader6='o'
+ or $leader6='r'">VM</xsl:when>
+ <xsl:when test="$leader6='c' or $leader6='d' or $leader6='i'
+ or $leader6='j'">MU</xsl:when>
+ </xsl:choose>
+ </xsl:variable>
+ <z:record id="{$controlField001}" type="update">
+ <!-- <xsl:attribute name="id"></xsl:attribute> -->
+ <!-- <xsl:attribute name="type">update</xsl:attribute> -->
+ <!-- <xsl:attribute name="rank"></xsl:attribute> -->
+ <xsl:call-template name="bib1_rules"/>
+ </z:record>
+ </xsl:template>
- <xsl:template name="Abstract">
- <xsl:for-each select="marc:datafield[@tag='520']">
- <z:index name="Abstract" type="w">
- <xsl:value-of select="."/>
- </z:index>
- </xsl:for-each>
- </xsl:template>
+ <xsl:template name="bib1_rules">
+ <!-- att 1 Personal-name -->
+ <!-- att 2 Corporate-name -->
+ <!-- att 3 Conference-name -->
+ <!-- att 4 Title -->
+ <xsl:call-template name="Title"/>
+ <!-- att 5 Title-series -->
+ <!-- att 6 Title-uniform -->
+ <!-- att 7 ISBN -->
+ <xsl:call-template name="ISBN"/>
+ <!-- att 8 ISSN -->
+ <xsl:call-template name="ISSN"/>
+ <!-- att 9 LC-card-number -->
+ <!-- att 10 BNB-card-number -->
+ <!-- att 11 BGF-number -->
+ <!-- att 12 Local-number -->
+ <!-- att 13 Dewey-classification -->
+ <!-- att 14 UDC-classification -->
+ <!-- att 15 Bliss-classification -->
+ <!-- att 16 LC-call-number -->
+ <!-- att 17 NLM-call-number -->
+ <!-- att 18 NAL-call-number -->
+ <!-- att 19 MOS-call-number -->
+ <!-- att 20 Local-classification -->
+ <!-- att 21 Subject-heading -->
+ <xsl:call-template name="Subject-heading"/>
+ <!-- att 22 Subject-Rameau -->
+ <!-- att 23 BDI-index-subject -->
+ <!-- att 24 INSPEC-subject -->
+ <!-- att 25 MESH-subject -->
+ <!-- att 26 PA-subject -->
+ <!-- att 27 LC-subject-heading -->
+ <!-- att 28 RVM-subject-heading -->
+ <!-- att 29 Local-subject-index -->
+ <!-- att 30 Date -->
+ <!-- att 31 Date-of-publication -->
+ <!-- att 32 Date-of-acquisition -->
+ <!-- att 33 Title-key -->
+ <!-- att 34 Title-collective -->
+ <!-- att 35 Title-parallel -->
+ <!-- att 36 Title-cover -->
+ <!-- att 37 Title-added-title-page -->
+ <!-- att 38 Title-caption -->
+ <!-- att 39 Title-running -->
+ <!-- att 40 Title-spine -->
+ <!-- att 41 Title-other-variant -->
+ <!-- att 42 Title-former -->
+ <!-- att 43 Title-abbreviated -->
+ <!-- att 44 Title-expanded -->
+ <!-- att 45 Subject-precis -->
+ <!-- att 46 Subject-rswk -->
+ <!-- att 47 Subject-subdivision -->
+ <!-- att 48 Number-natl-biblio -->
+ <!-- att 49 Number-legal-deposit -->
+ <!-- att 50 Number-govt-pub -->
+ <!-- att 51 Number-music-publisher -->
+ <!-- att 52 Number-db -->
+ <!-- att 53 Number-local-call -->
+ <!-- att 54 Code-language -->
+ <!-- att 55 Code-geographic -->
+ <!-- att 56 Code-institution -->
+ <!-- att 57 Name-and-title -->
+ <!-- att 58 Name-geographic -->
+ <!-- att 59 Place-publication -->
+ <!-- att 60 CODEN -->
+ <!-- att 61 Microform-generation -->
+ <!-- att 62 Abstract -->
+ <xsl:call-template name="Abstract"/>
+ <!-- att 63 Note -->
+ <!-- att 1000 Author-title -->
+ <xsl:call-template name="Author-title"/>
+ <!-- att 1001 Record-type -->
+ <!-- att 1002 Name -->
+ <!-- att 1003 Author -->
+ <xsl:call-template name="Author"/>
+ <!-- att 1004 Author-name-personal -->
+ <xsl:call-template name="Author-name-personal"/>
+ <!-- att 1005 Author-name-corporate -->
+ <xsl:call-template name="Author-name-corporate"/>
+ <!-- att 1006 Author-name-conference -->
+ <xsl:call-template name="Author-name-conference"/>
+ <!-- att 1007 Identifier-standard -->
+ <!-- att 1008 Subject-LC-childrens -->
+ <!-- att 1009 Subject-name-personal -->
+ <!-- att 1010 Body-of-text -->
+ <!-- att 1011 Date/time-added-to-db -->
+ <!-- att 1012 Date/time-last-modified -->
+ <!-- att 1013 Authority/format-id -->
+ <!-- att 1014 Concept-text -->
+ <!-- att 1015 Concept-reference -->
+ <!-- att 1016 Any -->
+ <!-- att 1017 Server-choice -->
+ <!-- att 1018 Publisher -->
+ <!-- att 1019 Record-source -->
+ <!-- att 1020 Editor -->
+ <!-- att 1021 Bib-level -->
+ <!-- att 1022 Geographic-class -->
+ <!-- att 1023 Indexed-by -->
+ <!-- att 1024 Map-scale -->
+ <!-- att 1025 Music-key -->
+ <!-- att 1026 Related-periodical -->
+ <!-- att 1027 Report-number -->
+ <!-- att 1028 Stock-number -->
+ <!-- att 1030 Thematic-number -->
+ <!-- att 1031 Material-type -->
+ <!-- att 1032 Doc-id -->
+ <!-- att 1033 Host-item -->
+ <!-- att 1034 Content-type -->
+ <!-- att 1035 Anywhere -->
+ <!-- att 1036 Author-Title-Subject -->
+ </xsl:template>
+ <!-- ATTRIBUTE SET BIB-1 (Z39.50-1995) SEMANTICS -->
+ <!-- TABLE 2: USE ATTRIBUTES (CLASSIFIED AND DEFINED) -->
+ <!-- Use Value Definition USMARC tag(s) -->
+
+ <!--
+ Abstract 62 An abbreviated, accurate 520
+ representation of a work,
+ usually without added
+ interpretation or criticism.
+ -->
+ <xsl:template name="Abstract">
+ <xsl:for-each select="marc:datafield[@tag='520']">
+ <z:index name="Abstract" type="w">
+ <xsl:value-of select="."/>
+ </z:index>
+ </xsl:for-each>
+ </xsl:template>
+
+ <!--
+ Any 1016 The record is selected if there
+ exists a Use attribute that the
+ target supports (and considers
+ appropriate - see note 1) such
+ that the record would be
+ selected if the target were to
+ substitute that attribute.
+ Notes:
+ (1) When the origin uses 'any' the intent is that the target
+ locate records via commonly used access points. The target
+ may define 'any' to refer to a selected set of Use
+ attributes corresponding to its commonly used access points.
+ (2) In set terminology: when Any is the Use attribute, the set
+ of records selected is the union of the sets of records
+ selected by each of the (appropriate) Use attributes that
+ the target supports.
+
+ -->
+
+ <!--
+ Anywhere 1035 The record is selected if the
+ term value (as qualified by the
+ other attributes) occurs anywhere
+ in the record.
+
+ Note: A target might choose to support 'Anywhere' only in
+ combination with specific (non-Use) attributes. For example, a
+ target might support 'Anywhere' only in combination with the
+ Relation attribute 'AlwaysMatches' (see below), to locate all
+ records in a database.
+
+ Notes on relationship of Any and Anywhere:
+ (1) A target may support Any but not Anywhere, or vice versa, or
+ both. However, if a target supports both, then it should
+ exclude 'Anywhere' from the list of Use attributes
+ corresponding to 'Any' (if it does not do so, then the set
+ of records located by 'Any' will be a superset of those
+ located by 'Anywhere').
+ (2) A distinction between the two attributes may be informally
+ expressed as follows: 'anywhere' might result in more
+ expensive searching than 'any'; if the target (and origin)
+ support both 'any' and 'anywhere', if the origin uses 'Any'
+ (rather than 'Anywhere') it is asking the target to locate
+ the term only if it can do so relatively inexpensively.
+
+ -->
+
+ <!--
+ Author-name 1003 A personal or corporate author, 100, 110, 111, 400
+ or a conference or meeting 410, 411, 700, 710,
+ name. (No subject name 711, 800, 810, 811
+ headings are included.)
+
+ -->
<xsl:template name="Author">
<xsl:for-each select="marc:datafield[@tag='100']/marc:subfield[@code='a']
| marc:datafield[@tag='110']
- | marc:datafield[@tag='111']">
+ | marc:datafield[@tag='111']
+ | marc:datafield[@tag='400']
+ | marc:datafield[@tag='410']
+ | marc:datafield[@tag='700']
+ | marc:datafield[@tag='710']
+ | marc:datafield[@tag='711']
+ | marc:datafield[@tag='800']
+ | marc:datafield[@tag='810']
+ | marc:datafield[@tag='811']">
<z:index name="Author" type="w">
<xsl:value-of select="."/>
</z:index>
</xsl:for-each>
</xsl:template>
- <!-- collection info from different data fields -->
+ <!--
+Author-name-and- 1000 A personal or corporate author, 100/2XX, 110/2XX,
+title or a conference or meeting 111/2XX, subfields
+ name, and the title of the $a & $t in
+ item. (No subject name following: 400,410,
+ headings are included.) The 411, 700, 710, 711,
+ syntax of the name-title 800, 810, 811
+ combination is up to the
+ target, unless used with the
+ Structure attribute Key (see
+ below).
+
+ -->
<xsl:template name="Author-title">
<xsl:if test="marc:datafield[@tag='100']
and marc:datafield[@tag='245']">
</xsl:if>
</xsl:template>
+
+ <!--
+Author-name- 1005 An organization or a group 110, 410, 710, 810
+corporate of persons that is identified
+ by a particular name. (Differs
+ from attribute "name-corporate
+ (2)" in that corporate name
+ subject headings are not
+ included.)
+
+ -->
+ <xsl:template name="Author-name-corporate">
+ <xsl:for-each select="marc:datafield[@tag='110']">
+ <z:index name="Author-name-corporate" type="w">
+ <xsl:value-of select="."/>
+ </z:index>
+ </xsl:for-each>
+ </xsl:template>
+
+ <!--
+Author-name- 1006 A meeting of individuals or 111, 411, 711, 811
+conference representatives of various
+ bodies for the purpose of
+ discussing topics of common
+ interest. (Differs from
+ attribute "name-conference
+ (3)" in that conference name
+ subject headings are not
+ included.)
+
+ -->
+ <xsl:template name="Author-name-conference">
+ <xsl:for-each select="marc:datafield[@tag='111']">
+ <z:index name="Author-name-conference" type="w">
+ <xsl:value-of select="."/>
+ </z:index>
+ </xsl:for-each>
+ </xsl:template>
+
+ <!--
+Author-name-personal 1004 A person's real name, 100, 400, 700, 800
+ pseudonym, title of nobility
+ nickname, or initials.
+ (Differs from attribute
+ "name-personal (1)" in that
+ personal name subject headings
+ are not included.)
+
+ -->
+
<xsl:template name="Author-name-personal">
<xsl:for-each select="marc:datafield[@tag='100']">
<xsl:for-each select="marc:subfield[@code='a']">
</xsl:for-each>
</xsl:template>
- <xsl:template name="Author-name-corporate">
- <xsl:for-each select="marc:datafield[@tag='110']">
- <z:index name="Author-name-corporate" type="w">
+ <!--
+Author-Title-Subject 1036 An author or a title or a 1XX, 2XX, 4XX,
+ subject. 6XX, 7XX, 8XX
+
+ Note: When the Use attribute is Author-name-and-title (1000)
+ the term contains both an author name and a title. When the
+ Use attribute is Author-Title-Subject (1036), the term
+ contains an author name or a title or a subject.
+
+ -->
+ <!--
+Body of text 1010 Used in full-text searching to
+ indicate that the term is to
+ be searched only in that
+ portion of the record that the
+ target considers the body of
+ the text, as opposed to some
+ other discriminated part such
+ as a headline, title, or
+ abstract.
+
+ -->
+ <!--
+Classification-Bliss 15 A classification number from
+ the Bliss Classification,
+ developed by Henry Evelyn
+ Bliss.
+
+ -->
+ <!--
+Classification-Dewey 13 A classification number from 082
+ the Dewey Decimal
+ Classification, developed by
+ Melvyl Dewey.
+
+ -->
+ <!--
+Classification- 50 A classification number 086
+government-publication assigned to a government
+ document by a government
+ agency at any level (e.g.,
+ state, national,
+ international).
+
+ -->
+ <!--
+Classification-LC 16 A classification number from 050
+ the US Library of Congress
+ Classification.
+
+ -->
+ <!--
+Classification-local 20 A local classification
+ number from a system not
+ specified elsewhere in this
+ list of attributes.
+
+ -->
+ <!--
+Classification-NAL 18 A classification number from 070
+ the US National Agriculture
+ Library Classification.
+
+ -->
+ <!--
+Classification-NLM 17 A classification number from 060
+ the US National Library of
+ Medicine Classification.
+
+ -->
+ <!--
+Classification-MOS 19 A classification number from
+ Mathematics Subject
+ Classification, compiled
+ in the Editorial Offices of
+ Mathematical Reviews and
+ Zentralblatt fur Mathematik.
+
+ -->
+ <!--
+Classification-UDC 14 A classification number from 080
+ Universal Decimal
+ Classification, a system based
+ on the Dewey Decimal
+ Classification.
+
+ -->
+ <!--
+Code-bib-level 1021 A one-character alphabetic Leader/07
+ code indicating the
+ bibliographic level such as
+ monograph, serial or collection
+ of the record.
+
+ -->
+ <!--
+Code-geographic-area 55 A code that indicates the 043
+ geographic area(s) that appear
+ or are implied in the headings
+ assigned to the item during
+ cataloging.
+
+ -->
+ <!--
+Code-geographic- 1022 A code that represents the 052
+class geographic area and if
+ applicable the geographic
+ subarea covered by an item.
+ The codes are derived from
+ the LC Classification-Class G
+ and the expanded Cutter number
+ list.
+
+ -->
+ <!--
+Code-institution 56 An authoritative-agency 040, 852$a
+ symbol for an institution
+ that is the source of the
+ record or the holding
+ location. The code space is
+ defined by the target.
+
+ -->
+ <!--
+Code-language 54 A code that indicates the 008/35-37, 041
+ language of the item.
+ The codes are defined by the
+ target.
+
+ -->
+ <!--
+Code-map-scale 1024 Coded form of cartographic 034
+ mathematical data, including
+ scale, projection and/or
+ coordinates related to the
+ item.
+
+ -->
+ <!--
+Code-microform- 61 The code specifying the 007/11
+generation generation of a microform.
+
+ -->
+ <!--
+Code-record-type 1001 A code that specifies the Leader/06
+ characteristics and defines
+ the components of the record.
+ The codes are target-specific.
+
+ -->
+ <!--
+Concept-reference 1015 Used within Z39.50-1988;
+ included here for historical
+ reasons but its use is
+ deprecated.
+
+ -->
+ <!--
+Concept-text 1014 Used within Z39.50-1988;
+ included here for historical
+ reasons but its use is
+ deprecated.
+
+ -->
+ <!--
+Content-type 1034 The type of materials derived value
+ contained in the item or from 008/24-27
+ publication. For example:
+ review, catalog, encyclopedia,
+ directory.
+
+ -->
+ <!--
+Control number-BNB 10 Character string that uniquely 015
+ identifies a record in the
+ British National Bibliography.
+
+ -->
+ <!--
+Control number-BNF 11 Character string that uniquely 015
+ identifies a record in the
+ Bibliotheque Nationale Francais.
+
+ -->
+ <!--
+Control number-DB 52 Character string that uniquely 015
+ identifies a record in the
+ Deutsche Bibliothek.
+
+ -->
+ <!--
+Control number-LC 9 Character string that uniquely 010, 011
+ identifies a record in the
+ Library of Congress database.
+
+ -->
+ <!--
+Control number-local 12 Character string that uniquely 001, 035
+ identifies a record in a local
+ system (i.e., any system that
+ is not one of the four listed
+ above).
+
+ -->
+ <!--
+Date 30 The point of time at which 005, 008/00-05,
+ a transaction or event 008/07-10, 260$c,
+ takes place. 008/11-14, 033,etc.
+
+ -->
+ <!--
+Date-publication 31 The date (usually year) in 008/07-10, 260$c
+ which a document is published. 046, 533$d
+
+ -->
+ <!--
+Date-acquisition 32 The date when a document was 541$d
+ acquired.
+
+ -->
+ <!--
+Date/time added to 1011 The date and time that a 008/00-05
+database record was added to the
+ database.
+
+ -->
+ <!--
+Date/time last 1012 The date and time a record 005
+modified was last updated.
+
+ -->
+ <!--
+Identifier 1013 Used in full-text searching
+authority/format to indicate to the target
+ system the format of the
+ document that should be
+ returned to the originating
+ system. The attribute carries
+ not only the format code, but
+ also the authority (e.g.,
+ system) that assigned that
+ code.
+
+ -->
+ <!--
+Identifier-CODEN 60 A six-character, unique, 030
+ alphanumeric code assigned
+ to serial and monographic
+ publications by the CODEN
+ section of the Chemical
+ Abstracts Service.
+
+ -->
+ <!--
+Identifier-document 1032 A persistent identifier, or
+ Doc-ID, assigned by a server,
+ that uniquely identifies a
+ document on that server.
+
+ -->
+ <!--
+Identifier-ISBN 7 International Standard Book 020
+ Number - internationally
+ agreed upon number that
+ identifies a book uniquely.
+ Cf. ANSI/NISO Z39.21 and
+ ISO 2108.
+
+ -->
+ <xsl:template name="ISBN">
+ <xsl:for-each select="marc:datafield[@tag='020']/marc:subfield[@code='a']">
+ <z:index name="ISBN" type="n">
<xsl:value-of select="."/>
</z:index>
</xsl:for-each>
</xsl:template>
- <xsl:template name="Author-name-conference">
- <xsl:for-each select="marc:datafield[@tag='111']">
- <z:index name="Author-name-conference" type="w">
+ <!--
+Identifier-ISSN 8 International Standard Serial 022, 4XX$x,
+ Number - internationally 7XX$x
+ agreed upon number that
+ identifies a serial uniquely.
+ Cf. ANSI/NISO z39.9 and
+ ISO 3297.
+
+ -->
+ <xsl:template name="ISSN">
+ <xsl:for-each select="marc:datafield[@tag='022']">
+ <z:index name="ISSN" type="n">
<xsl:value-of select="."/>
</z:index>
</xsl:for-each>
</xsl:template>
+ <!--
+Identifier-legal- 49 The copyright registration 017
+deposit number that is assigned to
+ an item when the item is
+ deposited for copyright.
+
+ -->
+ <!--
+Identifier-local-call 53 Call number (e.g., shelf location)
+ assigned by a local system
+ (not a classification number).
+
+ -->
+ <!--
+Identifier-national- 48 Character string that uniquely 015
+bibliography identifies a record in a
+ national bibliography.
+
+ -->
+ <!--
+Identifier-publisher- 51 A formatted number assigned 028
+for-music by a publisher to a sound
+ recording or to printed music.
+
+ -->
+ <!--
+Identifier-report 1027 A report number assigned to 027, 088
+ the item. This number could be
+ the STRN (Standard Technical
+ Report Number) or another
+ report number.
+ Cf. ANSI/NISO Z39.23 and
+ ISO 10444.
+
+ -->
+ <!--
+Identifier-standard 1007 Standard numbers such as ISBN, 010, 011, 015, 017,
+ ISSN, music publishers 018, 020, 022, 023,
+ numbers, CODEN, etc., that 024, 025, 027, 028,
+ are indexed together in many 030, 035, 037
+ online public-access catalogs.
+
+ -->
+ <!--
+Identifier-stock 1028 A stock number that could be 037
+ used for ordering the item.
+
+ -->
+ <!--
+Identifier-thematic 1030 The numeric designation for a $n in the following:
+ part/section of a work such as 130, 240, 243, 630,
+ the serial, opus or thematic 700, 730
+ index number.
+
+ -->
+ <!--
+Indexed-by 1023 For serials, a publication 510
+ in which the serial has been
+ indexed and/or abstracted.
+
+ -->
+ <!--
+Material-type 1031 A free-form string, more derived value from
+ specific than the one-letter Leader/06-07, 007,
+ code in Leader/06, that 008, and 502
+ describes the material type
+ of the item, e.g., cassette,
+ kit, computer database,
+ computer file.
+
+ -->
+ <!--
+Music-key 1025 A statement of the key in $r in the following:
+ which the music is written. 130, 240, 243, 630,
+ 700, 730
+
+ -->
+ <!--
+Name 1002 The name of a person, corporate 100, 110, 111, 400,
+ body, conference, or meeting. 410, 411, 600, 610,
+ (Subject name headings are 611, 700, 710, 711,
+ included.) 800, 810, 811
+
+ -->
+ <!--
+Name-and-title 57 The name of a person, corporate 100/2XX, 110/2XX,
+ body, conference, or meeting, 111/2XX, subfields
+ and the title of an item. $a & $t in
+ (Subject name headings are following: 400,410,
+ included.) The syntax of the 411, 600, 610, 611,
+ name-title combination is up 700, 710, 711, 800,
+ to the target, unless used 810, 811
+ with the Structure attribute
+ Key (see below).
+
+ -->
+ <!--
+Name-corporate 2 An organization or a group 110, 410, 610, 710,
+ of persons that is identified 810
+ by a particular name. (Subject
+ name headings are included.)
+
+ -->
+ <!--
+Name-conference 3 A meeting of individuals or 111, 411, 611, 711
+ representatives of various 811
+ bodies for the purpose of
+ discussing topics of common
+ interest. (Subject name
+ headings are included.)
+ -->
+ <!--
+Name-editor 1020 A person who prepared for 100 $a or 700 $a when
+ publication an item that is the corresponding $e
+ not his or her own. contains value 'ed.'
+
+ -->
+ <!--
+Name-geographic 58 Name of a country, 651
+ jurisdiction, region, or
+ geographic feature.
+
+ -->
+ <!--
+Name-geographic-place- 59 City or town where an item 008/15-17, 260$a
+publication was published.
+
+ -->
+ <!--
+Name-personal 1 A person's real name, 100, 400, 600, 700,
+ pseudonym, title of nobility 800
+ nickname, or initials.
+
+ -->
+ <!--
+Name-publisher 1018 The organization responsible 260$b
+ for the publication of the
+ item.
+
+ -->
+ <!--
+Note 63 A concise statement in which 5XX
+ such information as extended
+ physical description,
+ relationship to other works,
+ or contents may be recorded.
+
+ -->
+ <!--
+Record-source 1019 The USMARC code or name of the 008/39, 040
+ organization(s) that created
+ the original record, assigned
+ the USMARC content designation
+ and transcribed the record into
+ machine-readable form, or
+ modified the existing USMARC
+ record; the cataloging source.
+
+ -->
+ <!--
+Server-choice 1017 The target substitutes one or
+ more access points. The origin
+ leaves the choice to the target.
+
+ Notes on relationship of Any and Server-choice:
+ (1) When the origin uses 'Server-choice' it is asking the target
+ to select one or more access points, and to use its best
+ judgment in making that selection. When 'Any' is used,
+ there is no selection process involved; the target is to
+ apply all of the (appropriate) supported Use attributes.
+ The origin is asking the target to make a choice of access
+ points.
+ (2) The target might support 'Any' and not 'Server-choice', or
+ vice versa, or both. If the target supports both, when the
+ origin uses 'Server-choice', the target might choose 'Any';
+ however, it might choose any other Use attribute.
+
+ -->
+ <!--
+Subject 21 The primary topic on which a 600, 610, 611, 630,
+ work is focused. 650, 651, 653, 654,
+ 655, 656, 657, 69X
+
+ -->
<xsl:template name="Subject-heading">
<xsl:for-each select="marc:datafield[@tag='600']
|marc:datafield[@tag='610']
</xsl:for-each>
</xsl:template>
+ <!--
+Subject-BDI 23 Subject headings from
+ Bibliotek Dokumentasjon
+ Informasjon - a controlled
+ subject vocabulary used and
+ maintained by the five Nordic
+ countries (Denmark, Finland,
+ Iceland, Norway, and Sweden).
+
+ -->
+ <!--
+Subject-INSPEC 24 Subject headings from 600i2, 610i2,
+ Information Services for the 611i2, 630i2,
+ Physics and Engineering 650i2, 651i2
+ Communities - the Information
+ Services Division of the
+ Institution of Electrical
+ Engineers.
+
+ -->
+ <!--
+Subject-LC 27 Subject headings from 600i0, 610i0,
+ US Library of Congress 611i0, 630i0,
+ Subject Headings. 650i0, 651i0
+
+ -->
+ <!--
+Subject-LC- 1008 Subject headings, for use 600i1, 610i1,
+children's with children's literature, 611i1, 630i1,
+ that conform to the 650i1, 651i1
+ formulation guidelines in
+ the "AC Subject Headings"
+ section of the Library of
+ Congress Subject Headings.
+
+ -->
+ <!--
+Subject-local 29 Subjects headings defined
+ locally.
+
+ -->
+ <!--
+Subject-MESH 25 Subject headings from 600i2, 610i2,
+ Medical Subject Headings - 611i2, 630i2,
+ maintained by the US National 650i2, 651i2
+ Library of Medicine.
+
+ -->
+ <!--
+Subject-name- 1009 A person's real name, 600
+personal pseudonym, title of nobility
+ nickname, or initials that
+ appears in a subject heading.
+
+ -->
+ <!--
+Subject-PA 26 Subject headings from 600i2, 610i2,
+ Thesaurus of Psychological 611i2, 630i2,
+ Index Terms - maintained 650i2, 651i2
+ by the Retrieval Services Unit
+ of the American Psychological
+ Association.
+
+ -->
+ <!--
+Subject-PRECIS 45 Subject headings from
+ PREserved Context Index
+ System - a string of indexing
+ terms set down in a prescribed
+ order, each term being preceded
+ by a manipulation code which
+ governs the production of
+ pre-coordinated subject index
+ entries under selected terms -
+ maintained by the British
+ Library.
+
+ -->
+ <!--
+Subject-RAMEAU 22 Subject headings from
+ Repertoire d'authorite de
+ matieres encyclopedique
+ unifie - maintained by the
+ Bibliotheque Nationale
+ (France).
+ -->
+ <!--
+Subject-RSWK 46 Subject headings from
+ Regeln fur den
+ Schlagwortkatalog -
+ maintained by the Deutsches
+ Bibliotheksinstitut.
+
+ -->
+ <!--
+Subject-RVM 28 Subject headings from 600i6, 610i6,
+ Repertoire des vedettes- 611i6, 630i6,
+ matiere - maintained by the 650i6, 651i6
+ Bibliotheque de l'Universite
+ de Laval.
+
+ -->
+ <!--
+Subject-subdivision 47 An extension to a subject 6XX$x, 6XX$y,
+ heading indicating the form, 6XX$z
+ place, period of time treated,
+ or aspect of the subject
+ treated.
+
+ -->
+ <!--
+Title 4 A word, phrase, character, 130, 21X-24X, 440,
+ or group of characters, 490, 730, 740, 830,
+ normally appearing in an item, 840, subfield $t
+ that names the item or the in the following:
+ work contained in it. 400, 410, 410, 600,
+ 610, 611, 700, 710,
+ 711, 800, 810, 811
+
+ -->
<xsl:template name="Title">
<xsl:for-each select="marc:datafield[@tag='245']/marc:subfield[@code='a']">
<z:index name="Title" type="w">
</xsl:template>
+ <!--
+Title-abbreviated 43 Shortened form of the title; 210, 211 (obs.),
+ either assigned by national 246
+ centers under the auspices of
+ the International Serials Data
+ System, or a title (such as an
+ acronym) that is popularly
+ associated with the item.
- <!--
- <xsl:template match="marc:controlfield[@tag=005]">
- <recordChangeDate encoding="iso8601">
- <xsl:value-of select="."/>
- </recordChangeDate>
- </xsl:template>
+ -->
+ <!--
+Title-added-title-page 37 A title on a title page 246i5
+ preceding or following the
+ title page chosen as the basis
+ for the description of the
+ item. It may be more general
+ (e.g., a series title page),
+ or equally general (e.g., a
+ title page in another
+ language).
- <xsl:template match="marc:controlfield[@tag=008]">
- <recordCreationDate encoding="marc">
- <xsl:value-of select="substring(.,1,6)"/>
- </recordCreationDate>
- </xsl:template>
+ -->
+ <!--
+Title-caption 38 A title given at the beginning 246i6
+ of the first page of the text.
- <xsl:template match="marc:datafield[@tag=010]">
- <identifier>
- <xsl:value-of select="marc:subfield[@code='a']"/>
- </identifier>
- </xsl:template>
+ -->
+ <!--
+Title-collective 34 A title proper that is an 243
+ inclusive title for an item
+ containing several works.
+ -->
+ <!--
+Title-cover 36 The title printed on the 246i4
+ cover of an item as issued.
- <xsl:template match="marc:datafield[@tag=024]">
- <identifier>
- <xsl:value-of select="marc:subfield[@code='a']"/>
- </identifier>
- </xsl:template>
+ -->
+ <!--
+Title-expanded 44 An expanded (or augmented) 214 (obs.), 246
+ title has been enlarged with
+ descriptive words by the
+ cataloger to provide
+ additional indexing and
+ searching capabilities.
+ -->
+ <!--
+Title-former 42 A former title or title 247, 780
+ variation when one
+ bibliographic record
+ represents all issues of
+ a serial that has changed
+ title.
- <xsl:template match="marc:datafield[@tag=040]/marc:subfield[@code='a']">
- <recordContentSource authority="marcorg">
- <xsl:value-of select="."/>
- </recordContentSource>
- </xsl:template>
+ -->
+ <!--
+Title-host-item 1033 The title of the item 773$t
+ containing the part
+ described in the record, for
+ example, a journal title
+ when the record describes an
+ article in the journal.
- <xsl:template match="marc:datafield[@tag=040]/marc:subfield[@code='b']">
- <languageOfCataloging>
- <languageTerm authority="iso639-2b" type="code">
- <xsl:value-of select="."/>
- </languageTerm>
- </languageOfCataloging>
- </xsl:template>
-
- <xsl:template match="marc:datafield[@tag=400]">
- <variant>
- <xsl:call-template name="variantTypeAttribute"/>
- <name type="personal">
- <xsl:call-template name="nameABCDQ"/>
- <xsl:call-template name="role"/>
- </name>
- <xsl:apply-templates/>
- <xsl:call-template name="title"/>
- </variant>
- </xsl:template>
+ -->
+ <!--
+Title-key 33 The unique name assigned to 222
+ a serial by the International
+ Serials Data System (ISDS).
- <xsl:template match="marc:datafield[@tag=410]">
- <variant>
- <xsl:call-template name="variantTypeAttribute"/>
- <name type="corporate">
- <xsl:call-template name="nameABCDN"/>
- <xsl:call-template name="role"/>
- </name>
- <xsl:apply-templates/>
- </variant>
- </xsl:template>
+ -->
+ <!--
+Title-other-variant 41 A variation from the title 212 (obs.), 246i3,
+ page title appearing elsewhere 247, 740
+ in the item (e.g., a variant
+ cover title, caption title,
+ running title, or title from
+ another volume) or in another
+ issue.
- <xsl:template match="marc:datafield[@tag=411]">
- <variant>
- <xsl:call-template name="variantTypeAttribute"/>
- <name type="conference">
- <xsl:call-template name="nameACDENQ"/>
- </name>
- <xsl:apply-templates/>
- </variant>
- </xsl:template>
+ -->
+ <!--
+Title-parallel 35 The title proper in another 246i1
+ language and/or script.
- <xsl:template match="marc:datafield[@tag=500]|marc:datafield[@tag=700]">
- <related>
- <xsl:call-template name="relatedTypeAttribute"/>
- <name type="personal">
- <xsl:call-template name="setAuthority"/>
-
- <xsl:call-template name="nameABCDQ"/>
- <xsl:call-template name="role"/>
- </name>
- <xsl:call-template name="title"/>
- <xsl:apply-templates/>
- </related>
- </xsl:template>
+ -->
+ <!--
+Title-related- 1026 Serial titles related to this 247, 780, 785
+periodical item, either the immediate
+ predecessor or the immediate
+ successor.
- <xsl:template match="marc:datafield[@tag=510]|marc:datafield[@tag=710]">
- <related>
- <xsl:call-template name="relatedTypeAttribute"/>
- <name type="corporate">
- <xsl:call-template name="setAuthority"/>
- <xsl:call-template name="nameABCDN"/>
- <xsl:call-template name="role"/>
- </name>
- <xsl:apply-templates/>
- </related>
- </xsl:template>
+ -->
+ <!--
+Title-running 39 A title, or abbreviated title, 246i7
+ that is repeated at the head
+ or foot of each page or leaf.
+
+ -->
+ <!--
+Title-series 5 Collective title applying to 440, 490, 830, 840,
+ a group of separate, but subfield $t in the
+ related, items. following: 400,410,
+ 411, 800, 810, 811
- <xsl:template match="marc:datafield[@tag=511]|marc:datafield[@tag=711]">
- <related>
- <xsl:call-template name="relatedTypeAttribute"/>
- <name type="conference">
- <xsl:call-template name="setAuthority"/>
- <xsl:call-template name="nameACDENQ"/>
- </name>
- <xsl:apply-templates/>
- </related>
- </xsl:template>
- -->
-
- <!-- title processing -->
-
- <!--
- <xsl:template name="title">
- <titleInfo>
- <xsl:call-template name="setAuthority"/>
- <title>
- <xsl:variable name="str">
- <xsl:for-each select="marc:subfield">
- <xsl:if test="(contains('tfghklmors',@code) )">
- <xsl:value-of select="text()"/>
- <xsl:text> </xsl:text>
- </xsl:if>
- </xsl:for-each>
- </xsl:variable>
-
- <xsl:call-template name="chopPunctuation">
- <xsl:with-param name="chopString">
- <xsl:value-of select="substring($str,1,string-length($str)-1)"/>
- </xsl:with-param>
- </xsl:call-template>
- </title>
- <xsl:call-template name="part"/>
- </titleInfo>
- </xsl:template>
-->
+ <!--
+Title-spine 40 A title appearing on the 246i8
+ spine of an item.
+
+ -->
+ <!--
+Title-uniform 6 The particular title by which 130, 240, 730,
+ a work is to be identified subfield $t in the
+ for cataloging purposes. following: 700,710,
+ 711
+-->
+