SEO.JSONLD.EngineSpecification (SEO v0.3.0-rc.0)

View Source

Information about the engine of the vehicle. A vehicle can have multiple engines represented by multiple engine specification entities.

Helper for building a Schema.org EngineSpecification JSON-LD structure.

Summary

Types

t()

A JSON-LD map ready to be nested or rendered. String-keyed, always includes "@type" set to "EngineSpecification", plus any camelCased field keys the caller provided (see build/1). "@context" is added at render time by SEO.JSONLD.meta/1 on the top-level node only.

Functions

Build a EngineSpecification JSON-LD map.

Types

attrs()

@type attrs() ::
  %{
    optional(:engine_displacement) => SEO.JSONLD.QuantitativeValue.t() | map(),
    optional(:engine_power) => SEO.JSONLD.QuantitativeValue.t() | map(),
    optional(:engine_type) =>
      String.t()
      | URI.t()
      | :all_wheel_drive_configuration
      | :four_wheel_drive_configuration
      | :front_wheel_drive_configuration
      | :left_hand_driving
      | :rear_wheel_drive_configuration
      | :right_hand_driving,
    optional(:fuel_type) =>
      :all_wheel_drive_configuration
      | :four_wheel_drive_configuration
      | :front_wheel_drive_configuration
      | :left_hand_driving
      | :rear_wheel_drive_configuration
      | :right_hand_driving
      | String.t()
      | URI.t(),
    optional(:torque) => SEO.JSONLD.QuantitativeValue.t() | map(),
    optional(:additional_type) => String.t() | URI.t(),
    optional(:alternate_name) => String.t(),
    optional(:description) => SEO.JSONLD.TextObject.t() | map() | String.t(),
    optional(:disambiguating_description) => String.t(),
    optional(:identifier) =>
      String.t() | URI.t() | SEO.JSONLD.PropertyValue.t() | map(),
    optional(:image) =>
      URI.t() | String.t() | SEO.JSONLD.ImageObject.t() | map(),
    optional(:main_entity_of_page) =>
      SEO.JSONLD.CreativeWork.t() | map() | URI.t() | String.t(),
    optional(:name) => String.t(),
    optional(:owner) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:potential_action) => SEO.JSONLD.Action.t() | map(),
    optional(:same_as) => URI.t() | String.t(),
    optional(:subject_of) =>
      SEO.JSONLD.Event.t() | map() | SEO.JSONLD.CreativeWork.t(),
    optional(:url) => URI.t() | String.t()
  }
  | [
      engine_displacement: SEO.JSONLD.QuantitativeValue.t() | map(),
      engine_power: SEO.JSONLD.QuantitativeValue.t() | map(),
      engine_type:
        String.t()
        | URI.t()
        | :all_wheel_drive_configuration
        | :four_wheel_drive_configuration
        | :front_wheel_drive_configuration
        | :left_hand_driving
        | :rear_wheel_drive_configuration
        | :right_hand_driving,
      fuel_type:
        :all_wheel_drive_configuration
        | :four_wheel_drive_configuration
        | :front_wheel_drive_configuration
        | :left_hand_driving
        | :rear_wheel_drive_configuration
        | :right_hand_driving
        | String.t()
        | URI.t(),
      torque: SEO.JSONLD.QuantitativeValue.t() | map(),
      additional_type: String.t() | URI.t(),
      alternate_name: String.t(),
      description: SEO.JSONLD.TextObject.t() | map() | String.t(),
      disambiguating_description: String.t(),
      identifier: String.t() | URI.t() | SEO.JSONLD.PropertyValue.t() | map(),
      image: URI.t() | String.t() | SEO.JSONLD.ImageObject.t() | map(),
      main_entity_of_page:
        SEO.JSONLD.CreativeWork.t() | map() | URI.t() | String.t(),
      name: String.t(),
      owner: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      potential_action: SEO.JSONLD.Action.t() | map(),
      same_as: URI.t() | String.t(),
      subject_of: SEO.JSONLD.Event.t() | map() | SEO.JSONLD.CreativeWork.t(),
      url: URI.t() | String.t()
    ]

t()

@type t() :: %{required(String.t()) => term()}

A JSON-LD map ready to be nested or rendered. String-keyed, always includes "@type" set to "EngineSpecification", plus any camelCased field keys the caller provided (see build/1). "@context" is added at render time by SEO.JSONLD.meta/1 on the top-level node only.

Functions

build(attrs)

@spec build(attrs()) :: t()

Build a EngineSpecification JSON-LD map.

Fields

  • :engine_displacement - The volume swept by all of the pistons inside the cylinders of an internal combustion engine in a single movement.

Typical unit code(s): CMQ for cubic centimeter, LTR for liters, INQ for cubic inches

  • Note 1: You can link to information about how the given value has been determined using the valueReference property.
  • Note 2: You can use minValue and maxValue to indicate ranges.
  • :engine_power - The power of the vehicle's engine. Typical unit code(s): KWT for kilowatt, BHP for brake horsepower, N12 for metric horsepower (PS, with 1 PS = 735,49875 W)
  • Note 1: There are many different ways of measuring an engine's power. For an overview, see http://en.wikipedia.org/wiki/Horsepower#Engine_power_test_codes.
  • Note 2: You can link to information about how the given value has been determined using the valueReference property.
  • Note 3: You can use minValue and maxValue to indicate ranges.
  • :engine_type - The type of engine or engines powering the vehicle. One of: :all_wheel_drive_configuration, :four_wheel_drive_configuration, :front_wheel_drive_configuration, :left_hand_driving, :rear_wheel_drive_configuration, :right_hand_driving.
  • :fuel_type - The type of fuel suitable for the engine or engines of the vehicle. If the vehicle has only one engine, this property can be attached directly to the vehicle. One of: :all_wheel_drive_configuration, :four_wheel_drive_configuration, :front_wheel_drive_configuration, :left_hand_driving, :rear_wheel_drive_configuration, :right_hand_driving.
  • :torque - The torque (turning force) of the vehicle's engine.

Typical unit code(s): NU for newton metre (N m), F17 for pound-force per foot, or F48 for pound-force per inch

  • Note 1: You can link to information about how the given value has been determined (e.g. reference RPM) using the valueReference property.
  • Note 2: You can use minValue and maxValue to indicate ranges.

Inherited properties

Additional properties are available through the inheritance chain. See each ancestor's docs for its properties: