# {{page-title}} You can filter any file bassed on a globbing pattern as you may now from your own computer file system: ## Examples: A specific file: ``` # this rule applies to exactly one file: - action: validate - file: example-patient.json ``` All xml files; make sure that all xml examples have a profile field: ``` - predicate: meta.profile.exists() files: example/*.xml ``` ## Globbing WIth globbing you can use a double star `**` to define any sequence of subdirectories. This example ``` /**/example.xml ``` will include ``` main\example.xml main\sub\example.xml main\sub\sub\example.xml ``` ## Multiple file filters The files filter also allows you to define multiple filters. ``` - action: validate files: - /*.json - /*.xml ``` ## Excluding files When you want to exclude a pattern, just use an exclamation mark. If you want to exclude `package.json` from the example above, write it like the following. You have to add quotes, or YAML will get confused: ``` - action: validate files: - /*.json - "!package.json" - /*.xml ```