ruleset: navsea_field_name_rules_v1
bundle_id: navsea-core
version: v1-draft
rules:
  - field_name_jp: fid
    field_name_std: fid_legacy_raw
    field_group: identity
    keep_in_delivery: false
    keep_in_engineering: true
    normalization_class: reversible_identity
    notes: Preserve the original legacy fid only in engineering and trace outputs.
  - field_name_jp: at
    field_name_std: at_raw
    field_group: source_legacy
    keep_in_delivery: false
    keep_in_engineering: true
    normalization_class: raw_blob
    notes: Raw attribute pack remains engineering-only by default.
  - field_name_jp: 分類番号
    field_name_std: class_code
    field_group: source_legacy
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: legacy_render_code
    notes: Legacy class code used during transition and audits.
  - field_name_jp: 形状分類番号
    field_name_std: shape_class_code
    field_group: source_legacy
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: legacy_render_code
    notes: Legacy shape class code used during transition and audits.
  - field_name_jp: 表示用番号
    field_name_std: display_code
    field_group: source_legacy
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: legacy_render_code
    notes: Legacy display code retained until all rendering migrates to chart_* fields.
  - field_name_jp: 灯色
    field_name_std: light_color_raw_code
    field_group: light
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: field_value_normalization
    notes: Legacy raw color code maps into light_color_code.
  - field_name_jp: 灯略記
    field_name_std: light_character_remark
    field_group: light
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: content_text
    notes: User-visible light remark should remain reversible.
  - field_name_jp: 明弧/分孤
    field_name_std: light_sector_remark
    field_group: light
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: field_value_normalization
    notes: Legacy light sector remark maps into light_sector_mode and trace fields.
  - field_name_jp: 表示位置
    field_name_std: label_position_code_legacy
    field_group: labels
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: field_value_normalization
    notes: Legacy label position code maps into chart_label_position_code.
  - field_name_jp: 名称
    field_name_std: name_ja
    field_group: labels
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: content_text
    notes: Primary Japanese name content must remain available.
  - field_name_jp: 名称補助
    field_name_std: name_subtext_ja
    field_group: labels
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: content_text
    notes: Secondary Japanese name content must remain available.
  - field_name_jp: 日本語地名
    field_name_std: place_name_ja
    field_group: labels
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: content_text
    notes: Japanese place name content must remain available.
  - field_name_jp: 英文字地名
    field_name_std: place_name_en
    field_group: labels
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: content_text
    notes: English place name content remains available for fallback labels.
  - field_name_jp: 水深値(m)
    field_name_std: depth_value_m_legacy
    field_group: normalized_numeric
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: numeric_normalization
    notes: Legacy depth string is normalized into depth_value_m.
  - field_name_jp: 高さ(m)
    field_name_std: clearance_height_m_legacy
    field_group: normalized_numeric
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: numeric_normalization
    notes: Legacy height string is normalized into clearance_height_m.
  - field_name_jp: 高さ/深度(m)
    field_name_std: height_or_depth_m_legacy
    field_group: normalized_numeric
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: numeric_normalization
    notes: Mixed height/depth legacy string maps into least_depth_m or clearance semantics.
  - field_name_jp: 角度
    field_name_std: bearing_deg_legacy
    field_group: normalized_numeric
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: numeric_normalization
    notes: Legacy angle string is normalized into bearing_deg.
  - field_name_jp: ローマ字名称
    field_name_std: name_romaji
    field_group: labels
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: content_text
    notes: Romaji place or object name remains available as normalized content text.
  - field_name_jp: 目的分類番号
    field_name_std: purpose_class_code
    field_group: source_legacy
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: legacy_render_code
    notes: Legacy purpose code is preserved under a standardized key.
  - field_name_jp: 縮尺選択コード
    field_name_std: scale_selection_code
    field_group: source_legacy
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: legacy_render_code
    notes: Legacy scale-selection code is preserved under a standardized key.
  - field_name_jp: 表示重要度
    field_name_std: display_priority_code
    field_group: source_legacy
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: legacy_render_code
    notes: Legacy display-priority code is preserved under a standardized key.
  - field_name_jp: Sガイドページ
    field_name_std: guide_page_ref
    field_group: source_legacy
    keep_in_delivery: true
    keep_in_engineering: true
    normalization_class: content_text
    notes: Legacy guide-page reference is preserved under a standardized key.
