MARCFrame

KB/LIBRIS mappings of MARC to RDF vocabulary terms.

bib

thingLink:

000
aboutEntity: ?record
link: marc:encLevel
tokenMap: EncLevelType
uriTemplate: {_}
NOTE:repeatable: False
TODO: merge with 040.e
aboutEntity: ?record
addLink: descriptionConventions
fixedDefault:
tokenMap: CatFormType
uriTemplate: {_}
aboutEntity: ?record
fixedDefault:
link: marc:linked
tokenMap: LinkedType
uriTemplate: {_}
aboutEntity: ?record
fixedDefault: 4500
property: marc:entryMap
aboutEntity: ?record
link: marc:status
tokenMap: StatusType
uriTemplate: {_}
aboutEntity: ?work
property: @type
tokenMap: TypeOfRecordType
TODO:implied?:fixedDefault: m
aboutEntity: ?thing
property: issuanceType
tokenMap: BibLevelType
aboutEntity: ?record
fixedDefault:
link: marc:typeOfControl
tokenMap: TypeOfControlType
uriTemplate: {_}
aboutEntity: ?record
fixedDefault: a
link: marc:characterCoding
tokenMap: CharacterCodingType
uriTemplate: {_}
False
  • Example

    MARC
    {
      "fields": [
        {"001": "0000000"}
      ],
      "leader": "     cam a        a 4500"
    }
    JSON-LD
    {
      "@id": "http://libris.kb.se/bib/0000000",
      "@type": "Record",
      "controlNumber": "0000000",
      "descriptionConventions": [
        {"@id": "marc:Aacr2"}
      ],
      "mainEntity": {
        "@id": "http://libris.kb.se/resource/bib/0000000",
        "@type": "Instance",
        "instanceOf": {"@type": "Text"},
        "issuanceType": "Monograph"
      },
      "marc:status": {"@id": "marc:CorrectedOrRevised"}
    }
  • Example

    MARC
    {
      "fields": [
        {"001": "0000000"},
        {
          "040": {
            "subfields": [
              {"e": "rda"}
            ]
          }
        }
      ],
      "leader": "     cam a        i 4500"
    }
    JSON-LD
    {
      "@id": "http://libris.kb.se/bib/0000000",
      "@type": "Record",
      "controlNumber": "0000000",
      "descriptionConventions": [
        {"@id": "marc:Isbd"},
        {
          "@type": "DescriptionConventions",
          "notation": "rda"
        }
      ],
      "mainEntity": {
        "@id": "http://libris.kb.se/resource/bib/0000000",
        "@type": "Instance",
        "instanceOf": {"@type": "Text"},
        "issuanceType": "Monograph"
      },
      "marc:status": {"@id": "marc:CorrectedOrRevised"}
    }
001
aboutType:
Record
property:
controlNumber
  • Example

    MARC
    {
      "fields": [
        {"001": "7149593"}
      ]
    }
    JSON-LD
    {"controlNumber": "7149593"}
003
property:
systemName
005
property:
modified
  • Example

    MARC
    {"005": "20130814170612.0"}
    JSON-LD
    {"modified": "2013-08-14T17:06:12.0+02:00"}
