Lines Matching defs:ID
1839 * Verify that the element don't have too many ID attributes
1842 * Returns the number of ID attributes found.
1856 "Element %s has too many ID attributes defined : %s\n",
2079 * Multiple ID per element
2088 "Element %s has too may ID attributes defined : %s\n",
2225 xmlBufferWriteChar(buf, " ID");
2544 * @not: A id
2546 * Deallocate the memory used by an id definition
2549 xmlFreeID(xmlIDPtr id) {
2552 if (id == NULL) return;
2554 if (id->doc != NULL)
2555 dict = id->doc->dict;
2557 if (id->value != NULL)
2558 DICT_FREE(id->value)
2559 if (id->name != NULL)
2560 DICT_FREE(id->name)
2561 xmlFree(id);
2570 * @attr: the attribute holding the ID
2572 * Register a new id declaration
2593 * Create the ID table if needed.
2634 * The id is already defined in this DTD.
2638 "ID %s already defined\n",
2652 * @table: An id table
2654 * Deallocate the memory used by an ID hash table.
2667 * Determine whether an attribute is of type ID. In case we have DTD(s)
2669 * of HTML documents parsed with the HTML parser, then ID detection is
2678 (!strcmp((char *) attr->name, "id")) &&
2686 if ((xmlStrEqual(BAD_CAST "id", attr->name)) ||
2731 * Remove the given attribute from the ID table maintained internally.
2738 xmlIDPtr id;
2739 xmlChar *ID;
2749 ID = xmlNodeListGetString(doc, attr->children, 1);
2750 if (ID == NULL)
2752 id = xmlHashLookup(table, ID);
2753 if (id == NULL || id->attr != attr) {
2754 xmlFree(ID);
2757 xmlHashRemoveEntry(table, ID, (xmlHashDeallocator) xmlFreeID);
2758 xmlFree(ID);
2766 * @ID: the ID value
2768 * Search the attribute declaring the given ID
2770 * Returns NULL if not found, otherwise the xmlAttrPtr defining the ID
2773 xmlGetID(xmlDocPtr doc, const xmlChar *ID) {
2775 xmlIDPtr id;
2781 if (ID == NULL) {
2789 id = xmlHashLookup(table, ID);
2790 if (id == NULL)
2792 if (id->attr == NULL) {
2799 return(id->attr);
3057 xmlChar *ID;
3068 ID = xmlNodeListGetString(doc, attr->children, 1);
3069 if (ID == NULL)
3071 ref_list = xmlHashLookup(table, ID);
3074 xmlFree(ID);
3095 xmlHashUpdateEntry(table, ID, NULL, (xmlHashDeallocator)
3097 xmlFree(ID);
3104 * @ID: the ID value
3106 * Find the set of references for the supplied ID.
3108 * Returns NULL if not found, otherwise node set for the ID.
3111 xmlGetRefs(xmlDocPtr doc, const xmlChar *ID) {
3118 if (ID == NULL) {
3126 return (xmlHashLookup(table, ID));
3788 * [ VC: ID ]
3789 * Values of type ID must match the Name production....
3825 * each Name must match the value of an ID attribute on some element
3827 * some ID attribute
4108 * - [ VC: ID Attribute Default ]
4110 * The ID/IDREF uniqueness and matching are done separately
4136 /* ID Attribute Default */
4141 "ID attribute %s of %s is not valid must be #IMPLIED or #REQUIRED\n",
4146 /* One ID per Element Type */
4172 "Element %s has %d ID attribute defined in the internal subset : %s\n",
4182 "Element %s has %d ID attribute defined in the external subset : %s\n",
4186 "Element %s has ID attributes defined in the internal and external subset : %s\n",
4219 * - [ VC: One ID per Element Type ]
4315 /* One ID per Element Type
4338 * - [ VC: ID ]
4343 * The ID/IDREF uniqueness and matching are done separately
4426 /* Validity Constraint: ID uniqueness */
4515 * - [ VC: ID ]
4520 * The ID/IDREF uniqueness and matching are done separately
4623 /* Validity Constraint: ID uniqueness */
5934 * The ID/IDREF checkings are done separately
6428 * @name: Name of ID we are searching for
6434 xmlAttrPtr id;
6456 id = xmlGetID(ctxt->doc, str);
6457 if (id == NULL) {
6459 "attribute %s line %d references an unknown ID \"%s\"\n",
6470 id = xmlGetID(ctxt->doc, name);
6471 if (id == NULL) {
6473 "IDREF attribute %s references an unknown ID \"%s\"\n",
6492 id = xmlGetID(ctxt->doc, str);
6493 if (id == NULL) {
6495 "IDREFS attribute %s references an unknown ID \"%s\"\n",
6527 * @name: Name of ID we are searching for
6572 /* trick to get correct line id report */
6604 * (i.e. not used), which could give problems if ID or IDREF