Z XSLT / XPath, w jaki sposób można dopasować do dowolnego elementu w zerowej przestrzeni nazw?





```
<xsl:template match=foo>

```

pasuje do elementu foo w zerowej przestrzeni nazw.



```
<xsl:template match=*>

```

dopasowuje dowolny element w *jakiejkolwiek* przestrzeni nazw.


Próbowałem:



```
xmlns:null=
...
<xsl:template match=null:*>

```

ale jest to nielegalne zadeklarować prefiks dla zerowej nazw.


W jaki sposób można dopasować elementu z dowolną nazwę w zerowej przestrzeni nazw?
Możesz spróbować:



```
<xsl:template match='*[namespace-uri() = ""]'>

```

Jeśli węzeł-set jest pusta lub ma URI przestrzeni nazw, pusty ciąg jest zwracany przez `namespace-uri`funkcję, która powinna osiągnąć co chcesz.
<p>byłbym bardzo podejrzliwy wobec jakiegokolwiek zestawu uniwersalnych najlepszych praktyk, ponieważ w większości tych dziedzin diabeł tkwi w szczegółach. to, że informacje są stosunkowo powszechne, nie oznacza, że ​​aplikacja korzysta z danych dokładnie w taki sam sposób, jak inne aplikacje. oznacza to, że twój model danych może być nieco inny.</p><ul> <li>imię i nazwisko: dlaczego przechwytujesz imię? jeśli masz obowiązek przechwycenia pełnego imienia i nazwiska osoby (tj. przygotowujesz dokumenty prawne lub akty urodzenia), prawdopodobnie chcesz dać ludziom więcej miejsca na pisanie niż gdybyś tylko prosił o imię i nazwisko osoby, więc wezwać ich w nowej aplikacji internetowej.</li> <li>adres: co zamierzasz zrobić z adresem? jakie adresy przechowujesz? jeśli przechowujesz adres nieruchomości w stanach zjednoczonych, na której tworzysz hipotekę, prawdopodobnie bardzo zależy ci na uzyskaniu w pełni znormalizowanego adresu, w którym to przypadku model danych prawdopodobnie będzie chciał bardzo blisko pod dowolnym adresem narzędzie normalizacyjne zwraca. jeśli chcesz tylko, aby ludzie mogli wpisać adres w celu dostarczenia produktu, prawdopodobnie wystarczy kilka wierszy tekstu swobodnego. długość linii może zależeć od wymagań dalszych procesów, które wykonują takie czynności jak drukowanie etykiet adresowych.</li> <li>stan: zakładając, że możesz zidentyfikować prawidłowe wartości stanu, prawdopodobnie sensowne jest utworzenie tabeli <code>state</code> i utworzenie relacji klucza obcego między tabelami <code>state</code> i <code>address</code>. ale możliwość zidentyfikowania prawidłowych wartości oznacza, że ​​ograniczasz zestaw prawidłowych adresów przynajmniej do określonego zestawu krajów. to jest w porządku dla wielu stron, ale musisz trochę popracować, aby wesprzeć nowy kraj.</li> <li>miasto: jeśli masz do czynienia z danymi, w których istnieją potencjalnie regulacje na poziomie miasta (tj. w których istnieją różne rodzaje stawek podatkowych, które są stosowane w zależności od miasta), możesz chcieć traktować je podobnie jak państwo i mieć <code>city</code> tabela z prawidłowymi miastami i relacja klucza obcego między tabelami <code>city</code> i <code>address</code>. z drugiej strony, jeśli próbujesz tylko dostarczyć produkt i nie przejmujesz się tym, że masz w tabeli różne wersje tego samego miasta, wystarczy, że użytkownik wprowadzi dowolny tekst. oczywiście, jeśli przechowujesz klucze obce, będziesz mieć sporo pracy, aby upewnić się, że masz wszystkie prawidłowe wartości. ale są produkty, w których chodzi o to, że firma już wykonała tę pracę (tj. bazy danych podatków od sprzedaży).</li> <li>telefon: co robisz z numerami telefonów i dlaczego? niektóre aplikacje będą chciały pobierać numery telefonów w dowolnym formacie, w którym użytkownik zdecyduje się je wprowadzić i zachować to formatowanie dla wszystkich kolejnych zapytań. byłoby to powszechne, jeśli projektujesz osobistą książkę adresową, w której użytkownicy mają własne preferencje dotyczące sposobu przechowywania i wyświetlania numerów telefonów. inne aplikacje chciałyby zignorować wprowadzone formatowanie, wyodrębnić tylko znaki numeryczne, a następnie sformatować dane przy pobieraniu, aby wszystkie numery telefonów miały podobne formatowanie. jeśli prowadzisz działalność dla firm, możesz chcieć wprowadzić oddzielne pole dla użytkowników, aby wprowadzić rozszerzenie. jeśli próbujesz wesprzeć proces połączeń wychodzących, możesz chcieć przechowywać numer kierunkowy i kod kraju w osobnych kolumnach, ponieważ chcesz mieć pewność, że masz okna specyficzne dla strefy czasowej do nawiązywania połączeń z osobami o różnych numerach kierunkowych (tworzenie połączenie z kimś ze wschodniej strefy czasowej o 10 rano będzie znacznie lepsze niż wykonanie tego samego połączenia z kimś w strefie czasowej pacyfiku, gdzie jest 7 rano).</li> <li>płeć: w przypadku wielu aplikacji jest całkowicie rozsądne przechowywanie kodu płci („m” lub „f”) w tabeli. z drugiej strony zdarzają się sytuacje, w których możesz chcieć dodatkowych opcji (inne, interseksualne, transseksualne) lub gdy musisz przechowywać coś takiego jak płeć przy urodzeniu i aktualna płeć.</li> </ul> Jest to dość szerokie, ale dam ci tak ogólną odpowiedź, jak tylko mogę.

