0
# Azure Cognitive Services Vision Namespace Package
1
2
A Python namespace package that provides the infrastructure for Azure Cognitive Services Vision modules. This package creates the `azure.cognitiveservices.vision` namespace hierarchy, allowing other Azure SDK packages to extend this namespace with their specific functionality.
3
4
## Package Information
5
6
- **Package Name**: azure-cognitiveservices-vision-nspkg
7
- **Package Type**: Python namespace package
8
- **Language**: Python
9
- **Installation**: `pip install azure-cognitiveservices-vision-nspkg`
10
- **License**: MIT License
11
- **Version**: 3.0.1
12
13
## Core Imports
14
15
**Important**: This package provides no direct imports and is not intended for direct usage. It serves purely as namespace infrastructure for other Azure Cognitive Services Vision packages.
16
17
The namespace is utilized indirectly when importing dependent packages:
18
19
```python
20
# This package creates the namespace that enables these imports:
21
from azure.cognitiveservices.vision.computervision import ComputerVisionClient
22
from azure.cognitiveservices.vision.face import FaceClient
23
from azure.cognitiveservices.vision.customvision.training import CustomVisionTrainingClient
24
```
25
26
## Basic Usage
27
28
This package has no direct usage pattern as it contains no public API. It is automatically utilized when other Azure Cognitive Services Vision packages are installed and imported.
29
30
Examples of dependent packages that utilize this namespace infrastructure:
31
32
```python
33
# Computer Vision package
34
from azure.cognitiveservices.vision.computervision import ComputerVisionClient
35
36
# Face Recognition package
37
from azure.cognitiveservices.vision.face import FaceClient
38
39
# Content Moderator package
40
from azure.cognitiveservices.vision.contentmoderator import ContentModeratorClient
41
42
# Custom Vision Training package
43
from azure.cognitiveservices.vision.customvision.training import CustomVisionTrainingClient
44
```
45
46
Each of these imports is made possible by the namespace infrastructure provided by this package.
47
48
## Architecture
49
50
This package implements Python namespace packages using two different strategies:
51
52
- **Python 2.7**: Uses traditional namespace packages with `pkgutil.extend_path()`
53
- **Python 3.x**: Relies on PEP 420 implicit namespace packages (empty installation)
54
55
The namespace hierarchy created:
56
- `azure` (root namespace)
57
- `azure.cognitiveservices` (cognitive services namespace)
58
- `azure.cognitiveservices.vision` (vision-specific namespace)
59
60
## Capabilities
61
62
### Namespace Infrastructure
63
64
This package provides the namespace infrastructure that enables other Azure Vision SDK packages to extend the `azure.cognitiveservices.vision` namespace.
65
66
**No public API**: This package exports no functions, classes, constants, or types for end-user consumption.
67
68
**Namespace modules**: Contains only `__init__.py` files with namespace extension code:
69
70
```python { .api }
71
# Content of each __init__.py file:
72
__path__ = __import__('pkgutil').extend_path(__path__, __name__)
73
```
74
75
### Dependencies
76
77
Requires the broader Azure Cognitive Services namespace package:
78
79
- `azure-cognitiveservices-nspkg>=3.0.0`
80
81
### Platform Compatibility
82
83
- **Python Versions**: 2.7, 3.4, 3.5, 3.6, 3.7+
84
- **Platforms**: Cross-platform (Windows, macOS, Linux)
85
- **Installation Method**: pip from PyPI
86
87
## Usage Notes
88
89
- **End users should not install this package directly**
90
- **No importable functionality** - contains only namespace infrastructure
91
- **Automatically installed** as a dependency of other Azure Vision SDK packages
92
- **Version compatibility** handled automatically through dependency management
93
- **Namespace strategy** varies by Python version for optimal compatibility
94
95
## Related Packages
96
97
This namespace package enables extension by packages such as:
98
- `azure-cognitiveservices-vision-computervision` - Computer Vision API client
99
- `azure-cognitiveservices-vision-contentmoderator` - Content Moderator API client
100
- `azure-cognitiveservices-vision-customvision` - Custom Vision API client
101
- `azure-cognitiveservices-vision-face` - Face API client
102
103
When these packages are installed, they extend the namespace created by this infrastructure package, allowing imports like `from azure.cognitiveservices.vision.computervision import ...`