XML Information Set (original) (raw)

1. ����

���̋K��́CXML���W��(XML Information Set)�ƌĂ΂��(�ȉ��ł�Infoset�Ƃ������Ƃ�����)���ۃf�[�^�W�����`����B���̖ړI�́C���`��XML����[XML]�̒��̏����Q�Ƃ���K�v�����鑼�̋K��ł̎g�p�̂��߂ɁC��`�̖����̂Ȃ��W����񋟂��邱�Ƃɂ���B

���̋K��́C���S�ł��邱�Ƃ��Ӑ}���Ă��Ȃ��B��񍀖ږ��͓����̎捞�݂ɑ΂����{�I�Ȋ�́C�����̋K��ɂ����Ċ��҂����L�p���Ɋ�Â����̂Ƃ����BXML�����n���Ԃ��Ȃ���΂Ȃ�Ȃ����̍ŏ��W�����\��������̂ł��Ȃ��B

XML�����́C���ꂪ���`���ł����āC���Ɏ������O��Ԑ���𖞑�����ꍇ�C���W�������B���W�������‚��߂ɂ́CXML�������Ó��ł���Ƃ����v���͑��݂��Ȃ��B

���W���́CXML�����̍\����͂ł͂Ȃ�(���̋K��ł͋L�q����Ȃ�)���@�ɂ���Đ�������Ă��悢�B�����I���W�����Q�Ƃ��邱�ƁB

XML�����̏��W���́C��������񍀖�(information item)����\�������B�C�ӂ̐��`��XML�����̂��߂̏��W���́C���Ȃ��Ƃ���‚�������񍀖ڋy�ъ�‚��̂��̑��̂��̂��܂ށB��񍀖ڂ́CXML�����̂��镔���̒��ۓI�ȋL�q�Ƃ���B�e�X�̏�񍀖ڂ́C�֘A���閼�O�̕t��������(property)�̏W�������B���̋K��ł́C�������́C[thus]�̂悤�ɁC�p���ʂ̒��Ɏ������B��񍀖ڂ̌^�́C2.�Ɉꗗ�Ƃ��Ď������B

���W���́C����̃C���^�t�F�[�X���̓C���^�t�F�[�X�̓���̃N���X��v�����͖]�܂����Ƃ��邱�Ƃ͂Ȃ��B���̋K��́C���m���y�ъȒP���̂��߂ɁC���W�����C�����ꂽ�؂Ƃ��ĕ\�����CXML���W���͖؍\���ɂ���ė��p�”\�ɂȂ�̂��悢�Ƃ����v���͑��݂��Ȃ��B�C�x���g�Ɋ�Â��C���^�t�F�[�X�y�і⍇���Ɋ�Â��C���^�t�F�[�X���܂�(�����������ɐ�������Ȃ�)�C���^�t�F�[�X�̑��̌^���CXML���W���ɓK���������񋟉”\�Ƃ���B

�p��"���W��"�y��"��񍀖�"�́C��ʓI�ȗp��"��"�y��"�m�[�h"�ƁC����炪�v�Z�ɂ����Ďg�p�����ꍇ�ɂ́C�Ӗ��I�ɁC�ގ����Ă���B�������C�O�҂̗p��́C���̓���̃f�[�^���f���Ƃ̐��ݓI�ȍ������y�����邽�߂ɁC���̋K��̒��Ŏg�p�����B��񍀖ڂ́CDOM�̃m�[�h����XPath�f�[�^���f����"��"�y��"�m�[�h"��1��1�ɑΉ��t������킯�ł�_�Ȃ�_�B

���̋K��̒��ł́C�\���C"���Ȃ���΂Ȃ�Ȃ�"�C"���邱�Ƃ��]�܂���"�C�y��"���Ă��悢"�́C[RFC2119]�ŋK�肳�ꂽ�Ӗ������肷��B

���O���

[Namespaces]�ɓK�����Ȃ�XML 1.0�����́C�Z�p�I�ɐ��`���ł����Ă��C�Ӗ��̂�����W�������‚Ƃ͍l���Ȃ��B���Ȃ킿�C���̋K��́C[Namespaces]���K�肷��Ƃ���ȊO�̕��@�Ŏg�p�����R�������܂ޗv�f�����͑����������•����ɑ΂��āC���W�����`���Ȃ��B

����ɁC���̋K��́C���O��Ԑ錾�̒��ɑ���URI�Q�Ƃ��g�p���镶���ɑ΂��āC���W�����`���Ȃ��B����́C[Relative Namespace URI References]�̒��ŋL�q���ꂽW3C XML Plenary Interest Group�̌���ɏ]���Ă���B

[namespace name]�����̒l�́C�Ή����閼�O��ԑ����̐��K�����ꂽ�l�Ƃ���B�t���I��URI�G�X�P�[�v���́C�����n�ɂ���ēK�p����Ȃ��B

����

���W���́C����́C���ɓW�J���ꂽ���̎Q�Ƃ�����XML�������L�q����B���Ȃ킿�C���̎��̎Q�Ƃ́C�u���e�L�X�g�ɑΉ������񍀖ڂɂ���ĕ\������Ă���B�������C�����n�����̓W�J�����s���Ȃ��Ă��悢�l�X�ȏ󋵂����݂���B���̂́C�錾����Ȃ��Ă��悢���C�����”\�łȂ��Ă��悢�B�Ó������؂��s��Ȃ������n�́C���ׂĂ̐錾��ǂݍ��܂Ȃ����Ƃ�I�����Ă��悢���C�ǂݍ��񂾂Ƃ��Ă��C���ׂĂ̊O�����̂�W�J���Ȃ��Ă��悢�B�����̏ꍇ�ɂ́C��W�J���̎Q����񍀖ڂ��C���̎��̎Q�Ƃ�\�����邽�߂Ɏg�p�����B

�s���̎戵��

Infoset�̒��̂��ׂĂ̓����̒l�́C[XML]��2.11 "�s���̎戵��"�ŋL�q�����s�����K�����l������B

���URI

��‚��̏�񍀖ڂ́C[base URI]��������[declaration base URI]���������B�����́C[XML Base]�ɏ]���Čv�Z�����B�����̌����́C(�Ⴆ�΁C���̉�����ɂ����āC)�\����͖��͂����艺�̃��x���ōĎw��抄���Ă��s���Ă��悢�B���̏ꍇ�C���URI�́C���ׂĂ̍Ďw��抄���Ă̌�Ŏ������������邽�߂Ɏg�p�����ŏI��URI�ƂȂ�B

�����̓����̒l�́C�����̌����̂��߂ɗv������Ă��悢URI�G�X�P�[�v���𔽉f���Ȃ��B�������C���̒l�́C�G�X�P�[�v���ꂽ�������C����炪�����̒��Ŏw�肳�ꂽ�C���͍Ďw��抄���Ăɂ����ăT�[�o�ɂ���ĕԋp���ꂽ�ꍇ�ɂ́C�܂�ł��悢�B

(�����񖔂̓p�C�v����ǂݍ��܂ꂽ�����Ƃ�����)��‚��̏ꍇ�C[XML Base]�ɂ�����K���ɂ���āC���URI�����p�ˑ��ƂȂ��Ă��悢�B�����̏ꍇ�C���̊��́C[base URI]��������[declaration base URI]�����̒l���`���Ȃ��B

����URI����������ꍇ�C[base URI]���Cxml:base�����̒l�ɗD�悵�Ďg�p����邱�Ƃ��]�܂����B�����́C�����I���W���̏ꍇ�C�������Ă��Ă��悢�B

"���m(unknown)"�y��"�l�Ȃ�(no value)"

�����̒��ɂ́C�l�C**���m(unknown)�����l�Ȃ�(no value)�����‚��̂������Ă��悭�C���ꂼ��C�����l�͖��m�ł���C���͓����l�͒l�������Ȃ��C�Ƃ����B�����̒l�́C�݂��ɋy�т��ׂĂ̑��̒l�ƈقȂ��Ă���B���ɁC�����́C�P�Ƀ����o�������Ȃ��Ƃ����C�󕶎���C��W���y�ы󃊃X�g�Ƃ͈قȂ��Ă���B���̋K��́C�p���k��(null)**���g�p���Ȃ��B����́C���̗p�ꂪ�C���̋K��ňӐ}������̂Ƃ͈�v���Ȃ��Ă��悢����̌��O�̈Ӗ��������Ă��邱�Ƃɂ��B

�����I���W��

���̋K��́CXML�������\����͂��邱�Ƃ��琶������W�����L�q����B���W���́C���̕��@�ɂ���āC�Ⴆ�΁CDOM�̂悤��API�̎g�p�ɂ���āC���͊����̏��W����ϊ����邱�Ƃɂ���āC�\�z����Ă��悢�B

�����̕����ɑΉ�������W���́C�K���C�l�X�ȕ��@�Ŗ������ɂȂ��Ă���B�Ⴆ�΁C�v�f��[in-scope namespaces]�����́C���̗v�f�y�т��̐�c��[namespace attributes]�Ɩ������Ȃ��B����́C���̕��@�ɂ���č\�z���ꂽ���W���ł͐������Ȃ��Ă��悢�B���̂悤�ȏꍇ�C���̏��W���ɑΉ�����XML�����͑��݂����C����𒼗񉻂��邽�߂ɂ́C(�Ⴆ�΁C�L���͈͂̒��̖��O��ԂɑΉ����閼�O��Ԑ錾���o�͂��邱�Ƃɂ���āC)���̖������������邱�Ƃ��v�������B

2. ��񍀖�

���W���́C�ȉ��Ɏ����Ƃ���C��񍀖ڂ�11�‚̈قȂ�^�܂ł��܂ނ��Ƃ��ł���B���ׂĂ̏�񍀖ڂ́C���������B�Q�Ƃ�e�Ղɂ��邽�߂ɁC�e�����ɂ́C[thus]�Ǝ�����閼�O���^������BXML 1.0����[XML]�ɂ������`�y��/���͍\���ւ̃����N���C�e��񍀖ڂɑ΂��ė^������B

2.1 ������񍀖�

XML��`�@ ����(2. ����)

XML�\�� [1] document(2.1 ���`��XML����)

���W���̒��ɂ͂�����‚�**������񍀖�(document information item)**�����݂��C���ׂĂ̑��̏�񍀖ڂ́C������񍀖ڂ̓�������C���̏�񍀖ڂ̓�����ʂ��Ē��ڂɖ��͊ԐڂɃA�N�Z�X�”\�Ƃ���B

������񍀖ڂ́C���̓��������B

  1. [children]�@ �q��񍀖ڂ̕������ł̏����t�����X�g�B���X�g�́C������‚��v�f��񍀖ڂ��܂ށB����Ƀ��X�g�́C�����v�f�̊O���̊e�������߂ɑ΂��Ĉ�‚�����������񍀖ځC�y�ѕ����v�f�̊O���̊e���߂ɑ΂��Ĉ�‚�������񍀖ڂ��܂ށBDTD���̏������ߋy�ђ��߂́C���O�����B�����^�錾�����݂���ꍇ�ɂ́C���X�g�́C�����^�錾��񍀖ڂ��܂ށB
  2. [document element]�@ �����v�f�ɑΉ������v�f��񍀖ځB
  3. [notations]�@ DTD�̒��ɐ錾���ꂽ�e�L�@���ƂɈ�‚́C�L�@��񍀖ڂ̏����̂Ȃ��W���B
  4. [unparsed entities]�@ DTD�̒��ɐ錾���ꂽ�e(�\��)��͑ΏۊO���̂��ƂɈ�‚́C��͑ΏۊO������񍀖ځB
  5. [base URI]�@ �������̂̊��URI�B
  6. [character encoding scheme]�@ �������̂��\������镶�������������̖��O�B
  7. [standalone]�@ �����̃X�^���h�A�����󋵂̎w���Byes����no�Ƃ���B���̓����́C�������̂̍ŏ��ɂ���XML�錾�̒��̃I�v�V�����̃X�^���h�A���������錾���瓱�o����C�X�^���h�A���������錾�����݂��Ȃ��ꍇ�ɂ́C�l�������Ȃ��B
  8. [version]�@ ������XML�ł�\�����镶����B���̓����́C�������̂̍ŏ��ɃI�v�V�����ő��݂���XML�錾���瓱�o����CXML�錾�����݂��Ȃ��ꍇ�ɂ́C�l�������Ȃ��B
  9. [all declarations processed]�@ ���̓����́C�����Ɍ����΁C�����̏��W���ł͂Ȃ��B�ނ���C�����n�����S��DTD��ǂނ��ǂ����̎w���Ƃ���B���̒l�́C�_���^�Ƃ���B�U�̏ꍇ�C(�ȉ��̋L�q�Ŏ������)������������m�ł����Ă��悢�B�^�̏ꍇ�C�����̓����͌����Ė��m�ł͂Ȃ��B

2.2 �v�f��񍀖�

XML��` �v�f(3. �_���\��)

XML�\�� [39] element(3. �_���\��)

XML�����̒��ɏo������e�v�f�ɑ΂���**�v�f��񍀖�(element information item)**�����݂���B�v�f��񍀖ڂ̈�‚́C������񍀖ڂ�[document element]�����̒l�ł����āC�v�f�؂̃��[�g�ɑΉ�����B���̂��ׂĂ̗v�f��񍀖ڂ́C����[children]�����ɍċA�I�ɏ]�����Ƃɂ���ăA�N�Z�X�ł���B

�v�f��񍀖ڂ́C�������B

  1. [namespace name]�@ �v�f�^�̖��O��Ԗ��B�������C���݂��Ȃ����Ƃ�����B�v�f�����O��Ԃɑ����Ȃ��ꍇ�ɂ́C���̓����͒l�������Ȃ��B
  2. [local name]�@ �v�f�^���̋Ǐ������B����́C���O��Ԑړ����y�т���ɑ����R�������܂܂Ȃ��B
  3. [prefix]�@ �v�f�^���̖��O��Ԑړ��������B���O�ɐړ������Ȃ��ꍇ�C���̓����͒l�������Ȃ��B���O��Ԃ��ӎ����鉞�p�́C�v�f�����ʂ��邽�߂ɂ́C�ړ����ł͂Ȃ����O��Ԗ����g�p����̂��]�܂������Ƃɒ��ӂ��邱�ƁB
  4. [children]�@ �q��񍀖ڂ̕������ł̏����t�����X�g�B���̃��X�g�́C���݂̕������ɒ��ڂɏo������C�v�f�C�������߁C�\����͊O�O�����̂ւ̎Q�ƁC�f�[�^�����y�ђ��߂̊e�X�ɑ΂��Ĉ�‚́C�v�f��񍀖ځC����������񍀖ځC��W�J���̎Q����񍀖ځC������񍀖ځC�y��������񍀖ڂ��܂ށB�v�f����̏ꍇ�ɂ́C���̃��X�g�̓����o�������Ȃ��B
  5. [attributes]�@ ���̗v�f��(�w�肳�ꂽ����DTD����f�t�H���g�Ƃ��ꂽ)�����̊e�X���ƂɈ�‚́C������񍀖ڂ̏����Ȃ��W���B���O��Ԑ錾�́C���̏W���̒��ɂ͌���Ȃ��B�v�f�������������Ȃ��ꍇ�ɂ́C���̏W���̓����o�������Ȃ��B
  6. [namespace attributes]�@ ���̗v�f��(�w�肳�ꂽ����DTD����f�t�H���g�Ƃ��ꂽ)���O��Ԑ錾�̊e�X���ƂɈ�‚́C������񍀖ڂ̏����Ȃ��W���B�f�t�H���g���O��Ԃ��錾������`��xmlns=""�̐錾�́C���O��Ԑ錾�Ƃ��Đ�����B��`�ɂ���āC([prefix]�������l�������Ȃ�xmlns�Ŗ��O�t�����ꂽ���̂��܂�)���ׂĂ̖��O��ԑ����́Chttp://www.w3.org/2000/xmlns/�̖��O���URI�����B�v�f�����O��Ԑ錾�������Ȃ��ꍇ�ɂ́C���̏W���̓����o�������Ȃ��B
  7. [in-scope namespaces]�@ ���̗v�f�ɑ΂��Ď����I�Ȗ��O��Ԃ̊e�X���ƂɈ�‚́C���O�����񍀖ڂ̏����Ȃ��W���B���̏W���́C��ɁC���O��Ԗ�http://www.w3.org/XML/1998/namespace�ɈÖٓI�Ɍ������ꂽ�ړ���xml�������ڂ��܂ށB(���O��Ԃ�錾���邽�߂Ɏg�p�����)�ړ���xmlns�������ڂ͊܂܂Ȃ��B����́C���p�����̐ړ��������—v�f���͑����ɂ͌����ďo����Ƃ��ł��Ȃ����Ƃɂ��B�W���́C���O��Ԃ�錾���Ȃ��łނ���f�t�H���g���O��Ԃ��錾������`��xmlns=""�̐錾��\��������̂��������C[namespace attributes]�̃����o���ׂĂɑΉ����閼�O��ԍ��ڂ��܂ށB�C�����ꂽ���O�̐ړ�������������ꍇ�C���̓������C[namespace attributes]�����ɗD�悵�Ďg�p����邱�Ƃ��]�܂����B�����I���W���̏ꍇ�C�����������邩������Ȃ��B
  8. [base URI]�@ �v�f�̊��URI�B
  9. [parent]�@ [children]�����̒��ɂ��̏�񍀖ڂ��܂ޕ�����񍀖ږ��͗v�f��񍀖ځB

2.3 ������񍀖�

XML��` ����(3.1 �J�n�^�O�C�I���^�O�y�ы�v�f�^�O)

XML�\�� [41] Attribute(3.1 �J�n�^�O�C�I���^�O�y�ы�v�f�^�O)

���O��Ԑ錾�ƂȂ���̂��܂ށC�����̒��̊e�v�f��(�w�肳�ꂽ���̓f�t�H���g�Ƃ��ꂽ)�e�����ɑ΂��āC**������񍀖�(attribute information item)**�����݂���B�������C���O��Ԑ錾�ƂȂ���̂́C�v�f��[attributes]�����ł͂Ȃ�[namespace attributes]�����̃����o�Ƃ��ďo������B

DTD�̒��Ńf�t�H���g�l�Ȃ��Ő錾����v�f�̊J�n�^�O�̒��Ŏw�肳��Ă��Ȃ������́C������񍀖ڂɂ���ĕ\������Ȃ��B

������񍀖ڂ́C���̓��������B

  1. [namespace name]�@ ���݂���ꍇ�ɂ́C�����̖��O��Ԗ��B���݂��Ȃ��ꍇ�ɂ́C���̓����͒l�������Ȃ��B
  2. [local name]�@ �������̋Ǐ������B����́C���O��Ԑړ����y�т���ɑ����R�������܂܂Ȃ��B
  3. [prefix]�@ �������̖��O��Ԑړ��������B���O�ɐړ������Ȃ��ꍇ�ɂ́C���̓����͒l�������Ȃ��B���O��Ԃ��ӎ����鉞�p�́C�v�f�����ʂ��邽�߂ɂ́C�ړ����ł͂Ȃ����O��Ԗ����g�p����̂��]�܂������Ƃɒ��ӂ��邱�ƁB
  4. [normalized value]�@ ���K�����ꂽ�����l(3.3.3 �����l�̐��K�� [XML]���Q��)�B
  5. [specified]�@ ���̑������C���ۂɁC�v�f�̊J�n�^�O�̒��Ŏw�肳��Ă������C����DTD����f�t�H���g�Ƃ���Ă��������ǂ����������t���O�B
  6. [attribute type]�@ DTD�̒��ł��̑����̂��߂ɐ錾���ꂽ�^�̎w���B���@�ɍ������l�́CID�CIDREF�CIDREFS�CENTITY�CENTITIES�CNMTOKEN�CNMTOKENS�CNOTATION�CCDATA�C�y��ENUMERATION�Ƃ���B�����̂��߂̐錾�����݂��Ȃ��ꍇ�C���̓����͒l�������Ȃ��B�錾���ǂ܂�Ȃ��������C������񍀖ڂ�[all declarations processed]�������U�ɂȂ��Ă���(���������āC�ǂ܂�Ȃ��錾�������Ă��悢)�ꍇ�C���̓����̒l�́C���m�Ƃ���B���p�́C�l�Ȃ�(no value)�y�і��m(unknown)��CDATA�̒l�Ɠ����Ƃ��Ď�舵���̂��悢�B
  7. [references]�@ �����^��ID�CNMTOKEN�CNMTOKENS�CCDATA����ENUMERATION�̏ꍇ�C���̓����͒l�������Ȃ��B�����^�����m�̏ꍇ�C���̓����̒l�͖��m�Ƃ���B�����łȂ��ꍇ(���Ȃ킿�C�����^��IDREF�CIDREFS�CENTITY�CENTITIES����NOTATION�̏ꍇ)�C���̓����̒l�́C�����l���Q�Ƃ����v�f��񍀖ځC��͑ΏۊO������񍀖ږ����L�@��񍀖ڂ́C����炪�o�����鏇���ł̏����t�����X�g�Ƃ���B���̏ꍇ�C�����l���\���I�ɑÓ��łȂ��Ƃ��C���̓����͒l�������Ȃ��B�^��IDREF����IDREFS�ł����āCID�������̒���ID�����̒l�Ƃ��ďo�����Ȃ��ꍇ�C���͌^��ENTITY�CENTITIES����NOTATION�ł����āC���̖��͋L�@�ɑ΂���錾���ǂ܂�Ȃ������ꍇ�C���̓����́C������񍀖ڂ�[all declarations processed]�������^���͋U�ł��邱�ƂɈˑ����āC�l�������Ȃ������͖��m�Ƃ���B�^��IDREF����IDREFS�ł����āCID�������̒��̈�‚�葽����ID�����̒l�Ƃ��ďo������ꍇ�C���̓����͒l�������Ȃ��B
  8. [owner element]�@ ���̏�񍀖ڂ�[attributes]�����̒��Ɋ܂ޗv�f��񍀖ځB

2.4 �������ߏ�񍀖�

XML��`�@ �������� (2.6 ��������)

XML�\���@ [16] PI(2.6 ��������)

�����̒��̊e�������߂��Ƃ�**�������ߏ�񍀖�(processing instruction information item)**�����݂���B�O����͑Ώێ��̂̂��߂�XML�錾�y�уe�L�X�g�錾�́C�������߂Ƃ͍l���Ȃ��B

�������ߏ�񍀖ڂ́C���̓��������B

  1. [target]�@ �������߂̃^�[�Q�b�g������\�����镶����(XML�̖��O)�B
  2. [content]�@ �������߂̓��e��\�����镶����B�������C�^�[�Q�b�g�y�т���̒���̋󔒂͏����B���̂悤�ȓ��e�����݂��Ȃ��ꍇ�C���̓����̒l�́C�󕶎���Ƃ���B
  3. [base URI]�@ PI�̊��URI�B���W����XML�����Ƃ��Ē��񉻂����ꍇ�C�O�����̂̍ŏ�ʂɌ��X�o�����Ă���������PI�̊��URI��ۑ����邱�Ƃ͂ł��Ȃ��_�ɒ��ӂ��邱�ƁB����́C�v�f���xml:base�����ɑΉ�����PI�̂��߂̍\�������݂��Ȃ����Ƃɂ��B
  4. [notation]�@ �^�[�Q�b�g�ɂ���Ė��O�t��������L�@��񍀖ځB���̖��O�����‹L�@�ɑ΂���錾�����݂��Ȃ��ꍇ�ɂ́C���̓����͒l�������Ȃ��B�錾���ǂ܂�Ȃ��������C������񍀖ڂ�[all declarations processed]�������U�ɂȂ��Ă���(���������āC�ǂ܂�Ȃ��錾�����݂��Ă��悢)�ꍇ�C���̓����̒l�͖��m�Ƃ���B
  5. [parent]�@ ���̏�񍀖ڂ�[children]�����̒��Ɋ܂ށC������񍀖ځC�v�f��񍀖ږ��͕����^��`��񍀖ځB

2.5 ��W�J���̎Q�Ə�񍀖�

XML��`�@ 4.4.3 �܂܂������̑Ó�������

**��W�J���̎Q�Ə�񍀖�(unexpanded entity reference information item)**�́CXML�����n���O����͑Ώێ��̂�W�J���Ă��Ȃ����Ƃ��������Ƃ��ł���v���[�X�z���_�Ƃ��Ė��ɗ��B�v�f�̓��e���̊O����ʎ��̂ւ̊e��W�J�Q�Ƃɑ΂��ẮC���̂悤�ȏ�񍀖ڂ͑��݂��Ȃ��B�Ó������؂��s��XML�����n�C���͂��ׂĂ̊O����ʎ��̂�ǂޑÓ������؂��s��Ȃ������n�́C�Ó��ȕ����ɑ΂��āC�����āC��W�J���̎Q�Ə�񍀖ڂ𐶐����Ȃ��B

��W�J���̎Q�Ə�񍀖ڂ́C���̓��������B

  1. [name]�@ �Q�Ƃ������̖̂��O�B
  2. [system identifier]�@ ���̂̃V�X�e�����ʎq�B�������C���̂̐錾�̒��ɏo������Ƃ���Ƃ��C�����n�ɂ���ēK�p�����t���I��URI�̃G�X�P�[�v���͂Ȃ����̂Ƃ���B���Ԃɑ΂���錾�����݂��Ȃ��ꍇ�C���̓����͒l�������Ȃ��B�錾���ǂ܂�Ȃ��������C������񍀖ڂ�[all declarations processed]�������U�ɂȂ��Ă���(���������āC�ǂ܂�Ȃ��錾�����݂��Ă��悢)�ꍇ�C���̓����̒l�͖��m�Ƃ���B
  3. [public identifier]�@4.2.2 �O������[XML]�ŋL�q�����Ƃ���ɐ��K�����ꂽ�C���̂̌��J���ʎq�B���̂ɑ΂���錾�����݂��Ȃ��ꍇ�C���͐錾�����J���ʎq���܂܂Ȃ��ꍇ�C���̓����͒l�������Ȃ��B�錾���ǂ܂�Ȃ��������C������񍀖ڂ�[all declarations processed]�������U�ɂȂ��Ă���(���������āC�ǂ܂�Ȃ��錾�����݂��Ă��悢)�ꍇ�C���̓����̒l�͖��m�Ƃ���B
  4. [declaration base URI]�@ �V�X�e�����ʎq������ɑ��ΓI�ɉ�������邱�Ƃ��]�܂������URI�B���Ȃ킿�C���̐錾�����̓����ɏo�����鎑���̊��URI�B����́C[system identifier]�����Ɠ����󋵂ŁC���m�ƂȂ�����C�l�������Ȃ������肷��B
  5. [parent]�@ ���̏�񍀖ڂ�[children]�����̒��Ɋ܂ޗv�f��񍀖ځB

2.6 ������񍀖�

XML�\���@ [2] Char(2.2 ����)

�����̒��ɁC�����ǂ���ɁC�����Q�ƂƂ��āC����CDATA�Z�N�V�������ɁC�o������e�f�[�^�������ƂɁC**������񍀖�(character information item)**�����݂���B

�e�����́C�_���I�ɕʁX�̏�񍀖ڂƂ��邪�CXML���p�́C�K�v���͖]�ނƂ���ɁC�����̏W�܂�����傫�ȃO���[�v�ւ̌ł܂�Ƃ��Ď��R�Ɉ����Ă悢�B

������񍀖ڂ́C���̓��������B

  1. [character code]�@ �����́C0�`#x10FFFF�͈̔͂ł�ISO 10646�����R�[�h�B�������C���͈̔͂̂��ׂĂ̒l���C���@�ɍ�����XML�̕����R�[�h�ł͂Ȃ��B
  2. [element content whitespace]�@ �������v�f���e���ɏo������󔒂��ǂ����������_���l([XML]�C2.10 "�󔒂̎戵��"���Q��)�B�Ó������؂��s��XML�����n�́C���̏���񋟂��邱�Ƃ��CXML 1.0�ɂ����_�v��_����邱�Ƃɒ��ӂ��邱�ƁB�܂ޑ��̗v�f�̂��߂̐錾�����݂��Ȃ��ꍇ�C���̓����́C�󔒕����ɑ΂��Ēl�������Ȃ��B�錾���ǂ܂�Ȃ��������C������񍀖ڂ�[all declarations processed]�������U�ɂȂ��Ă���(���������āC�ǂ܂�Ȃ��錾�����݂��Ă��悢)�ꍇ�C���̓����̒l�́C�󔒕����ɑ΂��Ė��m�Ƃ���B�󔒂łȂ������ɑ΂��ẮC��ɋU�Ƃ���B
  3. [parent]�@ ���̏�񍀖ڂ�[children]�����̒��Ɋ܂ޗv�f��񍀖ځB

2.7 ���ߏ�񍀖�

XML��`�@ ����(2.5 ����)

XML�\���@ [15] Comment(2.5 ����)

���̕����̒��̊eXML���߂��Ƃ�**���ߏ�񍀖�(comment information item)**�����݂���B�������CDTD�̒��ɏo������(�\������Ă��Ȃ�)���̂͏����B

���ߏ�񍀖ڂ́C���̓��������B

  1. [content]�@ ���߂̓��e��\�����镶����B
  2. [parent]�@ ���̏�񍀖ڂ�[children]�����̒��Ɋ܂ޕ�����񍀖ږ��͗v�f��񍀖ځB

2.8 �����^�錾��񍀖�

XML��`�@ �����^�錾(2.8, �O�����y�ѕ����^�錾)

XML�\���@ [28] doctypedecl(2.8, �O�����y�ѕ����^�錾)

XML�����������^�錾�����ꍇ�C���W���́C��‚�**�����^�錾��񍀖�(document type declaration information item)**���܂ށB���̋y�ыL�@�́C������񍀖ڂ̓����Ƃ��Ē񋟂���Ă���C�����^�錾��񍀖ڂł͂Ȃ����Ƃ����ӂ��邱�ƁB

�����^�錾��񍀖ڂ́C���̓��������B

  1. [system identifier]�@ �O�������W���̃V�X�e�����ʎq�B�������CDOCTYPE�錾�̒��ɏo������Ƃ���Ƃ��C�����n�ɂ���ēK�p�����t���I��URI�G�X�P�[�v���Ȃ��Ƃ���B�O�������W�������݂��Ȃ��ꍇ�A���̓����͒l�������Ȃ��B
  2. [public identifier]�@4.2.2 �O������[XML]�ŋL�q�����Ƃ���ɐ��K�����ꂽ�C�O�������W���̌��J���ʎq�B�O�������W�������݂��Ȃ��ꍇ�C���͂��ꂪ���J���ʎq�������Ȃ��ꍇ�C���̓����͒l�������Ȃ��B
  3. [children]�@ DTD�̒��ɏo�����鏈�����߂�\����������������񍀖ڂ́C���̕������ł́C�����t�����X�g�B����DTD�����W������̍��ڂ́C�O�������W���̒��̍��ڂ����O�ɏo������B
  4. [parent]�@ ������񍀖ځB

2.9 ��͑ΏۊO���̏�񍀖�

XML��`�@ ����(4. �����\��)

XML�\���@ [71] GEDecl(4.2 ����)

DTD�̒��ɐ錾���ꂽ�e��͑ΏۊO��ʎ��̂��Ƃ�**��͑ΏۊO���̏�񍀖�(unparsed entity information item)**�����݂���B

��͑ΏۊO���̏�񍀖ڂ́C���̓��������B

  1. [name]�@ ���̖̂��O�B
  2. [system identifier]�@ ���̂̃V�X�e�����ʎq�B�������C���̂̐錾�̒��ɏo������Ƃ���Ƃ��C�����n�ɂ���ēK�p�����t���I��URI�G�X�P�[�v���Ȃ��Ƃ���B
  3. [public identifier]�@4.2.2 �O������[XML]�ŋL�q�����Ƃ���ɐ��K�����ꂽ�C���̂̌��J���ʎq�B���̂����J���ʎq�������Ȃ��ꍇ�C���̓����͒l�������Ȃ��B
  4. [declaration base URI]�@ �V�X�e�����ʎq������ɑ��ΓI�ɉ�������邱�Ƃ��]�܂������URI�B���Ȃ킿�C���̐錾�������ɏo�����鎑���̊��URI�B
  5. [notation name]�@ ���̂Ɋ֘A�t����ꂽ�L�@���B
  6. [notation]�@ �L�@���ɂ���Ė��O�t�����ꂽ�L�@��񍀖ځB���̖��O�����‹L�@�̂��߂̐錾�����݂��Ȃ��ꍇ�C���̓����͒l�������Ȃ��B�錾���ǂ܂�Ȃ��������C������񍀖ڂ�[all declarations processed]�������U�ɂȂ��Ă���(���������āC�ǂ܂�Ȃ��錾�����݂��Ă��悢)�ꍇ�C���̓����̒l�́C���m�Ƃ���B

2.10 �L�@��񍀖�

XML��`�@ �L�@(4.7 �L�@)

XML�\���@ [82] NotationDecl(4.7 �L�@)

DTD�̒��Ő錾�����e�L�@���Ƃ�**�L�@��񍀖�(notation information item)**�����݂���B

�L�@��񍀖ڂ́C���̓��������B

  1. [name]�@ �L�@�̖��O�B
  2. [system identifier]�@ �L�@�̃V�X�e�����ʎq�B�������C�L�@�̐錾�̒��ɏo������Ƃ���Ƃ��C�����n�ɂ���ēK�p�����t���I��URI�G�X�P�[�v���Ȃ��Ƃ���B�V�X�e�����ʎq���w�肳��Ȃ������ꍇ�C���̓����͒l�������Ȃ��B
  3. [public identifier]�@4.2.2 �O������[XML]�ŋL�q�����Ƃ���ɐ��K�����ꂽ�C�L�@�̌��J���ʎq�B�L�@�����J���ʎq�������Ȃ��ꍇ�C���̓����͒l�������Ȃ��B
  4. [declaration base URI]�@ �V�X�e�����ʎq������ɑ��ΓI�ɉ�������邱�Ƃ��]�܂������URI�B���Ȃ킿�C�L�@�錾�������ɏo�����鎑���̊��URI�B

2.11 ���O��ԏ�񍀖�

�����̒��̊e�v�f�́C���̗v�f�̂��߂̗L���͈͂̒��ɂ���e���O��Ԃ��Ƃ�**���O��ԏ�񍀖�(namespace information item)**�����B

���O��ԏ�񍀖ڂ́C���̓��������B

  1. [prefix]�@ ���̍��ڂ��L�q���錋����^����ړ����B�\���I�ɂ́C����́Cxmlns:�ړ����ɑ����������̈ꕔ�Ƃ���B���������P��xmlns�ł����āC���̌��ʁC�錾���f�t�H���g���O��Ԃɂ��ꍇ�C���̓����͒l�������Ȃ��B
  2. [namespace name]�@ �ړ�������������閼�O��Ԗ��B

������B XML 1.0�񍐗v��(�Q�l)

XML 1.0����[XML]�́C��{�I��XML�\���Ɋ֐S�����邪�CXML�����n�̂��߂̊�‚��̓���̕񍐗v�����܂�ł���B

�񍐗v���́C���̋K��̓K�p�͈͊O�̃G���[�y�ѕ��������܂ށB�������񍐂̂��߂�XML 1.0�v���̂��ׂẮCXML���W���ɓ������ꂽ�B(���ɂ����āC)���ʂ̒��̐����́CXML�����̐߂��Q�Ƃ���B

  1. XML�����n�́C���p�ւ̃}�[�N�t���̈ꕔ�ł͂Ȃ������̒��̂��ׂĂ̕�����񋟂��Ȃ���΂Ȃ�Ȃ�(2.10)�B
  2. �Ó��������؂���XML�����n�́C���p�ɁC�����̒��̂ǂ̕����f�[�^��v�f���e���ɏo������󔒂Ƃ��邩��m�点�Ȃ���΂Ȃ�Ȃ�(2.10)�B
  3. XML�����n�́C�s�����C���p�ɓn���O��LF�ɐ��K�����Ȃ���΂Ȃ�Ȃ�(2.11)�B
  4. XML�����n�́C�����̒l���C���p�ɓn���O��3.3.3�ɂ�����K���ɏ]���Đ��K�����Ȃ���΂Ȃ�Ȃ��B
  5. XML�����n�́C���p�ɁC�錾���ꂽ�L�@�̖��O�y�ъO�����ʎq(�V�X�e�����ʎq�C���J���ʎq���͂����̗���)��n���Ȃ���΂Ȃ�Ȃ�(4.7)�B
  6. ��͑ΏۊO���̖̂��O��ENTITY��������ENTITIES�����̖����I�Ȓl���̓f�t�H���g�̒l�Ƃ��ďo������ꍇ�CXML�����n�́C���p�ɁC���̋y�т��̋L�@�̖��O�C�V�X�e�����ʎq�C�y��(���݂���ꍇ�ɂ�)���J���ʎq��񋟂��Ȃ���΂Ȃ�Ȃ�(4.6�y��4.7)�B
  7. XML�����n�́C���p�ɁC�������߂�n���Ȃ���΂Ȃ�Ȃ�(2.6)�B
  8. ���̎Q�Ƃ̉ӏ��ɊO���\����͑Ώێ��̂̒u���e�L�X�g���܂߂Ȃ�XML�����n(�K�R�I�ɑÓ������؂��s��Ȃ������n)�́C���p�ɁC���̂�F���������ǂ܂Ȃ������Ƃ������Ƃ�ʒm���Ȃ���΂Ȃ�Ȃ�(4.4.3)�B
  9. �Ó������؂��s��XML�����n�́C���̎Q�Ƃ̉ӏ��Ɏ��̂̒u���e�L�X�g���܂߂Ȃ���΂Ȃ�Ȃ�(5.2)�B
  10. XML�����n�́C�^����ꂽ�v�f�^�ɑ΂���DTD�̒��Ő錾���ꂽ���v�f�̊J�n�^�O�̒��ɏo�����Ă��Ȃ������̃f�t�H���g�l���C�������Ȃ���΂Ȃ�Ȃ�(3.3.2)�B

������C ��(�Q�l)

����XML�����̗����������B

<msg:message doc:date="19990421" xmlns:doc="http://doc.example.org/namespaces/doc" xmlns:msg="http://message.example.org/"

Phone home!

����XML�����ɑ΂�����W���́C���̏�񍀖ڂ��܂ށB

������D ���W���ɂ͊܂܂�Ȃ�����

���̏��́CXML���W���̌��݂̔łł͕\������Ȃ��B�������C���̈ꗗ�́C���S�ł��邱�Ƃ��Ӑ}���Ă͂��Ȃ��B

  1. DTD�̒���ELEMENT�錾����́C�v�f�̓��e���f���B
  2. ATTLIST�錾�̒��̑����錾�̃O���[�v���y�я����t���B
  3. �����^���B
  4. ����(document)�v�f�̊O���̋󔒁B
  5. PI�̃^�[�Q�b�g���̒���̋󔒁B
  6. �����������Q�Ƃɂ���ĕ\������邩�ǂ����B
  7. ��v�f�̓�‚̌`���C<foo/>��<foo></foo>�Ƃ̊Ԃ̍��فB
  8. �J�n�^�O�y�яI���^�O�̓����̋󔒁B�������C�����l�̒��̈Ӗ��̂���󔒂͏����B
  9. CR�CCR-LF�y��LF�̍s�I�[�̊Ԃ̍��فB
  10. �J�n�^�O���̑����̏��ԁB
  11. DTD���̐錾�̏��ԁB
  12. DTD�̒��̏����t���Z�N�V�����̋��E�B
  13. DTD�̒��̃p�����^���̂̋��E�B
  14. DTD�̒��̒��߁B
  15. �錾�̈ʒu�B���Ȃ킿�C���������W���̒��C�O�������W���̒��C���̓p�����^���̂̒����Ƃ������ƁB
  16. �C�ӂ̖������ꂽ�錾�B����́CIGNORE�����t���Z�N�V�����̐錾�C�ȑO�̐錾���㏑�����ꂽ���߂ɖ������ꂽ���̐錾�y�ё����錾���܂ށB
  17. �����l�����p���邽�߂Ɏg�p������p���L���̎��(��d���p�����͓�d���p��)�B
  18. ��ʉ�͑Ώێ��̂̋��E�B
  19. CDATA�}�[�N���ꂽ�Z�N�V�����̋��E�B
  20. DTD�̒��Ő錾���ꂽ�����̃f�t�H���g�l�B