���̃h�L�������g�� W3C�̃����o�[�₻�̑��̑g�D�ɂ���ă��r���[����A�����ɂ���� W3C�����Ƃ���
�̏��F�����B����͊m�肵���h�L�������g�ł���A�Q�l�����Ƃ��ė��p���ꂽ��A���̃h�L�������g
����K�͓I�ȎQ�l�Ƃ��Ĉ��p�����ꍇ������B�������쐬�����ł� W3C�̖����́A�d�l�ւ̊S����
�����A���ꂪ�L���̗p����邱�Ƃ𑣐i���邱�Ƃł���B����ɂ��A�E�F�u�̋@�\���⑊�݉^�p����
���������B
�v��
���̃h�L�������g�ł́AURL ���������PICS���x���Ɋ�Â��Ă����� URL�ւ̃A�N�Z�X�̋���u���b
�N���s���t�B���^�����O���[���ł���A�v���t�@�C���L�q�̂��߂̌�����`����B���̌���͓`���t�H
�[�}�b�g���Ӑ}�������̂ł���B�܂�A���ꂼ��̎����ɂ����Ă͂��̌���ł��̎d�l�̓ǂݏ�������
�\�łȂ���Ȃ�Ȃ����A�����I�ɂ͂��̃t�H�[�}�b�g���g�p����K�v�͂Ȃ��B
�T�_
���ʃv���t�@�C���d�l����̖ړI�́A�ȉ��̒ʂ�ł���B
-
�v���t�@�C���̋��L�ƃC���X�g�[���B�G���h���[�U�ɂƂ��āA���[�U�C���^�[�t�F�[�X���悭�ł�
�Ă���ꍇ�ł��A�������ꂽ�v���t�@�C�����`���邱�Ƃ͓���B����g�D�����̔N��w�̂���
���ɑ��鐄���v���t�@�C�����쐬���邱�Ƃ��ł���B���[�U�����̑g�D��M������ꍇ�ɂ́A�v��
�t�@�C�����ꂩ�玩���ō쐬����̂ł͂Ȃ��A�����v���t�@�C�����C���X�g�[�����邱�Ƃ��ł���B
�P��̃R���s���[�^��ŃA�N�e�B�u�ȃv���t�@�C����ύX���邱�Ƃ�A�V�����R���s���[�^�Ƀv���t
�@�C�������邱�Ƃ͗e�Ղł���B
-
�G�[�W�F���g�A�����G���W���A�v���L�V�A���̑��T�[�o�Ƃ̒ʐM�B���܂��܂ȃT�[�o�́A�v���t
�@�C���ɋL�q���ꂽ���[�U�̑I���������ʂ��o���悤�ɒ�������B�Ⴆ�A�����G���W���́A
���A�v���C�o�V�[�A�N��ɂ��K�s�K�A���邢�̓_�E�����[�h����R�[�h�̈��S���Ɋ�Â������
�w�肷�郆�[�U�v���t�@�C���Ɉ�v���郊���N�݂̂�Ԃ��B
-
�t�B���^�����O���i�Ԃ̈ڐA���B���ׂĂ�PICS���[���݊��̐��i�œ����v���t�@�C�������삷��B
���̌���́A�Q�̊�����PICS�d�l��⑫����B�����́A
���C�e�B���O�T�[�r�X�L�q�̂��߂̃}�V����
�ݎ��\�ȃt�H�[�}�b�g����邱�ƂƁA
���x���t�H�[�}�b�g�Ƃ����z�z����R�̕��@���
�邱�Ƃł���B����PICSRules ���[���ł́A�g�p����PICS���C�e�B���O�T�[�r�X�A���x����₢���킹��
���߂�PICS���x���r���[���A�����Ďt���邩���ۂ��邩�̌�����s�����߂ɕK�v�ȃR���e���c�̃�
�x���Ɋւ������`���邱�Ƃ��ł���BPICSRules �ɂ�
DSig�f�W�^�������̏ƍ�����������\������
�܂�Ă��Ȃ����APICSRules ���ꂪ�����ƍ��ɓK�����邽�߂ɕK�v�Ȋg�����ǂ̕����ɑg�ݍ��ނ��Ɋւ�
�āA�����҂ɑ���q���g�͒���Ă���B
��`
���̎d�l�ł́A�X�̕K�v�����̏d�v�����`���邽�߂ɁARFC1123�kRFC1123�l�Ɠ����P����g�p����B
���̒P��͈ȉ��̒ʂ�ł���B
-
MUST�i�`���Ȃ���Ȃ�Ȃ��j
-
���̒P��܂��͌`�e���grequired�i�K�{�ł���j�h�́A���̍��ڂ��d�l�ɂƂ��Đ�ΕK�v�����ł��邱��
���Ӗ�����B
-
SHOULD�i�`����ׂ��ł���j
-
���̒P��܂��͌`�e���grecommended(���������j�h�́A����̏ł͂��̍��ڂ�����悤�Ȃ���
���܂ȗ��R�����邩������Ȃ����A���̏ꍇ�ɂ͓��e�����S�ɗ������āA���Ӑ[���������邱�Ƃ��K�v��
����B
-
MAY �i�`���Ă��悢�j
-
���̒P��܂��͌`�e���goptional�i�I�v�V�����ł���j�h�́A���̍��ڂ��S���C�ӂł��邱�Ƃ��Ӗ�����
����B�Ⴆ�A�x���_�[�ɂ���Ă͓���̎s�ꂪ���̍��ڂ�K�v�Ƃ��邩��A���邢�͐��i���������邩
��Ƃ������R�ł�����������邩������Ȃ����A�ʂ̃x���_�[�͓������ڂ��ȗ����邩������Ȃ��B
��������v���g�R����MUST�̕K�v�������ЂƂł��������Ă��Ȃ��ꍇ�́A���̎����͎d�l�ɑΉ����Ă�
��Ƃ͂����Ȃ��B���ׂĂ�MUST������SHOULD���������Ă���ꍇ�́A���̎����́u�������Ɏd�l�ɑ�
�����Ă���v�Ƃ�����BMUST�����͂��ׂĖ������Ă��邪�ASHOULD���������ׂĖ������Ă͂��Ȃ�����
�́A�u�����t���Ŏd�l�ɑΉ����Ă���v�Ƃ�����BPICSRules ���������郆�[�U�G�[�W�F���g�́AMUST��
���̂ǂꂩ�����Ă��Ȃ��\���̂��߂�
�ǂ̉��߂�I�����邩�͑S�����R�ł���B
���̃h�L�������g�ł́A�ǎ҂�PICS-1.1�̒m���������Ă��邱�Ƃ�O��Ƃ��Ă���B�����ŏq�ׂ��邷
�ׂẴ��x���́APICS-1.1�Ή����x���̂��Ƃł���B�ڍׂɂ��ẮA�Q�l�����kPicsService�l��
�kPicsLabels�l���Q�� ���邱�ƁB
PICSRules ����F��
��P�F����URL �ւ̃A�N�Z�X�̋֎~
1 (PicsRule-1.1
2 (
3 Policy (RejectByURL ("http://*@www.grody.com:*/*"
"http://*@www.gross.net:*/*"))
4 Policy (AcceptIf "otherwise")
5 )
6 )
���[�̔ԍ��͎Q�Ƃ̂��߂̍s�ԍ��ł���A���ۂ̃��[���ɂ͊܂܂�Ȃ��B
���̗�́APICS���x�����g�p���邱�ƂȂ������ URL�Z�b�g�ւ̃A�N�Z�X���֎~������̂ł���B�z�X�g
www.grody.com �܂���www.gross.net ���w�肷�邷�ׂĂ� URL�́A���[�U���A�|�[�g�ԍ��AURL �Ŏw�肳
�ꂽ����̃t�@�C���p�X�Ɋւ�炸�u���b�N�����B���̑��� URL�ɂ̓A�N�Z�X�\�ł���B
��Q�FPICS���x���Ɋ�Â����A�N�Z�X�̋֎~
1 (PicsRule-1.1
2 (
3 serviceinfo (
4 "http://www.coolness.org/ratings/V1.html"
5 shortname "Cool"
6 bureauURL "http://labelbureau.coolness.org/Ratings"
7 UseEmbedded "N"
8 )
9 Policy (RejectIf "((Cool.Coolness <= 3) or (Cool.Graphics >= 3))")
10 Policy (AcceptIf "otherwise")
11 )
12 )
���̃��[���́A"Cool"���C�e�B���O�T�[�r�X("http://www.coolness.org/ratings/V1.html")�ɂ���������
�h�L�������g�ɗ^����ꂽ���C�e�B���O���`�F�b�N����B���x���̓��x���r���[��
"http://labelbureau.coolness.org/Ratings" ����擾�����B�h�L�������g�̍쐬�҂ɂ��ނ玩�g��
coolness�̕]�����M���ł��Ȃ����߁A�h�L�������g�ɖ��ߍ��܂ꂽ���x���͖��������B�[����cool�ł�
���A���邢�͉摜����������h�L�������g�̓u���b�N�����B���x���t������Ă��Ȃ��h�L�������g����
�ނ��̑��̂��̂͂��ׂăA�N�Z�X�\�ł���B
��R�FPICS���x���Ɋ�Â����A�N�Z�X�̋��F���̑��̂��̂����ׂău���b�N����
1 (PicsRule-1.1
2 (
3 ServiceInfo (
4 name "http://www.coolness.org/ratings/V1.html"
5 shortname "Cool"
6 bureauURL "http://labelbureau.coolness.org/Ratings"
7 )
8 Policy (RejectUnless "(Cool.Coolness)")
9 Policy (AcceptIf "((Cool.Coolness > 3) and (Cool.Graphics < 3))")
10 Policy (RejectIf "otherwise")
11 )
12 )
���̃��[�����܂��A"Cool"���C�e�B���O�T�[�r�X�ɂ��������ăh�L�������g�ɗ^����ꂽ���C�e�B���O��
�`�F�b�N����B���̏ꍇ�́AUseEmbedded���w�肳��Ă��Ȃ����߁A���x���r���[�����炵��Ƃ�������
�x�������łȂ����ߍ��܂ꂽ���x�����g�p����B�W�s�ڂ́A"Cool"���C�e�B���O�V�X�e��("http://www.coolness.org")��"Coolness"�X
�P�[����̃��C�e�B���O�������Ă��Ȃ���A�h�L�������g�̓u���b�N�����Ƃ����Ӗ��ł���B�X�s��
�́A�[����"Cool"�ŁA�摜���������Ȃ��h�L�������g�͒ʉ߂��邱�Ƃ��Ӗ�����B10�s�ڂ́A����ȊO��
�h�L�������g�͂��ׂău���b�N����邱�Ƃ��Ӗ�����B
��S�F��蕡�G�ȗ�
1 (PicsRule-1.1
2 (
3 name (rulename "Example 4"
4 description "Example 4 from PICSRules spec; simply shows
how PICSRules rules are formed. This rule is
not actually intended for use by real users.")
5 source (sourceURL
"http://www1.raleigh.ibm.com/pics/PICSRulz/Example1.html")
6 ServiceInfo (name "http://www.coolness.org/ratings/V1.html"
7 shortname "Cool"
8 bureauURL "http://labelbureau.coolness.org/Ratings")
9 ServiceInfo ("http://www.kid-protectors.org/ratingsv01.html"
10 shortname "KP")
11 Policy (RejectByURL ("http://*@www.badnews.com:*/*"
"http://*@www.worsenews.com:*/*"
"*://*@18.0.0.0!8:*/*"))
12 Policy (AcceptByURL "http://*rated-g.org/movies*")
13 Policy (AcceptIf "(KP.educational = 1)"
Explanation "Always allow educational content.")
14 Policy (RejectIf "(KP.violence >= 3)"
Explanation "Blood's a %22scary%22 thing.")
15 Policy (RejectUnless "(Cool.Graphics < 4)" )
16 Policy (AcceptIf "otherwise")
17 )
18 )
��̐���
-
�s�ԍ�
-
����
-
1
-
���̍\���� PICSRules���[���Ƃ��Ē�`���A�o�[�W�����ԍ���t����B
-
3
-
���̃��[���ɁA�Ȍ��Ől�Ԃɓǂ߂�`���̖��O��t����B���̖��O����ӂł���K�v�͂Ȃ��B����͉�
�炩�̃��[�U�C���^�[�t�F�[�X�Ń��[���������ꍇ�ɁA���[�U�̋L����⏕������̂ł���B
-
4
-
���̃��[���ɁA��蒷���A�l�Ԃɓǂ߂�`���̐�����������B����͂��̃��[���̈Ӗ���������邽��
�̂��̂ł���A���炩�̃��[�U�C���^�[�t�F�[�X�Ń��[���������ꍇ�ɁA���[�U����������̂ł�����B
-
5
-
�u���[���̏o���v����肷��B����URL�́A���[���̍쐬�ҁA�쐬���R�A�X�V�̉\���ȂǁA���̃��[��
�Ɋւ���������E�F�u�y�[�W���������߂̂��̂ł���B
-
6-8
-
���C�e�B���O�T�[�r�X "http://www.coolness.org/ratings/V1.html" �� Cool �Ƃ��� shortname ��
��`���A���x�����擾���邽�߂̃��x���r���[�������ʂ���B
-
9-10
-
���C�e�B���O�T�[�r�X "http://www.kid-protectors.org/ratingsb01.html" �� KP �Ƃ���shortname
���`����B���̃T�[�r�X�ɂ̓��x���r���[���͒�`����Ă��炸�A���ߍ��܂ꂽ���x���݂̂��g�p��
���B
-
11
-
www.badnews.com�����www.worsenews.com�z�X�g����̂��ׂĂ� HTTP URL �ƁA�擪��8�r�b�g�� IP�A
�h���X 18�����z�X�g�i������ mit.edu �ɑΉ�����A�h���X�ł���j���w�肷�邷�ׂĂ�URL�����ۂ�
��B
-
12
-
�h���C������ rated-g.org �ŏI���A�p�X���� "movies" �ł���URL���t���邪�A����̓��[�U��
��|�[�g�ԍ����w�肳��Ă��Ȃ��ꍇ�Ɍ�����B�Ⴆ�A
"http://www.mystuff.rated-g.org/movies/hello"�͎t�����邪�A
"http://[email protected]/movies/hello"��
"http://www.mystuff.rated-g.org:8009/movies/hello"�́A���[�������̂��̎��_�ł͎t������
���B�i����炪��ɑ����|���V�[�X�e�[�g�����g�ɂ���Ďt������ꍇ�����邩������Ȃ��B�j
-
13
-
�i��ɒ�`���ꂽ�jKP���C�e�B���O�T�[�r�X�� educational �̃��C�e�B���O��1�ł���h�L�������g��
������邱�Ƃ��w�肷��B���̃��C�e�B���O�V�X�e���ł̃��C�e�B���O�������Ȃ��h�L�������g�A����
���͂P�ȊO�̃��C�e�B���O�����h�L�������g�́A�ȍ~�̃��[���ɏ]���Ē��ׂ���B
-
14
-
�i��ɒ�`���ꂽ�jKP���C�e�B���O�T�[�r�X�� violence �̃��C�e�B���O��3�ȏ�̃h�L�������g�̓u
���b�N����邱�Ƃ��`����B����ɂ̓��[�U�G�[�W�F���g�����[�U�ɕ\�����邽�߂̐����������Ă�
��B�f�R�[�h����� Blood's a "scary" thing �ƂȂ�B���̃��C�e�B���O�V�X�e���ł̃��C�e�B���O����
���Ȃ��h�L�������g�A���邢��3�����̃��C�e�B���O�����h�L�������g�́A�ȍ~�̃��[���ɏ]���Ē��ׂ�
���B
-
15
-
�i��ɒ�`���ꂽ�jCool���C�e�B���O�T�[�r�X�� Graphics �̃��C�e�B���O��3�ȏ�̃h�L�������g��
�u���b�N����邱�Ƃ��`����BCool�V�X�e���ł̃��C�e�B���O�������Ȃ��h�L�������g�A���邢�̓��C
�e�B���O��Graphics�̃J�e�S���[���܂܂�Ȃ��h�L�������g�̓u���b�N�����BGraphics�̃��C�e�B���O
��3�����̃h�L�������g�́A�ȍ~�̃��[���ɏ]���Ē��ׂ���B
-
16
-
��L�̃t�B���^�[���[���Ƀp�X���Ȃ������A���邢�̓u���b�N���ꂽ�h�L�������g�̓p�X���邱�Ƃ��
�`����B
���̃��[�����܂Ƃ߂�Ǝ��̂悤�ɂȂ�B
-
2�̃T�C�g����̂��̂����ۂ���B�����łȂ���Arated-g.org�h���C������̂��̑��̓���̂���
�͎t����B
-
����I�ȃy�[�W�́A���̒��ɖ\�͂�D�܂����Ȃ����e���܂܂�Ă��邩�ǂ����Ɋւ�炸�������B
-
�����̖\�͂��������y�[�W�́A����炪����I�łȂ���u���b�N�����B
-
����I�y�[�W�ȊO�́A�摜����������y�[�W�̓u���b�N�����B
-
���̑��̂��̂ɂ̓A�N�Z�X�ł���B
�ڍ\��
���̍\���́AMIME�^�C�v�� application/pics-rules �Ƃ��ēo�^�����B
-
�܂����߂� PICSRules ���[���̊�{�ƂȂ�y����l���A���Ƀ��[���̈�ʃt�H�[�}�b�g�A�����čŌ�Ƀt
�B���^�[�߂ɂ�����\���t�H�[�}�b�g�ɂ��čl���悤�B
-
��{�\��
-
PICSRules ���[���́AS-expression �̌���ꂽ�`���A�܂芇�ʂň͂܂ꂽ�����ƒl�̃y�A�Ɋ�Â��Ă�
��B�l�́A�N�H�[�e�[�V�����}�[�N�ň͂܂ꂽ�����A���ʂň͂܂ꂽ�lj������ƒl�̃y�A�̃��X�g��
�����ꂩ�ł���A�l�X�g���\�ł���B���鑮���ɑ���l������Ƀy�A�̃��X�g�ł���ꍇ�A�u��ꑮ
���v�Ƃ����T�O������B��ꑮ���̖��O�͓ǂ݂₷���̂��߂ɏȗ������ꍇ������̂ŁA��ꑮ���̒l
�݂̂��w�肳���BParser�i��͎ҁj�͍\���I�ɑ����ƒl����ʂ��邱�Ƃ��\�ł���B�i�l�̓N�H�[�e
�[�V�����}�[�N�������ʂ̂ǂ��炩�Ŏn�܂�B�j�������ƑɂȂ��Ă��Ȃ��l�͎����I�ɑ�ꑮ���̂���
�ł���ƍl������B���鑮���ɑ���l���y�A�̃��X�g�̏ꍇ�A���̃��X�g�ɂ͑�ꑮ���Ƃ��̒l�̃y
�A�i��ꑮ���̖��O�͂����Ă��Ȃ��Ă��悢�j���K���܂܂�Ă��Ȃ���Ȃ�Ȃ��B����ɂ͒lj��̑���
�ƒl�̃y�A���܂܂�Ă��Ă��悢�B�����̌���ꂽS-expression�̈�ʕ��@�͈ȉ��̒ʂ�ł���B
attrvalpair:: attribute whitespace value | value
attribute:: alphanumstr
value:: quotedstring |'(' attrvalpair+ ')'
quotedstring:: '"'notdoublequotechar*'"' | "'"notsinglequotechar*"'"
alphanumstr:: (alphanum | '.')+
whitespace:: ' ' | '\t' | '\r' | '\n'
alphanum:: '0' - '9' | 'A' - 'Z' | 'a' - 'z'
notdoublequotechar :: any Unicode character except "
notsinglequotechar :: any Unicode character except '
���@�ł͕�������N�H�[�e�[�V�����}�[�N�ň͂ޏꍇ�� " ���g�p���邪�A����� ' ���g�p���Ă���
���B���̏ꍇ�ɂ́A���߂ƏI��肪���������ł��邱�ƁB�܂�A
"string"
'string'
�͋�����邪�A
"string'
'string"�ł͂����Ȃ��B
BNF�̎c��̕������Ȍ��ɕ\�L���邽�߂ɁA���ׂẴN�H�[�e�[�V�����}�[�N�ň͂܂ꂽ������ɑ���
�u�_�u���N�H�[�e�[�V�����}�[�N�v���g�p���邪�A�V���O���N�H�[�e�[�V�����}�[�N����蕶���Ƃ���
�����ɗL���ł��邱�Ƃ𗝉����ꂽ���B�܂��A�������Ȍ��ȕ\�L�̂��߂ɁAnotquotechar �͌��݂̕�����
�Ŏg�p�������p�̋�蕶���i " �܂��� '�j�ȊO�� Unicode�������Ӗ�������̂Ƃ���B
��������ł��̑��̈��p�������g�p�����ꍇ������B��������ŃV���O������у_�u���N�H�[�e�[�V��
���}�[�N���g�p���邽�߂ɁA�ȉ��̊����K�p����B
-
"�� %22 �Ƃ��ăR�[�h������
-
'�� %27 �Ƃ��ăR�[�h������
-
%�� %25 �Ƃ��ăR�[�h������
-
% �̌��22,27,25 �ȊO�̂��̂���ɑ������̂́A�\���I�ɖ����ł���
", ', % �́AURL���̓��ꕶ���̂��߂Ɏg�p���� % hex hex �̃R�[�h�����[�����g�p���ăR�[�h�������
���A���̑��� % hex hex �̑g�ݍ��킹�͖����ł���A����炪���̑��̕������R�[�h��������̂Ƃ��Ĉ�
��Ȃ����Ƃɒ��ӂ��邱�ƁB
PICS���[�����̕����� |
��͂���f�R�[�h���ꂽ������ |
"string" |
string |
'string' |
string |
'This is "quoted" text.' |
This is "quoted" text. |
"It's nice to quote." |
It's nice to quote. |
"It%27s nice to %22quote.%22" |
It's nice to "quote." |
"50%25 of test scores are above the median" |
50% of test scores are above the median |
"50% are below the median" |
<�\���Ƃ��Ė���> |
���ۉ�
HTML�̍��ۉ��Ɋւ���RFC 2070 [RFC2070]�́A�����I�ȕ����R�[�h���ƊO���I�ȕ����R�[�h���̂����
�I��SGML��ʂɂ��ċL�q���Ă���B����ɂ��ƁAUnicode��PICSRules���[���̓����I�ȕ����Z�b�g��
����BUnicode�́A�قƂ�ǂ̌���̕������܂�16�r�b�g�̕����Z�b�g�ł���BPICSRules�̌����ȊO���R
�[�h���ɂ� UTF-8���w�肷��BUTF-8 [UTF-8] �ɂ́A���ׂĂ�USASCII���������ꎩ�g�ɂ���łĕ\���ł�
���ƂƁA���̑��̃R�[�h���̈ꕔ�Ƃ��Č���Ȃ��Ƃ����L���Ȑ���������B����́A8-bit�o�C�g�̐擪�r
�b�g����菜���Ȃ�����A�قƂ�ǂ̏�����UTF-8�ɂ��Ēm��K�v���Ȃ����Ƃ��Ӗ�����B
PICSRules���[���𐳊m�ɉ��߂��邽�߂ɂ́A���[����Unicode�����V�[�P���X�ɕϊ����邽�߂ɍŏ���
UTF-8�̕ϊ����s���邱�Ƃɒ��ӂ��邱�ƁB���ɁA�N�H�[�e�[�V�����}�[�N�ň͂܂ꂽ���ꂼ��̕�����
�́A
%22�� " �ɁA%27�� ' �ɁA%25�� % �ɕϊ�����R���o�[�^��ʂ�Ȃ���Ȃ�Ȃ��B
���ׂĂ̑������͑啶��/����������ʂ��Ȃ����A�l�� case �͕ۑ�����Ȃ���Ȃ�Ȃ��B�������A�X
�̐߂��^�܂��͑����́A�����̒l��啶��/����������ʂ��Ȃ��ƒ�`���Ă��悢�B
�R�����g
�ȉ��Ɏ��� PICSRules�\���ɂ́A���[�U�G�[�W�F���g�̓���ɉe�����邳�܂��܂ȃX�e�[�g�����g������
�Ȃ��A���[�U�ɕ\������������̂��߂̋@�\������B�������A�u�\�[�X���x���́v�R�����g�A�܂胋�[
���̍쐬��ҏW�̂��߂̃R�����g�����A�G���h���[�U�ɂ͕\�����Ȃ��R�����g�����邱�Ƃ͗L�v�ł�
��B����́A�\�[�X�R�[�h�ɃR�����g��t���邱�ƂƎ��Ă���B���[���̍쐬�҂ɖ��m�ȃ��[���쐬����
�シ�邽�߂ɁA�R�����g��PICSRules���[�����ɕt���邽�߂̋@�\�����B
�R�����g�̍\���͈ȉ��̒ʂ�ł���B
comment:: '{' comment-text* '}'
comment-text:: any characters except '}'
��L�̍\���̌��ʂƂ��āA�R�����g���l�X�g���邱�Ƃ͂ł��Ȃ����Ƃɒ��ӂ��邱�ƁB
�R�����g�́APICSRules���[���̂ǂ̕����Ɍ���Ă��悢�B���[�U�G�[�W�F���g�́A���[���̌�b���͒���
�R�����g���폜���Ă��悢�B�R�����g���̕��͂́A�����Ȃ���@�ł����[���̉��߂ɉe�����y�ڂ��Ă͂�
��Ȃ��B�܂��APICSRules���[���̐�����G�N�X�|�[�g���s�����[�U�G�[�W�F���g�́A���[�����A�G�N
�X�|�[�g�A�`������O�ɃR�����g����菜���Ă��悢�B
PICSRules ���[��
�C��BNF �ɂ�����PICSRules ���[���̈�ʃt�H�[�}�b�g�͈ȉ��̒ʂ�ł���B"policy-expression" ��
"URLpattern" �̂悤�ɁA�G�������g�ɂ���ẮA�����Ŏg�p����Ă��Ă��h�L�������g�̌�̕����Œ�`
�������̂�����B
rule:: '(' 'PicsRule-'verMajor'.'verMinor rule-body ')'
verMajor :: integer
verMinor :: integer
rule-body :: '(' rule-clauses ')'
rule-clauses :: rule-clause+
rule-clause :: policy-clause |
name-clause |
source-clause |
service-clause |
opt-extension-clause |
req-extension-clause |
extension-aval
policy-clause :: 'Policy' '(' policy-attribute+ ')'
policy-attribute :: ['Explanation'] quotedstring |
'RejectByURL' URL-strings |
'AcceptByURL' URL-strings |
'RejectIf' policy-string |
'RejectUnless' policy-string |
'AcceptIf' policy-string |
'AcceptUnless' policy-string |
extension-aval
URL-strings :: URL-string | '(' ['patterns'] URL-string+ ')'
URL-string :: '"'URLpattern'"'
policy-string :: '"'policy-expression'"'
name-clause :: 'name' '(' name-attribute+ ')'
name-attribute :: ['Rulename'] quotedstring |
'Description' quotedstring |
extension-aval
source-clause :: 'source' '(' source-attribute+ ')'
source-attribute :: ['SourceURL'] quotedURL |
'CreationTool' quotedstring |
'author' quoted-address |
'LastModified' quoted-date |
extension-aval
service-clause :: 'serviceinfo' '(' service-attribute+ ')'
service-attribute :: ['Name'] quotedURL |
'shortname' quotedstring |
'BureauURL' quotedURL |
'UseEmbedded' yes-no |
'Ratfile' quotedstring |
'BureauUnavailable' pass-fail |
extension-aval
yes-no :: '"'Y-N'"'
Y-N :: 'Y' | 'N'
pass-fail :: '"'P-F'"'
P-F :: 'PASS' | 'FAIL'
opt-extension-clause :: 'optextension' '(' extension-name+ ')'
extension-name :: ['extension-name'] quotedURL | 'shortname' quotedstring |
extension-aval
req-extension-clause :: 'reqextension' '(' extension-name+ ')'
extension-aval :: attrvalpair
quotedURL :: '"'URL'"'
URL :: as defined in RFC-1738 for URLs.
quoted-address :: '"'e-mail-address'"'
e-mail-address :: as defined in RFC-822 for addresses.
quoted-ISO-date :: '"'YYYY'-'MM'-'DD'T'hh':'mmStz'"'
based on the ISO 8601:1988 date and time standard, restricted
to the specific form described here:
YYYY :: four-digit year
MM :: two-digit month (01=January, etc.)
DD :: two-digit day of month (01 through 31)
hh :: two digits of hour (00 through 23) (am/pm NOT allowed)
mm :: two digits of minute (00 through 59)
S :: sign of time zone offset from UTC ('+' or '-')
tz :: four digit amount of offset from UTC
(e.g., 1512 means 15 hours and 12 minutes)
�Ⴆ�A"1994-11-05T08:15-0500" �́A1994�N11��5���ߑO8��15��
�i���O�������W�����j��\���L����quoted-ISO-date �ł���B
����:ISO�̕W���ł́A�����Ő����������̂�肩�Ȃ�_��
�Ȃ��̂��F�߂��Ă���BPICS�ł͂����Ő��������\�������m��
�K�v�Ƃ���B���Ԃ⎞�ԑт̂ǂ��炪�ȗ�����Ă������Ȃ����A
��փt�H�[�}�b�g��������Ȃ��B���������Ŏ������ʂ��
�Ȃ���Ȃ�Ȃ��B
Note:���ӁFPICS-1.1 ���x���t�H�[�}�b�g�̎d�l�ł́A�s���ӂɂ�ISO���t
�t�H�[�}�b�g�Ƃ͂킸���Ɍ݊����̂Ȃ��t�H�[�}�b�g���g�p�����B���ɂ��̎d�l�ł́A
�N�ƌ��⌎�Ɠ��̋��Ɂe�|�f�ł͂Ȃ��e�D�f���g�p����B���̎d�l�ł͂��̌���
�C����������PICS-1.1 ���x���̎d�l�̓��t�t�H�[�}�b�g�Ƃ̌݊����͂Ȃ����AISO���t
�t�H�[�}�b�g�Ƃ͌݊���������B
��ʓI�ȈӖ�
�A�v���P�[�V�����v���O�����́A���[����URL�A������URL�Ɋ֘A����h�L�������g���ɖ��ߍ��܂ꂽ�A��
�邢��URL�Ɋ֘A����h�L�������g�ƂƂ���HTTP�w�b�_�[�œn���ꂽ���x������郋�[���]����(rule
evaluator)���Ăяo���BYes�i�j�܂���No�i���ہj�̉��Ԃ����B���[���]���҂͂܂��A�ŏI�I��
�����肷��|���V�[�߂Ɋ֘A���������������ꍇ�ɂ́A���̐��������Ԃ��ׂ��ł���B
serviceinfo �߂́A�w�肳�ꂽURL�ɂƂ��Ȃ����x������������@�i���x���r���[������擾�����
���A�h�L�������g�ɖ��ߍ��܂�Ă���̂��j����肷��BPolicy �߂́A���Ƃ���̂����ۂƂ���
�̂������肷��BExtension�߁i�K�{�܂��̓I�v�V�����j�́A�lj����x���̎��W��p�����s������A���邢
�̓��[���̈Ӗ���ύX����B���[���̈Ӗ��́A�w�肳�ꂽ���ׂẴ\�[�X���烉�x�����擾���邽�߂ɍ�
�P��s�����A�擾�������ׂẴ��x����policy�߂̕]���Ɏg�p���郆�[�U�G�[�W�F���g�Ɋ�Â��Ē�`��
���B���������[�U�G�[�W�F���g�́A�w�肳�ꂽURL�Œ���郉�x���Ɠ������̂������[�J���\�[�X
�i�L���b�V����CD-ROM�j�ɖ₢���킹����A���x���ɂ���ă��[���̌��ʂ��ς��Ȃ��ꍇ�ɂ̓��x����
���W���Ȃ��悤�ȍœK�����s���B
���̃h�L�������g����̕����ŁA�����҂�����̕]���������̗p����悤�Ȓ�Ă��s���B�����҂́A����
�]������.�̒�Ă����E����ꍇ�ɂ͂ƂĂ����Ӑ[���s���K�v������B���x���̎�M�ɂ����ĒP���łȂ�
���[�����쐬���邱�Ƃ��\�ł��邱�Ƃɒ��ӂ��邱�ƁB��葽���̃��x������M����ƁA���ʂ���
�狑�ۂɂȂ����肻�̋t�ɂȂ����肷��ꍇ������B�������ꍇ�ɂ���ẮA�lj����x�������[���̌���
��ύX�ł��Ȃ��悤�ɂ��邱�Ƃ��\�ł���B�Ⴆ�A�ŏ���policy�߂ŁA���x���Ɋւ�炸�w�肳�ꂽ
URL�����Ɋ�Â��Ă��̓����URL������Ǝw�肷��B�œK���Ƃ��āA���[�U�G�[�W�F���g��
serviceinfo�߂Ŏw�肳��邷�ׂẴ\�[�X�Ń��x�����g�p�\�ɂȂ�O�ɉ����肷��悤�ɁApolicy
�߂��g�p���邩������Ȃ��B�������A�lj����x�����]�����ʂ�ύX�ł��Ȃ��悤�ȏꍇ����������s����
���ɁA�����҂͒��ӂ��Ȃ���Ȃ�Ȃ��B
�X�̐߂̈Ӗ��Əڍ�
-
Policy
-
Policy�߂ɂ͒�`���ꂽ�������V����B������ RejectByURL, AcceptByURL, RejectIf, AcceptIf,
RejectUnless, AcceptUnless, explanation �ł���B�ŏ���2�́AURL�����Ɋ�Â��č��ڂ̎⋑��
���s�����̂ł��邪�A���̐����ɂ��Ă� URL�t�B���^�����O�̃Z�N�V�������Q�Ƃ��邱�ƁB����4�́A
���ڂ�\�����郉�x���Ɋ�Â��Ď⋑�ۂ��s�����̂ł��邪�A���̐����ɂ��Ă����x���t�B���^��
���O�̃Z�N�V�������Q�Ƃ��邱�ƁB��v�ȑ����� explanation �ł���A����ɂ͊���l���Ȃ��B���ׂĂ�
Policy�߂ɂ́oRejectByURL, AcceptByURL, RejectIf, AcceptIf, RejectUnless, AcceptUnless�p�̃Z�b
�g����K��1�̑������K�v�ł���BPolicy�߂ɂ����̑����������܂܂�Ă��Ă͂Ȃ�Ȃ��B�����̑g
�ݍ��킹���s�����߂ɂ́A���[������Policy�߂���J��Ԃ����ƂɂȂ�B
-
���[�����ŕ�����Policy�߂��w�肳��Ă���ꍇ�́A�����̐߂̓��[�����Ŏw�肳�ꂽ���ɕ]������
��B�]���͍ŏ��ɐ߂��������ꂽ�ꍇ�ɏI�����A����ɔ����A�N�V���������s�����B���̕\�́A����
�ƁA���ꂪ�������������A���̈Ӗ���\�������̂ł���B
�߂̑��� |
������������ |
�A�N�V���� |
RejectByURL |
URL���w�肳�ꂽ�p�^�[���̂����ꂩ�Ɉ�v |
�h�L�������g���u���b�N���� |
AcceptByURL |
URL���w�肳�ꂽ�p�^�[���̂����ꂩ�Ɉ�v |
�h�L�������g���p�X���� |
RejectIf |
expression = true |
�h�L�������g���u���b�N���� |
AcceptIf |
expression = true |
�h�L�������g���p�X���� |
RejectUnless |
expression = false |
�h�L�������g���u���b�N���� |
AcceptUnless |
expression = false |
�h�L�������g���p�X���� |
-
Policy�߂��ǂ����������Ȃ��ꍇ�́A�h�L�������g�̓p�X�����B����́A�Ō��policy�߂� AcceptIf
"otherwise" �Ƃ���̂Ɠ����ł���B
-
name
-
���̐߂́A����Ă��郋�[���ɁA�l�Ԃ��ǂ߂�`���̒Z�����O��^����B�����̖��O�́A���[�h��
��Ă��郋�[���A���̃A�N�e�B�u�^�C���A�N�e�B�u�Ȃǂ𑀍�҂ɕ\�����邽�߂ɁA���[�U�G�[�W�F���g
�̃��[�U�C���^�[�t�F�[�X�Ŏg�p�������̂ł���B
-
name�߂ł́Arulename ��description �Ƃ���2�̑�������`����Ă���BRulename��name�߂̑�ꑮ��
�ł���A���̒l�͂��̃��[���̐l�Ԃ��ǂ߂�`���̖��O�ł���Bdescription�̒l�� name�����ڍׂɂ�
�����̂ł���B�������Ă��郋�[���ɂ����Ă̐l�Ԃ��ǂ߂�`���̐����ł���B����́A���[����
�쐬�҂₻�̈Ӗ��Ȃǂ𑀍�҂Ɏ������߂ɁA���[�U�G�[�W�F���g�̃��[�U�C���^�[�t�F�[�X�Ŏg�p����
����̂ł���Bdescription�̒l�̓��e�́A���[���̍쐬�҂Ɉ�C�����B
-
���̃��J�j�Y���́A����������T�|�[�g���邽�߂̃g�����X�y�A�����g�ȕ��@����Ă��Ȃ����Ƃɒ�
�ӂ��K�v�ł���B�����PICSRules�̌��o�[�W�����ł͈Ӑ}�I�ɏq�ׂ��Ă��Ȃ����̂ł���B���������
PicsRules-1.1 ���[�����쐬����ꍇ�ɂ́A���[�����쐬���āA���ꂼ����e����ŕ\�����Ȃ����
�Ȃ�Ȃ��B
-
source
-
���̐߂̓��[���̏o���Ɋւ�������ł���BsourceURL, creationTool, author, lastModified �Ƃ���4��
�̑�������`����Ă���B��ꑮ���� sourceURL �ł���B
-
sourceURL�����́A�g���[����URL�h�ł���B���̃��[�����g�p����l���A���̃��[����쐬�҂Ɋւ����
��邽�߂�URL�����B���̑����̒l�́A���[�U�����̃��[���Ɋւ���l�Ԃ��ǂ߂�`���̐�����
�擾���邽�߂�URL�ł���B
-
creationTool�����́A���̃��[���̍쐬�Ɏg�p���ꂽ�c�[��������ꍇ�ɁA��������ʂ��邽�߂̂��̂�
����B�����HTTP�ł� User-Agent �Ɠ������̂ł���B���̑����̒l�̓N�H�[�e�[�V�����}�[�N�ň͂܂�
��������ł���B���̕�����́A"Cool-PICS-Rule-Editor/1.04" �̂悤�ɁA�c�[�����^�o�[�W����(toolname/version),�̌`��
�ɂȂ�B
-
author�����́A���̃��[�����쐬�����l��g�D�̓d�q���[���A�h���X�ł���B���̑����̒l�̓N�H�[�e
�[�V�����}�[�N�ň͂܂ꂽ�d�q���[���A�h���X�łȂ���Ȃ�Ȃ��B
-
lastModified�����́A���̃��[���̍ŏI�X�V�̓����ł���B���̒l�́APICS-1.1���x���\���ƒʐM�v���g
�R���Œ�`���ꂽ�ʂ�Aquoted-ISO-date �łȂ���Ȃ�Ȃ��B
-
serviceinfo
-
���̐߂́A���C�e�B���O�T�[�r�X(serviceinfo)�Ɋւ�������w�肷��B���̐߂ɂ́Aname, shortname, bureauURL,
UseEmbedded, ratfile, , bureauUnavailable �Ƃ���6�̑�������`����Ă���B
-
name�����́A���C�e�B���O�T�[�r�X�� servicename URL �ł���B���̒l�́A�\������Ă���T�[�r�X�̖�
�O����肷��B
-
shortname�����́A���̃��C�e�B���O�T�[�r�X�ɒZ�����O��^����B����́Afilter�߂��L�q����ۂɎg�p
����A���̒l�͕�����ł���B�Ⴆ�A"http://coolness.raleigh.ibm.com/ratings/V1.html"�Ƃ������C�e�B���O�T�[�r�X��shortname �� "Cool"�ł���B
-
bureauURL�����́A���̃��C�e�B���O�T�[�r�X����̃��C�e�B���O�������x���r���[����URL���w�肷
��B���̑����̒l�́A���x���r���[����URL�ł���B���̑����͕�����w�肳��Ă��悢�B���[�U�G�[�W
�F���g�́A�w�肳�ꂽ���ׂĂ�URL���烉�x�����擾���A�|���V�[�̕]���ɂ���炷�ׂẴ��x�����g�p��
�Ȃ���Ȃ�Ȃ��B
-
UseEmbedded�����́A�h�L�������g�ƂƂ���HTTP�w�b�_�œ`�����ꂽ���x����META�G�������g���g�p����
HTML�h�L�������g�ɖ��ߍ��܂ꂽ���x�����g�p���邩�ǂ��������肷��B���̑������ȗ�����Ă���ꍇ
�́A����l�ł����̃��x�����g�p����B���̑����̒l�� "N" �̏ꍇ�́A�h�L�������g�ɖ��ߍ��܂ꂽ��
�̃T�[�r�X�ɑ��郉�x���́AHTTP�w�b�_�œ`�����ꂽ���x���Ɠ��l�ɖ��������B����́A���[���̍�
���҂��h�L�������g�̍쐬�҂����郉�x�����M���ł����A���x���r���[���̃��x�������M���ł�
��ꍇ�ɗL���ł���B
-
bureauUnavailable�����́AbureauURL�����Ŏw�肳�ꂽ�ǂ̃��x���r���[���ɂ��A�N�Z�X�ł��Ȃ��ꍇ
�ɂǂ����邩���w�肷��B���̑����ɑ���l�� "PASS"��"FAIL"�ł���A���̑��̃��x����������ꂽ
���ǂ����Ɋւ�炸�A���[���͑Ή�����l��Ԃ��B
-
ratfile�����́A���̃��C�e�B���O�T�[�r�X���g�p����A�}�V���ǂݎ��\�ȃ��C�e�B���O�V�X�e���̐�
���i"RAT file"�Ƃ��Ēm���Ă�����́j�������B����́A����2�̕��@�̂����ǂ��炩�Ŏw�肳���B
����́A�l���}�V���ǂݎ��\�ȃT�[�r�X�����̂��ׂĂ��N�H�[�e�[�V�����}�[�N�ň͂��̂Ƃ���
���A"[RATFile-URL]"�̍\���ŁA RATFile-URL�̕��������C�e�B���O�V�X�e��������URL�ɂ��邩�̂ǂ���
���ł���B���[�U�G�[�W�F���g�́A����URL���t�Q�Ƃ���� application/pics-service �̃^�C�v�̃h�L��
�����g�ɂȂ邱�Ƃ�z�肷��ׂ��ł���Bratfile�����Ɋ���l�͂Ȃ��B�N�H�[�e�[�V�����}�[�N�ň͂܂�
�������}�V���ǂݎ��\�ȃT�[�r�X�����ł���ꍇ�́A��̐����̂悤�ɃG�X�P�[�v����Ȃ����
�Ȃ�Ȃ��B
-
opt-extension-clause
- opt-extension-clause �� req-extension-clause �́APICSRules�̊g�����J�j�Y���ł���B�����́A
PICS���x���t�H�[�}�b�g�̊g�����J�j�Y���̌�Ń��f�������ꂽ�B�g�����J�j�Y���Ɋւ���ڍׂȏ���
�ȉ��Ɏ����B
-
opt-extension-clause �ɂ́Aextension-name��shortname�Ƃ���2�̑���������Bextension-name������
�l�́A���̃��[���Ŏg�p�����g���̖��O���w�肷��B�g���̖��O�́AquotedURL�ł���B����URL�́A�l
�Ԃɓǂ߂�`���ł��̊g���̐������������̂ł���BURL�́Acentral naming body ��K�v�Ƃ��Ȃ��Ŋg��
���̈�Ӑ����m���ɂ��邽�߂̂��̂ł���Bshortname �����̒l�̓N�H�[�e�[�V�����}�[�N�ň͂܂ꂽ����
��ł��邪�A�L���ȑ��������� (a-z, A-Z, 0-9) �݂̂��g�p���Ȃ���Ȃ�Ȃ��BShortname�́A���̊g
���Œ�`����鑮�������ʂ��邽�߂ɁA�������̐ړ����Ƃ��Ďg�p�����B
-
�F���ł��Ȃ� optextension ���܂ރ��[������M�����ꍇ�ɂ́A���[�U�G�[�W�F���g�͔F���ł��Ȃ��߂�
���ׂĖ������ă��[������������ׂ��ł���B����́A�I�v�V�����̊g���͊�����parser�i��͎ҁj����
���Ȃ��悤�ɁA��L�������|�l�̍\�����g�p���Ȃ���Ȃ�Ȃ����Ƃ��Ӗ�����B���[�U�G�[�W�F���g��
�F���ł��Ȃ������ƒl�̑g�ݍ��킹��p�����邽�߁A�I�v�V�����̊g�����g�p����Ƃ����錾�͏璷�ł�
��悤�Ɍ����邱�Ƃɒ��ӂ��K�v�ł���B���[�U�G�[�W�F���g�͂܂��A���[�����g�p����O�Ƀ��[�U���m
�F�ł���悤�ɁA���[�����g�p����I�v�V�����̊g���̖��O��\�����Ă��悢�B
-
req-extension-clause
-
���̐߂ɂ́Aextension-name ��shortname�Ƃ���2�̑���������Bextension-name�����̒l�́A���̃��[
���Ŏg�p�����g���̖��O���w�肷��B�g���̖��O�́AquotedURL�ł���B����URL�́A�l�Ԃɓǂ߂�`��
�ł��̊g���̐������������̂ł���BURL�́Acentral naming body ��K�v�Ƃ��Ȃ��Ŋg�����̈�Ӑ����m
���ɂ��邽�߂̂��̂ł���Bshortname�����̒l�̓N�H�[�e�[�V�����}�[�N�ň͂܂ꂽ������ł��邪�A�L
���ȑ��������� (a-z, A-Z, 0-9) �݂̂��g�p���Ȃ���Ȃ�Ȃ��BShortname�́A���̊g���Œ�`�����
���������ʂ��邽�߂ɁA�������̐ړ����Ƃ��Ďg�p�����B���[�U�G�[�W�F���g���F���ł��Ȃ�
-
req-extension-clause ���܂ރ��[�����g�p����URL�̎̉\���Ɋւ��鏈�������߂�ꂽ�ꍇ�́A���[
�U�G�[�W�F���g�̓G���[��\������ׂ��ł���B
-
verMajor
-
���̃��[�����Ή����Ă���PICSRules�̃��W���[�o�[�W�����ԍ��BPICSRules�̌��o�[�W�����̃��W���[�o
�[�W�����ԍ��͂P�ł���B
-
verMinor
-
���̃��[�����Ή����Ă���PICSRules�̃}�C�i�[�o�[�W�����ԍ��BPICSRules�̌��o�[�W�����̃}�C�i�[�o
�[�W�����ԍ��͂P�ł���B
����
�ȉ��̂悤�ȈӖ���̐���������B
-
name�߂�source�߂́APICSERules���[�����ł�1�x�����g�p���Ă͂Ȃ�Ȃ��B
-
optextension, reqextension, serviceinfo�̊e�߂� PICSRules���[�����ŕ�����g�p���Ă��悢�B
-
���ꂼ���Policy�߂ɂ́A�oAcceptIf, RejectIf, AcceptUnless, RejectUnless,
AcceptByURL, RejectByURL�p�̃Z�b�g����K��1�̑������K�v�ł���B
-
���[���ɂ�Policy�߂������܂܂�Ă��Ă��悢�B
-
Policy �߂ɂ� explanation�����������܂܂�Ă��Ă͂Ȃ�Ȃ��B
-
Extension�߂��邢�� service�߂�shortname�����́A�l�Ƃ��ăN�H�[�e�[�V�����}�[�N�ň͂܂ꂽ����
��������A���̕����ɂ͑������Ŏg�p�\�ȕ����ȊO���܂܂�Ă��Ă͂Ȃ�Ȃ��B
-
PICSRules��parser�i��͎ҁj�́A���[�����Ŏw�肳�ꂽ�����̒l�i���邢�͒l�̈ꗗ�j�̏������ێ�
���Ȃ���Ȃ�Ȃ��B
URL�Ɋ�Â����t�B���^�����O
Policy�߂ł́AAcceptByURL���������RejectByURL������URLpattern�G�������g���g�p���邪�A����BNF��
�ȉ��Ɏ����B
URLpattern :: internet-pattern | other-pattern
internet-pattern :: internet-scheme '://'
[user '@'] hostoraddr [':' port] ['/' pathmatch]
internet-scheme :: '*' | 'ftp' | 'http' | 'gopher' | 'nntp' |
'irc' | 'prospero' | 'telnet'
user :: ['*' | '%*'] notquotechar* ['*' | '%*']
hostoraddr :: ['*' | '%*'] host | ipwild ['!' bitlength]
ipwild :: ipcomponent '.' ipcomponent '.' ipcomponent '.' ipcomponent
ipcomponent :: integer between '0' and '255' inclusive
bitlength :: integer between '0' and '32' inclusive
host :: substring of a fully qualified domain name as described
in Section 3.5 of [RFC1034]
port :: '*' | integerorwild [ '-' integerorwild ]
pathmatch :: ['*' | '%*'] notquotechar* ['*' | '%*']
integerorwild :: digit+ | '*'
digit :: '0' - '9'
other-pattern :: scheme : ['*' | '%*'] notquotechar* ['*' | '%*']
scheme :: '*' | schemechar+
schemechar :: 'a' - 'z' | 'A' - 'Z' | digit | '+' | '.' | '-'
(as specified in [RFC1738])
RejectbyURL policy�߂ɂ��AURL�̈�v�� TRUE �̏ꍇ�Ɂu���ۂ���v�Ƃ������[���ɂȂ�B���l�ɁA
AcceptbyURL policy�߂ɂ��AURL�̈�v�� TRUE �̏ꍇ�Ɂu����v�Ƃ������[���ɂȂ�B�ǂ���̏�
�����Apolicy�߂Ɋ֘A����������Ԃ����BURL�p�^�[���̃��X�g������Ă���ꍇ�ɂ́A�p�^�[����
�ǂꂩ����v�����URL�̈�v�� TRUE �ɂȂ�BURL�̈�v�� FALSE �̏ꍇ�ɂ́Apolicy�߂͖�������A��
���Ď���policy�߂̕]�����s����B
URL�p�^�[����URL�̔�r���s���ꍇ�A���[���̃C���^�[�v���^�[��URL�� unencode ���s���Ă͂Ȃ�Ȃ�
�i�܂� %2F �� / �ɕϊ����Ă͂Ȃ�Ȃ��j�B�p�^�[�����C���^�[�l�b�g�p�^�[���Ƃ��ĉ��߂ł���ꍇ
�ɂ́A�p�^�[���̓R���|�[�l���g�����ɕ�������A�p�^�[���Ɋ܂܂�邷�ׂẴR���|�[�l���g����v��
��ꍇ�ɁAURL�̓p�^�[���Ɉ�v���邱�ƂɂȂ�B
scheme
�p�^�[���� '*' �͂��ׂẴX�L�[���Ɉ�v����B�����łȂ���A���S�ȕ�����̈�v���K�v�����A����
��r�͑啶��/����������ʂ��Ȃ��B�X�L�[���̃R���|�[�l���g�̓p�^�[������ȗ�����Ă͂Ȃ�Ȃ��B
user
�p�^�[���̐擪��Ō�� '*' �́AURL������̉������Ƃł���v����B�p�^�[���̐擪��Ō�� '%*'
�́AURL������� '*' �Ƃ����P�����Ɉ�v����B�p�^�[���̒��̕�����URL������̕����Ɗ��S�Ɉ�v����
����Ȃ�Ȃ��B���̔�r�͑啶��/����������ʂ���B�p�^�[������ '*' �Ƃ���user�R���|�[�l���g����
���Auser�R���|�[�l���g���ȗ�����URL�ƈ�v����B�p�^�[����user�R���|�[�l���g���ȗ�����Ă���ꍇ
�́Auser�R���|�[�l���g��URL������ȗ�����Ă���ꍇ�Ɍ����v����B
password
PICSRules�p�^�[���ł�password���w�肵�Ȃ��B�p�^�[���͂ǂ�ȃp�X���[�h���w�肷��URL�Ƃ���v����
���Apassword�R���|�[�l���g���ȗ����ꂽURL�Ƃ���v����B
ipwild
�p�^�[������ hostoradress ��IP�A�h���X�ł���ꍇ�AURL�̑Ή�����host�R���|�[�l���g���ŏ���IP�A�h
���X�̃Z�b�g�ɕ��������BIP�A�h���X�̂ǂꂩ�Ɉ�v����p�^�[���͈�v����B!��bitlength���w��
����Ă���ꍇ�A�p�^�[����URL�̗�����10�i�\�L����2�i�\�L�ɕϊ�����A������̍ŏ���bitlength�r�b
�g����r�����B���������āA'!'�́A�T�u�l�b�g��CIDR�u���b�N���w�肷��ꍇ�ɁA�ʏ��'/'��������
����̂Ɠ����Ӗ������B!���g���̂́A/ ������ċ�蕶���Ɖ��߂���ꍇ�����邩��ł���B��r��
�ŏ���16�r�b�g�݂̂ōs����̂ŁA18.23.7.22!16 �� 18.23.0.0!16 �Ɠ����ł���B
host
�p�^�[���̐擪�� '*' �́AURL������̉������Ƃł���v����B�p�^�[���̐擪�� '%*' �́AURL�������
'*' �Ƃ����P�����Ɉ�v����B�p�^�[���Ō�ɑ��������́AURL������̎c��̕����Ɗ��S�Ɉ�v���Ȃ���
�Ȃ�Ȃ��B���̔�r�͑啶��/����������ʂ��Ȃ��B�p�^�[�����z�X�g���i�܂��̓��C���h�J�[�h���܂ރz
�X�g���j���w�肷��ꍇ�́A�p�^�[�����̃z�X�g����URL����IP�A�h���X�ɕ��������Ƃ��Ă��A�����IP
�A�h���X���w�肷��URL�Ƃ͈�v���Ȃ����Ƃɒ��ӂ��邱�ƁB����ɂ��AURL����IP�A�h���X�Ɋ�Â���
DNS���t�ɒT����Ƃ��킴�킴�s���K�v���Ȃ��Ȃ�BURL�p�^�[���ł́Ahost �܂��� ipwild�̃R���|�[�l
���g�̂ǂ��炩���K���w�肳��Ă��Ȃ���Ȃ�Ȃ��B
port
�p�^�[����2�̔ԍ����w�肳��Ă���ꍇ�A���͈͓̔��̂��ׂẴ|�[�g�ԍ��ƈ�v����B�Ⴆ�A�p�^
�[����port�R���|�[�l���g�� "80-82" �̏ꍇ�A����̓|�[�g�ԍ��� 80, 81, 82 �ł���URL�ƈ�v����B
�͈͂̈ꕔ�Ƃ��ă��C���h�J�[�h * ���w�肳��Ă���ꍇ�́A�Ɍ��l��\���Ă���B�܂�A�p�^�[����
port�R���|�[�l���g�� "*-82" �̏ꍇ��82�ȉ��̂��ׂẴ|�[�g�ԍ��ƈ�v���A"80-*" �̏ꍇ�́A80�ȏ�
�̂��ׂẴ|�[�g�ԍ��ƈ�v����B�p�^�[����port�R���|�[�l���g���P�� "*" �̏ꍇ�́Aport�R���|�[�l
���g���ȗ�����URL���܂߂āA���ׂẴ|�[�g�ԍ�������URL�ƈ�v����B�p�^�[����port�R���|�[�l���g
���ȗ�����Ă���ꍇ�́A�|�[�g�ԍ����ȗ�����URL�Ƃ݈̂�v����B
path
�p�^�[���̐擪��Ō�� '*' �́AURL������̉������Ƃł���v����B�p�^�[���̐擪��Ō�� '%*'
�́AURL������� '*' �Ƃ����P�����Ɉ�v����B�p�^�[���̒��̕�����URL������̕����Ɗ��S�Ɉ�v����
����Ȃ�Ȃ��B��r�͑啶��/����������ʂ���B�p�^�[������ '*' �Ƃ���path�R���|�[�l���g���܂��A
path�R���|�[�l���g���ȗ�����URL�ƈ�v����B�p�^�[����path�R���|�[�l���g���ȗ�����Ă���ꍇ�́A
path�R���|�[�l���g��URL������ȗ�����Ă���ꍇ�Ɍ����v����B
�x���F�p�^�[�����ŃR���|�[�l���g���w�肳��Ă��Ȃ��ꍇ�́A�p�^�[�����ȗ����ꂽURL�Ƃ݈̂�v��
��BURL�̂���R���|�[�l���g������ꍇ�ɂ́A���̃p�^�[���R���|�[�l���g�� "*" ���w�肷��K�v
������B�Ⴆ�Apathname �� "buy" �Ƃ�����������܂ނ��ׂĂ�URL�ւ̃A�N�Z�X���u���b�N���邽�߂�
�́A�������p�^�[���� "*://*@*:*/*buy*" �ƂȂ�B�p�^�[���� "*://*/*buy*" ���邢�� "*buy*" �Ƃ���
�̂����R�Ȃ悤�Ɏv���邪�A�O�҂̏ꍇ�Ausername�ƃ|�[�g�ԍ����ȗ�����URL�Ƃ݈̂�v���邵�A��҂�
�L���ȃp�^�[���Ƃ͂����Ȃ��B
�p�^�[�����C���^�[�l�b�g�X�L�[���Ƃ��ĉ��ߕs�\�ȏꍇ�ɂ́A����̓X�L�[�����ƃX�L�[���ɌŗL��
�����Ƃɕ��������B�X�L�[�����ł� "*" �́A���ׂĂ�URL�̃X�L�[���ƈ�v����B����ȊO�́A���S��
������̈�v���K�v�ł���B���̔�r�͑啶��/����������ʂ��Ȃ��B�X�L�[���ɌŗL�ȕ����̐擪��Ō��
"*" �́AURL������̉������Ƃł���v����B�p�^�[���̐擪��Ō�� '%*' �́AURL������� '*' �Ƃ���
�P�����Ɉ�v����B�p�^�[���̒��̕�����URL������̕����Ɗ��S�Ɉ�v���Ȃ���Ȃ�Ȃ��B���̔�r��
�啶��/����������ʂ��Ȃ��B
���ӁFURL������̕��� '%*' �Ɋ��S�Ɉ�v����URLpattern ���L�q����͕̂s�\�ł���B�����������
�p�^�[���}�b�`���O����̐����ł͂Ȃ��B�Ȃ��Ȃ�A�L����URL�ɂ����āA'%'�����ɂ�2��16�i��������
�Ȃ���Ȃ�Ȃ�����ł���B�܂�A'%*' �Ƃ�����������܂�URL�͑��݂��Ȃ��B
���m�̐���
URL�� %���g�p���ăR�[�h�����ꂽ�����͔�r�̑O�� unencode ����Ȃ��̂ŁAPICS���[���̕]���҂͂���
����V�m�j���Ƃ��Ĉ���Ȃ����A�T�[�o�͂Q��URL���V�m�j���Ƃ��Ĉ�����������Ȃ��B�܂�A�T�[�o
��URL�p�X��unencoding���[���ɏ]���ƁA<http://www.student1.mit.edu/sex>,
<http://www.student1.mit.edu/%73%65%78>
<http://www.student1.mit.edu/se%78> �ɑ��āA�T�[�o�͓����y�[�W��Ԃ��̂ł���i%73��'s'�A%65��
'e'�A%78��'x'�ɂȂ�j�B
�����ɂ��A�p�^�[�����r���s���O�ɏ��URL��unencoding �����ւ̃}�b�`���O���[���́A�B��������
���炷�B�Ⴆ��HTTP�ł́A�ʏ�� ? �͖₢���킹������̋�蕶���Ƃ��Ĉ����A? �� %3F �Ƃ��ăR
�[�h�������BUnencoding��́A�ʏ�� ? �Ɩ₢���킹������̋�蕶�������ʂ��邱�Ƃ͕s�\�ɂ�
��B�V�m�j�����]���ɂ��Ă��A�p�^�[���}�b�`���O�𐳊m�ɂ�������悢�Ǝv����B
���̑��ɂ��AURL����IP�A�h���X�����[���p�^�[���̔�r�̂��߂Ƀz�X�g���ɕϊ�����Ȃ��Ƃ������l�̐�
��������B����́A�z�X�g���Ɋ�Â����p�^�[����IP�A�h���X�Ɋ�Â�URL�̓���̃V�m�j���ƈ�v���Ȃ�
�Ȃ邱�Ƃ��Ӗ�����Bhttp://*.mit.edu �Ƃ����p�^�[���́Ahttp://18.0.0.0!8 �Ƃ����p�^�[��������
�v����URL�����Ȃ��Ȃ�B��҂̃p�^�[���́Amit.edu �ŏI���E�F�u�T�C�g�i������IP�A�h���X��18��
�n�܂���ɂȂ�j�ƈ�v����BIP�A�h���X���܂�URL���h���C�������w�肷��p�^�[���ƈ�v���Ȃ����R
�́AURL��IP�A�h���X���t�ɒT�����Ƃ̓��[�`���Ƃ��Ď��s����ɂ̓R�X�g�̑傫�����삾����ł���B��
�������āA������s�����Ƃ����ʓI�ł���ꍇ�ɂ́A���[���ł̓z�X�g���̈�v����IP�A�h���X�̈�v
���w�肷�邾�낤�B�������A����ɂ̓z�X�g�����ʂ�IP�A�h���X�ɕύX����邽�тɃ��[�����X�V����K
�v�����邱�Ƃɒ��ӂ��Ȃ���Ȃ�Ȃ��B
���x���Ɋ�Â��t�B���^�����O
Policy�߂�
AcceptIf,
RejectIf,
AcceptUnless,
RejectUnless�̂��ꂼ��̑����͂��ׂāA�����Ƃ���
policy-expression ���Ƃ�B����͂��܂��܂ȃ��x���œ��삷��\���ł���B���̃Z�N�V�����ł͂����
�̕\���̍\���ƈӖ����`����B
policy-expression :: simple-expression |
or-expression |
and-expression |
degenerate-expression
simple-expression :: '(' service ['.' category [op constant ] ] ')'
service :: any shortname defined in a serviceinfo clause within this rule
category :: transmit-name-char+ ['/' category]
���ӁF[PicsLabels]�̎d�l�̂悤�ɁA���C�e�B���O�T�[�r�X���K�w�I��
�l�X�g���ꂽ�J�e�S���[���`���Ă���ꍇ�́A��ԊO���̃J�e�S���[����
���ɗ��āA�X���b�V���������A���̃J�e�S���[���������悤�ɂȂ�B
transmit-name-char :: alphanumpm | '.' | '$' | ',' | ';' | ':'
| '&' | '=' | '?' | '!' | '*' | '~' | '@'
| '#' | '_' | '%' hex hex
alphanumpm :: 'A' | ... | 'Z' | 'a' | ... | 'z' | '0' | ... | '9' | '+' | '-'
hex :: '0' | ... | '9' | 'A' | ... | 'F' | 'a' | .... | 'f'
op :: '>' | '<' | '=' | '>=' | '<='
constant :: [sign] alphanum* ['.' alphanum*]
or-expression :: '(' policy-expression [or policy-expression]+ ')'
or :: 'or'
and-expression :: '(' policy-expression [and policy-expression]+ ')'
and :: 'and'
sign :: '-'
degenerate-expression :: 'otherwise'
�߂̕]�����s���ꍇ�A���[�U�G�[�W�F���g�͎w�肳�ꂽ���C�e�B���O�T�[�r�X�̃��x�����A�g�p���Ȃ��A1
�g�p����A�����g�p����ꍇ������i�ڍׂɂ��ẮA
�R���g���[���t���[�̃Z�N�V�������Q�Ƃ���
���Ɓj�B�P���ȕ\���ł́A�w�肳�ꂽ�T�[�r�X�̃��x����
�ЂƂł��\���̏��������Atrue�ƕ]��
�����B�����I�ɁA���[���̕]���҂͎g�p�\�Ȃ��ׂẴ��x���Ɋ�Â��āA�\������������Ă��邱��
���ؖ����悤�Ƃ���B
�P���ȕ\�������x������l���Ăяo���Ƃ��ɁA���x�����g�p�ł��Ȃ��ꍇ��A�w�肳�ꂽ�J�e�S���[�ɂ�
���Ďg�p�\�ȃ��x�����l�������Ȃ��ꍇ���l�����Ȃ���Ȃ�Ȃ��B���̂悤�ȏꍇ�ɂ́A�P���ȕ\��
��false�ƕ]�������B����͒����I�ȈӖ��ɂȂ�B�܂�A�P���ȕ\���Ɋ֘A���郉�x�����Ȃ��ꍇ��
�́A���̕\���͕\���ɂ���ėv�����ؖ����邽�߂̏؋��ɂ͂Ȃ蓾�Ȃ��Ƃ������Ƃł���B
��̒�`�̂悤�ɁA�P���ȕ\���͂ǂ�ȃ^�C�v�̃f�[�^�ɑ��Ă����ׂẲ��Z�q���g�p���邱�Ƃ��ł�
��B��薾�m�ɂ́A�\���̕]���̈Ӗ��͎��̂悤�ɂȂ�B
-
The degenerate-expression otherwise �� true �ƕ]�������B
-
op�߂Œ�`����邷�ׂẲ��Z�q�́A�����ɂ��A�l���ЂƂ������J�e�S���[�Ƃ��ėL���ł���B
���@�ɂ��A���炩�ɂ��ׂ��ł���Ƃ����Ӗ��ɂ����āA�l�Ƃ��ẮA
true �܂��� false.��Ԃ����낤�B
-
�l���ЂƂ������J�e�S���[�ɒ�`�����B��̉��Z�q�� = �ł���B
-
�P���ȕ\���̌��ʂ� and �� or �Ƒg�ݍ��킳��Ă���ꍇ�ɂ́A�u�[�����_���g�p�����B
-
multivalue true �����Z�b�g�����J�e�S���[�ł́A�^����ꂽ���������x���̒l�̂ǂꂩ����������
���ɂ́A�P���ȕ\���� true �ƕ]�������B�Ⴆ�A���x���� (s (2 4))�Ƃ����l���܂܂�Ă���ꍇ�A
�P���ȕ\�� (Service.s < 3) �� true �ƕ]�������B�����ł̓��x���̒l��2�ł�����̂͏�������
���A4�ł�����͖̂������Ȃ��B
-
service �݂̂��܂ޒP���\���icategory �� op�萔�������Ȃ����́j�́A�w�肳�ꂽ���C�e�B���O�T�[
�r�X����̃��x���̑��݂��咣����Bservice, �Ŏw�肳�ꂽ���C�e�B���O�T�[�r�X����L���ȃ��x�����g
�p�ł���ꍇ�ɂ�true �ƂȂ�A�g�p�ł��Ȃ��ꍇ�ɂ� false �ƂȂ�B
-
service �� category �͊܂܂�邪�A���Z�q���܂܂Ȃ��iop�萔���Ȃ��j�P���ȕ\���́A�w�肳�ꂽ
���C�e�B���O�T�[�r�X����w�肳�ꂽ�J�e�S���[���܂ރ��x���̑��݂��咣����Bservice, �Ŏw�肳�ꂽ
���C�e�B���O�T�[�r�X����L���ȃ��x�����g�p�ł��A�w�肳�ꂽ category �ɑ��ă��x�������Ȃ��Ƃ�1��
�̒l�����ꍇ�ɂ́Atrue�ƂȂ�B����ȊO�̏ꍇ�A�\���� false �ƂȂ�B
PICSRules-1.0 �̏����̃h���t�g�ɂ́A�����I�ɗL���Ǝv���鉉�Z�q
!= ���܂܂�Ă����B����́A�l
���Ȃ��ꍇ��l����������ꍇ�ɂ��A
!= �̒����I�ȈӖ��͂��̑��̉��Z�q�̈Ӗ��Ɩ������邽�߁A���̉�
�Z�q�͍폜���ꂽ�B�Ⴆ�As �Ƃ��� dimension �� 2 �� 3�̒l�����A
(s (2 3))���܂ރ��x�����l����
�݂�B3�����̒l�����݂���̂ŁA���̃��x���̓|���V�[�\��
(Service.s < 3�����B�������A
!= ��
�����I�ȈӖ��́A���ׂĂ̒l��3�ȊO�ł��邱�Ƃ�K�v�Ƃ���B�o���I�Ȓ�ʉ��i3�����̒l��
���݂����j
�ƕ��ՓI�Ȓ�ʉ��i���ׂĂ��l��3�ȊO�ł���j�����݂���ƁA�����������邱�Ƃ����������B����ɁA"x != 3"
�͒ʏ�A"((x < 3) or (x > 3))"" �Ɠ����Ӗ��ł���B�����������̒l�����݂���ꍇ�ɂ́A��
�̊W�͕ێ�����Ȃ��B���I�ȈӖ��������Z�q�����邱�Ƃ͂悭�Ȃ��ƍl���APICSRules-1.1 ����
�͍폜���ꂽ�B
���Ӑ[���ǂ�ł��������Amax, min, , forall�̂悤�ȕ��ՓI�Ȓ�ʉ��̉��Z�q�����@���Ă��邾���ł�
���A�u�[�����Z�q not ���Ȃ����ƂɋC�t�����ł��낤�B�����̏ȗ��́A!= �̏ȗ����R�Ɠ��l�ɁA�n
�l���ꂽ���̂ł���B����̃J�e�S���[�ɑ��ă��x�����l�������Ȃ��A���邢�͕����̒l�����ꍇ��
�́A���̂悤�ȉ��Z�q���������Ɏg�p�����ƃ��[���𗝉����邱�Ƃ��ƂĂ�����Ȃ�B�����ŁA���L
�̂悤�ɁAAcceptIf, AcceptUnless, RejectIf, RefectUnless �Ƃ����������g�p���āA�ے�╁�ՓI���
���̉��Z�q�̓g�b�v���x���ł̂ݎg�p����Ƃ���������݂����B�������A�������ꂽ����ł͂��邪�A
"forall x, g(x) holds" �����w�I�Ɂug(x)���ێ�����Ȃ��悤�� x �͑��݂��Ȃ��v�Ƃ����Ӗ�������
���������𗘗p���邱�ƂŁA�\���͖͂L���ł���B�Ⴆ�A���ׂẴ��x���� s-value �̒l��3�ł���URL
�����ׂĎ������ꍇ���l���Ă݂�B���̎���policy�߂�
Policy (AcceptUnless "(Service.s < 3) or (Service.s > 3)" )
�ƂȂ�B
C�R���g���[���t���[
-
��L�̃��[���̍\���ƈӖ��́A���[���ɉ�������̂����`���A�����̍\���̈Ӗ����`���Ă���B
�����̃��[�����������邽�߁A���[�U�G�[�W�F���g�͂����Ő�����������I�ȃf�[�^�t���[���̗p����
�ׂ��ł���B����ɂ��APICSRules�������Ȃ��̂ɂȂ����Ƃ��ɁA����ɑ��ĕK�v�Ȋg�����������邱
�Ƃ��e�ՂɂȂ�B
-
PICSRules���[������������W���I�ȃ��[�U�G�[�W�F���g�́Arule parser, label source, label
validators, rule evaluator �Ƃ����A4�̏d�v�ȃR���|�[�l���g������Ă���ׂ��ł���B�����̖�
���͈ȉ��̒ʂ�ł���B
-
Rule parser�i���[����́j
-
PICSRules���[������͂���B�ۑ����ꂽ�\������l�b�g���[�N����ă��[�h�����ꍇ������B�v��
�L�V�T�[�o�̂悤�ȕ����̃��[����ۑ����郆�[�U�G�[�W�F���g�ł́A���̃R���|�[�l���g�͂��ꂼ���
�v���ɑ��Ăǂ̃��[�����g�p���邩�̌�����s���B�ȍ~�̃��W���[���ł́A���[����1�����K�p�����
���Ƃ��O��ł���B
-
Label sourse�i���x���\�[�X�j
-
���̃R���|�[�l���g�̓��x����T���B����͕]���̑ΏۂƂȂ��Ă��郋�[��������͏������B��
�x����T���ă��x���r���[���ƘA������邽�߂ɁA���̏����g�p���Ă��悢�B�܂��AHTML�h�L������
�g�ɖ��ߍ��܂ꂽ���x����A���x���`�����T�|�[�g����f�[�^�X�g���[���iHTTP, NNTP�j�œ`�����ꂽ��
�x���������Ă��悢�B���̃R���|�[�l���g�ɂ��o�͂́A���̃h�L�������g�ɓK�p����郉�x���̃Z
�b�g�ł���B���x���\�[�X�͕������邽�߁A���x���\�[�X�R���|�[�l���g�͂���h�L�������g�ɑ��Ă�
��T�[�r�X���畡���̃��x��������ꍇ������B�������A���x���\�[�X�R���|�[�l���g�́u�œK�ȁv
���x����I��������̂ł���B�i��ʓI�ȃ��x�����疾�m�ȃ��x����I�сA��ʓI�ȃ��x�������������
���ɂ͂����Ƃ����m�Ȃ��̂�I�Ԃ̂ł���B�j���x���\�[�X�́A���x�����̂��̂����łȂ��A���x������
�̂悤�Ɏ擾���ꂽ���i�R���e���c�ɖ��ߍ��܂ꂽ���́A���x���r���[�����瓾�����̂Ȃǁj�ɂ�
�āA���̑��̃R���|�[�l���g�ɖ�������K�v������B
-
Label validators�i���x���F�j
-
���x���F�́A�ǂ̃��x��������邱�Ƃ��ł��邩�����肷��BPICSRules����ł͔F�͒�`�����
���Ȃ����A���̊g���ɂ����Ē�`����邾�낤�B�Ⴆ�A�f�W�^�������������Ȃ����x�������ۂ���悤
�ȃ��x���F����`����邩������Ȃ��B�ʂ̔F�̉\���Ƃ��ẮA�M���̂������O�҂ɂ���ă��x
���̍�҂��ۏ���Ă��邩�ǂ����ׂ邱�Ƃ��ł�����̂��l������B
-
Rule evaluator�i���[���]���j
-
���[���]���́A�F��ʉ߂������x���ƁA���[����͂����[�����Ō�����Policy�߂���͂Ƃ��Ď�
��B����́A����֎~�̕\����]�����A���i�^�s���i�̌�����s���B
�g�����J�j�Y��
-
���܂��v���ꂽ�l�b�g���[�N�v���g�R���ł́A�g�����J�j�Y��������Ă���B�����ł́APICSRules
�Œ���Ă���g�����J�j�Y���������B
�w�i
PICSRules�́A�����ƒl�̑g�ݍ��킹���l�X�g�\���ɂȂ������̂ł���B�F���ł��Ȃ������L�[���[�h�̓�
�[�U�G�[�W�F���g�ɂ���Ė�������A����ɔ����l��PICSRules��͂ɂ���Ĕp�������BPICSRules���g
�������{���J�j�Y���́A�V�����߂⑮���ƒl�̑g�ݍ��킹�ƁA���̕�����Ӗ����`���邱�Ƃł���B
�V���������ƒl�̑g�ݍ��킹�ɂ́A�w�肳�ꂽ�g���������B�g���̖��O�� URL�Ȃ̂ŁA���E�I�Ɏ��ʂ���
���Ƃ��ł���BPICSRule�Ŏg�p�����Ƃ��ɂ́A�������̐��ݓI�Ȗ���������邽�߂ɁA�g���������̑O
�ɂ� ���̑������`����g����shortname �����B
�ڍ�
�V�����g�����`����ɂ́A�ȉ��̂悤�ɂ���B
-
���̊g�����I�v�V�������K�{�������肷��B�I�v�V�����̊g���́A�g����F�����Ȃ����[�U�G�[�W�F��
�g�ɂ���Ė�������Ă��悢�B�g�����u�I�v�V�����v�Ƃ��邽�߂ɂ́A�g�����������ꂽ�ꍇ�ł����̊g
�����g�p���郋�[���̈Ӗ����ύX����Ă��Ȃ�Ȃ��B
-
�g���ɖ��O��t����B�g���ɂ͈�ӂ�URL���w�肳��Ȃ�����Ȃ�Ȃ��BURL�ł́A���̊g�����ڍׂɐ�
������l�Ԃɓǂ߂�`���̃h�L�������g���w������ׂ��ł����B�g�����̈�Ӑ���ۏ��邽�߁AURL�͂�
�̊g���̍쐬�҂����䂷��h���C�����ɂȂ�����Ȃ�Ȃ��B
-
�g���ŐV�����߂̖��O���K�v�ȏꍇ�́Anew-clause-name�������g�p���āA���̊g���Œ�`����邻��
����̐V�����߂Ɏg�p����� extension-clause-name���`����B
-
���̊g������`����V���������ƒl�̑g�ݍ��킹���`���A���̑g�ݍ��킹���ǂ̐߂Ŏg�p�����̂�
���`����B
-
���̊g���Œ�`�����V���������ƒl�̑g�ݍ��킹�̈Ӗ����`����B���ɁA�g����PICSRules�̊���
�������ɂ���ꍇ�́A���̓���͐��m�ɋL�q����Ȃ���Ȃ�Ȃ��B�g����PICSRules�̊����̈Ӗ���
�����ɂ���ꍇ�ɂ́A����͕K�{�̊g���ƂȂ�ioptextension �ł͂Ȃ� reqextension ���g�p����j�B
�I�v�V�����̊g�����g�p����PICSRules���[���̗�͎��̂悤�ɂȂ�B
1 (PicsRule-1.1
2 (
3 ServiceInfo (
4 "http://www.coolness.org/ratings/V1.html"
5 shortname "Cool"
6 bureauURL "http://labelbureau.coolness.org/Ratings"
7 )
8 Policy (AcceptIf "((Cool.Coolness < 3) or (Cool.Graphics < 3))" )
9 Policy (RejectIf "otherwise")
10 optextension (
"http://www.si.umich.edu/~presnick/pics/extensions/PRsample.htm"
11 shortname "extension1")
12 extension1.SampleAttribute (
13 UseExpired "YES"
14 GroupFile "/etc/ics.grp"
15 )
16 )
17 )
���̗�ł́Ahttp://www.si.umich.edu/~oresbucj/pics/extensions/Prsample.htm�Ƃ������O�̕t�����
���I�v�V�����̊g���𗘗p����B���̊g���ł́A
SampleAttribute �Ƃ����L�[���[�h���`���Ă���B����
�g���𗝉��ł��Ȃ����[�U�G�[�W�F���g�́A�P��
extension1.SampleAttribute�߂Ƃ��̑����ƒl�̑g�ݍ�
�킹�i12����14�s�ځj�����邱�Ƃ��ł���B
�g�����錾�����̂͂P�́u���x���v���������A�g���Œ�`���ꂽ�����ƒl�̑g�ݍ��킹��PICSRules���[
���̂ǂ̏ꏊ�ł��g�p�ł���B�܂�A���ׂĂ̊g���͂��� rule-clause�� optextension �܂���
reqextension�߂Ő錾���s���ׂ������A�g���Œ�`���ꂽ�����ƒl�̑g�ݍ��킹�̓��[�����̃l�X�g����
�������̑w�Ŏg�p���Ă��悢�B
�Q�l����
-
[PicsLabels]
-
Jim Miller, editor. "PICS Label Distribution Label Syntax and Communication
Protocols". http://www.w3.org/PICS/labels.html.
-
[PicsServices]
-
Jim Miller, editor. "Rating Services and Rating Systems (and Their Machine
Readable Descriptions)". http://www.w3.org/PICS/services.html.
-
[RFC1034]
-
Mockapetris, P., "Domain Names - Concepts and Facilities", STD 13, RFC
1034, USC/Information Sciences Institute, November 1987. http://ds.internic.net/rfc/rfc1034.txt
-
[RFC1123]
-
R. Braden, editor. "Requirements for Internet Hosts -- Application and
Support". http://ds.internic.net/rfc/rfc1123.txt.
-
[RFC1738]
-
Tim Berners-Lee et al, "Uniform Resource Locators". http://ds.internic.net/rfc/rfc1738.txt.
-
[RFC2070]
-
F. Yergeau, G. Nicol, G. Adams, and M. Duerst. "Internationalization of
the Hypertext Markup Language". http://ds.internic.net/rfc/rfc2070.txt.
-
[RFC822]
-
David H. Crocker, editor. "Standard for the Format of ARPA Internet Text
Messages". http://ds.internic.net/rfc/rfc822.txt.
-
[UNICODE]
-
The Unicode Consortium, "The Unicode Standard -- Worldwide Character Encoding
-- Version 1.0", Addison- Wesley, Volume 1, 1991, Volume 2, 1992, and Technical
Report #4, 1993.
-
[UTF-8]
-
ISO/IEC 10646-1:1993 AMENDMENT 2 (1996). UCS Transformation Format 8 (UTF-8).
�ӎ�
���̃h�L�������g�̍쐬�ɓ������āA�ȉ��̊e���̂����͂Ɋ��ӂ��܂��B�ނ�̏����Ȃ����Ă͂����
�������邱�Ƃ͂ł��܂���ł����B�\���̕ύX���̃e�X�g���\�ɂ���
��̓R�[�h ���쐬����David
Shapiro ���ɂ́A���Ɋ��ӂ��Ă���܂��B
Scott Berkun, Microsoft
Jonathan Brezin, IBM
Yang-hua Chu, MIT
Lorrie Cranor, AT&T
Jon Doyle, MIT
Ghirardelli Chocolate Co.
Brian LaMacchia, AT&T
Breen Liblong, NetShepherd
Jim Miller, W3C
Mary Ellen Rosen, IBM
Rick Schenk, IBM
Bob Schloss, IBM
David Shapiro, MIT
Ray Soular, SafeSurf