006
addLink:
hasPart
[10:11]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[11:12]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[12:13]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[13:14]
link: marc:text
tokenMap: MusicTextType
uriTemplate: {_}
[14:15]
link: marc:text
tokenMap: MusicTextType
uriTemplate: {_}
[16:17]
link: marc:transposition
tokenMap: MusicTranspositionType
uriTemplate: {_}
[1:3]
link: marc:composition
tokenMap: MusicCompositionType
uriTemplate: {_}
[3:4]
link: additionalType
tokenMap: MusicFormatType
uriTemplate: {_}
[4:5]
link: marc:parts
tokenMap: MusicPartsType
uriTemplate: {_}
[5:6]
link: audience
tokenMap: AudienceType
uriTemplate: {_}
[6:7]
link: marc:additionalCarrierType
tokenMap: ItemType
uriTemplate: {_}
[7:8]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[8:9]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[9:10]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[11:12]
link: marc:govtPub
tokenMap: GovernmentPublicationType
uriTemplate: {_}
[12:13]
link: marc:additionalCarrierType
tokenMap: ItemType
uriTemplate: {_}
[14:15]
fixedDefault: 0
link: marc:index
tokenMap: IndexType
uriTemplate: {_}
[16:17]
link: additionalType
tokenMap: MapsFormatType
uriTemplate: {_}
[17:18]
link: additionalType
tokenMap: MapsFormatType
uriTemplate: {_}
[1:2]
link: marc:relief
tokenMap: MapsReliefType
uriTemplate: {_}
[2:3]
link: marc:relief
tokenMap: MapsReliefType
uriTemplate: {_}
[3:4]
link: marc:relief
tokenMap: MapsReliefType
uriTemplate: {_}
[4:5]
link: marc:relief
tokenMap: MapsReliefType
uriTemplate: {_}
[5:7]
link: marc:projection
tokenMap: MapsProjectionType
uriTemplate: {_}
[7:8]
link: marc:primeMeridian
tokenMap: MapsPrimeMeridianType
uriTemplate: {_}
[8:9]
link: marc:material
tokenMap: MapsMaterialType
uriTemplate: {_}
[11:12]
link: marc:govtPub
tokenMap: GovernmentPublicationType
uriTemplate: {_}
[5:6]
link: audience
tokenMap: AudienceType
uriTemplate: {_}
[6:7]
link: marc:additionalCarrierType
tokenMap: ComputerItemType
uriTemplate: {_}
[9:10]
addLink: contentType
tokenMap: ComputerTypeOfFileType
uriTemplate: {_}
[6:7]
link: marc:additionalCarrierType
tokenMap: ItemType
uriTemplate: {_}
[7:8]
link: marc:additionalCarrierType
tokenMap: ItemType
uriTemplate: {_}
[10:11]
link: marc:contents
tokenMap: SerialsContentsType
uriTemplate: {_}
[11:12]
link: marc:govtPub
tokenMap: GovernmentPublicationType
uriTemplate: {_}
[12:13]
fixedDefault: 0
property: marc:confPub
tokenMap: {u'1': True, u'0': False}
[16:17]
link: marc:alphabet
tokenMap: SerialsAlphabetType
uriTemplate: {_}
[17:18]
link: marc:typeOfEntry
tokenMap: SerialsTypeOfEntryType
uriTemplate: {_}
[1:2]
link: marc:frequencyCategory
tokenMap: SerialsFrequencyType
uriTemplate: {_}
[2:3]
link: marc:regularity
tokenMap: SerialsRegularityType
uriTemplate: {_}
[3:4]
link: marc:issn
tokenMap: SerialsISSNType
uriTemplate: {_}
[4:5]
addLink: contentType
tokenMap: SerialsTypeOfSerialType
uriTemplate: {_}
[5:6]
link: marc:originalItem
tokenMap: SerialsOriginalItemType
uriTemplate: {_}
[6:7]
link: marc:additionalCarrierType
tokenMap: ItemType
uriTemplate: {_}
[7:8]
link: marc:nature
tokenMap: SerialsNatureType
uriTemplate: {_}
[8:9]
link: marc:contents
tokenMap: SerialsContentsType
uriTemplate: {_}
[9:10]
link: marc:contents
tokenMap: SerialsContentsType
uriTemplate: {_}
[10:11]
addLink: contentType
tokenMap: BooksContentsType
uriTemplate: {_}
[11:12]
link: marc:govtPub
tokenMap: GovernmentPublicationType
uriTemplate: {_}
[12:13]
fixedDefault: 0
property: marc:confPub
tokenMap: {u'1': True, u'0': False}
[13:14]
fixedDefault: 0
property: marc:festschrift
tokenMap: {u'1': True, u'0': False}
[14:15]
fixedDefault: 0
link: marc:index
tokenMap: IndexType
uriTemplate: {_}
[16:17]
link: marc:literaryForm
tokenMap: BooksLiteraryFormType
uriTemplate: {_}
[17:18]
link: marc:biography
tokenMap: BooksBiographyType
uriTemplate: {_}
[1:2]
link: marc:illustrations
tokenMap: BooksIllustrationsType
uriTemplate: {_}
[2:3]
link: marc:illustrations
tokenMap: BooksIllustrationsType
uriTemplate: {_}
[3:4]
link: marc:illustrations
tokenMap: BooksIllustrationsType
uriTemplate: {_}
[4:5]
link: marc:illustrations
tokenMap: BooksIllustrationsType
uriTemplate: {_}
[5:6]
link: audience
tokenMap: AudienceType
uriTemplate: {_}
[6:7]
link: marc:additionalCarrierType
tokenMap: BooksItemType
uriTemplate: {_}
[7:8]
addLink: contentType
tokenMap: BooksContentsType
uriTemplate: {_}
[8:9]
addLink: contentType
tokenMap: BooksContentsType
uriTemplate: {_}
[9:10]
addLink: contentType
tokenMap: BooksContentsType
uriTemplate: {_}
[10:11]
link: marc:matter
tokenMap: VisualMatterType
uriTemplate: {_}
[11:12]
link: marc:govtPub
tokenMap: GovernmentPublicationType
uriTemplate: {_}
[12:13]
link: marc:additionalCarrierType
tokenMap: ItemType
uriTemplate: {_}
[16:17]
addLink: contentType
tokenMap: VisualMaterialType
uriTemplate: {_}
[17:18]
link: marc:technique
tokenMap: VisualTechniqueType
uriTemplate: {_}
[1:4]
property: marc:runningTime
[5:6]
link: audience
tokenMap: AudienceType
uriTemplate: {_}
[6:7]
link: marc:matter
tokenMap: VisualMatterType
uriTemplate: {_}
[7:8]
link: marc:matter
tokenMap: VisualMatterType
uriTemplate: {_}
[8:9]
link: marc:matter
tokenMap: VisualMatterType
uriTemplate: {_}
[9:10]
link: marc:matter
tokenMap: VisualMatterType
uriTemplate: {_}
property: @type
tokenMap: {u'a': u'Text', u'c': u'Audio', u'e': u'Cartography', u'd': u'Audio', u'g': u'Visual', u'f': u'Cartography', u'i': u'Audio', u'k': u'Visual', u'j': u'Audio', u'm': u'Digital', u'o': u'Visual', u'p': u'Mixed', u's': u'Serial', u'r': u'Visual', u't': u'Text'}
?work
hasPart
True
[0:1]
007
[10:11]
link: marc:qATarget
tokenMap: ComputerQATargetType
uriTemplate: {_}
[11:12]
link: marc:antecedent
tokenMap: ComputerAntecedentType
uriTemplate: {_}
[12:13]
link: marc:compression
tokenMap: ComputerCompressionType
uriTemplate: {_}
[13:14]
link: marc:reformattingQuality
tokenMap: ComputerReformattingQualityType
uriTemplate: {_}
[1:2]
addLink: carrierType
tokenMap: ComputerMaterialType
uriTemplate: {_}
[2:3]
fixedDefault:
link: marc:fileAspect
tokenMap: MapAspectType
uriTemplate: {_}
[3:4]
link: marc:color
tokenMap: ComputerColorType
uriTemplate: {_}
[4:5]
link: marc:dimensionsCategory
tokenMap: ComputerDimensionsType
uriTemplate: {_}
[5:6]
link: marc:sound
tokenMap: ComputerSoundType
uriTemplate: {_}
[6:9]
property: imageBitDepth
[9:10]
link: marc:fileFormats
tokenMap: ComputerFileFormatsType
uriTemplate: {_}
[1:2]
addLink: carrierType
tokenMap: GlobeMaterialType
uriTemplate: {_}
[2:3]
fixedDefault:
link: marc:aspect
tokenMap: MapAspectType
uriTemplate: {_}
[3:4]
link: marc:color
tokenMap: MapColorType
uriTemplate: {_}
[4:5]
link: marc:medium
tokenMap: GlobeMediumType
uriTemplate: {_}
[5:6]
link: marc:reproduction
tokenMap: ReproductionType
uriTemplate: {_}
Kit
[1:2]
addLink: carrierType
tokenMap: KitMaterialType
uriTemplate: {_}
Map
[1:2]
addLink: carrierType
tokenMap: MapMaterialType
uriTemplate: {_}
[2:3]
fixedDefault:
link: marc:aspect
tokenMap: MapAspectType
uriTemplate: {_}
[3:4]
link: marc:color
tokenMap: MapColorType
uriTemplate: {_}
[4:5]
link: marc:medium
tokenMap: MapMediumType
uriTemplate: {_}
[5:6]
link: marc:reproduction
tokenMap: ReproductionType
uriTemplate: {_}
[6:7]
link: marc:details
tokenMap: MapDetailsType
uriTemplate: {_}
[7:8]
link: marc:posNeg
tokenMap: PolarityType
uriTemplate: {_}
[10:11]
link: marc:emulsion
tokenMap: MicroformEmulsionType
uriTemplate: {_}
[11:12]
link: marc:generation
tokenMap: MicroformGenerationType
uriTemplate: {_}
[12:13]
link: marc:base
tokenMap: FilmBaseType
uriTemplate: {_}
[1:2]
addLink: carrierType
tokenMap: MicroformMaterialType
uriTemplate: {_}
[2:3]
fixedDefault:
link: marc:aspect
tokenMap: MapAspectType
uriTemplate: {_}
[3:4]
link: marc:posNeg
tokenMap: PolarityType
uriTemplate: {_}
[4:5]
link: marc:dimensionsCategory
tokenMap: MicroformDimensionsType
uriTemplate: {_}
[5:6]
link: marc:range
tokenMap: MicroformRangeType
uriTemplate: {_}
[6:9]
parseZeroPaddedNumber: True
property: reductionRatio
[9:10]
link: marc:color
tokenMap: MicroformColorType
uriTemplate: {_}
[10:11]
link: marc:motionPicPosNeg
tokenMap: MotionPicPosNegType
uriTemplate: {_}
[11:12]
link: marc:motionPicGeneration
tokenMap: MotionPicGenerationType
uriTemplate: {_}
[12:13]
link: marc:motionPicBase
tokenMap: FilmBaseType
uriTemplate: {_}
[13:14]
link: marc:motionPicCategories
tokenMap: MotionPicCategoriesType
uriTemplate: {_}
[14:15]
link: marc:motionPicColorStock
tokenMap: MotionPicColorStockType
uriTemplate: {_}
[15:16]
link: marc:motionPicDeterioration
tokenMap: MotionPicDeteriorationType
uriTemplate: {_}
[16:17]
link: marc:motionPicCompleteness
tokenMap: MotionPicCompletenessType
uriTemplate: {_}
[17:23]
property: timeOfExamination
[1:2]
addLink: carrierType
tokenMap: MotionPicMaterialType
uriTemplate: {_}
[2:3]
fixedDefault:
link: marc:motionPicAspect
tokenMap: MapAspectType
uriTemplate: {_}
[3:4]
link: marc:motionPicColor
tokenMap: MotionPicColorType
uriTemplate: {_}
[4:5]
link: marc:motionPicFormat
tokenMap: MotionPicFormatType
uriTemplate: {_}
[5:6]
link: marc:motionPicSound
tokenMap: SoundType
uriTemplate: {_}
[6:7]
link: marc:motionPicMedium
tokenMap: MediumType
uriTemplate: {_}
[7:8]
link: marc:motionPicDimensions
tokenMap: MotionPicDimensionsType
uriTemplate: {_}
[8:9]
link: marc:motionPicConfiguration
tokenMap: MotionPicConfigurationOrVideoPlaybackType
uriTemplate: {_}
[9:10]
link: marc:motionPicElements
tokenMap: MotionPicElementsType
uriTemplate: {_}
[1:2]
addLink: carrierType
tokenMap: KitMaterialType
uriTemplate: {_}
[1:2]
addLink: carrierType
tokenMap: ProjGraphMaterialType
uriTemplate: {_}
[2:3]
fixedDefault:
link: marc:projGraphAspect
tokenMap: MapAspectType
uriTemplate: {_}
[3:4]
link: marc:projGraphColor
tokenMap: ColorType
uriTemplate: {_}
[4:5]
link: marc:projGraphEmulsion
tokenMap: ProjGraphEmulsionType
uriTemplate: {_}
[5:6]
link: marc:projGraphSound
tokenMap: SoundType
uriTemplate: {_}
[6:7]
link: marc:projGraphMedium
tokenMap: MediumType
uriTemplate: {_}
[7:8]
link: marc:projGraphDimensions
tokenMap: ProjGraphDimensionsType
uriTemplate: {_}
[8:9]
link: marc:projGraphSupport
tokenMap: ProjGraphSupportType
uriTemplate: {_}
[1:2]
addLink: carrierType
tokenMap: KitMaterialType
uriTemplate: {_}
[3:4]
link: marc:remoteSensImageAltitude
tokenMap: RemoteSensImageAltitudeType
uriTemplate: {_}
[4:5]
link: marc:remoteSensImageAttitude
tokenMap: RemoteSensImageAttitudeType
uriTemplate: {_}
[5:6]
link: marc:remoteSensImageCloud
tokenMap: RemoteSensImageCloudType
uriTemplate: {_}
[6:7]
link: marc:remoteSensImageConstruction
tokenMap: RemoteSensImageConstructionType
uriTemplate: {_}
[7:8]
link: marc:remoteSensImageUse
tokenMap: RemoteSensImageUseType
uriTemplate: {_}
[8:9]
link: marc:remoteSensImageSensor
tokenMap: RemoteSensImageSensorType
uriTemplate: {_}
[9:11]
link: marc:remoteSensImageData
tokenMap: RemoteSensImageDataType
uriTemplate: {_}
[10:11]
link: marc:soundKindOfMaterial
tokenMap: SoundKindOfMaterialType
uriTemplate: {_}
[11:12]
link: marc:soundKindOfCutting
tokenMap: SoundKindOfCuttingType
uriTemplate: {_}
[12:13]
link: marc:soundPlaybackCharacter
tokenMap: SoundPlaybackCharacterType
uriTemplate: {_}
[13:14]
link: marc:soundCapture
tokenMap: SoundCaptureType
uriTemplate: {_}
[1:2]
addLink: carrierType
tokenMap: SoundMaterialType
uriTemplate: {_}
[2:3]
fixedDefault:
link: marc:soundAspect
tokenMap: MapAspectType
uriTemplate: {_}
[3:4]
link: marc:soundSpeed
tokenMap: SoundSpeedType
uriTemplate: {_}
[4:5]
link: marc:soundPlaybackChannel
tokenMap: SoundPlaybackChannelType
uriTemplate: {_}
[5:6]
link: marc:soundGroove
tokenMap: SoundGrooveType
uriTemplate: {_}
[6:7]
link: marc:soundDimensions
tokenMap: SoundDimensionsType
uriTemplate: {_}
[7:8]
link: marc:soundTapeWidth
tokenMap: SoundTapeWidthType
uriTemplate: {_}
[8:9]
link: marc:soundTapeConfiguration
tokenMap: SoundTapeConfigurationType
uriTemplate: {_}
[9:10]
link: marc:soundKindOfDisc
tokenMap: SoundKindOfDiscType
uriTemplate: {_}
[1:2]
addLink: carrierType
tokenMap: NonProjMaterialType
uriTemplate: {_}
[2:3]
fixedDefault:
link: marc:nonProjAspect
tokenMap: MapAspectType
uriTemplate: {_}
[3:4]
link: marc:nonProjColor
tokenMap: ColorType
uriTemplate: {_}
[4:5]
link: marc:nonProjPrimary
tokenMap: NonProjectedType
uriTemplate: {_}
[5:6]
link: marc:nonProjSecondary
tokenMap: NonProjectedType
uriTemplate: {_}
[1:2]
addLink: carrierType
tokenMap: TacMaterialType
uriTemplate: {_}
[3:4]
link: marc:tacBrailleWriting
tokenMap: TacBrailleWritingType
uriTemplate: {_}
[4:5]
link: marc:tacBrailleWriting
tokenMap: TacBrailleWritingType
uriTemplate: {_}
[5:6]
link: marc:tacContraction
tokenMap: TacContractionType
uriTemplate: {_}
[6:7]
link: marc:tacBrailleMusic
tokenMap: TacBrailleMusicType
uriTemplate: {_}
[7:8]
link: marc:tacBrailleMusic
tokenMap: TacBrailleMusicType
uriTemplate: {_}
[8:9]
link: marc:tacBrailleMusic
tokenMap: TacBrailleMusicType
uriTemplate: {_}
[9:10]
link: marc:tacSpecPhysicalChar
tokenMap: TacSpecPhysicalCharType
uriTemplate: {_}
[1:2]
addLink: carrierType
tokenMap: TextMaterialType
uriTemplate: {_}
[1:2]
addLink: carrierType
tokenMap: VideoMaterialType
uriTemplate: {_}
[3:4]
link: marc:videoColor
tokenMap: VideoColorType
uriTemplate: {_}
[4:5]
link: marc:videoFormat
tokenMap: VideoFormatType
uriTemplate: {_}
[5:6]
link: marc:videoSound
tokenMap: SoundType
uriTemplate: {_}
[6:7]
link: marc:videoMedium
tokenMap: MediumType
uriTemplate: {_}
[7:8]
link: marc:videoDimensions
tokenMap: VideoDimensionsType
uriTemplate: {_}
[8:9]
link: marc:videoPlayback
tokenMap: MotionPicConfigurationOrVideoPlaybackType
uriTemplate: {_}
property: @type
tokenMap: {u'a': u'Map', u'c': u'Electronic', u'd': u'Globe', u'g': u'ProjectedImage', u'f': u'Tactile', u'h': u'Microform', u'k': u'StillImage', u'm': u'MovingImage', u'o': u'Kit', u'q': u'NotatedMusic', u's': u'SoundRecording', u'r': u'RemoteSensingImage', u't': u'Text', u'v': u'VideoRecording', u'z': None}
addLink: hasPart
embedded: True
True
[0:1]
  • Example

    MARC
    {"007": "aj |a|||"}
    Normalized when converted back from JSON-LD:
    {"007": "aj |a|||               "}
    JSON-LD
    {
      "mainEntity": {
        "@type": "Map",
        "carrierType": [
          {"@id": "marc:MapATwoDimensionalMap"}
        ],
        "marc:medium": {"@id": "marc:Paper"}
      }
    }
  • Example

    MARC
    [
      {"007": "aj |a|||               "},
      {"007": "cj |||   a||||         "}
    ]
    JSON-LD
    {
      "mainEntity": {
        "@type": "Map",
        "carrierType": [
          {"@id": "marc:MapATwoDimensionalMap"}
        ],
        "hasPart": [
          {
            "@type": "Electronic",
            "carrierType": [
              {"@id": "marc:MagneticDisk"}
            ],
            "marc:fileFormats": {"@id": "marc:OneFileFormat"}
          }
        ],
        "marc:medium": {"@id": "marc:Paper"}
      }
    }
