Skip to content

YAML PHP object tag property specification is incorrect #16877

Closed
@koenpunt

Description

@koenpunt

I came to notice that the tag property for php objects in the YAML parser/dumper is !!php/object which, according to the spec, means tag:yaml.org,2002:php/object, which in turn is incorrect because php isn't a actual type represented by YAML.

So I think it should be a local !php/object (single exclamation, local tag), which conveniently enough matches with the php-yaml extension (LibYAML wrapper).

Excerpt from ref: http://yaml.org/refcard.html

Tag property: # Usually unspecified.
    none    : Unspecified tag (automatically resolved by application).
    '!'     : Non-specific tag (by default, "!!map"/"!!seq"/"!!str").
    '!foo'  : Primary (by convention, means a local "!foo" tag).
    '!!foo' : Secondary (by convention, means "tag:yaml.org,2002:foo").
    '!h!foo': Requires "%TAG !h! <prefix>" (and then means "<prefix>foo").
    '!<foo>': Verbatim tag (always means "foo").

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions