PICSRules Specification�i�a��j (original) (raw)
���̃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://joe@www.mystuff.rated-g.org/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��ɒ�`���ꂽ�j**KP**���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��ɒ�`���ꂽ�j**Cool**���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�̂��߂ɁA_notquotechar_ �͌��݂̕����� �Ŏ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���Œ�`���ꂽ�ʂ�A_quoted-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�肷��ׂ��ł���B**ratfile**�����Ɋ���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�́A_quotedURL_�ł���B����URL�́A�l �Ԃɓǂ߂�`���ł��̊g���̐������������̂ł���BURL�́Acentral naming body ��K�v�Ƃ��Ȃ��Ŋg�� ���̈�Ӑ����m���ɂ��邽�߂̂��̂ł���B**shortname** �����̒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�́A_quotedURL_�ł���B����URL�́A�l�Ԃɓǂ߂�`�� �ł��̊g���̐������������̂ł���BURL�́Acentral naming body ��K�v�Ƃ��Ȃ��Ŋg�����̈�Ӑ����m ���ɂ��邽�߂̂��̂ł���B**shortname**�����̒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���[���ɏ]���ƁAhttp://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���\���i_category_ �� op�萔_�������Ȃ����́j�́A�w�肳�ꂽ���C�e�B���O�T�[ �r�X����̃��x���̑��݂��咣����B_service, �Ŏw�肳�ꂽ���C�e�B���O�T�[�r�X����L���ȃ��x�����g �p�ł���ꍇ�ɂ�**true** �ƂȂ�A�g�p�ł��Ȃ��ꍇ�ɂ� false �ƂȂ�B
- service �� category �͊܂܂�邪�A���Z�q���܂܂Ȃ��i_op�萔_���Ȃ��j�P���ȕ\���́A�w�肳�ꂽ ���C�e�B���O�T�[�r�X����w�肳�ꂽ�J�e�S���[���܂ރ��x���̑��݂��咣����B_service_, �Ŏw�肳�ꂽ ���C�e�B���O�T�[�r�X����L���ȃ��x�����g�p�ł��A�w�肳�ꂽ category �ɑ��ă��x�������Ȃ��Ƃ�1�� �̒l�����ꍇ�ɂ́A**true**�ƂȂ�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_ _1. ���̊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_ _2. �g���ɖ��O��t����B�g���ɂ͈�ӂ�URL���w�肳��Ȃ�����Ȃ�Ȃ�**�BURL�ł́A���̊g�����ڍׂɐ� ������l�Ԃɓǂ߂�`���̃h�L�������g���w������ׂ��ł����B�g�����̈�Ӑ���ۏ��邽�߁AURL�͂� �̊g���̍쐬�҂����䂷��h���C�����ɂȂ�����Ȃ�Ȃ�**�B 3. �g���ŐV�����߂̖��O���K�v�ȏꍇ�́Anew-clause-name�������g�p���āA���̊g���Œ�`����邻�� ����̐V�����߂Ɏg�p����� extension-clause-name���`����B 4. ���̊g������`����V���������ƒl�̑g�ݍ��킹���`���A���̑g�ݍ��킹���ǂ̐߂Ŏg�p�����̂� ���`����B_ _5. ���̊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���ł́ASampleAttribute �Ƃ����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