008
[18:20]
aboutEntity: ?work
link: marc:composition
tokenMap: MusicCompositionType
uriTemplate: {_}
[20:21]
aboutEntity: ?work
link: additionalType
tokenMap: MusicFormatType
uriTemplate: {_}
[21:22]
aboutEntity: ?work
link: marc:parts
tokenMap: MusicPartsType
uriTemplate: {_}
[22:23]
aboutEntity: ?work
link: audience
tokenMap: AudienceType
uriTemplate: {_}
[23:24]
link: marc:additionalCarrierType
tokenMap: ItemType
uriTemplate: {_}
[24:25]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[25:26]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[26:27]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[27:28]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[28:29]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[29:30]
link: marc:matter
tokenMap: MusicMatterType
uriTemplate: {_}
[30:31]
link: marc:text
tokenMap: MusicTextType
uriTemplate: {_}
[31:32]
link: marc:text
tokenMap: MusicTextType
uriTemplate: {_}
[33:34]
link: marc:transposition
tokenMap: MusicTranspositionType
uriTemplate: {_}
[18:19]
link: marc:relief
tokenMap: MapsReliefType
uriTemplate: {_}
[19:20]
link: marc:relief
tokenMap: MapsReliefType
uriTemplate: {_}
[20:21]
link: marc:relief
tokenMap: MapsReliefType
uriTemplate: {_}
[21:22]
link: marc:relief
tokenMap: MapsReliefType
uriTemplate: {_}
[22:24]
link: marc:projection
tokenMap: MapsProjectionType
uriTemplate: {_}
[24:25]
link: marc:primeMeridian
tokenMap: MapsPrimeMeridianType
uriTemplate: {_}
[25:26]
link: marc:material
tokenMap: MapsMaterialType
uriTemplate: {_}
[28:29]
aboutEntity: ?work
link: marc:govtPub
tokenMap: GovernmentPublicationType
uriTemplate: {_}
[29:30]
link: marc:additionalCarrierType
tokenMap: ItemType
uriTemplate: {_}
[31:32]
fixedDefault: 0
link: marc:index
tokenMap: IndexType
uriTemplate: {_}
[33:34]
aboutEntity: ?work
link: additionalType
tokenMap: MapsFormatType
uriTemplate: {_}
[34:35]
aboutEntity: ?work
link: additionalType
tokenMap: MapsFormatType
uriTemplate: {_}
[18:19]
link: marc:frequencyCategory
tokenMap: ComputerFrequencyType
uriTemplate: {_}
[19:20]
link: marc:regularity
tokenMap: ComputerRegularityType
uriTemplate: {_}
[22:23]
aboutEntity: ?work
link: audience
tokenMap: AudienceType
uriTemplate: {_}
[23:24]
link: marc:additionalCarrierType
tokenMap: ComputerItemType
uriTemplate: {_}
[26:27]
aboutEntity: ?work
addLink: contentType
tokenMap: ComputerTypeOfFileType
uriTemplate: {_}
[28:29]
aboutEntity: ?work
link: marc:govtPub
tokenMap: GovernmentPublicationType
uriTemplate: {_}
[23:24]
link: marc:additionalCarrierType
tokenMap: ItemType
uriTemplate: {_}
[18:19]
link: marc:frequencyCategory
tokenMap: SerialsFrequencyType
uriTemplate: {_}
[19:20]
link: marc:regularity
tokenMap: SerialsRegularityType
uriTemplate: {_}
[20:21]
link: marc:issn
tokenMap: SerialsISSNType
uriTemplate: {_}
[21:22]
aboutEntity: ?work
addLink: contentType
tokenMap: SerialsTypeOfSerialType
uriTemplate: {_}
[22:23]
link: marc:originalItem
tokenMap: SerialsOriginalItemType
uriTemplate: {_}
[23:24]
link: marc:additionalCarrierType
tokenMap: ItemType
uriTemplate: {_}
[24:25]
aboutEntity: ?work
link: marc:nature
tokenMap: SerialsNatureType
uriTemplate: {_}
[25:26]
aboutEntity: ?work
link: marc:contents
tokenMap: SerialsContentsType
uriTemplate: {_}
[26:27]
aboutEntity: ?work
link: marc:contents
tokenMap: SerialsContentsType
uriTemplate: {_}
[27:28]
aboutEntity: ?work
link: marc:contents
tokenMap: SerialsContentsType
uriTemplate: {_}
[28:29]
aboutEntity: ?work
link: marc:govtPub
tokenMap: GovernmentPublicationType
uriTemplate: {_}
[29:30]
aboutEntity: ?work
fixedDefault: 0
property: marc:confPub
tokenMap: {u'1': True, u'0': False}
[33:34]
link: marc:alphabet
tokenMap: SerialsAlphabetType
uriTemplate: {_}
[34:35]
link: marc:typeOfEntry
tokenMap: SerialsTypeOfEntryType
uriTemplate: {_}
[18:19]
aboutEntity: ?work
link: marc:illustrations
tokenMap: BooksIllustrationsType
uriTemplate: {_}
[19:20]
aboutEntity: ?work
link: marc:illustrations
tokenMap: BooksIllustrationsType
uriTemplate: {_}
[20:21]
aboutEntity: ?work
link: marc:illustrations
tokenMap: BooksIllustrationsType
uriTemplate: {_}
[21:22]
aboutEntity: ?work
link: marc:illustrations
tokenMap: BooksIllustrationsType
uriTemplate: {_}
[22:23]
aboutEntity: ?work
link: audience
tokenMap: AudienceType
uriTemplate: {_}
[23:24]
link: marc:additionalCarrierType
tokenMap: BooksItemType
uriTemplate: {_}
[24:25]
aboutEntity: ?work
addLink: contentType
tokenMap: BooksContentsType
uriTemplate: {_}
[25:26]
aboutEntity: ?work
addLink: contentType
tokenMap: BooksContentsType
uriTemplate: {_}
[26:27]
aboutEntity: ?work
addLink: contentType
tokenMap: BooksContentsType
uriTemplate: {_}
[27:28]
aboutEntity: ?work
addLink: contentType
tokenMap: BooksContentsType
uriTemplate: {_}
[28:29]
aboutEntity: ?work
link: marc:govtPub
tokenMap: GovernmentPublicationType
uriTemplate: {_}
[29:30]
aboutEntity: ?work
fixedDefault: 0
property: marc:confPub
tokenMap: {u'1': True, u'0': False}
[30:31]
aboutEntity: ?work
fixedDefault: 0
property: marc:festschrift
tokenMap: {u'1': True, u'0': False}
[31:32]
fixedDefault: 0
link: marc:index
tokenMap: IndexType
uriTemplate: {_}
[33:34]
aboutEntity: ?work
link: marc:literaryForm
tokenMap: BooksLiteraryFormType
uriTemplate: {_}
[34:35]
aboutEntity: ?work
link: marc:biography
tokenMap: BooksBiographyType
uriTemplate: {_}
[18:21]
property: marc:runningTime
[22:23]
aboutEntity: ?work
link: audience
tokenMap: AudienceType
uriTemplate: {_}
[23:24]
link: marc:matter
tokenMap: VisualMatterType
uriTemplate: {_}
[24:25]
link: marc:matter
tokenMap: VisualMatterType
uriTemplate: {_}
[25:26]
link: marc:matter
tokenMap: VisualMatterType
uriTemplate: {_}
[26:27]
link: marc:matter
tokenMap: VisualMatterType
uriTemplate: {_}
[27:28]
link: marc:matter
tokenMap: VisualMatterType
uriTemplate: {_}
[28:29]
aboutEntity: ?work
link: marc:govtPub
tokenMap: GovernmentPublicationType
uriTemplate: {_}
[29:30]
link: marc:additionalCarrierType
tokenMap: ItemType
uriTemplate: {_}
[33:34]
aboutEntity: ?work
addLink: contentType
tokenMap: VisualMaterialType
uriTemplate: {_}
[34:35]
link: marc:technique
tokenMap: VisualTechniqueType
uriTemplate: {_}
aboutEntity: ?record
parseDateTime: yyMMdd
property: created
timeZone: CET
property: marc:otherYear
TODO:linkedEntity:
link place
linkedEntity link: isPartOf
resourceType: Country
uriTemplate: https://id.kb.se/country/{_}

addLink: publicationCountry
uriTemplate: https://id.kb.se/country/{_}
aboutEntity: ?work
addLink: language
matchUriToken: ^\w{2,3}$
spec:
matches [u'swe', u'sv']
notMatches [u'N/A', u' ', u'---', u'en-US', u'en_us']

uriTemplate: https://id.kb.se/language/{_}
aboutEntity: ?record
link: marc:modifiedRecord
tokenMap: ModifiedRecordType
uriTemplate: {_}
aboutEntity: ?record
link: marc:catalogingSource
tokenMap: CatalogingSourceType
uriTemplate: {_}
link: marc:publicationStatus
tokenMap: PublicationStatusType
uriTemplate: {_}
property: marc:publishedYear
a,h,t:
Serial [u'9', u'b', u'i', u'p', u's']
Text [u'a', u'c', u'd', u'm']

b:
Mixed [u'9', u'a', u'c', u'd', u'i', u'm', u'p']
Serial [u'b', u's']

c,d,i,j:
Audio [u'9', u'a', u'b', u'c', u'd', u'i', u'm', u'p', u's']

e,f:
Cartography [u'9', u'a', u'b', u'c', u'd', u'i', u'm', u'p', u's']

g,k,n,o,r:
Visual [u'9', u'a', u'b', u'c', u'd', u'i', u'm', u'p', u's']

m:
Digital [u'9', u'a', u'b', u'c', u'd', u'i', u'm', u'p', u's']

p:
Mixed [u'a', u'c', u'd', u'i', u'm', u'p']
Serial [u'b', u's']
Visual [u'9']

False
  • Example

    MARC
    [
      {"008": "900101s1977    sw |||||||||||000 0aswe| "}
    ]
    JSON-LD
    {
      "created": "1990-01-01T00:00:00.0+01:00",
      "mainEntity": {
        "instanceOf": {
          "@type": "Text",
          "language": [
            {"@id": "https://id.kb.se/language/swe"}
          ],
          "marc:biography": {"@id": "marc:Autobiography"},
          "marc:literaryForm": {"@id": "marc:NotFictionNotFurtherSpecified"}
        },
        "marc:publicationStatus": {"@id": "marc:SingleKnownDateProbableDate"},
        "marc:publishedYear": "1977",
        "publicationCountry": [
          {"@id": "https://id.kb.se/country/sw"}
        ]
      }
    }
010
resourceType:
LCCN
$b
property: marc:numcNumber
013
015
resourceType:
NBN
$2
TODO:
restrictedTo http://www.loc.gov/standards/sourcelist/national-bibliography.html
uriTemplate ...{code}

link: source
property: code
$a
addProperty: value
$z
addProperty: marc:hiddenValue
016
addLink:
identifiedBy
resourceType:
Identifier
i2:
marcDefault
$2
TODO: see 015 $2
link: source
property: code
requires-i1: 7
$a
addProperty: value
$z
addProperty: marc:hiddenValue
017
018
020
resourceType:
ISBN
$c
property: acquisitionTerms
  • Example

    MARC
    {
      "020": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "91-0-056322-6 (inb.)"},
          {"c": "310:00"}
        ]
      }
    }
    Normalized when converted back from JSON-LD:
    {
      "020": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "91-0-056322-6"},
          {"c": "310:00"},
          {"q": "inb."}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "identifiedBy": [
          {
            "@type": "ISBN",
            "acquisitionTerms": "310:00",
            "note": "inb.",
            "value": "91-0-056322-6"
          }
        ]
      }
    }
  • Example

    MARC
    {
      "020": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "9781137368331 (e-book)"},
          {"z": "9780230274396 (print)"}
        ]
      }
    }
    Normalized when converted back from JSON-LD:
    {
      "020": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "9781137368331"},
          {"q": "e-book"},
          {"z": "9780230274396 (print)"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "identifiedBy": [
          {
            "@type": "ISBN",
            "marc:hiddenValue": [
              "9780230274396 (print)"
            ],
            "note": "e-book",
            "value": "9781137368331"
          }
        ]
      }
    }
  • Example

    MARC
    {
      "020": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"z": "9780240811444 (pbk. : alk. paper)"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "identifiedBy": [
          {
            "@type": "ISBN",
            "marc:hiddenValue": [
              "9780240811444 (pbk. : alk. paper)"
            ]
          }
        ]
      }
    }
  • Example

    MARC
    {
      "020": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "(US)"}
        ]
      }
    }
    Normalized when converted back from JSON-LD:
    {
      "020": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"q": "US"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "identifiedBy": [
          {
            "@type": "ISBN",
            "note": "US"
          }
        ]
      }
    }
022
resourceType:
ISSN
i1:
marcDefault
property marc:internationalInterest
tokenMap 0: True
1: False
$2
$l
property: marc:issnL
$m
addProperty: marc:canceledIssnL
$y
TODO: inherit:$z + specific: marc:incorrectIssn
  • Example

    MARC
    {
      "022": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "0345-0856"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "identifiedBy": [
          {
            "@type": "ISSN",
            "value": "0345-0856"
          }
        ]
      }
    }
  • Example

    MARC
    {
      "022": {
        "ind1": "0",
        "ind2": " ",
        "subfields": [
          {"a": "0345-0856"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "identifiedBy": [
          {
            "@type": "ISSN",
            "marc:internationalInterest": true,
            "value": "0345-0856"
          }
        ]
      }
    }
024
i1:
property @type
tokenMap 0: ISRC
1: UPC
2: ISMN
3: EAN
4: SICI
7: Identifier
8: Identifier
i2:
TODO ok to lock as undefined?
marcDefault
$2
property: typeNote
requires-i1: 7
  • Example: indicator as tokenMap

    MARC
    {
      "024": {
        "ind1": "3",
        "ind2": " ",
        "subfields": [
          {"a": "1234567890"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "identifiedBy": [
          {
            "@type": "EAN",
            "value": "1234567890"
          }
        ]
      }
    }
  • Example: indicator from $2 when i1 = 7

    MARC
    {
      "024": {
        "ind1": "7",
        "ind2": " ",
        "subfields": [
          {"a": "1234567890"},
          {"2": "xyz"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "identifiedBy": [
          {
            "@type": "Identifier",
            "typeNote": "xyz",
            "value": "1234567890"
          }
        ]
      }
    }
025
026
027
resourceType:
STRN
028
addLink:
identifiedBy
i1:
property @type
tokenMap 0: IssueNumber
1: MatrixNumber
2: MusicPlate
3: MusicPublisherNumber
4: VideorecordingNumber
5: PublisherNumber
$a
property: value
$b
link: agent
property: name
resourceType: Organization
  • Example

    MARC
    {
      "028": {
        "ind1": "0",
        "ind2": " ",
        "subfields": [
          {"a": "1"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "identifiedBy": [
          {
            "@type": "IssueNumber",
            "value": "1"
          }
        ]
      }
    }
030
resourceType:
CODEN
031
032
033
resourceType:
Event
addProperty:
eventContent
i2:
property @type
tokenMap 0: RecordingEvent
1: BroadcastEvent
2: DiscoveryEvent
$2
property: marc:placeCodeSource
$3
property: part
$a
addProperty: date
$b
addProperty: marc:geographicClassificationAreaCode
$c
addProperty: marc:geographicClassificationSubareaCode
$p
addLink: place
property: label
resourceType: Place
034
addLink:
marc:cartographicAscensionAndDeclination
resourceType:
marc:CartographicCoordinates
i2:
property marc:ringType
tokenMap 0: marc:OuterRing
1: marc:ExcludingRing
$2
property: source
$3
property: part
$a
property: marc:scaleType
tokenMap: {u'a': u'marc:LinearScale', u'b': u'marc:AngularScale', u'z': u'marc:Other'}
$b
addProperty: marc:constantRatioLinearHorizontalScale
$c
addProperty: marc:constantRatioLinearVerticalScale
$d
property: marc:westernmostLongitudeCoordinates
$e
property: marc:easternmostLongitudeCoordinates
$f
property: marc:northernmostLatitudeCoordinates
$g
property: marc:southernmostLatitudeCoordinates
$h
addProperty: marc:angularScale
$j
property: marc:declinationNorthernLimit
$k
property: marc:declinationSouthernLimit
$m
property: marc:rightAscensionEasternLimit
$n
property: marc:rightAscensionWesternLimit
$p
property: marc:cartographicEquinox
$r
property: marc:distanceFromEarth
$s
addProperty: marc:gRingLatitude
$t
addProperty: marc:gRingLongitude
$x
property: startDate
$y
property: endDate
$z
link: marc:extraterrestrialBody
property: name
resourceType: PlanetaryObject
035
$9
addProperty: librisIIINumber
$a
addProperty: systemNumber
  • Example: interpret dbpedia URI as sameAs of instance

    MARC
    [
      {
        "035": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"a": "123"}
          ]
        }
      },
      {
        "035": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"a": "http://dbpedia.org/resource/August_Strindberg"}
          ]
        }
      }
    ]
    JSON-LD
    {
      "mainEntity": {
        "sameAs": [
          {"@id": "http://dbpedia.org/resource/August_Strindberg"}
        ]
      },
      "systemNumber": [
        "123"
      ]
    }
036
040
$9
property: license
$a
link: assigner
property: name
resourceType: Organization
$b
addLink: descriptionLanguage
matchUriToken: ^\w{2,3}$
property: notation
uriTemplate: https://id.kb.se/language/{_}
$c
link: marc:transcribingAgency
property: name
resourceType: Organization
$d
link: descriptionModifier
property: name
resourceType: Organization
$e
addLink: descriptionConventions
property: notation
resourceType: DescriptionConventions
041
$a
TODO: not repeated if equal with existing
addLink: language
matchUriToken: ^\w{2,3}$
property: notation
uriTemplate: https://id.kb.se/language/{_}
$b
about: _:summary
addLink: language
matchUriToken: ^\w{2,3}$
property: notation
uriTemplate: https://id.kb.se/language/{_}
$h
about: _:translationSource
addLink: language
matchUriToken: ^\w{2,3}$
property: notation
uriTemplate: https://id.kb.se/language/{_}
$k
about: _:original
addLink: language
matchUriToken: ^\w{2,3}$
property: notation
uriTemplate: https://id.kb.se/language/{_}
042
$9
addLink: bibliography
property: sigel
resourceType: Library
uriTemplate: http://libris.kb.se/library/{_}
$a
property: authenticationCode
043
050
$a
property: classificationLcc
$b
ignored: True
060
addLink:
classification
resourceType:
ClassificationNlm
$a
property: notation
$b
ignored: True
property: classificationItem
072
addLink:
subject
resourceType:
Concept
$2
link: source
property: code
$a
property: label
$x
link: inCollection
property: label
080
addLink:
classification
resourceType:
ClassificationUdc
$a
property: notation
  • Example

    MARC
    {
      "080": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "030"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "instanceOf": {
          "@type": "Text",
          "classification": [
            {
              "@type": "ClassificationUdc",
              "notation": "030"
            }
          ]
        }
      }
    }
082
addLink:
classification
083
addLink:
classification
084
addLink:
classification
resourceType:
Classification
$2
link: inScheme
property: notation
resourceType: ConceptScheme
uriTemplate: https://id.kb.se/term/{+_}
$a
property: notation
required: True
$b
property: classificationItem
100
resourceType:
Principal
  • Example

    MARC
    {
      "100": {
        "ind1": "1",
        "ind2": " ",
        "subfields": [
          {"a": "Jansson, Tove,"},
          {"d": "1914-2001"}
        ]
      }
    }
    Normalized when converted back from JSON-LD:
    {
      "100": {
        "ind1": "1",
        "ind2": " ",
        "subfields": [
          {"a": "Jansson, Tove"},
          {"d": "1914-2001"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "instanceOf": {
          "@type": "Text",
          "qualifiedAttribution": [
            {
              "@type": "Principal",
              "agent": {
                "@type": "Person",
                "birthYear": "1914",
                "deathYear": "2001",
                "familyName": "Jansson",
                "givenName": "Tove"
              }
            }
          ]
        }
      }
    }
110
link:
attributedTo
resourceType:
Organization
i1:
marcDefault 2
match-i1:
0 $a:
property name
required True

1 $a:
property name
rejoin ,
required True
splitValuePattern ([^,]+)(?:,\s*([^,]+))
splitValueProperties [u'familyName', u'givenName']

$a
property: name
111
inherit:
bib 110
resourceType:
Meeting
$c
link: location
property: label
resourceType: Place
$d
property: date
130
link:
expressionOf
resourceType:
UniformWork
$a
property: uniformTitle
$d
property: date
$l
link: language
property: label
resourceType: Language
210
addLink:
hasTitle
resourceType:
AbbreviatedTitle
$2
property: sourceNote
$a
property: mainTitle
$b
property: qualifyingNote
222
addLink:
hasTitle
resourceType:
KeyTitle
$a
property: mainTitle
$b
property: qualifyingNote
240
link:
hasTitle
resourceType:
WorkTitle
$a
property: mainTitle
242
addLink:
marc:hasTranslatedTitle
resourceType:
InstanceTitle
$c
property: responsibilityStatement
$h
property: marc:mediaTerm
$y
link: language
property: notation
243
addLink:
hasTitle
resourceType:
CollectiveTitle
$a
property: mainTitle
245
addLink:
hasTitle
resourceType:
InstanceTitle
i2:
marcDefault 0
$c
NOTE: interpunction may include data about included parts (e.g. short stories)
aboutEntity: ?thing
property: responsibilityStatement
$f
aboutEntity: ?thing
property: temporalCoverage
$g
aboutEntity: ?thing
property: marc:generalTemporalCoverageNote
$h
aboutEntity: ?thing
property: marc:mediaTerm
surroundingChars: []
$s
property: version
  • Example

    MARC
    {
      "245": {
        "ind1": "1",
        "ind2": "0",
        "subfields": [
          {"a": "Anteckningar från en ö"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "hasTitle": [
          {
            "@type": "InstanceTitle",
            "mainTitle": "Anteckningar från en ö"
          }
        ]
      }
    }
  • Example

    MARC
    {
      "245": {
        "ind1": "0",
        "ind2": "0",
        "subfields": [
          {"a": "Anteckningar från en ö"},
          {"c": "Tove Jansson, Tuulikki Pietilä"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "hasTitle": [
          {
            "@type": "InstanceTitle",
            "mainTitle": "Anteckningar från en ö",
            "marc:searchElement": false
          }
        ],
        "responsibilityStatement": "Tove Jansson, Tuulikki Pietilä"
      }
    }
246
addLink:
hasTitle
i1:
marcDefault 1
property marc:searchControl
tokenMap 0:
@id marc:NoteNoAddedEntry

1:
@id marc:NoteAddedEntry

2:
@id marc:NoNoteNoAddedEntry

3:
@id marc:NoNoteAddedEntry

i2:
TODO:if _ use $i
property @type
tokenMap 0: marc:TitlePart
1: ParallelTitle
2: VariantTitle
3: marc:AlsoTitle
4: CoverTitle
5: TitlePage
6: HeadingTitle
7: ColumnTitle
8: SpineTitle
$f
property: coverage
$g
property: note
$h
property: marc:mediaTerm
surroundingChars: []
$i
property: typeNote
247
addLink:
marc:previousTitle
resourceType:
InstanceTitle
i1:
marcDefault 0
property marc:isAddedEntry
tokenMap 1: True
i2:
marcDefault 0
property marc:showRemark
tokenMap 1: True
$f
property: date
$g
property: comment
$h
property: medium
$x
addProperty: issn
250
$3
property: part
$a
interpunctionChars: /
property: editionStatement
$b
property: editionEnumeration
  • Example

    MARC
    {
      "250": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "New ed."},
          {"b": "2. pr."}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "editionEnumeration": "2. pr.",
        "editionStatement": "New ed."
      }
    }
  • Example

    MARC
    {
      "250": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "New ed. /"}
        ]
      }
    }
    Normalized when converted back from JSON-LD:
    {
      "250": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "New ed."}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {"editionStatement": "New ed."}
    }
  • Example

    MARC
    [
      {
        "250": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"a": "New"}
          ]
        }
      },
      {
        "250": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"a": "Newer"}
          ]
        }
      }
    ]
    JSON-LD
    {
      "mainEntity": {
        "editionStatement": "New",
        "otherEdition": [
          {"editionStatement": "Newer"}
        ]
      }
    }
255
addLink:
cartographicAttributes
resourceType:
Cartographic
$a
property: scale
$b
property: projection
$c
property: coordinates
$d
property: cartographicZone
$e
property: equinox
$f
property: outerGRing
$g
property: exclusionGRing
256
$a
link: digitalCharacteristic
property: label
resourceType: FileType
260
$3
TODO: put in first out-split entity
about: ?publication
property: part
$a
about: ?publication
interpunctionChars: ,:
link: place
property: label
resourceType: Place
$b
about: ?publication
interpunctionChars: ,:;)
link: agent
property: label
resourceType: Agent
$c
about: ?publication
interpunctionChars: ,;
property: date
$e
about: ?manufacture
interpunctionChars: :;
link: place
property: label
resourceType: Place
surroundingChars: ()
$f
about: ?manufacture
interpunctionChars: ,:;)
link: agent
property: label
resourceType: Agent
$g
about: ?manufacture
interpunctionChars: ,;
property: date
  • Example

    MARC
    {
      "260": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "Stockholm"},
          {"b": "Bonnier"},
          {"c": "1996"},
          {"e": "Finland"}
        ]
      }
    }
    Normalized when converted back from JSON-LD:
    [
      {
        "264": {
          "ind1": " ",
          "ind2": "1",
          "subfields": [
            {"a": "Stockholm"},
            {"b": "Bonnier"},
            {"c": "1996"}
          ]
        }
      },
      {
        "264": {
          "ind1": " ",
          "ind2": "3",
          "subfields": [
            {"a": "Finland"}
          ]
        }
      }
    ]
    JSON-LD
    {
      "mainEntity": {
        "manufacture": [
          {
            "@type": "Manufacture",
            "place": {
              "@type": "Place",
              "label": "Finland"
            }
          }
        ],
        "publication": [
          {
            "@type": "Publication",
            "agent": {
              "@type": "Agent",
              "label": "Bonnier"
            },
            "date": "1996",
            "place": {
              "@type": "Place",
              "label": "Stockholm"
            }
          }
        ]
      }
    }
264
addLink:
provision
resourceType:
ProvisionActivity
match-i2:
0 addLink: production
resourceType: Production
1 addLink: publication
resourceType: Publication
2 addLink: distribution
resourceType: Distribution
3 addLink: manufacture
resourceType: Manufacture
4 addLink: copyright
resourceType: Copyright
$a
interpunctionChars: ,:
link: place
property: label
resourceType: Place
$b
interpunctionChars: ,:;)
link: agent
property: label
resourceType: Agent
$c
interpunctionChars: ,;
property: date
  • Example

    MARC
    [
      {
        "264": {
          "ind1": " ",
          "ind2": "1",
          "subfields": [
            {"a": "Stockholm"},
            {"b": "Bonnier"},
            {"c": "1996"}
          ]
        }
      },
      {
        "264": {
          "ind1": " ",
          "ind2": "3",
          "subfields": [
            {"a": "Finland"}
          ]
        }
      }
    ]
    JSON-LD
    {
      "mainEntity": {
        "manufacture": [
          {
            "@type": "Manufacture",
            "place": {
              "@type": "Place",
              "label": "Finland"
            }
          }
        ],
        "publication": [
          {
            "@type": "Publication",
            "agent": {
              "@type": "Agent",
              "label": "Bonnier"
            },
            "date": "1996",
            "place": {
              "@type": "Place",
              "label": "Stockholm"
            }
          }
        ]
      }
    }
300
$3
property: part
$a
interpunctionChars: +:;
property: extent
$b
interpunctionChars: ;+
property: marc:otherPhysicalDetails
$c
interpunctionChars: :;+
property: dimensions
$e
embedded: True
link: accompaniedBy
property: label
$f
link: device
property: label
resourceType: Device
310
$a
property: frequency
321
addLink:
replaces
resourceType:
Serial
$a
property: frequency
$b
property: date
336
$2
about: _:contentType
property: termGroup
$8
about: _:contentType
property: _groupID
$a
about: _:contentType
property: label
$b
about: _:contentType
property: notation
337
$2
about: _:mediaType
property: termGroup
$8
about: _:mediaType
property: _groupID
$a
about: _:mediaType
property: label
$b
about: _:mediaType
property: notation
338
$2
about: _:carrierType
property: termGroup
$8
about: _:carrierType
property: _groupID
$a
about: _:carrierType
property: label
$b
about: _:carrierType
property: notation
  • Example

    MARC
    {
      "338": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "volume"},
          {"b": "nc"},
          {"2": "rdacarrier"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "carrierType": [
          {
            "@type": "CarrierType",
            "label": "volume",
            "notation": "nc",
            "termGroup": "rdacarrier"
          }
        ]
      }
    }
362
$a
addProperty: issueNumber
440
addLink:
hasSeries
resourceType:
Serial
$0
$a
interpunctionChars: .,=;
property: title
$n
addProperty: numberOfPartOfAWork
$p
addProperty: nameOfPartOfAWork
interpunctionChars: .,=;
$v
property: seriesEnumeration
$w
addProperty: bibliographicRecordControlNumber
$x
interpunctionChars: .,=;
property: issn
490
inherit:
bib 440
$l
link: callno
property: notation
resourceType: Concept
500
$a
aboutEntity: ?thing
addProperty: comment
502
addLink:
dissertation
resourceType:
Dissertation
$a
property: note
$b
property: degree
$c
property: location
$d
property: date
$g
property: comment
504
$a
aboutEntity: ?thing
addProperty: supplementaryContentNote
505
$a
TODO: $t, $r
aboutEntity: ?thing
addProperty: listOfContents
506
$a
addProperty: acquisitionTerms
508
$a
aboutEntity: ?thing
addProperty: creditsNote
510
resourceType:
CreativeWork
addProperty:
citedBy
$a
property: title
$c
property: pagination
511
match-i1:
1 $a:
addProperty participantNote