**CTE ...**

* Są niezindeksowalne (ale mogą używać istniejących indeksów na obiektach, do których istnieją odwołania)
* Nie można mieć ograniczeń
* Są zasadniczo jednorazowe `VIEW` s
* Trwać tylko do momentu uruchomienia następnego zapytania
* Może być rekurencyjny
* Nie masz dedykowanych statystyk (polegaj na statystykach dotyczących podstawowych obiektów)

**#Temp Tables ...**

* Są prawdziwe zmaterializowane tabele, które istnieją w tempdb
* Może być indeksowany
* Może mieć ograniczenia
* Trwaj w życiu obecnego POŁĄCZENIA
* Może odwoływać się do innych zapytań lub podprocedur
* Masz dedykowane statystyki generowane przez silnik

Jeśli chodzi o użycie każdego z nich, mają bardzo różne przypadki użycia.Jeśli masz bardzo duży zestaw wyników lub musisz odwołać się do niego więcej niż raz, umieść go w tabeli `#temp` .Jeśli ma być rekurencyjny, jednorazowy lub po prostu dla uproszczenia logicznego, preferowany jest `CTE` .

Ponadto należy `CTE`**nigdy nie używaj do wykonania**.Prawie nigdy nie przyspieszysz przy użyciu CTE, ponieważ znowu jest to widok jednorazowy.Możesz zrobić z nimi kilka fajnych rzeczy, ale przyspieszenie zapytania nie jest jednym z nich. aby uzyskać szczegółowe informacje w tia klikasz prawym przyciskiem na dana zmienną i wybierasz opcję cross-references. wyświetli się okno takie samo jak jak “go to location” w stepie. aby uzyskać informację takie jak w “overlapping access to memory areas” musisz kliknąć w ikonkę na pasku tego okna … po prostu bierzesz zaznaczenie jakie tylko chcesz.. na prostokatnym moze byc najlepiej,... potem bierzesz wytnjij/kopiuj i wklejasz tam gdzie chcesz.. potem tylko bierzesz widok albo obraz i szukasz czegos takiego jak powiekszenie i powiekszasz na x procent i wybierasz gumke i wymazujesz niepotrzebne tło. potem bierzesz w powiekszeniu na oryginalne rozmiary i ustawiasz postac gdzie chcesz. potem tylko tam jakies drobne sprawy z cieniowaniem ale to nic... mam nadzieje ze pomoglem. wklejasz to na profil <b style="display: block; padding: 10px; background: #6b238e; color: #fbfbfb; border: 1px double #123456;"> w to miejsce wklejasz zawartość profilu </b>  
  
tu masz palete kolorów [[link]](http://zapytaj.com.pl/html_server.php?id=bc6ec9b0b627b7c958926e10f6cc4655)  
  
w miejsce #6b238e wklejasz nazwe koloru tła [ znajdziesz ja w powyższym linku ] .  
a w miejsce #fbfbfb kolor tekstu. ;d  
  
jeśli masz więcej pytań to pisz na profilu. ;] [[link]](http://zapytaj.com.pl/html_server.php?id=c9da601ead1fb8880b9f78753aa702ab) tutaj masz różne. klikasz zastosuj motyw i już ! :)   
  
dasz naj ? :) jak masz go dziesiątkowo to nie problem bo wystarczy znać granice klas.  
  
[[link]](http://zapytaj.onet.pl/html_server.php?id=068ff6f6c8291bd534575e58a9fe4b33) tu masz wyjaśnienia oraz zakresy klas.  
  
jak masz adres w bin to też nie problem, wystarczy zamienić sobie na dec. nie wiem czy jest taki xd ale na tej stronie da rade ustawić różne tła do fb [[link]](http://zapytaj.onet.pl/html_server.php?id=2b83b2a99f1d650f5dde0f03d94ced42) Nazwa je takimi, jakimi są.


Jeśli nazywanie ich jest trudne lub niejednoznaczne, często jest to znak, że Klasa robi zbyt wiele (Zasada Odpowiedzialności Pojedynczej).


Aby uniknąć konfliktów nazw, należy odpowiednio wybrać przestrzeń nazw.


Personnally, użyję 3 źle zrozumiałem problem, myślałem, że chcesz rozciągnąć w poziomie - mój błąd. 

dane mogą zostać w tabeli, ale dolne menu robiłbym już w nav>ul>li, również nie robiłbym breadcrumbsów u góry w tabeli. 
wracając już do problemu, będziesz miał trochę ciężko to zrobić. wydaje mi się, że najlepiej będz…