Comments (8)
Looks like the MARC21 documentation (see for instance here also uses the proposed syntax where indicator can also be first:
$a - Title
...
245 10$aNineteenth-century bird prints.
This all would be valid MARCspec, the first two are typical in documentation:
- $a
- 245_10$a
- 245a
- 245$a
- 245a_10
- 245$a_10
from marcspec.
; refer to a character position or range
characterSpec = [ fieldTag ] "/" characterPositionOrRange
Why is the fieldTag optional?
Does the MARCspec $a
refer to all subfields "a" in the record?
Are these true:
100$_ ; valid (subfield "_" of field "100")
100$_1 ; valid (subfields "_" and "1" of field "100")
100$__ ; invalid (missing indicators)
100$__1 ; valid (subfield "_" of field "100" within context of indicator 1 == 1)
?
Because of the allowed characters for subfield tags
! " # $ % & ' ( ) * + , - . / : ; < = > ? { } _ ^ ` ~ [ ] \
I expect some problems:
100_ ; valid subfield "_" or invalid because missing indicators?
100$a_ ; valid subfields "a", "_" or invalid because missing indicators?
Maybe the solution is to restrict the position of subfieldSpec at the end of the marcspec and require a "$"?
245_10$a ; valid
245__0 ; valid
245_1 ; valid
245$a ; valid
245$$ ; valid (subfield "$")
245$_ ; valid (subfield "_")
245_$ ; invalid (missing indicators)
245$ ; invalid (missing subfield tags)
245a ; invalid (missing "$")
from marcspec.
There is another problem with indizes see #4
How is something like 245$a[0]
interpreted? Is it the first subfield "a" or is it the subfields "a", "[", "0" and "]"?
Another possibility is to prefix every subfield tag with a "$".
245$a$[$0$]$$ ; valid (subfields "a", "[", "0", "]" and "$")
245$ab ; invalid (missing "$" for second subfield tag)
245$a[0] ; valid (first subfield "a")
245$__ ; invalid (missing indicators)
245$__1 ; valid (subfield "_" within context of indicator 1 == 1)
245_1$_ ; valid (same as above)
245_1$_a ; invalid (missing "$" before subfield tag "a")
from marcspec.
It really troubles me using only a subfield tag or a character position or range as a MARCspec. Shouldn't a MARCspec always be a reference to data in a MARC record? Otherwise it must be defined what a MARCspec references within the referenced data?
from marcspec.
This thread mixes too many different topics.
from marcspec.
Subfield ranges and indizes are done with tag v0.4draft. I don't think that it is a good idea to allow a MARCspec relative to a given subfield. When exchanging MARCspecs then you have to state if the MARCspec is relative to a record, a field or a subfield. This won't work.
from marcspec.
ok, pointers to parts of a field may be expressed with strings that follow the syntax rules fieldSpec
, characterSpec
or subfieldSpec
, but this should not be called MARCspec. I note on reusing part of MARCspec syntax should be included nevertheless.
from marcspec.
This issue is done with v0.5draft
from marcspec.
Related Issues (20)
- Is the scope of MARCspec MARC 21 or ISO 2709? HOT 3
- tests HOT 3
- make error: openFile: does not exist HOT 9
- Referring to multiple specs for a given mapping/output HOT 2
- Is some fallback syntax necessary? HOT 2
- Interprete ComparisonString as a regular expression
- Question / request for clarification HOT 5
- http://marcspec.github.io/ root URL doesn't show anything useful HOT 1
- references to values of indicators HOT 4
- Suggestion of renaming the specification elements, and make it more clear HOT 4
- FieldTag definition HOT 3
- Automatic build not working? HOT 1
- MarcSpec for Python pymarc HOT 15
- Question on subfield branch of marcSpec rule HOT 2
- subfieldChar includes punctuation as well as alphanumeric? HOT 2
- allow alphabetic characters in field tag HOT 2
- Support for pointing to a subfields that follow a specific character HOT 3
- Use "*" instead of X for wildcards HOT 3
- Use "/" instead of "~" for character posion and range HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from marcspec.