$a
addProperty: performerNote
520
$a
addProperty: summary
  • Example

    MARC
    {
      "520": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"u": "http://example.org/thing-page"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "describedBy": [
          {
            "@type": "WebPage",
            "sameAs": [
              {"@id": "http://example.org/thing-page"}
            ]
          }
        ]
      }
    }
521
addLink:
audience
resourceType:
Audience
$a
property: label
530
addLink:
hasInstance
$a
addProperty: comment
533
addLink:
hasReproduction
resourceType:
Instance
$3
property: materialsSpecified
$5
property: institutionToWhichFieldApplies
$7
$a
interpunctionChars: :
property: description
$b
about: _:event
addLink: place
interpunctionChars: :
property: label
resourceType: Place
$c
about: _:event
addLink: agent
interpunctionChars: ,
property: label
resourceType: Agent
$d
about: _:event
property: date
$e
property: physicalDescription
$f
addProperty: seriesStatement
$m
addProperty: datesAndOrSequentialDesignationOfIssuesReproduced
$n
addProperty: note
  • Example: group properties into nested entities

    MARC
    {
      "533": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"a": "Digitalt faksimil och elektronisk text"},
          {"c": "Litteraturbanken"},
          {"d": "2010"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "hasReproduction": [
          {
            "@type": "Instance",
            "description": "Digitalt faksimil och elektronisk text",
            "provision": [
              {
                "@type": "ProvisionActivity",
                "agent": [
                  {
                    "@type": "Agent",
                    "label": "Litteraturbanken"
                  }
                ],
                "date": "2010"
              }
            ]
          }
        ]
      }
    }
538
$a
aboutEntity: ?thing
addProperty: systemRequirements
546
$a
addProperty: languageNote
562
addLink:
workExample
resourceType:
Item
$3
property: materialsSpecified
$a
addProperty: itemCondition
$b
addProperty: copyIdentification
$c
addProperty: versionIdentification
$d
addProperty: presentationFormat
$e
addProperty: inventoryLevel
588
$a
aboutEntity: ?record
addProperty: sourceNote
599
$a
aboutEntity: ?record
addProperty: technicalNote
600
addLink:
subject
resourceType:
Concept
610
addLink:
subject
resourceType:
OrganizationTerm
i1:
marcDefault 2
match-i1:
0 $a:
property name
rejoin ,
required True
splitValuePattern ([^,]+)(?:,\s*([^,]+))
splitValueProperties [u'familyName', u'givenName']

1 $a:
property name
required True

TODO: name of administrative unit
2 $a:
property name
required True

$a
property: name
required: True
  • Example

    MARC
    {
      "610": {
        "ind1": "2",
        "ind2": "7",
        "subfields": [
          {"a": "Kungl. biblioteket"},
          {"x": "samlingar"},
          {"2": "sao"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "instanceOf": {
          "@type": "Text",
          "subject": [
            {
              "@type": "OrganizationTerm",
              "inScheme": {
                "@id": "https://id.kb.se/term/sao",
                "@type": "ConceptScheme",
                "notation": "sao"
              },
              "termComponentList": [
                {
                  "@type": "Organization",
                  "name": "Kungl. biblioteket"
                },
                {
                  "@type": "SubdivisionTerm",
                  "prefLabel": "samlingar"
                }
              ]
            }
          ]
        }
      }
    }
611
inherit:
bib 111
addLink:
subject
resourceType:
MeetingTerm
630
inherit:
bib 130
addLink:
subject
resourceType:
UniformWork
648
addLink:
subject
resourceType:
ChronologicalTerm
650
addLink:
subject
resourceType:
TopicalTerm
i1:
marcDefault
property marc:subjectLevel
tokenMap 0:
@id marc:Unspecified

1:
@id marc:Primary

2:
@id marc:Secondary

  • Example

    MARC
    {
      "650": {
        "ind1": " ",
        "ind2": "7",
        "subfields": [
          {"a": "Fysik"},
          {"2": "sao"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "instanceOf": {
          "@type": "Text",
          "subject": [
            {
              "@id": "https://id.kb.se/term/sao/Fysik",
              "@type": "TopicalTerm",
              "inScheme": {
                "@id": "https://id.kb.se/term/sao",
                "@type": "ConceptScheme",
                "notation": "sao"
              },
              "prefLabel": "Fysik"
            }
          ]
        }
      }
    }
  • Example

    MARC
    {
      "650": {
        "ind1": " ",
        "ind2": "0",
        "subfields": [
          {"a": "Information"},
          {"y": "Information Age"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "instanceOf": {
          "@type": "Text",
          "subject": [
            {
              "@id": "http://id.loc.gov/authorities/label/Information--Information%20Age",
              "@type": "TopicalTerm",
              "inScheme": {
                "@id": "https://id.kb.se/term/lcsh",
                "@type": "ConceptScheme",
                "notation": "lcsh"
              },
              "prefLabel": "Information--Information Age",
              "termComponentList": [
                {
                  "@type": "TopicalTerm",
                  "prefLabel": "Information"
                },
                {
                  "@type": "ChronologicalTerm",
                  "prefLabel": "Information Age"
                }
              ]
            }
          ]
        }
      }
    }
651
addLink:
subject
resourceType:
GeographicalTerm
653
$a
aboutEntity: ?thing
property: keyword
654
655
addLink:
genre
resourceType:
GenreTerm
656
resourceType:
Profession
657
resourceType:
FunctionOrRole
700
resourceType:
Additional
  • Example

    MARC
    {
      "700": {
        "ind1": "1",
        "ind2": " ",
        "subfields": [
          {"a": "Pietilä, Tuulikki"},
          {"d": "1917-"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "instanceOf": {
          "@type": "Text",
          "qualifiedAttribution": [
            {
              "@type": "Additional",
              "agent": {
                "@type": "Person",
                "birthYear": "1917",
                "familyName": "Pietilä",
                "givenName": "Tuulikki"
              }
            }
          ]
        }
      }
    }
  • Example

    MARC
    {
      "700": {
        "ind1": "1",
        "ind2": " ",
        "subfields": [
          {"a": "Jansson, Tove"},
          {"t": "Anteckningar från en ö"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "instanceOf": {
          "@type": "Text",
          "qualifiedAttribution": [
            {
              "@type": "Additional",
              "agent": {
                "@type": "UniformWork",
                "attributedTo": {
                  "@type": "Person",
                  "familyName": "Jansson",
                  "givenName": "Tove"
                },
                "title": "Anteckningar från en ö"
              }
            }
          ]
        }
      }
    }
710
inherit:
bib 110
addLink:
influencedBy
711
inherit:
bib 111
730
addLink:
influentialRelation
resourceType:
UniformWork
$a
property: title
740
inherit:
bib 730
$a
property: title
760
inherit:
bib 772
addLink:
subseriesOf
resourceType:
Serial
762
inherit:
bib 772
addLink:
subseries
resourceType:
Serial
765
inherit:
bib 772
addLink:
translationOf
767
inherit:
bib 772
addLink:
translation
770
inherit:
bib 772
addLink:
contains
772
addLink:
isPartOf
resourceType:
CreativeWork
$9
addProperty: partNumber
$a
property: controlledLabel
$b
property: edition
$c
property: qualifyingNote
$d
property: placePublisherAndDateOfPublication
$g
addProperty: part
$h
property: physicalDescription
$i
addProperty: linkNote
$k
addProperty: seriesLabel
$m
property: mediaNote
$n
addProperty: note
$o
addProperty: identifier
$r
addProperty: reportNumber
$s
property: uniformTitle
$t
property: title
$u
property: standardTechnicalReportNumber
$w
addLink: describedBy
property: controlNumber
resourceType: Record
uriTemplate: http://libris.kb.se/bib/{_}
$x
property: issn
$y
property: coden
$z
addProperty: isbn
  • Example

    MARC
    {
      "772": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"s": "Main Thing"},
          {"z": "00-0-000000-0"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "isPartOf": [
          {
            "@type": "CreativeWork",
            "isbn": [
              "00-0-000000-0"
            ],
            "uniformTitle": "Main Thing"
          }
        ]
      }
    }
773
inherit:
bib 772
addLink:
isPartOf
resourceType:
Aggregate
$p
property: abbreviatedTitle
$q
property: pagination
774
inherit:
bib 772
addLink:
hasPart
resourceType:
CreativeWork
775
inherit:
bib 772
addLink:
otherEdition
$e
link: language
property: label
resourceType: Language
$f
property: publicationCountry
776
inherit:
bib 772
addLink:
otherPhysicalFormat
resourceType:
Instance
777
inherit:
bib 772
addLink:
inConjunctionWith
780
inherit:
bib 772
addLink:
precededBy
resourceType:
Serial
785
inherit:
bib 780
addLink:
succeededBy
resourceType:
Serial
786
inherit:
bib 772
addLink:
source
resourceType:
Dataset
787
inherit:
bib 772
addLink:
relatedTo
830
addLink:
isPartOf
resourceType:
Serial
$a
property: uniformTitle
$d
addProperty: date
$v
property: seriesEnumeration
$x
interpunctionChars: .,=;
property: issn
856
addLink:
True
i1:
marcDefault 4
match-i2:
0 addLink: associatedMedia
resourceType: MediaObject
1 addLink: otherPhysicalFormat
resourceType: Electronic
2 addLink: isPrimaryTopicOf
resourceType: Document
8 addLink: relatedTo
resourceType: Document
$3
property: description
$u
addLink: sameAs
uriTemplate: {+_}
$x
addProperty: cataloguersNote
$y
property: altLabel
$z
addProperty: copyNote
  • Example

    MARC
    {
      "856": {
        "ind1": "4",
        "ind2": "2",
        "subfields": [
          {"u": "http://example.org/review"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "isPrimaryTopicOf": [
          {
            "@type": "Document",
            "sameAs": [
              {"@id": "http://example.org/review"}
            ]
          }
        ]
      }
    }
  • Example

    MARC
    {
      "856": {
        "ind1": "4",
        "ind2": "0",
        "subfields": [
          {"u": "http://example.com/doc.pdf"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "associatedMedia": [
          {
            "@type": "MediaObject",
            "sameAs": [
              {"@id": "http://example.com/doc.pdf"}
            ]
          }
        ]
      }
    }
  • Example

    MARC
    [
      {
        "856": {
          "ind1": "4",
          "ind2": "0",
          "subfields": [
            {"u": "http://example.com/doc.pdf"}
          ]
        }
      },
      {
        "856": {
          "ind1": "4",
          "ind2": "2",
          "subfields": [
            {"u": "http://example.org/page"}
          ]
        }
      }
    ]
    JSON-LD
    {
      "mainEntity": {
        "associatedMedia": [
          {
            "@type": "MediaObject",
            "sameAs": [
              {"@id": "http://example.com/doc.pdf"}
            ]
          }
        ],
        "isPrimaryTopicOf": [
          {
            "@type": "Document",
            "sameAs": [
              {"@id": "http://example.org/page"}
            ]
          }
        ]
      }
    }
  • Example

    MARC
    {
      "856": {
        "ind1": "4",
        "ind2": "0",
        "subfields": [
          {"u": "http://www.framtidsstudier.se/filebank/files/20051201$133251$fil$048Ti3PL2UIwRJQEBbDG.pdf"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "associatedMedia": [
          {
            "@type": "MediaObject",
            "sameAs": [
              {"@id": "http://www.framtidsstudier.se/filebank/files/20051201$133251$fil$048Ti3PL2UIwRJQEBbDG.pdf"}
            ]
          }
        ]
      }
    }
886
887
976
addLink:
classification
resourceType:
Classification
i2:
TODO proper code for sab förkortad
link inScheme
property notation
resourceType ConceptScheme
tokenMap 0: sab/6
1: sab/5
2: sab
uriTemplate https://id.kb.se/term/{+_}
$a
property: notation
$b
property: prefLabel

auth

thingLink:

000
inherit:
bib 000
aboutEntity: ?record
link: marc:encLevel
tokenMap: AuthorityEncLevelType
uriTemplate: {_}
fixedDefault: z
None
bib
  • Example

    MARC
    {
      "fields": [
        {"001": "140482"}
      ],
      "leader": "     cz  a       n  4500"
    }
    JSON-LD
    {
      "@id": "http://libris.kb.se/auth/140482",
      "@type": "IndexTerm",
      "controlNumber": "140482",
      "focus": {
        "@id": "http://libris.kb.se/resource/auth/140482",
        "@type": "Thing"
      },
      "marc:encLevel": {"@id": "marc:CompleteAuthorityRecord"},
      "marc:status": {"@id": "marc:CorrectedOrRevised"}
    }
001
aboutType:
IndexTerm
property:
controlNumber
005
inherit:
bib 005
008
aboutEntity: ?record
parseDateTime: yyMMdd
property: created
timeZone: CET
aboutEntity: ?record
link: descriptionConventions
tokenMap: CatalogingRulesType
uriTemplate: {_}
aboutEntity: ?record
link: marc:subjectHeading
tokenMap: SubjectHeadingType
uriTemplate: {_}
aboutEntity: ?record
link: marc:typeOfSeries
tokenMap: TypeOfSeriesType
uriTemplate: {_}
aboutEntity: ?record
link: marc:numberedSeries
tokenMap: NumberedSeriesType
uriTemplate: {_}
aboutEntity: ?record
property: marc:headingMain
tokenMap: HeadingType
aboutEntity: ?record
fixedDefault: a
property: marc:headingSubject
tokenMap: {u'a': True, u'b': False}
aboutEntity: ?record
property: marc:headingSeries
tokenMap: HeadingType
aboutEntity: ?record
link: marc:subjectSubdivision
tokenMap: SubjectSubdivisionType
uriTemplate: {_}
aboutEntity: ?record
link: marc:govtAgency
tokenMap: GovtAgencyType
uriTemplate: {_}
aboutEntity: ?record
link: marc:reference
tokenMap: ReferenceType
uriTemplate: {_}
aboutEntity: ?record
link: marc:recordUpdate
tokenMap: RecordUpdateType
uriTemplate: {_}
aboutEntity: ?record
link: marc:personalName
tokenMap: PersonalNameType
uriTemplate: {_}
aboutEntity: ?record
link: marc:level
tokenMap: LevelType
uriTemplate: {_}
aboutEntity: ?record
link: marc:modifiedRecord
tokenMap: ModifiedRecordType
uriTemplate: {_}
aboutEntity: ?record
link: marc:catalogingSource
tokenMap: CatalogingSourceType
uriTemplate: {_}
aboutEntity: ?record
link: marc:subdivision
tokenMap: SubdivisionType
uriTemplate: {_}
aboutEntity: ?record
link: marc:romanization
tokenMap: RomanizationType
uriTemplate: {_}
aboutEntity: ?record
link: marc:languageOfCatalog
tokenMap: LanguageOfCatalogType
uriTemplate: {_}
aboutEntity: ?record
link: marc:kindOfRecord
tokenMap: KindOfRecordType
uriTemplate: {_}
False
035
inherit:
bib 035
040
inherit:
bib 040
$f
IMPROVE:about: $thing if Concept else $record
aboutEntity: ?record
link: inScheme
property: notation
resourceType: ConceptScheme
tokenMap: {u'barngf': u'barngf', u'gmgpc//swe': u'gmgpc//swe', u'sao': u'sao', u'sgp': u'sgp', u'saogf': u'saogf', u'barn': u'barn'}
uriTemplate: https://id.kb.se/term/{_}
  • Example

    MARC
    {
      "040": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"f": "barn"}
        ]
      }
    }
    JSON-LD
    {
      "inScheme": {
        "@id": "https://id.kb.se/term/barn",
        "@type": "ConceptScheme",
        "notation": "barn"
      }
    }
042
$9
addLink: inCollection
property: notation
resourceType: TermCollection
uriTemplate: https://id.kb.se/term/{_}
$a
property: authenticationCode
043
$a
link: nationality
matchUriToken: ^[a-z-]{7}$
property: notation
uriTemplate: https://id.kb.se/nationality/{_}
046
$f
property: birthDate
$g
property: deathDate
065
inherit:
bib 084
addLink:
broadMatch
073
addLink:
broader
resourceType:
TopicalTerm
$a
property: prefLabel
$z
link: inScheme
property: notation
resourceType: ConceptScheme
082
inherit:
bib 082
083
inherit:
bib 083
addLink:
closeMatch
100
aboutType:
PersonTerm
  • Example

    MARC
    {
      "100": {
        "ind1": "1",
        "ind2": " ",
        "subfields": [
          {"a": "Jansson, Tove"}
        ]
      }
    }
    JSON-LD
    {
      "@type": "PersonTerm",
      "focus": {
        "@type": "Person",
        "familyName": "Jansson",
        "givenName": "Tove"
      }
    }
  • Example

    MARC
    {
      "100": {
        "ind1": "1",
        "ind2": " ",
        "subfields": [
          {"a": "Jansson, Tove"},
          {"t": "Anteckningar från en ö"}
        ]
      }
    }
    JSON-LD
    {
      "@type": "WorkTerm",
      "focus": {
        "@type": "UniformWork",
        "attributedTo": {
          "@type": "Person",
          "familyName": "Jansson",
          "givenName": "Tove"
        },
        "title": "Anteckningar från en ö"
      }
    }
110
inherit:
bib 110
aboutType:
OrganizationTerm
link:
focus
111
inherit:
bib 111
aboutType:
MeetingTerm
link:
focus
130
inherit:
bib 130
aboutType:
WorkTerm
link:
focus
resourceType:
UniformWork
148
aboutType:
ChronologicalTerm
$a
property: prefLabel
150
aboutType:
TopicalTerm
  • Example

    MARC
    [
      {
        "150": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"a": "Barnpsykologi"}
          ]
        }
      }
    ]
    JSON-LD
    {
      "@id": "http://libris.kb.se/auth/140482",
      "@type": "TopicalTerm",
      "prefLabel": "Barnpsykologi"
    }
  • Example

    MARC
    [
      {
        "040": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"f": "sao"}
          ]
        }
      },
      {
        "150": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"a": "Barnpsykologi"}
          ]
        }
      }
    ]
    JSON-LD
    {
      "@id": "https://id.kb.se/term/sao/Barnpsykologi",
      "@type": "TopicalTerm",
      "focus": {
        "@id": "https://id.kb.se/term/sao/Barnpsykologi#it",
        "@type": "Thing",
        "sameAs": [
          {"@id": "http://libris.kb.se/resource/auth/140482"}
        ]
      },
      "inScheme": {
        "@id": "https://id.kb.se/term/sao",
        "@type": "ConceptScheme",
        "notation": "sao"
      },
      "prefLabel": "Barnpsykologi",
      "sameAs": [
        {"@id": "http://libris.kb.se/auth/140482"}
      ]
    }
  • Example

    MARC
    [
      {
        "040": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"f": "sao"}
          ]
        }
      },
      {
        "150": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"a": "Barn"},
            {"x": "psykologi"}
          ]
        }
      }
    ]
    JSON-LD
    {
      "@id": "https://id.kb.se/term/sao/Barn--psykologi",
      "@type": "TopicalTerm",
      "focus": {
        "@id": "https://id.kb.se/term/sao/Barn--psykologi#it",
        "@type": "Thing",
        "sameAs": [
          {"@id": "http://libris.kb.se/resource/auth/140482"}
        ]
      },
      "inScheme": {
        "@id": "https://id.kb.se/term/sao",
        "@type": "ConceptScheme",
        "notation": "sao"
      },
      "prefLabel": "Barn--psykologi",
      "sameAs": [
        {"@id": "http://libris.kb.se/auth/140482"}
      ],
      "termComponentList": [
        {
          "@type": "TopicalTerm",
          "prefLabel": "Barn"
        },
        {
          "@type": "SubdivisionTerm",
          "prefLabel": "psykologi"
        }
      ]
    }
151
aboutType:
GeographicalTerm
155
aboutType:
GenreTerm
162
aboutType:
OrchestraTerm
180
aboutType:
SubdivisionTerm
$x
defaults:
inCollection @id: https://id.kb.se/term/subdivisions
notation: subdivisions

property: prefLabel
181
aboutType:
GeographicalSubdivisionTerm
$z
property: prefLabel
182
aboutType:
ChronologicalSubdivisionTerm
$y
property: prefLabel
185
aboutType:
GenreSubdivisionTerm
$v
property: prefLabel
400
410
inherit:
bib 610
addLink:
hasVersion
resourceType:
OrganizationTerm
411
inherit:
bib 611
addLink:
hasVersion
resourceType:
MeetingTerm
450
$a
addProperty: altLabel
455
inherit:
auth 450
500
510
inherit:
bib 110
addLink:
seeAlso
511
inherit:
bib 111
addLink:
seeAlso
550
resourceType:
TopicalTerm
  • Example

    MARC
    [
      {
        "040": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"f": "sao"}
          ]
        }
      },
      {
        "550": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"a": "Other"}
          ]
        }
      }
    ]
    JSON-LD
    {
      "inScheme": {
        "@id": "https://id.kb.se/term/sao",
        "@type": "ConceptScheme",
        "notation": "sao"
      },
      "related": [
        {
          "@id": "https://id.kb.se/term/sao/Other",
          "@type": "TopicalTerm",
          "prefLabel": "Other"
        }
      ]
    }
  • Example

    MARC
    [
      {
        "040": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"f": "sao"}
          ]
        }
      },
      {
        "550": {
          "ind1": " ",
          "ind2": " ",
          "subfields": [
            {"a": "Commedia dell`arte"},
            {"w": "g"}
          ]
        }
      }
    ]
    JSON-LD
    {
      "broader": [
        {
          "@id": "https://id.kb.se/term/sao/Commedia%20dell%60arte",
          "@type": "TopicalTerm",
          "prefLabel": "Commedia dell`arte"
        }
      ],
      "inScheme": {
        "@id": "https://id.kb.se/term/sao",
        "@type": "ConceptScheme",
        "notation": "sao"
      }
    }
551
resourceType:
GeographicalTerm
555
resourceType:
GenreTerm
580
inherit:
auth 180
resourceType:
SubdivisionTerm
667
$a
addProperty: editorialNote
670
addLink:
source
resourceType:
CreativeWork
$a
property: label
$b
property: citation
$u
property: url
675
$a
property: label
678
$a
addProperty: note
680
$i
addProperty: scopeNote
688
$a
addProperty: historyNote
750
addLink:
closeMatch
resourceType:
TopicalTerm
755
addLink:
closeMatch
resourceType:
GenreTerm
780
inherit:
auth 750
$x
property: prefLabel
781
inherit:
auth 750
resourceType:
GeographicalSubdivisionTerm
$z
property: prefLabel
782
inherit:
auth 750
resourceType:
ChronologicalSubdivisionTerm
$y
property: prefLabel
785
inherit:
auth 755
$v
property: prefLabel
856
inherit:
bib 856
addLink:
relatedTo
resourceType:
Document
match-i2:
0 addLink: sameAs
resourceType: Thing
1 addLink: isPrimaryTopicOf
resourceType: Electronic
2 addLink: relatedTo
resourceType: Document
8 addLink: relatedTo
resourceType: Document

hold

thingLink:

000
aboutEntity: ?record
link: marc:encLevel
tokenMap: HoldingEncLevelType
uriTemplate: {_}
aboutEntity: ?record
fixedDefault: n
property: marc:itemInfoInRecord
tokenMap: {u'i': True, u'n': False}
TODO:patternMap: entryMap
aboutEntity: ?record
fixedDefault: 4500
property: marc:entryMap
aboutEntity: ?record
link: marc:status
tokenMap: StatusType
uriTemplate: {_}
aboutEntity: ?record
link: marc:holdingType
tokenMap: HoldingType
uriTemplate: {_}
aboutEntity: ?record
link: marc:statistics
tokenMap: StatisticsType
uriTemplate: {_}
aboutEntity: ?record
fixedDefault: a
link: marc:characterCoding
tokenMap: CharacterCodingType
uriTemplate: {_}
False
  • Example

    MARC
    {
      "fields": [
        {"001": "0000000"},
        {"004": "7149593"}
      ],
      "leader": "     nx  a       1n 4500"
    }
    JSON-LD
    {
      "@id": "http://libris.kb.se/hold/0000000",
      "@type": "Record",
      "controlNumber": "0000000",
      "mainEntity": {
        "@id": "http://libris.kb.se/resource/hold/0000000",
        "@type": "Item",
        "itemOf": {"@id": "http://libris.kb.se/resource/bib/7149593"}
      },
      "marc:encLevel": {"@id": "marc:HoldingsLevel1"},
      "marc:holdingType": {"@id": "marc:SinglePartItemHolding"},
      "marc:status": {"@id": "marc:New"}
    }
001
inherit:
bib 001
003
004
aboutType:
Item
link:
itemOf
005
inherit:
bib 005
007
inherit:
bib 007
008
aboutEntity: ?record
parseDateTime: yyMMdd
property: created
timeZone: CET
link: marc:retentionPolicy
tokenMap: RetentionPolicyType
uriTemplate: {_}
fixedDefault:
link: marc:specificRetentionPolicy
tokenMap: SpecificRetentionPolicyType
uriTemplate: {_}
property: marc:retentionPolicyNumberOfUnits
fixedDefault:
link: marc:retentionPolicyUnitType
tokenMap: RetentionPolicyUnitType
uriTemplate: {_}
link: marc:completeness
tokenMap: CompletenessType
uriTemplate: {_}
fixedDefault: |||
parseZeroPaddedNumber: True
property: inventoryLevel
link: marc:lendingPolicy
tokenMap: LendingPolicyType
uriTemplate: {_}
link: marc:reproductionPolicy
tokenMap: ReproductionPolicyType
uriTemplate: {_}
addLink: language
fixedDefault: und
matchUriToken: ^\w{2,3}$
uriTemplate: https://id.kb.se/language/{_}
link: marc:copyReport
tokenMap: CopyReportType
uriTemplate: {_}
aboutEntity: ?record
fixedDefault: 000000
matchAsDefault: ^ *0+ *$|^ +$|^\|+$
parseDateTime: yyMMdd
property: date
timeZone: CET
link: marc:acquisitionStatus
tokenMap: AcquisitionStatusType
uriTemplate: {_}
link: marc:acquisitionMethod
tokenMap: AcquisitionMethodType
uriTemplate: {_}
TODO:parseDateTime: yyMM
fixedDefault:
matchAsDefault: ^ *0+ *$|^ +$|^\|+$
property: marc:expectedAcquisitionEndDate
timeZone: CET
False
  • Example

    MARC
    {"008": "900101||    |   ||||||swe|000000"}
    JSON-LD
    {
      "created": "1990-01-01T00:00:00.0+01:00",
      "mainEntity": {
        "language": [
          {"@id": "https://id.kb.se/language/swe"}
        ]
      }
    }
  • Example: keep broken date values verbatim

    MARC
    {"008": "900101||    |   ||||||und|000000"}
    JSON-LD
    {"created": "1990-01-01T00:00:00.0+01:00"}
  • Example: parse zero padded inventoryLevel

    MARC
    {"008": "900101||    |   |001||und|000000"}
    JSON-LD
    {
      "created": "1990-01-01T00:00:00.0+01:00",
      "mainEntity": {
        "inventoryLevel": 1
      }
    }
  • Example: broken inventoryLevel

    MARC
    {"008": "900101||    |   |NaN||und|000000"}
    Normalized when converted back from JSON-LD:
    {"008": "900101||    |   ||||||und|000000"}
    JSON-LD
    {
      "created": "1990-01-01T00:00:00.0+01:00",
      "mainEntity": {"inventoryLevel": "NaN"}
    }
  • Example: non-zero-padded inventoryLevel and odd dates

    MARC
    {"008": "121102||0   |||||1  b ||| 0     "}
    Normalized when converted back from JSON-LD:
    {"008": "121102||    |   |001b|und|000000"}
    JSON-LD
    {
      "created": "2012-11-02T00:00:00.0+01:00",
      "mainEntity": {
        "inventoryLevel": 1,
        "marc:lendingPolicy": {"@id": "marc:WillNotLend"}
      }
    }
014
$a
addProperty: librisIIINumber
024
inherit:
bib 024
084
inherit:
bib 084
addLink:
callno
506
inherit:
bib 506
541
addLink:
workExample
resourceType:
Item
$a
addProperty: immediateSourceOfAcquisition
561
addLink:
workExample
resourceType:
Item
$a
addProperty: custodialHistory
562
inherit:
bib 562
563
addLink:
workExample
resourceType:
Item
$a
addProperty: bindingInformation
600
650
inherit:
bib 650
852
aboutType:
Item
addLink:
hasComponent
resourceType:
Item
$2
property: sourceOfClassificationOrShelfMarkScheme
$3
property: materialsSpecified
$8
property: sequenceNumber
$a
property: location
$b
NOTE: libris deviates from standard (sublocationOrCollection)
TODO: move to mainEntity and auto-repeat here
addLink: heldBy
matchUriToken: ^\S+$
property: notation
resourceType: Organization
uriTemplate: https://libris.kb.se/library/{_}
$c
addProperty: shelfLocation
$d
addProperty: formerShelfLocation
$e
addProperty: address
$f
addProperty: codedLocationQualifier
$g
addProperty: nonCodedLocationQualifier
$h
NOTE: libris deviates from standard classificationPart (libris use it for all kinds of shelfControlNumber?)
property: shelfMark
$i
NOTE: deviates from standard (itemPart)?
TODO: optional controlled values (see websearch holdings interface)
addProperty: availability
$j
property: shelfControlNumber
$k
addProperty: callNumberPrefix
$l
property: shelfLabel
$m
addProperty: callNumberSuffix
$n
link: country
property: code
resourceType: Country
$p
property: pieceDesignation
$q
property: itemCondition
$s
addProperty: copyrightArticleFeeCode
$t
property: copyNumber
$u
addProperty: url
$x
addProperty: cataloguersNote
$z
addProperty: copyNote
  • Example

    MARC
    {
      "852": {
        "ind1": " ",
        "ind2": " ",
        "subfields": [
          {"b": "H"},
          {"c": "MAG"},
          {"j": "65.465"},
          {"t": "1"}
        ]
      }
    }
    JSON-LD
    {
      "mainEntity": {
        "@type": "Item",
        "hasComponent": [
          {
            "@type": "Item",
            "copyNumber": "1",
            "heldBy": [
              {
                "@id": "https://libris.kb.se/library/H",
                "@type": "Organization",
                "notation": "H"
              }
            ],
            "shelfControlNumber": "65.465",
            "shelfLocation": [
              "MAG"
            ]
          }
        ]
      }
    }
856
inherit:
bib 856
863
addLink:
qualifiedEnumerationsAndChronologyNote
resourceType:
Note
$a
property: value
$x
addProperty: cataloguersNote
$z
addProperty: copyNote
866
addLink:
qualifiedBasicUnitNote
resourceType:
Note
$a
property: value
$x
addProperty: cataloguersNote
$z
addProperty: copyNote
867
addLink:
qualifiedSupplementaryNote
resourceType:
Note
$a
property: value
$x
addProperty: cataloguersNote
$z
addProperty: copyNote
868
addLink:
qualifiedIndexNote
resourceType:
Note
$a
property: value
$x
addProperty: cataloguersNote
$z
addProperty: copyNote